第二章 软件开发模型
1. 软件开发模型定义:
是软件开发全部过程、活动和任务的结构框架。
2. 瀑布模型内容及特点:
瀑布模型将软件生存周期的各项活动规定为依固定顺序连接的软干阶段工作,是一种线性模型。各阶段活动为,提出系统需求、提出软件需求、需求分析、设计、编码、测试和运行。每个开发阶段具有以下特征,从上一阶段接受本阶段工作的对象作为输入,对上述输入实施本阶段的活动,给出本阶段的工作成果作为输出传入下一阶段,对本阶段工作进行评审,若本阶段工作得到确认,则继续下阶段工作,否则返回前一阶段甚至更前阶段。瀑布模型最为突出的缺点是该模型缺乏灵活性。
3. 演化模型内容及特点:
演化模型主要针对事先不能完整定义需求的软件开发,其开发过程一般是首先开发核心系统,当核心系统投入运行后,软件开发人员根据用户的反馈,实施开发的迭代过程,每一迭代过 程均由需求、设计、编码、测试、集成等阶段组成,直到软件开发结束。演化模型在一定程度上减少了软件开发活动的盲目性。
4. 螺旋模型内容及特点:
它是在瀑布模型和演化模型的基础上,加入两者所忽略的风险分析所建立的一种软件开发模型。沿螺旋模型顺时针方向,依次表达了四个方面的活动,制定
计划、风险分析、实施工程、客户评估。
5. 喷泉模型内容及特点:
它体现了软件创建所固有的迭代和无间隙特征,喷泉模型主要用于支持面向对象开发过程。
6. 增量模型内容:
在设计了软件系统整体体系结构之后,首先完整的开发系统的一个初始子集,继之,根据这一子集,建造一个更加精细的版本,如此不断的进行系统的增量开发。
7. 瀑布模型、演化模型、螺旋模型之间的联系:相同点是这三个模型都分为多个阶段,而瀑布模型一次完成软件,演化模型分为多次完成,每次迭代完成软件的一个部分,螺旋模型也分为多次完成,每次完成软件的一个新原型,并考虑风险分析。
8. 演化模型和增量模型之间的区别
演化模型首先开发核心系统,每次迭代为系统增加一个子集,整个系统是增量开发和增量提交,增量模型首先完整的开发系统的一个初始子集,然后不断的建造更精细的版本。