软件开发周期软件开发的生命周期

软件开发周期  时间:2021-07-24  阅读:()

软件的生命周期到底是哪些?

软件生命周期(SDLC,软件生存周期)是软件的产生直到报废的生命周期,周期内有问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想方法是软件工程中的一种思想原则,即按部就班、逐步推进,每个阶段都要有定义、工作、审查、形成文档以供交流或备查,以提高软件的质量。

软件生命周期(SDLC)的六个阶段 1、问题的定义及规划 此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。

2、需求分析 在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。

需求分析阶段是一个很重要的阶段,这一阶段做得好,将为整个软件开发项目的成功打下良好的基础。

"唯一不变的是变化本身。

",同样需求也是在整个软件开发过程中不断变化和深入的,因此我们必须制定需求变更计划来应付这种变化,以保护整个项目的顺利进行。

3、软件设计 此阶段主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。

软件设计一般分为总体设计和详细设计。

好的软件设计将为软件程序编写打下良好的基础。

4、程序编码 此阶段是将软件设计的结果转换成计算机可运行的程序代码。

在程序编码中必须要制定统一,符合标准的编写规范。

以保证程序的可读性,易维护性,提高程序的运行效率。

5、软件测试 在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。

整个测试过程分单元测试、组装测试以及系统测试三个阶段进行。

测试的方法主要有白盒测试和黑盒测试两种。

在测试过程中需要建立详细的测试计划并严格按照测试计划进行测试,以减少测试的随意性。

6、运行维护 软件维护是软件生命周期中持续时间最长的阶段。

在软件开发完成并投入使用后,由于多方面的原因,软件不能继续适应用户的要求。

要延续软件的使用寿命,就必须对软件进行维护。

软件的维护包括纠错性维护和改进性维护两个方面。

软件的生命周期

软件生命周期是指从软件定义、开发、使用、维护到报废为止的整个过程,一般包括问题定义、可行性分析、需求分析、总体设计、详细设计、编码、测试和维护。

问题定义就是确定开发任务到底“要解决的问题是什么”,系统分析员通过对用户的访问调查,最后得出一份双方都满意的关于问题性质、工程目标和规模的书面报告。

可行性分析就是分析上一个阶段所确定的问题到底“可行吗”,系统分析员对系统要进行更进一步的分析,更准确、更具体地确定工程规模与目标,论证在经济上和技术上是否可行,从而在理解工作范围和代价的基础上,做出软件计划。

需求分析即使对用户要求进行具体分析,明确“目标系统要做什么”,把用户对软件系统的全部要求以需求说明书的形式表达出来。

总体设计就是把软件的功能转化为所需要的体系结构,也就是决定系统的模块结构,并给出模块的相互调用关系、模块间传达的数据及每个模块的功能说明。

详细设计就是决定模块内部的算法与数据结构,也是明确“怎么样具体实现这个系统”。

编码就是选取适合的程序设计语言对每个模板进行编码,并进行模块调试。

测试就是通过各种类型的测试使软件达到预定的要求。

维护就是软件交付给用户使用后,对软件不断查错、纠错和修改,使系统持久地满足用户的需求。

软件的生命周期也可以分为3个大的阶段,分别是计划阶段、开发阶段和维护阶段。

瀑布模型 有时也称为V模型,它是一种线型顺序模型,是项目自始至终按照一定顺序的步骤从需求分析进展到系统测试直到提交用户使用,它提供了一种结构化的、自顶向下的软件开发方法,每阶段主要工作成果从一个阶段传递到下一个阶段,必须经过严格的评审或测试,以判定是否可以开始下一阶段工作,各阶段相互独立、不重叠。

瀑布模型是所有软件生命周期模型的基础。

原型+瀑布模型 原型模型本身是一个迭代的模型,是为了解决在产品开发的早期阶段存在的不确定性、二义性和不完整性等问题,通过建立原型使开发者进一步确定其应开发的产品,使开发者的想象更具体化,也更易于被客户所理解。

原型只是真实系统的一部分或一个模型,完全可能不完成任何有用的事情,通常包括抛弃型和进化型两种,抛弃型指原型建立、分析之后要扔掉,整个系统重新分析和设计;进化型则是对需求的定义较清楚的情形,原型建立之后要保留,作为系逐渐增加的基础,采用进化型一定要重视软件设计的系统性和完整性,并且在质量要求方面没有捷径,因此,对于描述相同的功能,建立进化型原型比建立抛弃型原型所花的时间要多。

原型建立确认需求之后采用瀑布模型的方式完成项目开发。

增量模型 与建造大厦相同,软件也是一步一步建造起来的。

在增量模型中,软件被作为一系列的增量构件来设计、实现、集成和测试,每一个构件是由多种相互作用的模块所形成的提供特定功能的代码片段构成。

