[b]序[/b]
调查表明,大约70%的软件开发项目超出了估算的时间,大型项目平均超出计划交付时间20%到50%,90%以上的软件项目开发费用超出预算,并且项目越大,超出项目计划的程度越高
[b]第一章 欢迎学习快速软件开发[/b]
快速开发的成功取决于两个要素:
1,选择有效的实践而不是无效实践
2,选择有利于完成项目锁定目标的实践
面向进度的实践有三类:
1,面向速度的实践:可以提高开发速度,帮助你更快交付软件
2,面向进度风险的实践:可以降低计划风险,帮助你避免更大计划风险
3,面向可视化的实践:可以提高进程可视化程度,帮助你驱散慢速开发的阴云
[b]第二章 快速开发策略[/b]
快速开发的4个支柱:
1,避免典型错误(如产品质量低下)
2,打好开发基础(如系统设计)
3,风险管理(如关键承包商的开发进度落后)
4,面向进度的实践
快速开发的四维:人员、过程、产品、技术
1,人员
从某种程度上讲,我们已经认识到人力因素比其他因素对软件性能与软件质量影响更大
反复的研究发现,经验相当的程序员之间效率的差别也是很大的,甚至达到10:1
技术并不是问题的答案,最有效的实践是那些能够发挥工作人员潜能的实践
人力因素极大地影响着生产效率,同时任何关注提高生产效率的组织首先必须有一套良好的人员激励、团队合作、员工选择及培训的机制
几种发挥人员最大潜能缩短项目周期的方法:
1)项目组成员的选择
绝顶的天才
工作匹配
职业的晋升
团队平衡
排除不称职的人员
2)项目组结构
软件企业会从项目团队与项目规模、产品特点以及进度目标的匹配中受益
3)人员激励
一个缺乏动力的人很难努力工作并达成目标
人员激励是使你能够达成快速开发的最具潜力的方法
2,过程
1)避免重复工作
2)质量保证
3)开发基础
4)[color=red]风险管理[/color]
5)资源目标
6)生命期计划
7)面向客户的开发
3,产品
1)产品规模
2)产品特性
4,技术
选择有效的工具并管理好由此所带来的风险也是争取快速开发主动权的关键之一
[b]第三章 典型错误[/b]
人员篇:
1,挫伤积极性
2,人员素质低
3,对有问题的员工失控
4,英雄主义
5,项目后期加入人员
6,办公环境拥挤嘈杂
7,开发人员与客户之间发生摩擦
8,不现实的预期
9,缺乏有效的项目支持
10,缺乏各种角色的齐心协力
11,缺乏用户介入
12,政治高于物质
13,充满想象
过程篇:
1,过于乐观的计划
2,缺乏足够的风险管理
3,承包人导致的失败
4,缺乏计划
5,在压力下放弃计划
6,在模糊的项目前期浪费时间
7,前期活动不合要求
8,设计低劣
9,缺乏质量保证措施
10,缺少管理控制
11,太早或过于频繁的集成
12,项目估算时遗漏必要的任务
13,追赶计划
14,鲁莽编码
产品篇:
1,需求的镀金
2,功能蔓延
3,开发人员的镀金
4,又推又拉的交易
5,研究导向的开发
技术篇:
1,银弹综合症
2,过高估计了新技术或方法带来的节省量
3,项目中间切换工具
4,缺乏自动的源代码控制手段
建立你自己的最差实践列表,可以避免在以后的项目中犯同样的错误
[b]第四章 软件开发的基本原则[/b]
管理原则:
1,项目估算和进度安排
2,计划编制
3,跟踪
4,度量
技术原则:
1,需求管理
2,设计
3,构建
4,软件配置管理SCM
质量保障原则:
1,易错模块
2,测试
3,技术回顾(走查、代码阅读、检查、技术回顾)
多数有进度问题的软件项目的规模都类似于房屋或更大,对于这种项目,遵循开发的基本原则是可以达到节约时间的目的的
如果你抛开这些指导,那就是在冒风险了
[b]第五章 风险管理[/b]
总体上讲,风险管理由风险评估(风险识别、风险分析、风险优先级)和风险控制(风险管理计划、风险化解、风险监控)组成
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!