当前位置:文档之家› 软件过程模型软件过程模型(重点)

软件过程模型软件过程模型(重点)


适用情况
需要早期获得功能 中间产品可以提供使用 系统被自然地划分成增 量 工作人员和(或)资金 可以逐步增加
原型开发模型
需求分析 快速设计 建立原型 用户评价原型 修改原型 生产产品
6
原型分类
抛弃式原型开发 样品式原型开发 渐增式原型开发
螺旋模型
B.Boehm于1988年提出
7
螺旋模型描述
瀑布模型和增量模型相结合,增加风险分析 用来指导大型软件项目的开发 将开发划分为制定计划、风险分析、实施工 程、客户评估四类活动 沿螺旋线每转一圈,表示开发出一个更完善 的新的软件版本
增量模型特点
在开发每个增量时,开发过程中的活动和任 务顺序地或部分平行重叠地使用 当相继的增量在部分并发地被开发时,开发 过程中的活动和任务可以在构造间平行地被 采用
5
增量模型的使用风险和适用情况
风险
需求未被很好地理解 突然提出一些功能 事先打算采用的技术迅 速发生变化 需求迅速发身变化 长时期内有限的资源投 入
2
瀑布模型特点
(1) 阶段间具有顺序性和依赖性; (2) 推迟实现的观点; (3) 质量保证的观点。
瀑布模型的使用风险和适用情况
使用风险
需求未被充分理解 系统太大而不能一次实 现 事先打算采用的技术迅 速发生变化 需求迅速发生变化 有限的资源 无法利用某一中间产品
适用情况
所有的系统功能一次交 付时 必须同时淘汰全部老系 统时
3
V模型
型号任务 系统需求 系统需求 验证 软件需求 软件需求 验证 概要设计 概要设计 验证 详细设计 详细设计 验证 验证 编码 单元测试 编译后的单元 验证 组装测试 测试后的单元 验证与确认 确认测试 组装后的软件 验证与确认 系统联试 测试后的软件 交付软件
J.McDermid于1994年在“软 件工程师参考手册”中提出
软件过程模型
瀑布模型(传统的,适合于需求明确的系统); 原型模型(传统的,适合于需求不明确的系统); 螺旋模型(原型迭代); 增量模型(分阶段递交软件产品); 喷泉模型(面向对象开发模型); 快速应用开发(RAD)(通P); 并行开发模型(适合于C/S应用);
软件过程模型(重点)
瀑布模型 ; 原型模型 ; 增量模型、迭代模型; 螺旋模型; 基于构件的开发模型; RUP; 喷泉模型;
1
瀑布模型
系统 需求
软件 需求
概要 设计
详细 设计 软件 实现 软件 测试
1970年由W.Royce提出
瀑布模型描述
瀑布模型是传统软件工程的基础; 瀑布模型的基本思想是将软件生命周期划分 为若干明确定义的阶段; 需求捕获是软件生命周期的第一个阶段,上 一个阶段生成规定的软件中间产品(软件文 档,伪码等),传到下一阶段作进一步加 工,最后得到目标产品。 瀑布模型是一个理想化过程。
增量模型
系统 需求 软件 需求
概要 设计
详细 设计
编码 测试
软件1: 运行维护
详细 设计
编码 测试
软件2: 运行维护
4
增量模型描述
预先计划的产品改进 从一套给定的需求开始,通过一系列的迭代 实施开发,第一次迭代纳入一部分需求,下 一次迭代纳入更多的需求,以此类推,直到 系统完成 在每一次迭代中实行必要的过程、活动和任 务
喷泉模型
1990年B.H.Sollers和J.M.Edwards提出 主要用于采用面向对象技术的项目 喷泉体现迭代和无间隙的特征 软件的某些部分常常被重复工作多次,相关 对象在每次迭代中随之加入渐进的软件成分 在分析、设计、实现等各项活动之间无明显 边界
8
RUP模型
软件过程模型的选择
1)模型应符合软件本身的性质(规模、复杂性) 2)模型应满足软件应用系统整体开发进度要求 3)模型应有可能控制并消除软件开发风险 4)模型应有可用的计算机辅助工具(如快速原型工 具)的支持 5)模型应与用户和软件开发人员的知识和技能相匹 配 6)模型应有利于软件开发的管理与控制
9
相关主题