收藏 分享(赏)

中小型软件企业的项目管理实践研究.docx

上传人:dzzj200808 文档编号:2279593 上传时间:2018-09-09 格式:DOCX 页数:40 大小:424.69KB
下载 相关 举报
中小型软件企业的项目管理实践研究.docx_第1页
第1页 / 共40页
中小型软件企业的项目管理实践研究.docx_第2页
第2页 / 共40页
中小型软件企业的项目管理实践研究.docx_第3页
第3页 / 共40页
中小型软件企业的项目管理实践研究.docx_第4页
第4页 / 共40页
中小型软件企业的项目管理实践研究.docx_第5页
第5页 / 共40页
点击查看更多>>
资源描述

1、中小型软件企业的项目管理实践研究摘要CMM 是软件企业改善软件过程,提高软件企业竞争力的一个重要模型。本文从理论出发,研究 CMM 在我国中小型软件企业中的应用,对于我国中小型软件企业的长远发展具有实际意义。首先,文章对 CMM 以及相关的理论进行了研究。对 CMM 五个等级的内容和结构等方面进行了详细的阐述;由此指出 CMM 对软件企业发展的重要意义;并对 CMM 在我国理论和实践两方面的发攫也予以了介绍。然后,CMM 及其相关理论引出对我国中小型软件企业现状进行分析,并进一步研究 CMM 在我国中小型软件企业中应用的适用性。在我国中小型软件企业实施 CMM 进行战略转变方面的论述中,首先对

2、战略模式进行了探讨,并分析了软件企业实施 CMM 实施过程 ;重点是从组织管理和企业文化建设方面,研究 CMM 的实施; 并分析了关键过程域的持续改进思想。在定性分析的基础上,对中小型软件企业具体实施 CMM 进行了定量分析,即从软件开发流程、组织管理规范性和企业文化三方面建立了成熟度指标体系,分析是否适合 CMM,在哪方面存在不足,应从哪方面进行改进。最后,研究了 CMM 的具体应用框架,即 CMN/PSP(个体软件开发过程)/TSP(小组软件开发过 )框架。即在 CMM 的框架下,以 PSP 为基础,逐步向 TSP 过渡。关键词:CMM:中小型软件企业;战略AbstractCMM is a

3、n important model that can imProve software process andheighter competence of software enterprise. Based on theory,thisdissertation maices a research on the application of CMM into small and medium sized software enterprise in china, so it has the practical sense of the development of these enterpri

4、ses.Above all, the theory of CMM and relative theorise are studied.The contentsOn five leves and structure are expounded in details. Moreover, the dissertation Sets forth the sense of CMM, the academic and practical development of CMMIn china.Secondly, the application into small and medium sized sof

5、tware enterprise inChina is discussed.In the analyse of strategic transition, the strategic model and process areDiscussed. From the sides of organize management and corporate culture, the Implement and continuous improvement are studied.Based the pualitative research, a puantitative research about

6、CMM is madeIn software process,organize management and corporate culture.Lastly, the frame of CMM/PSP/TSP is studied. Based on CMM, software Enterprise can improve by virlue of PSP and TSP.Key words:CMM;Small and Medium Sized Software Enterprise;Strategy 第 1 章绪论1. 1 论文研究的背景、意义21 世纪是信息社会高速发展的世纪,软件作为信

7、息技术的核心,起着至关重要的作用。随着信息产业的发展,人们日益关注软件开发过程中管理的规范化及标准化间题,软件质量的提高对任何一个企业或集蒸的生存和发展都有举足轻重的意义。本论文所讨论的由美国卡内基梅隆大学 SEI(软件工程研究所)提出的CMM(CaPability Maturity Model 软件能力成熟度模型) ,该模型提供了一个软件工程成果和管理方法的框架,是专门针对软件企业如何保证软件产品的质量和提高软件企业的管理水平而设计的,自 90 年代初正式提出以后,己在北美、欧洲和日本成功地应用,且前全球通过 CMM 五级的企业已有 13 家,三级以上的 100 余家,二级的 240 多家,

8、现在该模型已成为事实土的软件过程改进的工业标准。该管理方法在国外己得到普遍重视,但在国内还是一种新的管理方法。目前全球软件销售额已达到 2700 亿美元,今后几年软件和信息服务的市场规模将有一个巨大的发展,然而我国软件销售额还不到世界市场的 0.42%。我国软件企业除少数几家在 500 人以点,多数是在 50 人以下的民营、集体和个人的软件公司,中国的软件企业大多数仍然处于一种手工作坊式运营阶段,质量和效率观念都不强,在技术和产品本身与国际市场接轨方面更是一片空白。我国己经正式加入 WTO,软件产业将全面面对国际软件行业的冲击,而我国的软件刚刚起步,在很多方面仍有不完善之处,软件企业的不成熟,

