软件生存周期模型

软件生存周期模型

ID:39416336

大小:384.81 KB

页数:51页

时间:2019-07-02

软件生存周期模型_第1页
软件生存周期模型_第2页
软件生存周期模型_第3页
软件生存周期模型_第4页
软件生存周期模型_第5页
资源描述:

《软件生存周期模型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件工程第三讲软件生存周期模型朱建凯上次课布置的阅读内容问题:什么是基本过程?什么是支持过程?什么是组织过程?软件开发过程的主要活动是什么?每个活动都有什么输出?基本过程:与软件生产直接相关的活动集;支持过程:有关各方按他们的支持目标所从事的一系列相关的活动集;组织活动:与软件生产组织有关的活动集。本次课程重点瀑布模型,其优缺点,适应范围(非常重要)增量模型、演化模型,优缺点,适应范围(重要)螺旋模型、喷泉模型(了解)软件原型和软件重用的概念及其作用(重要)项目生存周期过程(了解)2.2软件生存周期模型1 基本概念称软件生存周期模型为“软件开发模型”,并把它定义为:软件过程、活

2、动、任务的结构框架。系统需求软件需求需求分析设计编码测试运行2 瀑布模型关于瀑布模型的几点说明(1)瀑布模型的优点虽然瀑布模型是一个比较“老”的、甚至过时的开发模型,但其优点为:在决定系统怎样做之前,存在一个需求阶段,鼓励对系统“做什么”进行规约(即设计之前的规约)。在建造构件之前,存在一个设计阶段,鼓励规划系统结构(即编码之前的设计)。在每一阶段结束时进行复审,允许获取方和用户的参与。允许基线和配置早期接受控制。前一步工作产品可作为下一步被认可的、文档化的基线。(2)瀑布模型存在的不足客户必须能够完整、正确和清晰地表达他们的需求;开发人员一开始就必须理解其应用。

3、在开始的两个或三个阶段中,很难评估真正的进度状态;设计、编码和测试阶段都可能发生延期。在一个项目的早期阶段,过分地强调了基线和里程碑处的文档;可能要花费更多的时间,用于建立一些用处不大的文档。当接近项目结束时,出现了大量的集成和测试工作。直到项目结束之前,都不能演示系统的能力。(3)瀑布模型适用的情况在开发中,向下、渐进的路径占支配地位。也就是说,需求已被很好地理解;并且过程设计人员也很清楚:开发组织非常熟悉为实现这一模型所需要的过程(或经过培训后,熟悉什么时候来支持这一项目,以实现这一模型所需要的过程)。因此为了避免产生过多的反复迭代工作,增加开发成本,一般在准备采

4、用瀑布模型(也包括其他模型)时,需要考虑以下2个问题:第一个问题是,过程设计人员必须对初始产品(通常是软件需求规约,SRS)的不确定性进行评估。另一个问题是,组织是否具有熟练实施每个活动和任务的历史经验。13259101167121384增量11,2,5,9增量23,6,7,4,10,11增量38,12,13管理增量规约增量设计纠错性分析增量实现增量1增量2增量33增量模型该模型有一个假设,即需求可以分段,成为一系列增量产品,每一增量可以分别地开发。关于增量模型的几点说明:(1)增量模型的优点作为瀑布模型的第一个变体,具有瀑布模型的所有优点。此外,它还有以下优点:

5、第一个可交付版本所需要的成本和时间是很少的;开发由增量表示的小系统所承担的风险是不大的;由于很快发布了第一个版本,因此可以减少用户需求的变更;允许增量投资,即在项目开始时,可以仅对一个或两个增量投资。(2)缺点:如果增量模型不适于某些项目,或使用有误,则有以下缺点:如果没有对用户的变更要求进行规划,那么产生的初始增量可能会造成后来增量的不稳定;如果需求不像早期思考的那样稳定和完整,那么一些增量就可能需要重新开发,重新发布;管理发生的成本、进度和配置的复杂性,可能会超出组织的能力。注:如果采用增量投资方式,那么客户就可以对一些增量进行招标。然后,开发人员按提出的截止期

6、限进行增量开发,这样客户就可以用多个契约来管理组织的资源和成本。(3)该模型的适用情况在开始开发时,需求很明确,且产品还可被适当地分解为一些独立的、可交付的软件(构造增量:Buildincrements.如果一个增量并不需要交付给客户的话,那么这样的增量通常称为一个“构造”(Build)。如果增量被交付,那么它们就被认为是发布版本(Releasedversion)。);在开发中,期望尽快提交其中的一些增量产品。例如:一个数据库系统,它必须通过不同的用户界面,为不同类型的用户提供不同的功能。在这一情况下,首先实现完整的数据库设计,并把一组具有高优先级的用户功能和界面作为一个增

7、量;以后,陆续构造其它类型用户所需求的增量。需求设计编码测试集成需求设计编码测试集成开发反馈开发反馈...核心系统开发第二次迭代4演化模型(Evolutionarymodel)是一种有弹性的过程模式,由一些小的开发步组成,每一步历经需求分析、设计、实现和验证,产生软件产品的一个增量。通过这些迭代,完成最终软件产品的开发。针对事先不能完整地定义需求针对用户的核心需求,开发核心系统根据用户的反馈,实施活动的迭代关于演化模型的几点说明(1)主要特征该模型显式地把增量模型扩展到需求阶段。由图可

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。