资源描述
单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,大连海事大学,*,单击此处编辑母版标题样式,2025/3/19 周三,可编辑,0,软件工程与项目管理,第三章,软件项目生命周期模型,2025/3/19 周三,可编辑,1,本章要点,一、生存期模型定义,二、常用生存期模型,三、案例分析,2025/3/19 周三,可编辑,2,建筑工程类项目典型生存期模型,2025/3/19 周三,可编辑,3,软件生命周期,软件生命周期(,SDLD,),是指从软件开始开发到报废的全过程,亦称,软件生存期(,life cycle,),。一般用经典的瀑布模型来描述。,2025/3/19 周三,可编辑,4,GB 8567,中规定,软件生命周期分为,7,个阶段:,1.,可行性研究和项目开发计划,2.,需求分析,3.,概要设计,4.,详细设计,5.,编码,6.,测试,7.,维护,2025/3/19 周三,可编辑,5,在大部分文献中将生存周期划分为,5,个阶段,即需求定义、设计、编码、测试及维护。其中需求定义阶段包括可行性研究和项目开发计划、需求分析,设计阶段包括概要设计和详细设计。,为了描述软件生存期的活动,提出了生存期模型。,2025/3/19 周三,可编辑,6,软件生存期模型,软件开发的一种框架。,说明了软件的活动和进行软件开发的过程。,2025/3/19 周三,可编辑,7,软件生存期模型特征,描述了开发的主要阶段,定义了每一个阶段要完成的主要过程和活动,规范了每一个阶段的输入和输出,提供了一个框架,可以将必要的活动映射到该框架中。,2025/3/19 周三,可编辑,8,本章要点,一、生存期模型定义,二、常用生存期模型,三、案例分析,2025/3/19 周三,可编辑,9,常用生存期模型,瀑布,Waterfall,V,模型,V-shaped,原型,Prototyping,增量,Incremental,螺旋式,Spiral,快速应用开发,RAD,渐近式阶段,2025/3/19 周三,可编辑,10,本章要点,一、生存期模型定义,二、常用生存期模型,瀑布,V,模型,原型,增量,螺旋式,快速应用开发,渐近式阶段,三、案例分析,2025/3/19 周三,可编辑,11,WaterFall model,瀑布模型是将软件生存周期各活动规定为依线性顺序联接的若干阶段的模型。,2025/3/19 周三,可编辑,12,WaterFall model,需求分析,设计,实施,测试,维护,2025/3/19 周三,可编辑,13,2025/3/19 周三,可编辑,14,WaterFall model,适合的项目,项目的需求在项目开始前很明确,解决方案在项目开始前也很明确,类似的项目如:,公司的财务系统,库存管理系统,短期项目,2025/3/19 周三,可编辑,15,本章要点,一、生存期模型定义,二、常用生存期模型,瀑布,V,模型,原型,增量,螺旋式,快速应用开发,渐近式阶段,三、案例分析,2025/3/19 周三,可编辑,16,V,模型,接收测试,集成测试,系统测试,项目规化,需求分析,总体设计,详细设计,编码和调试,集成测试,单元测试,2025/3/19 周三,可编辑,17,V,模型模型适合的项目,项目的需求在项目开始前很明确,解决方案在项目开始前也很明确,对系统的性能安全很严格的项目,类似的项目如:,航天飞机等,公司的财务系统,2025/3/19 周三,可编辑,18,本章要点,一、生存期模型定义,二、常用生存期模型,瀑布,V,模型,原型,增量,螺旋式,快速应用开发,渐近式阶段,三、案例分析,2025/3/19 周三,可编辑,19,Prototype,2025/3/19 周三,可编辑,20,Prototype,模型适合的项目,项目的需求在项目开始前不明确,需要减少项目需求的不确定性,类似的项目如:,确定显示界面,第一次开发的产品,验证可行性,2025/3/19 周三,可编辑,21,本章要点,一、生存期模型定义,二、常用生存期模型,瀑布,V,模型,原型,增量,螺旋式,快速应用开发,渐近式阶段,三、案例分析,2025/3/19 周三,可编辑,22,Incremental Model,核心功能,核心功能,1,1,2,1,2,3,第一增量,第二增量,第三增量,核心功能,1,1,2,1,2,3,2025/3/19 周三,可编辑,23,增量模型适合的项目,项目开始,明确了需求的大部分,但是需求可能会发生变化,对于市场和用户把握不是很准,需要逐步了解,对于有庞大和复杂功能的系统进行功能改进,就需要一步一步实施的,2025/3/19 周三,可编辑,24,本章要点,一、生存期模型定义,二、常用生存期模型,瀑布,V,模型,原型,增量,螺旋式,快速应用开发,渐近式阶段,三、案例分析,2025/3/19 周三,可编辑,25,Spiral Model,2025/3/19 周三,可编辑,26,Spiral Model,螺旋模型沿着螺线旋转,在四个象限上分别表达了四个方面的活动,即:,制定计划,确定软件目标,需求和选定实施方案,弄清项目开发的限制条件,风险分析,评估所选方案,考虑如何识别和消除风险,实施工程,实施软件开发,编码,测试等,客户评估,评价开发工作,提出修正建议,规划下期任务,2025/3/19 周三,可编辑,27,Spiral Model,适合的项目,风险是主要的制约因素,不确定因素和风险限制了项目进度,用户对自己的需求也不是很明确,需要对一些基本的概念进行验证,可能发生一些重大的变更,项目规模很大,项目中采用了新技术,2025/3/19 周三,可编辑,28,本章要点,一、生存期模型定义,二、常用生存期模型,瀑布,V,模型,原型,增量,螺旋式,快速应用开发,渐近式阶段,三、案例分析,2025/3/19 周三,可编辑,29,RA,2025/3/19 周三,可编辑,30,RAD,规划,分析,设计,构建,测试,规划,后置,传统开发,快速应用开发,后置,压缩,2025/3/19 周三,可编辑,31,RAD,模型适合的项目,很小并且具有探索性质的项目,适合一个复杂度从小到大变化的项目,例如重整企业的信息系统,2025/3/19 周三,可编辑,32,本章要点,一、生存期模型定义,二、常用生存期模型,瀑布,V,模型,原型,增量,螺旋式,快速应用开发,渐近式阶段,三、案例分析,2025/3/19 周三,可编辑,33,最常用的渐进式阶段模型,综合了增量模型和螺旋式模型的一个实用模型,渐进式前进,阶段式提交,2025/3/19 周三,可编辑,34,渐进式迭代模型,34,2025/3/19 周三,可编辑,35,阶段性完成规划,2025/3/19 周三,可编辑,36,渐进式阶段模型的特点,阶段式提交一个可运行的产品,关键的功能更早出现,早期预警问题,避免软件缺陷不知不觉的增长,减少报告负担,阶段性完成可以降低估计失误,阶段性完成均衡了弹性与效率,2025/3/19 周三,可编辑,37,渐进式阶段模型适合的项目,可以适合任何规模的项目,主要是中型或大型项目,希望随时看到未来的项目,2025/3/19 周三,可编辑,38,银行业务系统的生存期实例,产品阶段,1,设计,业务需求分析,原形系统分析,项目规划,集成测试,产品阶段,1,开发,产品阶段,n,设计,产品阶段,n,开发,确认测试,产品提交,银行业务需求,原形系统源代码,项目规划,项目规划,2025/3/19 周三,可编辑,39,产品阶段,1,设计,阶段目标:设计公共控制系统功能模块,输入:系统设计文件,数据库结构定义,过程:,详细设计,输出:详细设计文件,时间计划:,2001/1/15-2001/2/15,(暂定),2025/3/19 周三,可编辑,40,其它模型,其他,例如,:Code and fix,自定义,2025/3/19 周三,可编辑,41,Code and fix,需求了解,编码、走查,编译、检错,修正,编写文档,提交,修正,测试,2025/3/19 周三,可编辑,42,选择生存期的步骤,熟悉各种生存期模型,评审、分析项目的特性,选择适合项目的生存期模型,标识生存期模型与项目不一致地方,并进行裁减,2025/3/19 周三,可编辑,43,Rational,统一开发过程,2025/3/19 周三,可编辑,44,本章要点,一、生存期模型定义,二、常用生存期模型,三、案例分析,2025/3/19 周三,可编辑,45,案例分析,“,School,项目,”,应该采用什么,生存期模型,?,2025/3/19 周三,可编辑,46,学生成绩管理主要包括数据维护、成绩查询和成绩统计等三大功能模块。其中数据维护应实现班级、学生、课程和课程成绩等信息的录入、修改和删除等功能;成绩查询包括按学生查询其所有课程的成绩、按课程查询所有学生的成绩、按课程和班级查询所有学生的成绩;成绩统计包括按学生统计学分、平均成绩、班级名次和不及格课程门数,按课程统计学生平均成绩、及格率、优良率(,80,及以上为优良)。,2025/3/19 周三,可编辑,47,按照以上需求陈述,回答以下问题。,如果采用增量模型开发上述系统,请画图表示该系统的生命周期模型?,根据学生成绩管理系统的功能要求,对系统进行分解,建立系统的,WBS,?,
展开阅读全文