第1章绪论
1.1研究背景
计算机软件在我们的社会生活中扮演着举足轻重的角色。2011年,我国软件行业收入超过2万亿,软件业增加值占国内GDP比重从2001年不足0. 3%上升到超过1%,软件业从业人数由不足30万人提高到超过200万人,计算机软件对社会生活和生产各个领域的渗透和带动力不断增强
计算机软件在发展过程中走过很多弯路,受过很多挫折,至今仍然经受着“软件危机”的困扰。开发高质量软件的能力大大落后于计算机硬件日新月异的进展和社会对计算机软件不断增长的需求,并已经妨碍了计算机技术的进步和发展。当今在激烈的市场竞争态势下,软件产品质量以及快速构建、快速响应需求变化对软件开发企业提出了更加迫切的要求,且已成为软件开发公司能够保持其长期优势和获得更多市场的关键。绝大多数软件企业都意识到要高效率、高质量和低成本地开发软件,必须改善软件开发过程和方法。
由美国国防部与卡内基一梅隆大学和美国国防工业协会共同开发和研制的CMMi(能力成熟度模型集成),作为软件过程规范的代表,也是作为衡量一个组织软件开发能力的标准,得到了国内软件企业的广泛认可CMMI是众多软件专家参与建议、评审和测试的结晶,将软件开发最佳实践分类为若干关键过程域,是软件组织进行软件过程改进和软件过程评估的一个有效的指导框架。CMMi能够使组织更加系统来改善软件开发过程,增强开发与改进能力,从而使得企业能够按时、低成本的开发出高质量的软件。通过实施CMMi,我国软件企业对自身过程改进的意识和能力都有了很大提高,软件开发和管理管理逐步走向了正规化,软件开发能力得到了很大提升。
但软件危机的困扰仍旧没有减弱,很多软件公司依然出现了很多问题。整个软件项目过程中需要遵循的过程越来越多,越来越繁琐,工作效率似乎越来越低下,产品发布周期由曾经一年四个版本缩减到了一年一个版本,在面对大量且频繁的需求变更和越来越紧的开发周期或竞争对手压力时,显得无所适从。软件交付周期长、质量徘徊不前、人员需求短缺、项目成本预算严重超标,人员离职后以为通过CMMI过程文件能够留下项目经验,但是大多数接任者很少查阅过程文件等等问题。
CMMI采用的是传统的瀑布模式开发,核心是通过需求调研一需求分析一>概要设计一详细设计一编码一单元测试一集成测试一系统测试一部署等一系列规范的、完整的“过程域模型”串行流程来保证软件开发质量。在这个过程中,提交的文档相当多,在前期,估计代码规模,开发人员需要提交概要设计说明书、详细设计说明书、单元测试用例、集成测试用例、系统测试用例,QA需要根据这些数据统计用例覆盖率,单元测试和集成测试由开发人员完成,联调之后,便是由测试人员开展的几轮大规模系统内部测试,测试通过后再进行一系列对外测试,直到后期商用。
2001年,为了解决许多实施CMMi的软件企业陷入不断增长的“过程”泥潭,一批业界专家一起概括出了一些可以让软件开发团队具有快速工作、响应变化能力的价值观和原则,创建了敏捷(Agile)联盟,发布了“敏捷软件开发宣言”。敏捷开发是通过充分发挥开发人员的创造性,通过缩短甚至剪裁传统的需求、设计,直接关注软件的核心工作产品一代码,通过开发人员协作,加强测试和沟通来获得快速的开发能力,适应需求的频繁变化的能力。
CTMI强调和固化过程,让程序员遵循过程做事情,原理是只要遵循过程,软件质量就自然得到保障和提高,即软件项目管理过程决定项目成败。敏捷开发主张必须充分发挥开发人员的创造性和能力,不约束他们的想法和能力。表面看来似乎是针锋相对,但管理的核心实质都是明确了一种如何通过项目团队的协调统一,加强团队的开发能力,通过高标准的质量管理来制造出高质量、符合客户需要的软件项目产品的目的,所以两者之间就存在一种相互借鉴,互相融合和促进的可能。
4.4.5 用户提出问题比重太高........ 43-45
4.5 本章小结........ 45-46
第5章 基于CMMI与敏捷开发集成........ 46-62
5.1 集成方案团队组织........ 46-47
5.2 每日站例会........ 47-48
5.3 集成方案软件开发........ 48-60
5.3.1 集成方案软件开发........ 48-49
5.3.2 集成方案需求阶段........ 程 49-53
5.3.3 配置管理过程改........ 53-56
5.3.3.1 CMMI流程下的配........ 53-54
5.3.3.2 集成方案的配........ 54-56
5.3.4 测试过程改进........ 56-59
5.3.5 代码评审改........ 59-60
5.4 本章小结........ 60-62
第6章 集成方案的改进........ 62-66
6.1 工作效率与规范化执行的矛盾问........ 62
6.2 需求传递有效性和需求交........ 62-63
6.3 问题解决及时率得到........ 63-64
总结
当前国内经济出现经济增速同比下降的复杂局面,直真科技所属的软件行业虽然前几年一直保持着高速增长态势,但总体形势同样严峻,只有扩大市场、提高工作效率、降低成本才能够保持长久的发展。
CMMi虽然是目前国际上最流行、最实用的软件过程改进标准,目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时、不超预算的开发出高质量的软件。直真科技经过多年努力顺利在 2007年通过CMMi能力成熟度模型4级认证,但是在面临激烈竞争的商业环境之下,CMMI也体现出缺陷和不足,在软件开发和管理环节,面临着需求交付不及时、问题解决慢、软件质量低等问题,严重影响了客户满意度,阻碍了公司的可持续性发展。
参考文献
[1]中国经济信息网.中国行业分析报告一软件行业(2010年3季度).2010:1-5
[2]中国经济信息网.中国行业分析报告一软件行业(2010年4季度).2010:1-5
[3]克莱布斯等.敏捷项目管理.清华大学出版社.2010
[4]何新贵,王纬,王方德.软件能力成熟度模型.清华大学出版社.2000
[5]张海潘.软件工程导论(第五版).清华大学出版社.2003
[6]斯里格等.软件项目管理与敏捷方法.机械工业出版社.2010
[7]范体军,常香云,李淑霞.运营管理.化学工业出版社.2008
[8] Robert . Martin.敏捷软件开发原则、模式与实践.清华大学出版社.2003. 5-6
[9]科恩等.用户故事与敏捷方法.清华大学出版社.2010
[10]科恩.Scrum敏捷软件开发.清华大学出版社.2010
[11]Barry Boehm, Richard Turuner. Balancing A gility and Discipline A Guide for the Perplexed[M].SanVal Incorporated.2003