9、管理原因远远大于技术原因,研究 CMM,利用 CMM 提升我国软件企业的综合能力,提高竞争力,才能在世界软件行业中有立足之地。CMM 的意义不仅仅是对软件开发的过程进行管理,最关键是一种高效的管理方法,有助于企业最大程度的降低成本,提高质量和用户满意度,而这正是中国软件业与美国、印度软件业最大的差越之处。美国软件业发达的一个重要原因就是:无论规模大小,绝大多数企业都按照规范化的工作方法管理软件循环过程,始终把最终用户放在软件产品供应优化和质量控制的中心。为了加快我国软件产业的结构调整和发展,必须吸收国外运用高新技术促进软件企业升级换代的成功经验,在软件企业中实施 CMM,有利于软件企业提高软件

10、开发的管理能力、提高软件生产率和加强软件生产的国际竞争力,这也就是本文要对 CMM 进行研究并在软件企业中加以应用的原因。但是CMM 在中国的应用不能照搬照抄,必须符合中国国情,研究 CMM 的目的就是为了总结出一套适合我国软件企业尤其是中小型软件企业的理论和实践。从理论和实践上讲,国外对 CMM 的研究已取得成就,但考虑到我国这样的后发展国家特殊的环境和条件,这方面切实可行的理论却是稀薄的,立足于中小型软件企业进行研究,总结出有实际意义的理论,力求理论上有所创新,并普及到其他类型的软件企业当中,得出更具一般性的 CMM 实践理论。1.2 国内外 CMM 理论研究及实践综述CMM 不仅是一个模

11、型,一个工具,它更代表了一种管理哲学在软件工业中的应用。CMM 的管理思想来源于已有 60 多年历史的产品质量管理。 1 930年,Walte;Sheward 率先提出了一整套基于统计学原理的质量控制方法,这些方法后来经过 W.Ewaeds Deming 和 Joseph juran 的发展和实践得到了广泛的应用.Philip crosby 在质量是免费的一书中率先提出将质量管理形成成熟度框架的概念, “质量管理成熟度坐标图表”描述了进行质管实践的 5 个阶段,表达了质量管理的全部运作。Deming 、Juran 以及 Crosby 等人的做法后来被称为全面质量管理(TQM) 理论。在 IBC

12、I 公司,Watts Humphrey 和 Ron Radice 将这种全面质量管理的思想应用于软件工程过程,收到了很大的成效。S EI 的软件能力成熟度框架就是在以.u.pr 为主的软件专家实践经验的基础上发展而来的。软件能力成熟度框架中融合了全面质量管理的思想,以 5 个不断进化的层次反映了软件过程定量控制中项目管理和项目工程的基本原则。 CMM 的工作最早开始于 1 986 年 11 月,当时为了满足美国联邦政府调估软件供应商能力的要求,美国卡内基梅隆大学的软件工程研究院(SEI)牵头,在1 公司的协助下,亨弗雷等人于 1 987 年 9 月发布了一份能力成熟度框架(C aPabilit

13、y MaturityFework),提出了软件过程、软件能力成熟度禾成熟度等级等概念,以及一套成熟度问卷(Maturity Questionnaire),用来评估软件供应商的能力,这就是最早用于探索软件过程成熟度的一个工具。SEI 总结了自 1987 年以来对成熟度框架和初版成熟度问卷的实践经验,并以此为基础,于 1991 年推出了 CMMI.0 版,正式形成了软件能力成熟度CMM。CMM 标准共分五个等级,分别为:初始级、可重复级、定义级、管理级和优化级,CMM 为软件的过程能力提供了一个阶梯式的改进框架,它基于以往软件工程的经验教训,提供了一个基于过程改进的框架图。这个模型可以更加有效地帮

14、助软件企业建立和实施过程改进计划。CMM 1.0 版使用两年之后, SEI 于 1 992 年四月进行了一个研讨会,会后又于 1993 年推出了 CMMI.1 版。此后,.CMU/SEI 基于几年来将框架运用到软件过程方面所取得的经验,进一步扩展和精炼了该模型,SEI 于 1999 年又推出了 CMM2.0 版本,同时进入了 IEO 体系,采纳了 ISO/IEC TR 15504 软件过程评估国际标准的一些内容和方法,因而保证了 CMM 与国际标准的一致性。目前,CMM 已经发展到 CMMI( Capability Maturity Model Integration, 能力成熟度模型集成)阶

