1. 首页
  2. 文档大全

第2章软件的生命周期与开发模型

上传者:9****8 2022-07-21 08:20:26上传 PPT文件 1.04MB
第2章软件的生命周期与开发模型_第1页 第2章软件的生命周期与开发模型_第2页 第2章软件的生命周期与开发模型_第3页

《第2章软件的生命周期与开发模型》由会员分享,可在线阅读,更多相关《第2章软件的生命周期与开发模型(70页珍藏版)》请在文档大全上搜索。

1、实用软件工程实用软件工程(第第3版版)第第2章章 软件生命周期与开发模型软件生命周期与开发模型 开发一个软件项目,首先要选择并确定一个适合开发一个软件项目,首先要选择并确定一个适合于该项目的软件生命周期模型,然后按照该软件于该项目的软件生命周期模型,然后按照该软件生命周期模型的开发生命周期模型的开发路线图路线图,进行有条不紊地开,进行有条不紊地开发,以达到成功的彼岸。发,以达到成功的彼岸。 软件生命周期模型是软件工程课程研究的四大内软件生命周期模型是软件工程课程研究的四大内容之一,它虽然不是软件工程课程研究的重点,容之一,它虽然不是软件工程课程研究的重点,但是在宏观上特别重要。因为软件的生命周

2、期与但是在宏观上特别重要。因为软件的生命周期与选择的开发模型有关,不同的开发模型,对应不选择的开发模型有关,不同的开发模型,对应不同的生命周期。同的生命周期。 2.1 软件生命周期模型概论软件生命周期模型概论 任何有生命的动物、植物和人,都有一个任何有生命的动物、植物和人,都有一个生命周期(生命周期(Life Cycle)。例如,人的生)。例如,人的生命周期如命周期如表表2-2 所示。所示。 即使是没有生命的事物或实体,例如,即使是没有生命的事物或实体,例如,PC机、路由器、家具、房子、汽车,它们也机、路由器、家具、房子、汽车,它们也有一个生命周期,这个生命周期就是使用有一个生命周期,这个生命

3、周期就是使用寿命,即使用周期。寿命,即使用周期。 周期序号周期序号周周 期期 划划 分分周期名称周期名称周期的主要活动周期的主要活动1 胚胎至分娩胚胎至分娩胎儿胎儿 定期到妇幼保健院或妇产科医院检查定期到妇幼保健院或妇产科医院检查2 03岁岁婴儿婴儿 请保姆看护,上婴儿室或托儿所请保姆看护,上婴儿室或托儿所3 36岁岁幼儿幼儿 上幼儿园,健康、活泼、天真地成长上幼儿园,健康、活泼、天真地成长4 612岁岁儿童儿童 上小学,好好学习,天天向上上小学,好好学习,天天向上5 1218岁岁少年少年 上中学,参加中考、高考,自古英雄上中学,参加中考、高考,自古英雄出少年出少年6 1830岁岁青年青年 上

4、大学,攻读硕士、博士学位,应聘上大学,攻读硕士、博士学位,应聘就业,开始追求创新,追求异性就业,开始追求创新,追求异性7 3060岁岁中年中年 上班,追求事业上的成就、成功、贡上班,追求事业上的成就、成功、贡献,经营幸福的家庭献,经营幸福的家庭8 60岁以上岁以上老年老年 退休,老有所乐,写回忆录,立遗嘱退休,老有所乐,写回忆录,立遗嘱9 因病去世因病去世死亡死亡 丧事从简,长眠于地下丧事从简,长眠于地下 为什么为什么不同的软件生命周期模型,可能对不同的软件生命周期模型,可能对应着不同的生命周期。应着不同的生命周期。 因为因为生命周期不同,该软件的开发阶段划生命周期不同,该软件的开发阶段划分、

5、评审次数、基线标准、产品发布、维分、评审次数、基线标准、产品发布、维护方式都有所不同。护方式都有所不同。 软件生命周期模型能清晰、直观地表达软软件生命周期模型能清晰、直观地表达软件开发全过程,明确规定了要完成的主要件开发全过程,明确规定了要完成的主要活动和任务,用来作为软件项目工作的基活动和任务,用来作为软件项目工作的基础。一般来说,若以时间为序,软件的生础。一般来说,若以时间为序,软件的生命周期可详细地划分为几个阶段,如命周期可详细地划分为几个阶段,如表表2-3所示。所示。 周周 期期 序序 号号周周 期期 名名 称称周周 期期 序序 号号周周 期期 名名 称称1立项(或签合同)、立项(或签

6、合同)、下达任务书下达任务书6软件测试软件测试2需求分析需求分析7软件发布与实施软件发布与实施3概要设计概要设计8软件维护软件维护4详细设计详细设计9版本更新或退役版本更新或退役5编码实现编码实现 现在,让我们来回顾一下第现在,让我们来回顾一下第1章中对软件生章中对软件生命周期模型的定义。命周期模型的定义。 在在【定义定义1-2】中指出:软件生命周期模型中指出:软件生命周期模型是指在整个软件生命周期中,软件开发过是指在整个软件生命周期中,软件开发过程应遵循的程应遵循的开发路线图开发路线图。或者说,软件生。或者说,软件生命周期模型是软件开发全部过程、活动和命周期模型是软件开发全部过程、活动和任务

