• 1.4.1 概述
• 1.4.2 传统软件过程
• 1.4.3 RUP
• 1.4.4 敏捷过程
• 1.4.5 微软过程
典型的过程模型:
当在后面阶段发现前面阶
段的错误时,需要沿图中
左侧的反馈线返回前面的
阶段,修正前面阶段的产
品之后再回来继续完成后
面阶段的任务
• Rapid Prototype Model
– 所谓快速原型是快速建立起来的可以在计算机上运行的
程序,它所能完成的功能往往是最终产品能完成的功能
的一个子集。
– 过程:
• 快速建立一个能反映用户主要需求的原型系统
• 用户试用,提出意见
• 修改原型,直到用户满意
• 书写规格说明文档
• 开发软件
• 软件产品的开发基本上是线性顺序进行的。
• 原型系统已经通过与用户交互得到验证,据此产生的规格说明文
档正确地描述了用户需求,因此不会进行较大的返工。
• 开发人员通过建立原型系统已经学到了许多东西,因此,在设计
和编码阶段发生错误的可能性也比较小,减少了在后续阶段需要
改正前面阶段错误的可能性。
开发人员应该尽可能快地建造出原型系统,以加速软件开
发过程,节约软件开发成本。原型的用途是获知用户的真
正需求,一旦需求确定了,原型将被抛弃。因此,原型系
统的内部结构并不重要,重要的是,必须迅速地构建原型
然后根据用户意见迅速地修改原型
• 增量模型也称为渐增模型。
• 使用增量模型开发软件时,把软件产品作为一系列
的增量构件来设计、编码、集成和测试。每个构件
由多个相互作用的模块构成,并且能够完成特定的
功能。
– 能在较短时间内向用户提交可完成部分工作的产品(分批地
逐步向用户提交产品,整个软件产品被分解成许多个增量构件,开发
人员一个构件接一个构件地向用户提交产品)
– 逐步增加产品功能可以使用户有较充裕的时间学习和适应
新产品,从而减少一个全新的软件可能给客户组织带来的
冲击
– 软件体系结构必须是开放的,易于扩充;
– 在把每个新的增量构件集成到现有软件体系结构中时,必
须不破坏原来已经开发出的产品。
– 业务建模
– 数据建模
– 过程建模
– 应用生成
– 测试及反复
使用原型及其他方法来尽量降低风险。理解这种模型的一
个简便方法,是把它看作在每个阶段之前都增加了风险分
析过程的快速原型模型。
项目越大,软件越复杂,承担该项目所冒的风险也越大。
软件风险可能在不同程度上损害软件开发过程和软件产品
质量。