15、段。CMMI 把系统工程能力成熟度模型、软件能力成豪度模型、集成的产品和过程开发(IPPD)以及软件采办能力成熟度模型集成宅一起,形成一个集成的 CMM。主要目的是消除不同模型之间的不一致和重复可以更好的发挥模型集成后的整体效益。实践表明,软件项目或软件开发组织的软件能力成熟度的提高,如果没有个体的过程意识和过程能力的支持讲是无济于事的,针对上述问题,1995年亨弗雷等人又提出了个体软件过程(Personal Sofrware Process,PSP)框架,该框架可用于控制、管理和改进个人软件工作方式的自我改善过程,CMM侧重于宏观管理,而 PSP 侧重于微观优化,二者相互支持,互相补充。以上

16、内容体现了国际上 CMM 的发展状况,在中国, CMM 理论研究基本上都是从国外拿来的,未真正体会这些理论产生的过程和背景。但是这些理论多是以美国等先进国家为主导的,对发展中国家的企业实践几乎没有研究,也没有相应的理论。我国在 CMM 上也进行了努力,根据我国一些大型工程项目的需求,在国内外情况和技术资料充分调研和分析的基础上,参照 CMM的总体框架,提出了一个符合我国国情和软件开发水平的软件能力成熟度模型 CSCMM,该模型除了必要的适应性改造外,在总体框架和具体内容方面完全与国际接轨,标志着我国对 CMM 的研究开始国情化。在实践上,国内目前已有 5 家金业通过了 CMMZ、3 级认证,浪

17、潮集建受 CMM 启示,并拓展了 CMM 概念及应用范畴,与清华大学管理学院合作,共同推出了“管理过程平滑改进模型” ,意味着我国己经从理论上开始对 CMM模型升华。1.3 论文的总体思路和研究方法1.3.1 论文的总体思路本文J 总体思路是以研究 CMM 豹理论和实践为主线,借签管理学、软件工程学、.企业战略、组织管理和企业文化的相关理论,从理论出发,研究CMM 在我国中小软件企业中的应用。首先,文章对 CMM 及其相关理论进行研究。研究了该理论的发展,并对 CMM 五个等级的内容和结构等方面进行了详细的阐述;出此指出 CMM对软件企业发展的重要意义;并对 CMM 在我国理论和实践两方面的发

18、展也予以了介绍。然后,由 CMM 及其德关理论引出对我国中小型软件企业现状进行分析,并进一步研究 CMM 在我国中小型软件企业中应用的适用性。在我国中小型软件企业实施 CMM 进行战略转变方面的论述中,首先对战略模式进行了探讨,并介绍了软件企业实施 CMM 的实施过程 :重点是从组织管理规范和企业文化建设方面,依据意义、CMM 要求、可行性分析和具体实施内容的思路展开,并分析了关键过程域的持续改进思想。在定性分析的基础上,对中小型软件企业具体实施 C 人 4M 进行了定量分析,即从软件开发流程、组织管理规范性和企业文化三方面建立了成熟度指标体系,通过多级模糊评价方法,分析特定的企业是否适合 C

19、MM、在哪方面存在不足,从哪方面进行改进;并进行实证分析。 实施 CMM,不能单纯谈 CMM,必须结合 PSP(个体软件开发过程)和TSP(小组软件开发过程 )两种相关方法,即在 CMM 的框架下,以 PSP 为基础,逐步向 TSP 过渡。1.3.2 论文的研究方法本文采用理论与实践相结合,定性分析与定量计算相结合的研究方法,力求提出一套对我国中小型软件企业实施 CMM 切实可行的方法。1.4 论文的创新之处本论文的创新之处主要体现在以下四点:1 .是专门针对软件企业开发软件过程而设计的,本文以软件技术为基础,徽是不拘泥于繁琐的软件开发的具体技术,而是结合我国中小型软件企业的具体情况,从管理学

20、的角度来研究如何利用 CMM 提升我国中小型软件企业的竞争优势。2.本论文站在战略管理的高度对我国中小软件企业实施 CMM 进行研究,将战略思想融入 CMM 的实践中。CMM 的实施本身就是对软件企业组织管理和企业文化的改造,我国的软件企业由于比较稚嫩,企业原有的纵织管理和企业文化不适合 CMM 的实施,如何改变原有的组织管理和企业文化,也是本文重点研究的方面之一。组织管理和企业文化在管理学上占有重要地位,既然 CMM 的目标在于提升软件企业的管理能力,因此必须研究企业文化、组织管理和 CMM 的互动性。3.本文认为中小型软件企业实施 CMM 应遵循持续改进思想,注重从企业的组织管理、企业文化

