1.需求不明确
2.系统设计的结构性缺陷
3.设计文档残缺,需求设计等文档没有保持同步更新
4.测试的完整性和深入性
5.违反软件开发流程
6.不遵守编码规范
7.开发不按照设计文档进行
8.对发现的bug不重视
9.项目经理对项目进度、质量
1978年,麦考尔(McCall)等人提出了从软件质量要素、准则到度量的三层模型
3个层次:
产品运行、产品维护、产品迁移
11个因素:
(产品运行5个因素):正确性、完整性、可靠性、效率、可使用性
(产品维护3个因素):可维护性、可测试性、灵活性
(产品迁移3个因素