软件项目中常见的一些风险
Barry Boehm 软件开发风险检查单
软件风险前十列表基于Barry Boehm的著作《Tutorial on Software Risk Management》,IEEE Computer Society,1989
风险 | 风险缓解技术 |
---|---|
人员缺失 | 配置高技能员工;工作匹配;团队组建;培训和职业规划;关键人员尽早安排日程 |
不现实的时间和成本估计 | 多种估计技术;费用设计;增量开发;对过去项目的记录和分析;方法标准化 |
软件功能错误 | 提高软件评价;正式的规格说明方法;用户调查;原型;早期用户手册 |
用户界面错误 | 原型;任务分析;用户参与 |
镀金 | 需求清理;原型;成本-效益分析;费用设计 |
晚期需求变化 | 变更控制;高变更阈值;增量开发(变更推迟) |
外购构件缺陷 | 基准化;审查;正式规格说明;正式合同;质量保证规程和证明 |
外部任务实现缺陷 | 质量保证规程;竞争设计或原型;正式合同 |
实时性能缺陷 | 模拟;基准化;原型;调整;技术分析 |
开发技术过难 | 技术分析;成本-效益分析;原型;员工培训和开发 |
Fairley的四种COTS软件购买风险
Richard Fairley(1994)发表的”Risk management for software projects”,直接购买软件的风险
风险 | 风险描述 |
---|---|
集成 | 为不同的应用进行数据格式的统一和数据交换有困难 |
更新 | 当供应商更新软件之后,有可能不再满足用户最初的需求。坚持使用旧版本意味着丢失了供应商的技术支持 |
没有源代码 | 如果想改进系统,会因为没有源代码导致无法进行改进 |
供应商问题 | 产品供应商有可能不再从事该项业务或者被竞争对手并购 |
一些其他风险项
- 客户群越大,风险越高(pv、用户数等)
- 系统操作越频繁,风险越高(方法被调用次数,引用次数等)
- 场景接近可用,风险越高(核心业务,主干功能)
- 场景失败给客户带来危害越大,风险越高(交易、支付等)
- 场景涉及信息安全和信息泄露,风险越高
- 系统可恢复性难度越大,风险越高
- 团队成熟度越低,风险越高