21、和关键过程域等方面协同改进,以取得预期的效果。4.本文定性和定量分析相结合,建立了中小型软件企业成熟度指标分析模型,从技.术流程规范性、组织管理和企业文化三方面对企业进行评估,对中小型软件企业实施 CMM 有一定的指导意义。本论文在理论研究的基础上,以我国中小型软件企业实施 CMM 为契机,注重理论和实践结合,并具有一定的可推广性。第 2 章 CMM 及其相关的理论研究2. 1 CMM 的理论研究2. 1. 1 CMM 的起源及其理论发展2.1.1.1 CMM 提出的实践背景1.软件开发技术的发展状况50 年代,软件开发主要用于科学快速计算,开发方法依靠逻辑能力和方展高技巧;60 年代,软件开

22、发进入商业、银行等领域,以“软件工程 ”来解决“软件危机” ,其特点是强调开发的可见性来支持开发管理70 年代,主要是大量的各种类型的非数值计算的商业事物应用,并涉 b大量智能颂域,开发方法有两大发展:一是数据结构与算法;蒸是结构化交析与设计。软件工程提出了瀑布模型;80 年代,软件开发用于以数据库为中心的计算机信息系统,出现了关牙数据库的客户/服务器计算,出现了 CMM,面向对象技术崛起;90 年代,处理的不仅是文字、数据、符号,而是多媒体,因特网遍布世界,出现了 JAVA 语言,开发方法强调集成,软件开发过程已从目标管理转向过程管理,追求过程改进。2.软件及其特殊性软件相对于硬件而言,包括

23、计算机运行时所需要的各种程序,一般分为系统软件和应用软件。一般来说,软件包括三层含义,第一,个体层次,包括计算机系统中的程序及文档,程序是计算机任务处理的对象加规则的描述,文档是理解程序所需的辨述性文件;第二,整体层次,指在特定的计算机系统中,所有上述个体层次的总称;第三,学科层次,指研究、开发、维护和使用软件过程中涉及的理论、方法、技术所构成的学科。随着软件需求的快速增长,软件应用中塞现的问题越来越多:软件成本高。随着计算机技术的进步,生产规模的扩大,介格不断下降,软件成本在计算机系统中所占的比例越来越大,计算机硬件的由 50 年代的 10%一 20%到现今的 70%左右,对软件的管理成为计

24、算机系统中的主要部分。软件开发的进度难于控制。软件是一种逻辑系统,设计软件比设计硬件所使用的逻辑量要多 10 到 100 倍。为完成一个复杂的软件系统,需要建立一个庞大的逻辑体系。此外,n 样的软件算法在程序实现上的差别也非常大,加之在软件开发过程可能遇到各种意想不到的问题,所以投入的资源能否出结果,出什么样的结果,事先很难预料。软件这一特点,不仅给项目计划和论证工作带来很大的困难,而且很难保证按预定计划实现。估计软件工作量困难。一方面软件开发是逻辑思维过程,在写出程序并在计算机运行之前,软件开发的进展情况难于衡量,质量也难于评价,因而其工作量很难估计;另一方面,开发一个大型软件系统,往往需要

25、成百上千人分工协作。由于软件系统的结构很复杂,各部分联系密切,大量的通信、后勤工作增大了工作量。软件质量难于保证。软件的质量问题与其他商品的质量问题有很大不同,通为软件设计人员与用户对计算机的理解有很大距离,这样在需求分析上就难免存在差距。此外,在软件开发过程中,即使有很多文档,.大量的素材仍在程序员的头脑中,软件也只有程序清单,这样导致软件的维护十分困难。修正维护软件困难。随着时间的推移,在不同的运行条件下,软件会出现故障,需要维护。要想高效率、高质量和低成本地开发软件,必须以改善软件生产过程为中心,全面开展软件工程和质量管理乎段,这是各国软件产业迟早都要走的道路。吕前,CMM(能力成熟度模

26、型)是国际上普遍采用的一种方法,同时也是比较实用的软件生产过程标准,因为它是结合质量管理和软件工程的双重经验,专门针对软件生产过程制定的一套规范。2.1.1.2 CMM 提出的理论基础一种新管理方法的次现,必然有其发展的思想来源和历史背景。CMM的技术报告指出:CMM 的思想内核及其结构是基于几个推行产品质量的科学家的理论。这些学者是:沃尔特,谢华特(Walter Shewart)、艾华茨戴明(WEwards Deming)、约瑟夫佐兰(Joseph Juran)和罪力浦,克罗斯比(Philip Crosby)。 30 年代,谢华特在贝尔实验室工作时,最先提出了一套运用统计学质量管理的控制原则

