软件过程基础
软件过程基础
-
几位质量管理大师的主要贡献
-
休哈特(Shewhart)
-
最早提出"计划-执行-检查"的概念,后来戴明进一步将其发展为PDCA【计划(Plan)、实施(Do)、检查(Check)、行动(Action)】
-
-
戴明(Deming)
-
PDCA循环。Deming最早提出PDCA循环的概念,所以又被称为"戴明环"。
-
-
朱兰Juran
-
朱兰主编的《质量控制手册》被称为当今世界质量控制科学的"圣经",为奠定全面质量管理(TQM)的理论基础和基本方法做出了卓越的贡献
-
质量三部曲:质量计划,质量控制,质量改进
-
朱兰质量螺旋
-
80/20原则
-
-
克劳士比(Crosby)
-
1964年提出了"零缺陷"的概念,即第一次就把事情做对
-
质量改进的基本要素(6C"变革管理的六个阶段")
领悟
承若
能力
沟通
改正
坚持
-
-
哈弗雷(Humphrey)
-
软件过程中采用Crosby的成熟度量化,加入成熟度等级的概念
-
-
-
经典软件过程及其特点
-
CMM
-
将TQM(全面质量管理)的思想运用到软件过程改进中,并根据软件的特殊性提出适合软件开发的成熟度模型
-
-
CMMI
-
整合软件工程(SW)、系统工程(SE)、集成产品(IPPD)开发等专业领域而发表了整合式CMMI
-
-
PSP
-
PSP着重于软件开发人员的个人能力提升,体现在估算能力,计划能力,计划执行以及质量管理等方面。
-
-
TSP
-
一个已经定义的团队构建过程
-
一个团队作业框架
-
一个有效的管理环境
-
-
RUP
-
6条最佳实践
迭代式开发
管理需求
使用基于构件的体系结构
可视化建模
验证软件质量
控制软件变更
-
工作阶段
初始阶段
精华阶段
构建阶段
移交阶段
-
-
敏捷过程
-
极限编程(XP)
短交付周期
验收测试
结对编程
-
由两名开发人员在同一台计算机上共同编写解决一个问题的程序代码,通常一个人编码,另一个人对代码进行审查与测试
测试驱动开发
-
测试先行。在编码之前应该首先设计好测试方案,然后再编程,直至所有测试都获得通过之后才可以结束工作
-
SCRUM
一种迭代增量软件开发过程
-
价值观
个体和交互胜过过程和工具
可以工作的软件胜过面面俱到的文档
客户合作胜过合同谈判
响应变化胜过遵循计划
-
-
ISO/IEC 15504(又名 SPICE)
-
客户供应商过程(CUS)
-
工程过程(ENG)
-
支持过程(SUP)
-
管理过程(MAN)
-
组织过程(ORG)
-
-
ISO9000
-
重点关注"过程质量",强调"持续改进"
-
标准要求从软件项目的合同评审---项目开发-----安装------服务----质量改进------全过程进行完善SQA控制
-
-
敏捷与规范
-
影响敏捷与规范方法选择的五个维度
动态性
危险性
规模
人员
文化
-
-