7、的任务的结构框架结构框架。 显而易见,这个定义不但非常全面,而且显而易见,这个定义不但非常全面,而且十分准确,它符合所有软件生命周期模型十分准确,它符合所有软件生命周期模型对生命周期的定义与解释。对生命周期的定义与解释。 2.2 瀑布模型瀑布模型 1970年温斯顿年温斯顿罗伊斯(罗伊斯(Winston Royce)提出)提出了著名的了著名的“瀑布模型瀑布模型”,直到,直到80年代早期,它一年代早期,它一直是直是唯一被广泛采用唯一被广泛采用的软件开发模型。直至今日,的软件开发模型。直至今日,该模型仍然具有强大的生命力。该模型仍然具有强大的生命力。 瀑布模型(瀑布模型(Waterfall Mode

8、l)又称流水式过程)又称流水式过程模型,它可以形象地用阶梯瀑布描述,水由上向模型,它可以形象地用阶梯瀑布描述,水由上向下一个阶梯接着一个阶梯地倾泻下来,最后进入下一个阶梯接着一个阶梯地倾泻下来,最后进入一个风平浪静的大湖,这个大湖就是软件企业的一个风平浪静的大湖,这个大湖就是软件企业的产品库,如产品库,如图图2-1所示。所示。 1模型的本意模型的本意 在瀑布模型中,软件开发的各项活动严格在瀑布模型中,软件开发的各项活动严格按照按照线性线性方式进行,当前阶段的活动接受方式进行,当前阶段的活动接受上一阶段活动的工作结果,实施完成所需上一阶段活动的工作结果,实施完成所需的工作内容。的工作内容。 对当

9、前阶段活动的工作结果需要进行验证,对当前阶段活动的工作结果需要进行验证,如果验证通过,则该结果作为下一阶段活如果验证通过,则该结果作为下一阶段活动的输入,继续进行下一阶段的活动,否动的输入,继续进行下一阶段的活动,否则返回上一阶段修改。则返回上一阶段修改。 瀑布模型认为:项目经理或软件管理人员,瀑布模型认为:项目经理或软件管理人员,只要控制好每级只要控制好每级台阶台阶的高度和宽度,在每的高度和宽度,在每个台阶处设立个台阶处设立里程碑里程碑或或基线基线,并组织好对,并组织好对基线的评审与审计,就可以控制好项目的基线的评审与审计,就可以控制好项目的开发成本、进度和质量。开发成本、进度和质量。 早期

10、的面向过程的结构化分析、结构化设早期的面向过程的结构化分析、结构化设计、结构化编程、结构化测试、结构化维计、结构化编程、结构化测试、结构化维护方法,很适合于瀑布模型。或者说,瀑护方法,很适合于瀑布模型。或者说,瀑布模型适合于布模型适合于结构化方法结构化方法,即面向过程的,即面向过程的软件开发方法软件开发方法。 2模型的特点模型的特点 (1)里程碑或基线驱动,或者说文档驱动。)里程碑或基线驱动,或者说文档驱动。 (2)过程逆转性很差或者说不可逆转,因)过程逆转性很差或者说不可逆转,因为根据上游的错误会在下游进行发散性传为根据上游的错误会在下游进行发散性传播的原理,所以逆转将会延误工期,增加播的原

11、理,所以逆转将会延误工期,增加成本,造成重大损失。成本,造成重大损失。 3选择模型的条件选择模型的条件 不是任何软件都可以采用瀑布模型的,软件项目不是任何软件都可以采用瀑布模型的,软件项目或产品选择瀑布模型,必须满足下列条件:或产品选择瀑布模型,必须满足下列条件: (1)在开发时间内需求没有或很少变化。)在开发时间内需求没有或很少变化。 (2)分析设计人员对应用领域很熟悉。)分析设计人员对应用领域很熟悉。 (3)低风险项目(对目标、环境很熟悉)。)低风险项目(对目标、环境很熟悉)。 (4)用户使用环境很稳定。)用户使用环境很稳定。 (5)用户除提出需求以外,很少参与开发工作。)用户除提出需求以


文档来源:https://www.renrendoc.com/paper/212714283.html

文档标签:

下载地址