27、。此后,统计学戴明和佐兰将其理论加以完善并付诸实践。后来戴明又提出了一种称为戴明链式反应的现象,内容如下:1.一个企业改进它的生产过程并且坚持不懈地按此运动;2.质量得到改进:3.因为减少了返工、错误和延误,设计的更好,更有效地使用资源,成本得到下降;4.因为上升了的质量及降低了的售价,产品的市场占有率提高了;5.利润得到增加。戴明、佐兰及其他学者的这些做法,被人们称为全面质量管理(TQM,Total Quality Management),戴明也被誉为现代质量思想理论的鼻祖。另一个质量管理学家克罗斯比,在 1979 年成立了质量管理研究所,专门从事质量问题的研究。很多大公司都是他的客户,例如

28、,通用汽车、摩托罗拉等。后来全面质量管理(TQM) 思想被 IBM 公司的罗恩拉德斯(Ron Radice)和瓦茨汉弗莱.(Watts Humphrey)应用于软件工程。1 986 年,汉弗莱从 IBM退休后,加入 SEI。他所带去的思想和实践就成为以后的 CMM 的主要基础。1987 年, SEI 发表了 CMM 研究报告。CMM 是软件企业追求高质量发展的指南,他以几十年产品质量概念和软件工业的经验及教训为基础,为企业软件能力不断走向成熟提供了有效的步骤和框架。2.1.1.3 CMM 的发展过程及发展方向1.CMM 的发展过程1986 年 11 月,SEI 应美国联邦政府的要求,在 Mit

29、re 公司的协助下,于1987 年 9 月开发了一套软件程度问卷,用来评估软件供应商的能力,这就是最早用于探索软件过程成熟度的一个工具.1991 年,SEI 总结了成熟度框架和初版成熟度问卷的实践经验,并以此为基础推出了 CMMI.0 版。1992 年,SEI 召集 200 多名富有经验的软件专家,举行了一个 CMM 研讨会,在广泛听取他们意见的基础上,于 1993 年推出了 CMMI.1 版。这也就是目前世界上比较流行的、通用的 CMM 版本。现在己经发展到 2.0 版本。十几年来,此项工作一直在不断进行。目前,SEI 己经发布了 CMMI (capability maturity moda

30、l integration)即能力成熟度模型集成,把现有的岁及将被发展出来的各种能力成熟度模型,集中到一个框架中,通过这个框架,一方面对软件获取方法改革,另一方面建立一种从集成产品与过程发展的角度塞发,包含健全豹系统开发原则的过程改进。随着对 CMM 研究的不断深入,其他学科也结合本系统的特点,陆续推出自己的 CMM 模型。例如,人力资源能力成熟度模型 (P-CMM,people-CMM),系统工程能力成熟度模型(SE-CMM,System Engineering CMM)等等。2.CMM 的发展方向软件过程成熟度的提高是一个渐进的过程,需要一个长远的、可持续发展的过程作为保证。为建立一个面向

31、过程持续提高的基础和文化,有些软件企业可能要花费很大的精力和时间,粗这种努力对任何一个软件企业来说都是非常必要的。尽管 CMM 还存在着某些不足,例如,成熟级别、关键过程域、公共属性和关键实践还需要在软件行业进一步深入地讨论和修订,但 CMM 代表着软件发展的一种思路,一种提高软件过程能力的途径,为软件行业的发展提供了一个良好的框架,而且是尝试软件过程能力提高的有用工具。软件过程评估、软件能力评价、过程提高等几方面仍然需要进行测试,与 CMM 相关的产品和墉训材料也要进行适当豹开发和修订。辫时 SEI 也在与国际标准化组织合作,致力于建立一个关于软件过程评价、提高和能力评估的国际标准。这项计划

32、将许多不同的过程提高的方法集成为一个整体概念。n 时,ISO 标准的发展将影响 CMM,CMM 提出了成熟的软件过程的实践,说明了一个有效的软件过程的特征,俊并不是教条化的。成熟的企业确定的是所有对项目的成功有餐实质影响的问题,包括人力、技术以及过程。总之,CMM 提出了一个以有纪律、协调的方式提高软件产品的管理和开发工作的概念结构。虽然他并不能保;一定能成功地生产出高质量的软件产品,也不能保证能够解决软件工程中出现的所有问题。2.1.2 CMM 的内容和结构2.1.2.1 专业术语软件过程:是指用于开发和维护软件及其相关产品所采取的一系列活动。其中软件相关产品包括项目计划、设计文档、源代码、

