软件工程项目生命周期

上传人:博****1 文档编号:591384531 上传时间:2024-09-17 格式:PPT 页数:35 大小:390.01KB
返回 下载 相关 举报
软件工程项目生命周期_第1页
第1页 / 共35页
软件工程项目生命周期_第2页
第2页 / 共35页
软件工程项目生命周期_第3页
第3页 / 共35页
软件工程项目生命周期_第4页
第4页 / 共35页
软件工程项目生命周期_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《软件工程项目生命周期》由会员分享,可在线阅读,更多相关《软件工程项目生命周期(35页珍藏版)》请在金锄头文库上搜索。

1、-软件生命周期软件生命周期软件工程软件工程软件生命周期件生命周期软件件过程的基本活程的基本活动软件描述件描述软件件设计与与实现软件有效性件有效性验证软件件进化化内容提要内容提要软件生命周期软件生命周期软件从定件从定义开始,开始,经过开开发、使用和、使用和维护,直到最,直到最终退役的全退役的全过程称程称为软件生件生存周期存周期。软件生命周期由件生命周期由软件定件定义、软件开件开发、运行、运行、维护及退役五个及退役五个时期。而每个期。而每个时期又可以期又可以进一步划分成若干一步划分成若干阶段。段。问题定义问题定义“要解决什么问题要解决什么问题?”“尽管确切定义问题的必要性是十分明显的,但尽管确切定

2、义问题的必要性是十分明显的,但在实践中它却可能是最容易被忽视的问题在实践中它却可能是最容易被忽视的问题”通过对客户的访问调查,系统分析员扼要的写通过对客户的访问调查,系统分析员扼要的写出问题的性质、工程目标和工程规模的书面报出问题的性质、工程目标和工程规模的书面报告,经过讨论和必要的修改后这份报告应该得告,经过讨论和必要的修改后这份报告应该得到客户用户的确认。到客户用户的确认。可行性研究可行性研究“做还是不做做还是不做”本阶段的任务是根据用户提出的工程项目的性本阶段的任务是根据用户提出的工程项目的性质、目标和规模,进一步了解用户的要求及现有的环质、目标和规模,进一步了解用户的要求及现有的环境及

3、条件,从技术、经济和社会等多方面研究并论证境及条件,从技术、经济和社会等多方面研究并论证该项目的可行性,即该项目的可行性,即该项目是否值得去解决,是否存该项目是否值得去解决,是否存在可行的解决办法。在可行的解决办法。可行性论证包括可行性论证包括经济可行性经济可行性、技术可行性技术可行性、操作操作可行性可行性、法律可行性法律可行性等。等。需求分析需求分析1)1)需求分析的任务需求分析的任务 需求分析的任务是确定待开发的软件系统需求分析的任务是确定待开发的软件系统“做什么做什么,不做什么,不做什么”。不考虑。不考虑“怎样做怎样做” 具体任务包括确定软件系统的具体任务包括确定软件系统的功能需求功能需

4、求、性能需求性能需求和和运行环境约束运行环境约束,编制软件需求规,编制软件需求规格说明书、软件系统的验收测试准则和初步格说明书、软件系统的验收测试准则和初步的用户手册。的用户手册。需求分析需求分析2 2)需求分析的实现途径)需求分析的实现途径 软软件件系系统统需需求求一一般般由由用用户户提提出出。系系统统分分析析员员和和开开发发人人员员在在需需求求分分析析阶阶段段必必须须与与用用户户反反复复讨讨论论、协协商商,充充分分交交流流信信息息,并并用用某某种种方方法法和和工工具具构构建建软软件件系系统统的的逻逻辑辑模模型型。为为了了使使开开发发方方与与用用户户对对待待开开发发软软件件系系统统达达成成一

