避免软件项目的失败的方法

避免软件项目的失败的方法

软件开发中遇到的问题。
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