33、.测试用例和用户手册。软件产品的质量主要取决于产品开发和维护的软件过程的质量。一个有效的、可视的软件过程能够将人力资源、物力设备和实施方法结合成一个有机的整体,并为软件工程师和高级管理者提供实际项缉的状态和性能,从而可以监督和控制软件过程的进行。软件过程能力:软件过程本身具有的按预定计划生产产品的固有能力。一个组织的软件过程能力为组织提供了预测软件项龚开发的数据基础。软件过程性能:表示软件过程执行的实际结果。一个项目的软件过程性能取决于内部子过程的执行状态,只有每个子过程的性能得到改善,相应的成本、进度、功能和质黛等性能指标才能得到控制。软件过程成熟度:是指一个具体的软件过程被明确地定义、管理

34、、评价、控制和产生实效的程度。成熟意味着软件过程能力改善的潜力,同时也表明组织(企业) 实施软件过程的实际水平。成熟级别的改善需要强有力的管理支持,成熟级别的改善包括管理者和软件开发人员基本工作方式的改变。2.1.2.2 内容SEI 将 CMM 定义为:对于软件组织在定义、实现、度量、控制和改善其软件过程中各个发展阶段的描述。这个模型便于确定软件组织的现有过程的能力和查找软件质量及过程改进方面最关键的问题,从而为选择过程改进战略提供指南。CMM 把软件过程的成熟度分为五级,五个等级标志着企业软件开发能力的成熟度。CMM 指明了一个成熟的软件组织在软件开发方面需要管理的有哪些主要工作,这些工作之

35、间的关系以及以怎样的先后次序做好这些工作,从而使软件组织逐步走向成熟。CMM 为软件企业的过程能力提供了一个阶梯式的进化框架,阶梯共有五级。第一级实际上是一个起点,任何准备按 CMM 体系进化的企业都自然处于这个起点上,并通过这个起点向第二级迈进。除第一级外,每一级都设定了一组目标,如果达到了这组目标,则表明达到了这个成熟级别,可以向下一个级别迈进。CMM 体系不主张跨越级别的进化,因为从第二级起,每一个低的级别实现均是高级别实现的基础。2.1.2.3 结构1.CMM 体系结构任何一个软件的开发、维护和软件组织的发展离不开软件过程,而软件过程经历了从不成熟到成熟、从不完善到完善豹发展过程,这需

36、要持续不断地对软件过程进行改进,CMM 就是根据这一指导思想设计出来的。该模型为了正确和有序地引导软件过程活动的开展,建立一个能够有效地描述和表示的软件过程改进的框架,使其能够对各阶段软件过程的任务和管理起指导作用。该模型以产品质量的概念和软件工程的经验教训为基础,指导企业如何控制开发、维护软件的生产过程和如何制定一套与之相适应的软件工程及管理体系,指导软件企业通过判断自身当前的过程成熟度,针对软件质量和过程提高中最为关键的问题,来选择过程的提高策略。(l)分级标准CMM 模型描述和分析了软件过程能力的发展程度,确立了一个软件过程成熟度的分级标准。一方面软件组织利用它可以评估自已当前的过程成熟

37、度,并以此提出软件质量标准和过程改进的方法和策略;另一方面该标准也可以作为用户对软件组织的评价标准。初始级 CMMI,初始级的软件过程是未加定义的随意过程,项目的执行是随意甚至是混乱的。也许,有些企业制定了一些软件工程规范,但若这些规范未能覆盖基本的关键过程要求,且执行没有政策、资源等方面的保证时,那么它仍然被视为初始级。可重复级 CMM2,根据多年的经验和教训,人们总结出软件开发的一首要问题不是技术问题而是管理问题。因此,第二级的焦点集中在软件管理过程上。一个可管理的过程则是一个可重复的过程,一个可重复的过程则能逐渐进化和成熟。第二级的管理过程包括了需求管理、项目管理、质量管理、配置管理和子