5、一致致的的理理解解,必必须须建建立立相相应应的的需需求求文文档档。有有时时对对大大型型、复复杂杂的的软软件件系系统统的的主主要要功功能能、接接口口、人人机机界界面面等等还还要要进进行行模模拟拟或或建建造造原原型型,以以便便向向用用户户和和开开发发方方展展示示待待开开发发软软件件系系统统的的主主要要特特征征。确确定定软软件件需需求求的的过过程程有有时时需需要要反反复复多多次,最终得到用户和开发者的确认。次,最终得到用户和开发者的确认。需求分析需求分析3)需求分析的阶段成果)需求分析的阶段成果 需需求求分分析析阶阶段段的的主主要要成成果果有有软软件件需需求求规规格格说说明明、软件验收测试计划和准则

6、、初步的用户手册等。软件验收测试计划和准则、初步的用户手册等。软软 件件 需需 求求 规规 格格 说说 明明 ( Software Requirements Specification,即,即SRS),是一个关键性的文档。),是一个关键性的文档。多多数数场场合合,面面向向开开发发者者的的软软件件需需求求用用需需求求规规格格说说明明语语言言来来描描述述,它它是是软软件件开开发发人人员员进进行行软软件件设设计计的的依依据据;另另一一方方面面,从从某某种种意意义义上上讲讲,SRS又又起起到到与与用用户户签签定定合合同同的的合同书的作用。合同书的作用。软件开发软件开发q软件开发过程由概要设计、详细设计

7、、编码与单元软件开发过程由概要设计、详细设计、编码与单元测试、(综合)测试共测试、(综合)测试共5个阶段组成。个阶段组成。q开发者通常可提出多种设计方案,并对各种方案在开发者通常可提出多种设计方案,并对各种方案在功能、性能、成本、进度等方面进行比较和折衷,功能、性能、成本、进度等方面进行比较和折衷,从中选出一种从中选出一种“最佳方案最佳方案”。概要设计概要设计1 1)任务:)任务: 是是对对需需求求规规格格说说明明中中提提供供的的软软件件系系统统逻逻辑辑模模型型进进行行进进一一步步的的分分解解,从从而而建建立立软软件件系系统统的的总总体体结结构构和和各各子子系系统统之之间间、各各模模块块之之间

8、间的的关关系系,定定义义各各子子系系统统接接口口界界面面和和各各功功能能模模块块的的接接口口,设设计计全全局局数数据据库库或或数数据据结结构构,规规定定设设计计约约束束,制制定定组组装装测测试试计计划划,进进而而给给出出每每个个功功能能模模块块的的功功能能描描述述、全全局局数数据据定定义义和和外外部文件定义等。部文件定义等。概要设计概要设计2 2)实现途径)实现途径 选选择择某某种种方方法法和和工工具具。设设计计的的软软件件系系统统应应具具有有良良好好的的总总体体结结构构、尽尽量量降降低低模模块块接接口口的的复复杂杂度度,并并力力争争做做到到各各功功能能模模块块之之间间的的低低耦耦合合度度、而

9、而功功能能模块内部具有较高的内聚度。模块内部具有较高的内聚度。3 3)阶段性成果)阶段性成果 概要设计说明书、概要设计说明书、数据库或数据结构说明书、数据库或数据结构说明书、组装测试计划等文档。组装测试计划等文档。详细设计详细设计1)1)任任务务:是是将将概概要要设设计计产产生生的的功功能能模模块块进进一一步步细细化化,形形成成可可编编程程的的程程序序模模块块,然然后后设设计计程程序序模模块块的的内内部部细细节节,包包括括算算法法、数数据据结结构构以以及及各各程程序序模模块块间间的接口信息,并设计模块的单元测试计划。的接口信息,并设计模块的单元测试计划。2)2)途途径径:可可以以采采用用结结构

10、构化化的的设设计计方方法法,采采用用结结构构化化的的程程序序流流程程图图、N-SN-S图图、PADPAD图图、过过程程设设计计语语言言(PDLPDL,Procedure Procedure Design Design LanguageLanguage)等等工工具具进进行描述,也可以采用面向对象的设计方法等等。行描述,也可以采用面向对象的设计方法等等。3)3)阶阶段段成成果果:应应提提供供“详详细细设设计计规规格格说说明明”和和单单元元测试计划等详细设计文档。测试计划等详细设计文档。 编码与单元测试编码与单元测试1)1)编编码码的的主主要要任任务务是是根根据据详详细细设设计计规规格格说说明明,用

