文档介绍:软件开发流程Software Development Process
软件生命周期:软件生命周期是软件产品或系统一系列相关活动的全周期。
1
软件定义:确定软件开发总目标;确定工程的可行性;导出实现策略及系统功能;估计资源和成本,并且制定工程进度表。
2
软件开发:具体设计和实现在前一个时期定义的软件
3
软件维护:使软件持久地满足用户的需要。
、、
、、、
软件产品或系统一系列相关活动的全周期
软件定义
软件开发
可行性分析
需求分析
总体设计
详细设计
编 码
测 试
软件发布
软件运行
软件维护
软件维护
问题定义
系统设计
系统实现
1. 问题定义
“要解决的问题是什么?”
确定用户要求解决的性质、工程的目标和规模。
2. 可行性研究
“对于上一个阶段所确定的问题有行得通的解决办法吗?”
经济可行性、技术可行性、法律可行性、不同的方案
3. 需求分析
“为了解决这个问题,目标系统必须做什么”
确定系统必须具有的功能和性能,系统要求的运行环境,并且预测系统发展的前景。
规格说明书(specification)
4. 总体设计(概要设计)
“概括地说,应该怎样实现目标系统?”
设计出实现目标系统的几种可能的方案。推荐一个最佳方案。
5. 详细设计
“应该怎样具体地实现这个系统呢?”
设计出程序的详细规格说明。
6. 编码和单元测试
写出正确的容易理解、容易维护的程序模块
仔细测试编写出的每一个模块。
7. 综合测试
集成测试和验收测试,现场测试或平行运行
8. 软件维护
使系统持久地满足用户的需要。
改正性维护,适应性维护,完善性维护,预防性维护。
IEC12207软件生命周期
ISO/IEC15504软件过程
软件过程
任务框架,各项任务的工作步骤
运用方法的顺序、文档资料、管理措施,各个阶段的里程碑
生命周期模型或过程模型
典型的过程模型
瀑布模型(Waterfall model)
快速原型开发模型(Rapid Prototyping model)
增量模型(Incremental model)
螺旋模型(Spiral model)