38、合同管理五个方面。其中项目管理分为计划过程和跟踪与监控过程两个过程。通过实施这些过程,从管理角度可以看到一个按计划执行的且阶段可控的软件开发过程。定义级 CMM3,在第二级仅定义了管理的基本过程,而没有定义执行的步骤标准。在第三级则要求制定企业范围的工程化标准,而且无论是管理还是工程开发都需要一套文档化的标准,并将这些标准集成到企业软件开发标准过程中去。所有开发的项目需根据这个标准过程,剪裁出与项目适宜的过程,并执行这些过程。过程的剪裁不是随意的,在使用前需经过企业有关人员的批准。管理级 CMM4,第四级的管理是量化的管理。所有过程需建立相应的度量方式,所有产品的质量(包括工作产品和提交给用户

39、的产品) 需有明确的度量指标。这些度量应是详尽的,且可用于理解和控制软件过程和产品。量化控制将使软件开发真正变成为一种工业生产活动。优化级 CMMS,第五级的目标是达到一个持续改善的境界。所谓持续改善是指可根据过程执行的反馈信息来改善下一步的执行过程,即优化执行步骤。如果一个企业达到了这一级,那么表明该企业能够根据实际的项目性质、技术等因素,不断调整软件生产过程以求达到最佳。以上 CMM 五个级别的划分,给出了软件组织开展实施活动的应用范畴。CMM1 是一个起点,大部分准备按 CMM 体系进化的软件企业都自然处于这个起点上,并通过这个起点向 CMM2 迈进。每一级都设定了一组目标,如果达到了这

40、组目标,则表明达到了这个成熟级别,自然可以向下一级别迈进。从 CMM2 开始,每一个低级别的实现均是高级别实现的基础。这种分级方式使得 CMM 模型具有了可操作性,软件组织可以通过这种方式达到自己的目标。(2)体系内容为了保证软件组织在每个成熟度级别的具体操作,CMM 详细规定了其内部结构。除第一级以外的每个成熟度级别都由若干个关键过程域组成,各关键过程域中规定了执行约定、执行能力、执行活动、度量和验证的标准等。CMM 模型划分为 5 个级别,共计 18 个关键过程域,52 个目标,300 多个关键实践。2.1.2.4 内部结构1,内部结构描述除 CMM1 外,CMM 的每一级是按完全相同的结

41、构构成的。每一级包含了实现这一级目标的若干关键过程域(KPA),每个 KPA 进一步包含若干关键实施活动(KP),无论哪个 KPA,它们的实施活动都统一按五个公共属性进行组织,即每一个 KPA 都包含五类 KPAv (l)关键过程域所谓关键过程域是指一系列相互关联的操作活动,这些活动反映了一个软件组织改进软件过程时必须集中力量改进的几个方面,即标识了达到某个成熟度级别所必须满足的条件。关键过程域的实施对达到该成熟度等级的目标起到保证作用。在 CMM 中每个成熟度级 (CMMI 除外) 规定了不同的关键过程域,一个软件组织如果达到了某一个成熟度级别,就必须完全满足关键过程域所规定的不同要求。在

42、CMM 中一共有排个关键过程域,分布在2 一 5 级中,其在 CMM 实践中起到了至关重要的作用。从管理、组织和工程方面划分,关键过程域可以归结为下图所示的情况。表 2.1 CMM 关键过程域(2)目标CMM 中的目标是指某个关键过程域中的关键实践,它表示每一个关键过程域的范围、边界和意图。用目标可以判断一个组织(企业 )或项目是否有效地实施某关键过程域所规定的内容。即目标是检验关键过程域是否满足的一个指标。(3)公共特性 (Cammon Features )公共属性就是把每个关键过程域的所有关键实线按照它们的属性进行分组。无论哪个 KPA,它们的关键实施都统一按五个公共属性进行组织。以下是每