11、用某某种种选选定定的的程程序序设设计计语语言言把把详详细细设设计计的的结结果果转转化化为为机机器器可可运运行行的的源源程程序序模模块块,这这是是一一个个编编程程和和调调试试程序的过程。程序的过程。一一般般来来说说,对对软软件件系系统统所所采采用用的的分分析析方方法法、设设计计方方法法、编编程程方方法法以以及及所所选选用用的的程程序序设设计计语语言言应应尽尽可能保持一致。可能保持一致。编编码码阶阶段段应应注注意意遵遵循循编编程程标标准准、养养成成良良好好的的编编程程风风格格,以以便便编编写写出出正正确确的的便便于于理理解解、调调试试和和维维护护的程序模块。的程序模块。编码与单元测试编码与单元测试

12、2 2)单单元元测测试试:每每编编写写出出一一个个程程序序模模块块的的源源程程序序,调调试试通通过过后后,即即对对该该模模块块进进行行测测试试,这这称为单元测试。称为单元测试。3 3)实现阶段的成果:)实现阶段的成果:按按一一定定规规则则存存储储在在一一定定载载体体上上的的通通过过单元测试的各功能模块的集合;单元测试的各功能模块的集合;详细的单元测试报告等文档。详细的单元测试报告等文档。测试测试测测试试阶阶段段解解决决的的主主要要问问题题是是“通通过过怎怎样样的的测测试试(及及相相应应的的调调试试),使使软软件件系系统统达达到到用用户户的预期要求。的预期要求。”测试分模块测试、集成测试、验收测

13、试。测试分模块测试、集成测试、验收测试。(1)集成测试集成测试1)1)集集成成测测试试:根根据据概概要要设设计计提提供供的的软软件件结结构构、各各功功能能模模块块的的说说明明和和集集成成测测试试计计划划,把把经经过过单单元元测测试试检检验验的的模模块块按按照照某某种种选选定定的的策策略略逐逐步步进进行行组组装装和和测试。测试。2)2)主主要要任任务务:测测试试系系统统各各模模块块间间的的连连接接是是否否正正确确,系系统统或或子子系系统统的的正正确确处处理理能能力力、容容错错能能力力、输输入入/ /输出处理是否达到要求。输出处理是否达到要求。3)3)阶段成果:阶段成果:应应是是满满足足概概要要设

14、设计计要要求求、可可运运行行的软件系统和源程序清单;的软件系统和源程序清单;集成测试报告等文档。集成测试报告等文档。(2)验收测试验收测试1)任任务务:按按照照验验收收测测试试计计划划和和准准则则对对软软件件系系统统进进行行测测试试,看看其其是是否否达达到到了了需需求求规规格格说说明明中中定定义义的的全全部功能和性能等方面的需求。部功能和性能等方面的需求。2)验验收收测测试试结结束束时时,应应生生成成验验收收测测试试报报告告、项项目目开开发发总总结结报报告告,并并向向用用户户提提交交源源程程序序清清单单、最最终终用用户手册户手册、操作手册操作手册等文档资料。等文档资料。3)最最后后,由由专专家

15、家、用用户户负负责责人人、软软件件开开发发和和管管理理人人员员组组成成的的软软件件评评审审小小组组要要对对软软件件验验收收测测试试报报告告、测测试试结结果果和和软软件件进进行行评评审审,通通过过后后,软软件件产产品品正正式式通通过过验验收收(即即完完成成了了开开发发合合同同),可可以以交交付付用用户使用了。户使用了。运行运行软软件件工工程程师师将将所所开开发发的的软软件件安安装装在在用用户户需需要要的的运运行行环环境境中中,以以交交给给用用户户使使用用,这这个个阶阶段段成成为为运运行行阶阶段。段。该该阶阶段段的的问问题题是是“软软件件能能否否顺顺利利的的为为用用户户进进行行服服务务”。“软软件

