避免软件项目的失败的方法
避免软件项目的失败的方法
软件开发中遇到的问题。
Symptoms of Software Development Problems
- 不准确地理解最终用户的需求
- 不能处理用户需求的变化
- 模块间不能互相结合
- 软件难于维护和扩展
- 太晚发现严重的项目缺陷
- 低劣的软件质量
- 不和接受的软件性能
- 项目组成员各自为政,不能重现谁在何时,何地,为了什么原因修改了什么东西
- 不可靠的建立-发行过程
以上问题的根本原因
Root Causes of Software Development Problems
- 不能胜任的需求管理
- 含糊而不准确的交流
- 脆弱的结构
- 超过处理能力的复杂性
- 在需求、设计和实现之间未被发现的矛盾
- 不充分的测试
- 对项目状态的主观估计
- 由于瀑布式开发,导致减少风险的机会被推迟了
- 不受控制的修改扩散
- 不充分的自动化
成功的实践经验
Best Practice
Best Practices 是一系列商业上被验证的软件开发的方法,当它们一起使用时能消除上述导致软件开发问题的原因。它们之所以被称为 "Best Practice" 并不是因为我们正好能计算它们的价值,而是因为它们被业界成功的组织所广为采用。
- 迭代式的开发 Develop iteratively
- 管理需求 Manage requirements
- 使用基于组件的结构 Use component architectures
- 建立软件的可视化模型 Model the software visually
- 验证质量 Verify quality
- 控制修改 Control changes