目录 ·简要 ·过程 ·步骤 ·相关名词解释 ·其他模式 ·模型 软件开发生命周期(系统开发生命周期/软件设计生命周期/系统设计生命周期)Software Development Life Cycle (或System Development Life Cycle、或Software Design Life Cycle、或System Design Life Cycle。英国内则称为System Life Cycle——系统生命周期)
指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。目前软件开发实践中使用的各种生命周期模型,都是下面这些基本组成部分的不同的排列与组合。
美国司法部(U.S. Department of Justice (DoJ))将其制订规范为“软件开发过程”。
其作用是用来合理地开发系统。
其过程包括条件、确认、培训,以及通过调查、分析、设计、执行、和维护的用户所有权。
其目的是在预计的时间和开销内,在现有的计划技术结构内,合理并有效地开发出达到或高于客户要求标准,并可以尽量节约维护和升级费用的高质量软件产品。
其具体的过程包括若干项,而且每一项也有具体的细节步骤。
软件(系统)概念:识别并定义新系统的需求;
(客户)需求分析:分析最终用户的信息需求;
结构设计:设计出带有必需规格的计划。必需规格包括软件、硬件、人力、以及数据资源;
编写和纠错:编译最终的系统;
系统测试:对比计划(或预期)的功能性,评估系统实际的功能性。
六个官方步骤:
⒈初步调查
⒉系统分析
⒊系统设计
⒋系统开发
⒌系统执行
⒍系统维护
因不同的实际情况(如,为客户量身订做的系统和面向大面积市场的系统,他们的制作过程是不同的),则可以有以下若干种执行步骤:
⒈可行性研究
⒉分析
⒊设计
⒋执行
⒌测试
⒍评估
或
⒈可行性研究
⒉分析
⒊设计
⒋开发
⒌执行
⒍维护
或
⒈可行性研究
⒉分析
⒊设计
⒋执行
⒌评估
或
⒈可行性研究
⒉分析
⒊设计
⒋开发
⒌测试
⒍执行
⒎维护
或
⒈分析(可行性研究)
⒉设计
⒊开发
⒋执行
⒌评估
可行性研究:通过调查,对照所构想和计划的系统是否实际上可行。其中包括技术、财政、和时间上的可执行性,并且包括同替代品的比较(是否有开发新系统的必要)。财政则包括市场调查和开销预算。
分析:抛开所有与财政和实际约束,在规定的功能范围内,列举和讨论所有的可能性。
设计:设计师需要给出一个或多个最终产品模型,以此来做参考取舍。应当包含说明文档,来解释具体的用户界面和使用过程(但不包括具体规格和品牌等)。
在英国区,则使用稍微不同的SDLC。在英国,SDLC被称为System Life Cycle,缩写为SLC,中文为系统生命周期。
⒈授权调查范围(Terms Of Reference):由决策部门决定新系统的功能和目的;
⒉可行性研究;
⒊实际调查和记录:现有系统的使用调查。调查现有系统的可替换程度(全部替换或部分替换);
⒋分析;
⒌设计;
⒍系统规格:列举具体将要使用的软件包和硬件,并要求详细指出型号、品牌、和供应商;
⒎执行和回顾
SDLC主要有以下几种模型:
1.瀑布模型(Waterfall Model)
2.演化模型(Evolutionary Model)
3.螺旋模型(Spiral Model)
每个模型都有自己的优缺点