软件生命周期
在 GB8566-88(《软件工程国家标准——计算机软件开发规范》)
中将软件生命周期划分为 8 个阶段:可行性研究与计划、需求分析、概要设计、详细设计、实现、集成测试、确认测试、使用和维护。
所列举的图与开发阶段的对应关系为:
1、需求分析阶段:数据流图。
2、概要设计阶段:模块结构图、层次图和HIPO图。
3、详细设计阶段:程序流程图、伪代码、盒图。
软件开发模型
原型模型
原型模型也称为快速原型,原型主要有两个阶段:
- 原型开发阶段
软件开发人员根据用户提出的软件系统的定义,快速地开发一个原型。该原型应该包含目标系统的关键问题和反映目标系统的大致面貌,展示目标系统的全部或部分功能、性能等。
- 目标软件开发阶段
在征求用户对原型的意见后对原型进行修改完善,确认软件系统的需求并达到一致的理解,进一步开发实际系统。
瀑布模型
瀑布模型是典型的软件生存周期模型。由于该模型描述了软件生存的一些基本过程活动,因此他被称为软件生存周期模型,这些活动从一个阶段到另一个阶段逐渐下降,形式上很像瀑布。
瀑布模型的特点是因果关系紧密相连,前一个阶段工作的结果最后一个阶段工作的输入。
螺旋模型
螺旋模型是在快速原型的基础上扩展而成的,这个模型把整个软件开发流程分成多个阶段,每个阶段都由4部分组件,它们是:
- 目标设定。为该项目进行需求分析,定义和确定这一个阶段的专门目标,指定对过程和产品的约束,并且制定详细的管理计划。
- 风险分析。对可选方案进行风险识别和详细分析,制定解决方法,采取有效的措施避免这些风险。
- 开发和有效性验证。风险评估后,可以为系统选择开发模型,并且进行原型开发,即开发软件产品。
- 评审。对项目进行评审,以确定是否需要进入螺旋线的下一次回路,如果决定继续,就要制定阶段计划
V模型
V模型是一种典型的测试模型,在V模型中测试过程被加在开发过程的后半部分,分别包括单元测试、集成测试、系统测试和验收测试。
快速应用开发
快速应用开发利用了基本构建开发方法的思想,大量采用现成的构件进行系统的开发,所以速度很快。但这种开发,要求系统模块化程度高,因为只有这样,才能更好的利用现有的条件。
构件组装模型
构件组装成软件系统的过程可以分为是三个不同的层次定制、集成和扩展。
3.统一过程(Unified Process,UP)
RUP软件开发生命周期是一个二维的软件开发模型,其中有9个核心工作流,分别为:
业务建模、需求
- 分析设计
- 实施
- 测试
- 部署
- 配置与变更管理
- 项目管理
- 环境
RUP把软件生命生存周期划分为多个循环,每个循环产生产品的一个新的版本,每个循环依次由4个连续的阶段组成,每个阶段完成确定的任务。这四个阶段分别为:
初始阶段:定义最终产品视图与业务模型,并确定系统范围。
细化阶段:设计及确定系统的体系结构