软件项目特点PPT

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

增量选择的标准不同 ----- 面向进度 面向需求清晰度 面向风险 面向优先级
21
RAD
小组1
系统分析
小组2
系统分析
小组2
系统分析
软件需求分析
软件需求分析
软件需求分析
软件需求设计
软件需求设计
软件需求设计
设计 编码
设计 编码
设计 编码
测试
测试
测试
维护
维护

22
RAD
❖ 强调极短的开发周期(60-90天) ❖ 强调复用,以体现快速 ❖ 是瀑布模型的变种 ❖ 系统可以被适当的模块化 ❖ 主要用于信息系统应用软件的开发 ❖ 开发阶段:
9
• 软件开发模式
10
软件工程过程
❖常规过程
系统分析 软件需求分析 软件设计 编码 软件测试
❖生命周期模型
瀑布模型 (线形模型) 增量模型 RAD:Rapid Application Development 螺旋模型
11
模型介绍
系统分析 软件需求分析 软件需求设计 设计
5
The complication to develop a big software project is not less than to build the Pyramid
110,000,000 LOCS IN WINDOWS 95
6
市场需求的模糊
What to do ?
7
Change
The technology and the word of computer change too fast
本的需求,但很多补充的特性(已知和未 知)还没有发布 ❖具有迭代的特征,每一个增量均发布一个 可操作的产品
19
增量模型
❖优点
❖适应市场快速的要求 ❖可以有计划的管理技术和其他风险 ❖测试中可以得到立即的反馈
❖缺点
❖产品的整体性能易受影响 ❖1+1+1>3
20
增量模型 ---- 变种
Full System
Reqts High-Level Analysis Design
Increment 1
Detail Design
Build
Test Release
Increment 2
Detail Design
Build
Test Release
Increment 3
Detail Design
Build
Test Release
编码 测试
瀑布模型
维护
12
瀑布模型
❖ 优点
❖易于理解,广泛采用 ❖强调设计前定义和编码前设计,易于控制 ❖确定了何时交付产品以及何时评审、审查,易于管理
❖ 缺点
❖对于一个大项目来说,要看到结果需要很长的时间 ❖依赖于大家知道的、稳定的、 理解的客户需求 ❖很难跟踪需求到程序代码 ❖对于需求的错误,可能直到结束的时候才能被发现 ❖开发者经常被不必要的耽搁
basic
c
oo
EJB
java
C++
Our experience and the models become invalid quickly 8
项目管理中的问题
? 对客体目标的误解 ? 客户需求定义不够详细 ? 不切实际的主体目标 ? 无计划的任务分派 ? 没有足够的资源或必要的技术 ? 效率低下的沟通 ? 优先级相互冲突 ? 变更失控 ? 组织间的矛盾冲突
13
模型介绍
瀑布模型变种---生鱼片
系统分析 软件需求分析
软件需求设计 设计
编码
测试
维护
14
模型介绍
瀑布模型变种---XXXX
系统分析 软件需求分析 软件需求设计
设计
编码 测试
设计
编码 测试
维护
15
模型介绍
需求收集和提炼 快速设计
建立提炼原型
用户评价反馈
接受 确定需求 抛弃原型,开始设计
快速原型
Increment 1
Detail Design
Build
Test Release
Increment 2
Detail Design
Build
Test Release
Increment 3
Detail Design
Build
Test Release
18
增量模型
❖融合了瀑布模型的基本成分(重复地应用) ❖第一个增量往往是核心产品,即实现了基
3
失败的原因
– 需求 ------- 51%
– 计划和估算 --- 48%
– 新技术 ----- 45%
– 管理
----42%
– 人员(高级技术人员) --- 42%
4
软件项目特点
• 发展快 • 经验失效快 • 复杂度高 • 主要依靠人的脑力劳动 • 过程可见性差 • 结果难于测试 • 市场模式不完善
16
快速原型模型
❖优点
❖用户需求清晰,减少了误解的可能性 ❖便于后续设计和管理 ❖增强信心
❖缺点
❖原型易当产品
❖开发原型需要投入,原型的度难以把握
❖需要用户参与
❖没有较好的文挡,用户确认形式要注意
❖容易产生乐观的估计
17
增量模型
Full System
Reqts High-Level Analysis Design
Commitment Partition
Spiral Model
Cumulative
Cost
wenku.baidu.com
Risk analysis
Prototyping
Plan Next Phases
Develop, Verify Next -Level Product
25
螺旋模型
❖是一个演化的软件过程模型 ❖是一系列的增量发布 ❖分为若干的任务区域,每一区域含有一系
软件项目特点
李锋
1
失败项目案例
• 丹佛国际机场行李处理系统

--- 需求不清晰完整
• Xxxxx 医药股份

---- 需求变动
• 佛罗里达救济系统

---- 测试不充分
• On Technology

----- 计划拙劣
2
失败项目案例
• 智能电子 • F-26 • Confirm
---新技术 --- 新技术 --- 缺乏人员
业务建摸:客户和开发者一起 数据建摸 处理建摸 应用生成:可视化编程,使用计算机辅助软件工程工具
23
RAD模型
❖优点
❖开发速度快 ❖可以分割风险
❖缺点
❖小组接口定义困难 ❖需要足够的人力和技能
24
螺旋模型
Determine objectives, alternatives, constraints
列适应待开发项目的特点的工作任务
26
螺旋模型
❖优点
❖体现了开发的迭代性 ❖综合了瀑布模型和快速原型的优点
❖缺点
❖需要相当的风险评估的专门技术,其成功依赖 于这种技术
❖某些风险的忽视,将导致严重后果 ❖理解操作困难,没有广泛使用,缺乏相关范例
27
JAD
相关文档
最新文档