增量模型在各个阶段并不交付一个可运行的完整产品,而是交付满足客户需求的一个子集的可运行产品。

整个产品被分解成若干个构件,开发人员逐个构件地交付产品,这样做的好处是软件开发可以较好地适应变化,客户可以不断地看到所开发的软件,从而降低开发风险。

一些大型系统往往需要很多年才能完成或者客户急于实现系统,各子系统往往采用增量开发的模式,先实现核心的产品,即实现基本的需求,但很多补充的特性(其中一些是已知的,另外一些是未知的)在下一期发布。

增量模型强调每一个增量均发布一个可操作产品,每个增量构建仍然遵循设计-编码-测试的瀑布模型。

迭代模型 早在20世纪50年代末期,软件领域中就出现了迭代模型。

最早的迭代过程可能被描述为“分段模型”。

迭代,包括产生产品发布(稳定、可执行的产品版本)的全部开发活动和要使用该发布必需的所有其他外围元素。

所以,在某种程度上,开发迭代是一次完整地经过所有工作流程的过程:(至少包括)需求工作流程、分析设计工作流程、实施工作流程和测试工作流程。

实质上,它类似小型的瀑布式项目。

所有的阶段(需求及其它)都可以细分为迭代。

每一次的迭代都会产生一个可以发布的产品,这个产品是最终产品的一个子集。

软件开发的生命周期的实例

确定目标,风险分析,需求分析。

软件需求。

需求确认,开发计划,产品设计。

设计验证与确认。

集成测试计划。

可运行的原形。

详细设计。

编码。

单元测试。

集成测试。

验收测试。

运行维护

软件开发的生命周期

无论是瀑布开发模式还是螺旋开发模式 软件开发的周期大约都是分成需求,设计,编码和单元测试,系统集成,运行和维护几个阶段 如果是迭代方法开发 那么软件的生命周期应该分为开端(inception)、评价(elabration)、构建(construction)和产品化(transaction). 我从一本书上找出来的 希望能够帮助你

iON Cloud:新加坡cn2 gia vps/1核/2G内存/25G SSD/250G流量/10M带宽,$35/月

iON Cloud怎么样?iON Cloud升级了新加坡CN2 VPS的带宽和流量最低配的原先带宽5M现在升级为10M,流量也从原先的150G升级为250G。注意,流量也仅计算出站方向。iON Cloud是Krypt旗下的云服务器品牌,成立于2019年,是美国老牌机房(1998~)krypt旗下的VPS云服务器品牌,主打国外VPS云服务器业务,均采用KVM架构,整体性能配置较高,云服务器产品质量靠...

盘点AoYoZhuJi傲游主机商8个数据中心常见方案及八折优惠

傲游主机商我们可能很多人并不陌生,实际上这个商家早年也就是个人主机商,传说是有几个个人投资创办的,不过能坚持到现在也算不错,毕竟有早年的用户积累正常情况上还是能延续的。如果是新服务商这几年确实不是特别容易,问到几个老牌的个人服务商很多都是早年的用户积累客户群。傲游主机目前有提供XEN和KVM架构的云服务器,不少还是亚洲CN2优化节点,目前数据中心包括中国香港、韩国、德国、荷兰和美国等多个地区的CN...

恒创科技SonderCloud,美国VPS综合性能测评报告,美国洛杉矶机房,CN2+BGP优质线路,2核4G内存10Mbps带宽,适用于稳定建站业务需求

最近主机参考拿到了一台恒创科技的美国VPS云服务器测试机器,那具体恒创科技美国云服务器性能到底怎么样呢?主机参考进行了一番VPS测评,大家可以参考一下,总体来说还是非常不错的,是值得购买的。非常适用于稳定建站业务需求。恒创科技服务器怎么样?恒创科技服务器好不好?henghost怎么样?henghost值不值得购买?SonderCloud服务器好不好?恒创科技henghost值不值得购买?恒创科技是...

软件开发周期为你推荐
kx驱动安装教程KX驱动怎么安装qq空间维护qq空间打不开怎么维护windows7正版验证如何在微软网站验证Win7系统是否正版的方法免流量是什么意思4g手机浏览器免流量是什么意思圣诞节网页制作如何制作圣诞节贺卡百度创业史百度的创始人是谁催收软件哪个好欠钱不还的,怎么利用催收平台帮助催收?linux操作系统好吗linux操作系统 比 windows系统 更好吗?si1encesin90等于多少为什么Costco茅台被抢光Costco在中国大陆第一家店开业首日被挤爆,为什么人们都特别青睐洋货?
中文域名交易中心 花生壳域名贝锐 流媒体服务器 美国php空间 北京主机 一元域名 华为网络硬盘 howfile 已备案删除域名 如何安装服务器系统 shopex主机 512mb 空间登入 中国电信网络测速 全能空间 日本代理ip iki 带宽测试 好看的空间 免备案jsp空间 更多