16、件的的运运行行是是软软件件产产品品发发挥挥社社会会和和经经济济效效益益的的重要时期重要时期”在在软软件件使使用用过过程程中中用用户户或或软软件件工工程程师师必必须须仔仔细细收收集集已已发发现现的的软软件件运运行行中中的的问问题题,定定期期或或不不定定期期的的拟拟定定“软件问题报告软件问题报告”。维护维护任任务务: : 通通过过各各种种维维护护活活动动使使软软件件系系统统持持久久地地满满足足用用户的需求。户的需求。每每项项维维护护活活动动实实质质上上都都是是一一次次压压缩缩和和简简化化了了的的软软件件定定义义和和软软件件开开发发过过程程。都都要要经经历历提提出出维维护护要要求求、分分析析维维护护

17、要要求求、提提出出维维护护方方案案、审审批批维维护护方方案案、确确定定维维护护计计划划、修修改改软软件件设设计计、修修改改程程序序、测测试试程序、评审、验收等步骤。程序、评审、验收等步骤。维护活动一般可以分程四类:维护活动一般可以分程四类:v改正性维护改正性维护v适应性维护适应性维护v完善性维护完善性维护v预防性维护预防性维护维护维护据统计,软件维护人员为了分析和据统计,软件维护人员为了分析和理解原软件系统所花费的工作量约理解原软件系统所花费的工作量约占整个维护工作量的占整个维护工作量的60%60%以上。在软以上。在软件开发的过程中应重视对软件可维件开发的过程中应重视对软件可维护性的支持。护性

18、的支持。退役退役它它是是软软件件生生命命周周期期的的结结束束,即即停停止止使使用用、终终止止其运行。其运行。软件研制与软件测试的层次对应关系软件研制与软件测试的层次对应关系需求分析需求分析( (验收测试计划验收测试计划) )概要设计概要设计( (组装测试计划组装测试计划) )详细设计详细设计( (单元测试计划单元测试计划) )编码与调试编码与调试单元测试单元测试组装测试组装测试验收测试验收测试运行与维护运行与维护可行性研究可行性研究软件过程的基本活动软件过程的基本活动所有软件过程都包含所有软件过程都包含4项基本活动:项基本活动:n软件描述(需求工程)软件描述(需求工程)软件的功能及操作上的约束

19、必须定义软件的功能及操作上的约束必须定义n软件设计与实现软件设计与实现软件一定要按描述来生产软件一定要按描述来生产n软件有效性验证软件有效性验证软件要被确定是有效的,即要做客户想要的事软件要被确定是有效的,即要做客户想要的事n软件进化(维护)软件进化(维护)软件一定按客户需求的变更来进化软件一定按客户需求的变更来进化软件描述(需求工程)软件描述(需求工程)软软件件描描述述的的目目标标是是确确定定系系统统需需要要哪哪些些服服务务以以及及运运行期间受到哪些行期间受到哪些约束约束。需需求求工工程程产产生生用用以以描描述述系系统统的的需需求求文文档档。通通常常需需求文档被分成两个层次来描述:求文档被分

20、成两个层次来描述:最终用户和客户需要高层次的需求描述;最终用户和客户需要高层次的需求描述;系统开发人员需要比较详细的系统描述。系统开发人员需要比较详细的系统描述。需需求求工工程程过过程程有有4个个主主要要阶阶段段:可可行行性性研研究究、需需求求导出与分析、需求描述和需求有效性验证导出与分析、需求描述和需求有效性验证。软件描述(需求工程)软件描述(需求工程)可行性报告可行性报告可行性研究可行性研究需求导出与分析需求导出与分析系统模型系统模型用户需求与用户需求与系统需求系统需求需求文档需求文档需求描述需求描述需求有效性验证需求有效性验证软件设计与实现软件设计与实现软软件件设设计计与与实实现现阶阶段

