软件生命周期过程.pptx
《软件生命周期过程.pptx》由会员分享,可在线阅读,更多相关《软件生命周期过程.pptx(52页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2023年2月24日12.1 软件生命周期2.1.1 软件生命周期定义2.1.2 软件生命周期模型2.1.2.1 瀑布模型2.1.2.2 演化模型2.1.2.3 螺旋模型2.1.2.4 喷泉模型2.1.2.5 构件组装模型2.1.2.6 快速应用开发模型2.1.2.7 其他模型第1页/共52页2023年2月24日22.1.1 软件生命周期定义1、软件生命周期:指软件产品从考虑其概念开始,到该软件产品不再能使用为止的整个时期。一般包括:概念阶段、需求阶段、设计阶段、实现阶段、测试阶段、安装阶段以及交付使用阶段、运行阶段和维护阶段。有时还有退役阶段。这些阶段可以有重复,执行时也可以有迭代。第2页/
2、共52页2023年2月24日32.1.1 软件生命周期定义2、软件开发生命期:指软件产品从考虑其概念开始到该软件产品交付使用为止的整个时期。一般包括:概念阶段、需求阶段、设计阶段、实现阶段、测试阶段、安装阶段,以及交付阶段。这些阶段可以有重叠,执行时也可以有迭代。第3页/共52页2023年2月24日42.1.1 软件生命周期定义3、软件开发过程:把用户的要求转变成软件产品的过程叫做软件开发过程。是人们用于开发和维护软件及其相关产品(项目计划、设计文件、编程代码、测试、用户手册)的一系列活动、方法、实践和改造。软件过程的规划由不同开发机构针对不同应用项目确定,包括一些有组织的活动:1)对用户的要
3、求(need)进行分析、2)解释成软件需求(requirement)、3)把需求变换成设计、4)把设计用代码来实现、5)测试该代码,5)有时还要进行代码安装和把软件交付运行使用。进一步可以抽象为:1.软件规格说明:规定软件的功能及其运行限制;2.软件开发:产生满足规格说明的软件;3.软件确认:确认软件能够完成客户提出的要求;4.软件演进:为满足客户的变更要求而进行演进。这些活动可以重叠,执行时也可以迭代。第4页/共52页2023年2月24日52.1.1 软件生命周期定义软件过程的研究重点:软件生产和管理。因此,不仅要有工程的观点,还要有系统的、管理的、运行的、用户的观点。软件过程的分类:1.基
4、本过程:与软件生产直接相关的过程2.支持过程:支持软件生产的过程3.组织过程:与软件生产组织(单位)有关的过程4.剪裁过程:将上述过程和活动剪裁到具体应用中的过程。第5页/共52页2023年2月24日62.1.1 软件生命周期定义4、软件过程的活动:实现软件开发生命期目标所必须完成的所有任务以及完成任务的步骤。一般包括框架活动和伞形活动。框架活动:是软件工程过程必须的主要步骤、是决定软件产品如何出现、存在的重要活动。包括:一组软件工程工作任务并指出什么算完(里程碑)?交付出什么?质量保证点是什么?软件工程工作任务因产品特性而选用不同的过程模型展开。当然,最抽象的框架活动是定义、开发、维护。有了
5、模型它就可以把这三大步骤细化了。第6页/共52页2023年2月24日72.1.1 软件生命周期定义伞形活动:是为保证高质量产品出现、存在的活动。它凌驾于框架活动之上,故谓之“伞形”,典型的伞形活动是:n软件项目追踪和管理(1)正式技术评审(2)软件质量保证(3)软件配置管理(4)文档的准备和制作n可重用管理n软件度量(指本项目特殊的度量)n风险管理第7页/共52页2023年2月24日82.1.1 软件生命周期定义5、框架活动与项目特征框架活动对某类项目、某开发单位相对固定,但变动比较大。一般把软件项目分成五类。(1)概念开发项目:相当于我国科研体制中“预研”项目(2)新应用开发项目:例如,Wo
6、rd 1.0(3)应用增强项目:有重大改进如Word 3.0,6.0(4)应用维护项目:相对小的改进(5)重构工程项目:将已有项目部分或全部重构概念开发项目可以采用线性顺序模型:(1)项目定义:概念范围定义 (2)作计划:初步概念计划和技术风险评估 (3)作工程/构建:概念证明 (4)发布:概念实现 (5)客户评价:客户反应第8页/共52页2023年2月24日92.1.1 软件生命周期定义对于新应用开发和后续的增强和维护项目,可以采用螺旋模型,其框架活动是:(1)与客户通信:建立有效通信 (2)作计划:定义资源、时限、项目相关信息 (3)风险分析:技术和管理风险 (4)作工程:作出主要应用程序
7、表示 (5)构建和发布:构建、测试、安装并提供用户支持 (6)客户评价:收集反馈意见这些框架活动可因公司(单位)项目而异。如RUP方法学把框架活动定义为线性顺序四阶段模型:(1)初始(Inception):定义环境、捕捉需求 (2)求精(Elaboration):定义需求、分析、设计 (3)构建(Construction):实现、测试 (4)移交(Transition):测试、布署每个阶段内部都是迭代的,即支持原型。因此生存周期模型不同于传统一维模型,变为二维的模型,一维是框架活动,一维是可反复迭代的工程活动。第9页/共52页2023年2月24日102.1.2 软件生命周期模型软件开发模型:是
8、从软件项目需求定义直至软件经使用后废弃为止,跨越整个生存期的系统开发、运作和维护所实施的全部过程、活动和任务的结构框架。第10页/共52页2023年2月24日112.1.2.1 瀑布模型早期的瀑布模型即为线性顺序模型。它一次走完分析、设计、编码、测试和运行维护这些框架活动。质量保证、文档制作、正式技术评审、配置管理等伞形活动穿插其中。第11页/共52页2023年2月24日122.1.2.1 瀑布模型第12页/共52页2023年2月24日132.1.2.1 瀑布模型1970年,W.Royce提出瀑布模型。特征:活动的输入来自上一活动的输出;完成该项活动的内容;活动的输出传给下一活动;对活动的实施
9、工作进行评审。适合:需求明确的任务。优点:以项目的阶段评审和文档控制为手段有效地对整个开发过程进行指导,从而保证了软件产品及时交付,并达到预期的质量要求。严格把关、错误尽早发现并消灭在前一阶段。缺点:成品时间长;缺乏灵活性。80年代中期发现严格按瀑布模型开发的大型系统成功率极低(低于23%)。第13页/共52页2023年2月24日142.1.2.1 瀑布模型瀑布模型的变种V模型需求分析概要设计详细分析编码单元测试集成测试确认测试其他测试第14页/共52页2023年2月24日152.1.2.2 演化模型项目开发初始阶段对需求的认识不够清晰,使得开发工作出现再开发在所难免。经验告诉我们:开发“两次
10、”后的软件能较好地满足用户的要求。第一次:试验开发,目的是探索可行性,弄清楚项目的需求。第二次:在第一次的原型基础上进行开发,从而获得较为满意的软件产品。第15页/共52页2023年2月24日162.1.2.2 演化模型需求分析软件设计程序编码软件测试软件集成软件评审需求分析软件设计程序编码软件测试软件集成软件评审反馈“第一次”“第二次”适合:事先不能清晰和完整定义需求的软件开发。原型增加了开发的工作量,增加了管理上的困难。特别是原型过程步骤事先难于计划,不知道应反复几次,从哪里开始反复,预算进度均难于控制。但它具有切合实际,成功率较高的优点,故至今仍在使用。第16页/共52页2023年2月2
11、4日172.1.2.3 螺旋模型对于大型项目而言,事先不能完整清晰地定义需求是常事,而且开发一个原型是远远不能解决问题的,需要开发内容逐步丰富的多个原型。大型项目的规模和复杂性增加,软件开发过程中必然存在着许多风险问题,风险分析是保证项目成功的必要手段。第17页/共52页2023年2月24日182.1.2.3 螺旋模型第18页/共52页2023年2月24日192.1.2.3 螺旋模型螺旋模型沿着螺线旋转,在四个象限上分别表达了四个方面的活动,即:制定计划确定软件目标,选定实施方案,弄清项目开发的限制条件风险分析分析所选方案,考虑如何识别和消除风险实施工程实施软件开发客户评估评价开发工作,提出修
12、正建议第19页/共52页2023年2月24日202.1.2.3 螺旋模型第20页/共52页2023年2月24日212.1.2.4 喷泉模型软件开发的固有特征:1、迭代 多次重复、演进。2、无间隙 各阶段间无明显的界限。支持分析和设计结果的自然复用。适用:面向对象的软件开发过程。第21页/共52页2023年2月24日222.1.2.4 喷泉模型第22页/共52页2023年2月24日232.1.2.5 构件组装模型面向对象和基于构件包的软件要重用大量构件,这些构件是适用于某个领域的(例如,建筑,财经、商场,电信等)。它将以前开发并使用良好的构件规范化之后放入项目库。这类软件的开发过程也采用螺旋模型
13、,只是把作工程和构造及发布合成一个步骤。风险分析后,转入客户评价。步骤如下:(1)先标识本项目需要什么构件;(2)库中查找构件或相似的构件;(3)如果可用转4 否则自行开发或修改,确认后入库;(4)构造为新系统作第m次迭代;(5)测试、确认。第23页/共52页2023年2月24日242.1.2.6 快速应用开发模型R(apid)A(pplication)D(evelopment)有以下步骤:(1)业务模型:以什么信息驱动业务过程运作?要生成什么信息?谁生成它?信息流的去向?由谁处理?可以辅之以数据流图。(2)数据模型:为支持业务过程的数据流,找数据对象集合,定义数据对象属性,与其它数据对象的关
14、系构成数据模型,可辅之以E-R图。(3)处理模型:如何使数据对象在信息流中完成各业务功能。描述数据对象的增加、修改、删除、查找。即细化数据流图中的处理框。(4)应用程序生成:利用第四代语言(4GL)写出处理程序,重用已有构件或创建新的可重用构件,利用环境提供的工具,自动生成,构造出整个的应用系统。(5)测试与交付,由于大量重用,一般只作总体测试,但新创建的构件还是要测试的。第24页/共52页2023年2月24日252.1.2.7 其他模型还有并发开发模型和形式方法模型,分别针对并发程序系统和需要进行数学验证或函数式、逻辑式程序系统而设的。第25页/共52页2023年2月24日262.2 基本过
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 生命周期 过程
限制150内