文档详情

第1章 软件工程概述课件.ppt

发布:2024-09-02约6.46千字共10页下载文档
文本预览下载声明

第1章软件工程概述*问题定义编码需求分析设计可行性研究运行与维护测试开发时期运行维护时期计划时期(目标与范围说明书)(可行性论证论告)(维护报告)(测试报告)(程序)(设计文档)(需求说明书)1.4.1瀑布模型(WaterfallModel)瀑布模型第1章软件工程概述*1.4.1瀑布模型瀑布模型软件开发具有以下几个特征:1.阶段间的顺序性和依赖性顺序性是指:只有等前一阶段的工作完成以后,后一阶段的工作才能开始;前一阶段的输出文档,就是后一阶段的输入文档。依赖性又同时表明了,只有前一阶段有正确的输出时,后一阶段才可能有正确的结果。第1章软件工程概述*1.4.1瀑布模型2.推迟实现的观点过早地考虑程序的实现,常常导致大量返工,有时甚至给开发人员带来灾难性的后果。瀑布模型在编码以前安排了分析阶段和设计阶段,并且明确宣布,这两个阶段都只考虑目标系统的逻辑模型,不涉及软件的物理实现。把逻辑设计与物理设计清楚地划分开来,尽可能推迟程序的物理实现,这是瀑布型软件开发的一条重要的指导思想。第1章软件工程概述*1.4.1瀑布模型3.质量保证的观点为了保证质量,瀑布型软件开发在各个阶段坚持了两个重要的做法:(1)每一阶段都要完成规定的文档。没有完成文档,就认为没有完成该阶段的任务。(2)每一阶段都要对完成的文档进行复审,以便尽早发现问题,消除隐患。第1章软件工程概述*1.4.2快速原型模型(RapidPrototypemodel)所谓快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成功能的一个子集。第1章软件工程概述*1.4.2快速原型模型第1章软件工程概述*1.4.2快速原型模型快速原型模型是不带反馈环的,软件产品的开发基本上是线性顺序进行的。主要原因如下:(1)原型系统已经通过与用户交互而得到验证,据此产生的规格说明文档正确地描述了用户需求;(2)开发人员通过建立系统原型已经了解了许多与构建系统有关的内容,因此在后面设计和编码阶段犯错的可能性大大降低。第1章软件工程概述*1.4.3增量模型(IncrementModel)使用增量模型开发软件时,把软件产品作为一系列的增量构件来设计、编码、集成和测试。每个构件由多个相互作用的模块构成,并且能够完成特定的功能。 把软件产品分解成增量构件时,应该使构件的规模适中,规模过大或过小都不好。分解时必须遵守的约束条件是,当把新构件集成到现有软件中时,所形成的产品必须是可测试的。第1章软件工程概述*1.4.4螺旋模型(SpiralModel)对于大型软件,只开发一个原型往往达不到要求。螺旋模型将瀑布模型和增量模型结合起来,并加入了风险分析。螺旋模型将开发过程分为几个螺旋周期,每个螺旋周期可分为4个工作步骤:1.确定目标、方案和限制条件;2.评估方案、标识风险和解决风险;3.开发确认产品;4.计划下一周期工作。螺旋模型第1章软件工程概述*1.4.5喷泉模型WaterFountainModel分析系统设计软件设计实现图1.5喷泉模型该模型是由B.H.Sollers和J.M.Edwards于1990年提出的一种新的开发模型。主要用于采用对象技术的软件开发项目。它克服了瀑布模型不支持软件重用和多项开发活动集成的局限性,喷泉模型使开发过程具有迭代性和无间隙性。其特点如下:1、开发过程有分析、系统设计、软件设计和实现4个阶段。2、各阶段相互重叠,它反映了软件过程并行性的特点。3、以分析为基础,资源消耗成塔型。4、反映了软件过程迭代性的自然特性,从高层返回低层无资源消耗。5、强调增量开发,整个过程是一个迭代的逐步提炼的过程。第1章软件工程概述*1.4.6RUP软件开发(1)RUP总结了经过多年商业化验证的6条最有效的软件开发经验,这些经验被称为最佳实践:迭代式开发管理需求使用基于构件的体系结构可视化建模验证软件质量控制软件变更第1章软件工程概述*1.4.6RUP(2)RUP软件开发生命周期核心工作流:RUP有9个核心工作流,前6个为核心过程工作流程,后3个位核心支持工作流程。业务建模需求分析与设计实现测试部署配置与变更管理项目管理环境 第1章软件工程概述*1.4.6RUP(3)RUP工作阶段初始阶段:建

显示全部
相似文档