21、段是是把把系系统统描描述述转转换换成成一一个个可可运行的系统运行的系统的过程。它总是包含设计和编程。的过程。它总是包含设计和编程。v软软件件设设计计是是对对实实现现软软件件的的结结构构、系系统统的的数数据据、系系统统组组件件间间的的接接口口以以及及所所用用的的算算法法进进行行描描述述。在在设设计计过过程程中中不不断断添添加加设设计计要要素素和和设设计计细细节节,并对先前的设计方案进行修正。并对先前的设计方案进行修正。v软件实现是将设计方案转换成可执行的程序。软件实现是将设计方案转换成可执行的程序。软件设计软件设计设计过程中一些特别的活动有:设计过程中一些特别的活动有:体系结构设计体系结构设计识

22、别系统由哪些子系统构成,及其关系识别系统由哪些子系统构成,及其关系抽象描述抽象描述每个子系统提供的服务及在什么范围内运行每个子系统提供的服务及在什么范围内运行接口设计接口设计每个子系统与其他子系统间的接口每个子系统与其他子系统间的接口组件设计组件设计分派服务到不同组件,并设计接口分派服务到不同组件,并设计接口数据结构设计数据结构设计详细设计并描述实现阶段的数据结构详细设计并描述实现阶段的数据结构算法设计算法设计详细设计并描述服务将要采用的算法详细设计并描述服务将要采用的算法软件设计软件设计“事事实实上上设设计计过过程程中中的的活活动动是是交交替替进进行行的的”设计产品设计产品需求描述需求描述体

23、系结构体系结构设计设计抽象描述抽象描述接口设计接口设计组件设计组件设计数据结构数据结构设计设计算法设计算法设计系统体系系统体系结构结构软件描述软件描述接口描述接口描述组件描述组件描述数据结构数据结构算法描述算法描述设计活动设计活动设计错误设计错误修复修复定位错误定位错误程序错误程序错误修复修复重测程序重测程序软件有效性验证软件有效性验证软软件件有有效效性性验验证证是是要要看看系系统统是是否否符符合合它它的的描描述述以以及及是是否否符符合合客客户户的的需需求求。它它包包括括检检查查过过程程、从从用用户需求定义到程序开发的每个软件过程阶段。户需求定义到程序开发的每个软件过程阶段。绝绝大大多多数数有

24、有效效性性验验证证的的成成本本发发生生在在系系统统完完成成测测试试的时候。的时候。“测测试试过过程程应应该该和和开开发发过过程程相相结结合合,分分阶阶段段增增量量进进行行”系统有效性验证系统有效性验证测试过程的阶段包括:测试过程的阶段包括:单元测试单元测试模块测试模块测试子系统测试子系统测试系统测试系统测试接收测试接收测试测试(针对产品软件)测试(针对产品软件)测试过程测试过程单元测试单元测试模块测试模块测试子系统测试子系统测试系统测试系统测试接收测试接收测试用户测试用户测试集成测试集成测试组件测试组件测试测试过程中的测试阶段测试过程中的测试阶段需求描述需求描述系统描述系统描述系统设计系统设计

25、详细设计详细设计接收测试接收测试计划计划系统集成系统集成测试计划测试计划子系统集成子系统集成测试计划测试计划模块、单元、模块、单元、代码测试代码测试子系统子系统集成测试集成测试系统集成系统集成测试测试接收测试接收测试服务服务软件进化软件进化(维护维护)自自有有软软件件开开发发以以来来,就就有有软软件件开开发发过过程程和和软软件件维维护护过过程程之之分分。但但现现在在看看来来,这这种种划划分分越越来来越越不不恰恰当当。现现在在完完全全从从头头开开始始的的系系统统很很少少,将将软软件件的的开开发发和和维维护护看看成成一一个个连连续续过过程程显显得得更更有有意意义义,即即将将软软件件工工程程看看成成一一个个进进化化过过程程软软件件在在其其生生命命周周期内不断随着需求变更而变化的进化式过程。期内不断随着需求变更而变化的进化式过程。软件维护软件维护定义系统需求定义系统需求访问现有系统访问现有系统提出系统变更提出系统变更修改系统修改系统现有系统现有系统新系统新系统

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号