整理资料在前辈基础上进行,侵权致歉,可删。
仅第一部分展示,后面内容见百度云盘
链接:https://pan.baidu.com/s/1ZOYviAZ5UQrsyGnsZaioZQ?pwd=1111
提取码:1111
第一章基础
1、几位质量管理大师的主要贡献
休哈特:计划-执行-检查(Plan-Do-See);质量改进的奠基人
戴明:PDCA-Circle【计划(Plan)、实施(Do)、检查(Check)、行动(Action) 】
朱兰:《质量控制手册》、全面质量管理(TQM)、适用性、三部曲、质量螺旋、80/20原则
克劳士比:“零缺陷”、6C、质量成熟度的量化
Watts Humphrey瓦茨·汉弗莱:软件质量之父,其主要贡献为:
提出CMM(软件能力成熟度模型)理论;
将TQM(Total Quality Management,全面质量管理)的思想运用到软件过程改进中;
力推个体软件过程(Personal Software Process,PSP)和团队软件过程(Team Software Process,TSP);
巴利·玻姆Barry Boehm:敏捷与规范是可以平衡的(五个维度),COCOMO模型。软件工程七原则。
2、经典软件过程及其特点
Watts Humphrey的软件过程观点:
1.软件系统的质量取决于用以开发和改进它的过程质量。
2.解决软件问题的重要一步是把整个软件工作当作一个过程来对待,使其能够控制、度量和改进。
3.软件过程是我们用以开发软件产品的一套工具、方法和实践。
4.软件过程管理的目标是按计划生产产品,同时提高软件组织的能力,以利于生产出好的产品。
5.成本估算和开发期安排的承诺应该是比较合理的,开发出的产品应该在功能和质量方面都能满足用户的期望。
6.有效的软件管理必须考虑所要完成的任务,所采用的方法和工具,以及参与工作人员的技能、培训和积极性。
7.有效的软件过程必须是可预测的。
提到的几个点:
(1)软件能力成熟度模型(Capability Maturity Model,CMM)
(2)PSP着重于软件开发人员的个人能力提升、TSP能够提供一个已经定义的团队构建过程;一个团队作业框架;一个有效的管理环境。
(3)统一过程 (RUP)
最佳实践:
迭代式开发;管理需求;使用基于构件的体系结构;可视化建模;验证软件质量;控制软件变更
生命周期工作阶段:初始阶段,精化阶段,构建阶段,移交阶段
- 敏捷过程:极限编程、SCRUM(scrum)
(5)ISO/IEC 15504 (又名SPICE)
(6)ISO 9000,重点关注“过程质量”,强调“持续改进”。合同评审——项目开发——安装——服务——质量改进——全过程进行完善的SQA控制
(7)平衡敏捷与规范