43、个 KPA 的五个公共属性。实施保证(Communifment to Perform .实施保证是企业为了建立和实施相应KPA 所必须采取的行动,这些行动主要牵涉到企业范墓的政策和高层管理的责任。实施能力(Abillty to Perform)。实施能力描述为了使某软件过程得以始终如一地执行的必须在项目或企业中存在的先决条件,是企业实施 KPA 的前提条件。企业必须采取措施,在满足了这些条件后,才有可能执行 KPA 的实践活动。实施能力关注于项目计划的实践;资源的配.置;责任的布置与授权;以及各种有关的培训等,这些都是为了执行这个关键过程域的活动而对特定人以及作为整体的机构的能力开发起非常重要

44、作用的事务。实施活动(Activities Performed).实施活动描述了执行 KpA 所需求的必要行动、任务和步骤。在五个公共属性中,实施活动是唯一与项目执行相关的属性,其余攀个属性则涉及企业 CMM 能力基础设施的建立。实施活动一般包括计划,执行的任务、任务执行的跟踪等。度量和分析(Measurement and Analysis)。度量和分析关注于这个关键过程域的活动需要作的度量和度量分析要求。典型的度量和度量分析的要求是确定执行活动的状态和执行活动的有效性。实施验证(Verifying Implementation)。实施验证是验证执行活动是否与建立的过程一致,核实以确保所实施的

45、过程是按照原定的计划以及达到其目标,着眼于保证过程的实现要通过独立的个人和高级管理人员验证。涉及到管理的评审和审计以及质量保证活动,包括:过程执行的确保,产品要求的确保,高层管理人员进行的审核和项目经理进行的审核。 (4)关键实践对关键过程域的实践起关键作用的方针、规程、措施、活动以及相关基础设施的建立。关键实践一般只描述”做什么”而不强制规定”如何做” 。整个软件过程的改进是基于许多小的、渐进的步骤,而不是通过一次革命性的创新来实现的,这些小的渐进步骤就是通过一些关键实践来实现。2.1 .3 CMM 对软件企业的意义2.1.3.1 对成熟组织和不成熟组织进行比较企业要通过选择最关键的目标来进

46、行过程改进,首先应该搞清成熟的软件过程和不成熟的过程之间的差异。表 2.2 不成熟软件组织与成熟软件组织对照表2.1.3.2 CMM 对软件企业的意义CMM 提高了软件的可视性、可预测性,提高了软件过程能力,降低了风险,具体体现在下表:表 2.3 CMM1-5 可视性与过程能力CMM 重视软件的可重用性,减少成本、提高效率 ;CMM 尽量避免了由于不规范的人员交流和不规范文档造成的开发困难;CMM 强调培训工作,提高管理人员的风险意识和决策能力;CMM 促进了管理机制的改进,明确了分工,确定了每个部门的改进重点和发展方.向;通过 CMM 的实施,使用户更加信任通过认证的企业的产品,同时企业也扩

47、大了市场,增强了竞争力并得到持续发展。通过 CMM 对软件过程的合理控制,可以有效控制软件开发的流程,同时软件质量也将有明显提高。随着 CMM 级别的提高,软件可靠性将有数量级的改进,以目前业界的通行标准:每千行源代码所包含的 BUG 数,CMMI级为 11.95 个,CMM2 为 5.52 个,CMM3 为 2.39 个,CMM4 为 0.92 个,而CMM5 则只有 0.32 个。在可靠性提高的同时,CMM5 软件开发周期是 CMM1的 36%,而生产成本是 CMM 的 19%,平均每个软件开发人员的生产率会提高四倍。2. 2 相关理论研究在讨论 CMM 在我国中小型软件企业中应用的问题,

48、不应仅仅局限于软件工程层面上,因为 CMM 在我国中小型软件企业中应用涉及到管理学的方方面面,即,企业战略管理、组织管理和企业文化。2. 2. 1 企业战略理论的研究2.2.1.1 企业战略管理的定义所谓企业战略,是在市场经济高度发展的条件下,企业以超越对手、发展自己为目的,以争夺顾客、争夺市场为主要内容,所展开的一系列带有全局性、根本性和长远性的谋划。企业战略管理是依据企业外部环境和自身条件的状况及其变化制定并实施战略,并根据对实施过程与结果的评价和反馈来调整、制定新战略的过程。企业战络管理豹吕的是为企业的持续生存和不断发展提供一种管理上的保证。2.2.1.2 企业战略管理的主要特点1.战略

49、管理对象的全面性企业战略管理的对象,是对企业发展全过程的管理,是对企业整体的全方位管理。一个战略管理的过程,就是所谓战略周期,如同人的生命周期一样,有始有终。对于企业成长发展来说,企业战略问题总是不断出现,即企业上一个战略周期结束之后,新的战略周期应不间断地立即投入运行.随着时间的推移,企业战略管理不断取得成功,企业的兴旺发达就是必然的了。2.战略管理工作的中心环节是维持动态平衡企业战略管理工作的中心环节,是寻求企业资源能力和外部环境的动态平衡。企业战略管理工作涉及的面是很全的,时间也很长,即所谓全面性、根本性和长远性。2.2.2 组织管理理论的研究2.2.2.1 组织管理的基本理论所谓企业的组织管理是指企业为了达到经营目标,把必须要做的各种业务活动进行分类分层,形成职务 Z 职位结构,并赋予恰当而明确的责任和权限,规定相互之 n 协调的关系,形成正式的人际关系。或者说,现代管理组织是以工作为媒介、以人为中心,正式的职位结构。2.2.2.2 企业组织管理的要求经营目标是设置管理组织的基本依据,经过努力要达到的期望或标准。企业经营目标不同,其管理组织设置也会有所不同 企业管理组织的确定需要充分理解业务和管理工作内容,业务和管理工作内容越少,组织机构越精炼。影响管理的跨度和层次的因素有,管理的复杂性、管理者处理相互关系的频

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报