项目管理通常被认为是第二次世界大战的产物(如美国研制原子弹的曼哈顿计划),事实上,项目管理历史源远流长,其发展大致经历了以下阶段:
(1) 古代 其代表作如我国的长城、埃及的金字塔、古罗马的供水渠这样不朽的伟大工程。我国汴梁古城的复建也可称为成功项目管理的典型例子。
(2) 近代项目管理的萌芽 在四五十年代主要应用于国防和军工项目。美国把研制第一颗原子弹的任务作为一个项目来管理,命名“曼哈顿计划”。美国退伍将军莱斯利·R·格罗夫斯(L.R.GROVES)后来写了一本会议录《现在可以说了》(Now it can be told: The story of the Manhattan Project),详细记载了这个项目的经过。
(3) 近代项目管理的成熟 20世纪50年代后期,美国出现了关键路线法(CPM)和计划评审技术(PERT)。项目管理的突破性成就出现在20世纪50年代。1957年,美国的路易斯维化工厂,由于生产过程的要求,必须昼夜连续运行。因此,每年都不得不安排一定的时间,停下生产线进行全面检修。过去的检修时间一般为125小时。后来,他们把检修流程精细分解,竟然发现,在整个检修过程中所经过的不同路线上的总时间是不一样的。缩短最长路线上工序的工期,就能够缩短整个检修的时间。他们经过反复优化,最后只用了78个小时就完成了检修,节省时间达到38%,当年产生效益达100多万美元。这就是至今项目管理工作者还 在应用的著名的时间管理技术"关键路径法",简称CPM。就在这一方法发明一年后,美国海军开始研制北极星导弹。这是一个军用项目,技术新,项目巨大,据说当时美国有三分之一的科学家都参与了这项工作。管理如此庞大的尖端项目难度是可想而知了。而当时的项目组织者想出了一个方法:为每个任务估计一个悲观的、一个乐观的和一个最可能情况下的工期,在关键路径法技术的基础上,用"三值加权"方法进行计划编排,最后竟然只用了4年的时间就完成了预定6年完成的项目,节省时间33%以上。60年代这类方法在由42万人参加,耗资400亿美元的“阿波罗”载人登月计划中应用,取得巨大成功。此时,项目管理有了科学的系统方法。现在,CPM和PERT常被称为项目管理的常规“武器”和经典手段。当时主要运用在军事工业和建筑业,项目管理的任务主要是项目的执行。
(4) 项目管理的传播和现代化 1969年,美国成立了一个国际性组织 PMI (Project Management Institute),即美国项目管理学会,它是一个有着近5万名会员的国际性学会,是项目管理专业领域中最大的由研究人员、学者、顾问和经理组成的全球性专业组织。这个组织的出现极大地推动了项目管理的发展。尔后PMI一直致力于项目管理领域的研究工作,1976年,PMI提出了制定项目管理标准的设想。经过近十年的努力,于1987年推出了项目管理知识体系指南(Project Management Body of Knowledge),简称 PMBOK。这是项目管理领域又一个里程碑。因此,项目管理专家们把八十年代以前称为“传统的项目管理”阶段,把八十年代以后称为“新的项目管理”阶段。这个知识体系把项目管理归纳为范围管理、时间管理、费用管理、质量管理、人力资源管理、风险管理、采购管理、沟通管理和整合管理九大知识领域。PMBOK又分别在1996年和2000年进行了两次修订,使该体系更加成熟和完整。20世纪70~80年代,项目管理迅速传遍世界其他各国,当时,我国CPM为统筹法(这是华罗庚教授首先将其介绍到国内时,根据其核心思想为它取的名称)。项目管理从美国最初的军事项目和宇航项目很快扩展到各种类型的民用项目。其特点是面向市场迎接竞争,项目管理除了计划和协调外,对采购、合同、进度、费用、质量、风险等给予了更多重视,初步形成了现代项目管理的框架。
(5) 现代项目管理的新发展 进入20世纪90年代,又跨越了世纪之交,项目管理有了新的进展。为了在迅猛变化、急剧竞争的市场中迎接经济全球化、一体化的挑战,项目管理更加注重人的因素、注重顾客,注重柔性管理,力求在变革中生存和发展。在这个阶段,应用领域进一步扩大,尤其在新兴产业中得到了迅速的发展,比如通信、软件、信息、金融、医药等现代项目管理的任务已不仅仅是执行任务,而且还要开发项目、经营项目,以及为经营项目完成后形成的设施、产品和其他成果必要的条件。
而通常项目管理专家把项目管理划分为两个阶段:
² 80年代之前为传统的项目管理阶段
² 80年代之后为现代项目管理阶段。
六十年代,项目管理的应用范围也还只局限于建筑、国防和航天等少数领域,如美国的阿波罗登月项目。因在阿波罗登月计划中取得巨大成功,由此风靡全球。国际上许多人对于项目管理产生了浓厚的兴趣。并逐渐形成了两大项目管理的研究体系,即:以欧洲为首的体系--国际项目管理协会(IPMA),以美国为首的体系--美国项目管理协会(PMI),在过去的30多年中,他们都做了卓有成效的工作,为推动国际项目管理现代化发挥了积极的作用。(后面将详细介绍)。60年代初华罗庚教授将这种技术在中国普及推广,称作统筹方法,我们现在通常称为网络计划技术。
进入九十年代以后,随着信息时代的来临和高新技术产业的飞速发展并成为支柱产业,项目的特点也发生了巨大变化,管理人员发现许多在制造业经济下建立的管理方法,到了信息经济时代已经不再适用。制造业经济环境下,强调的是预测能力和重复性活动,管理的重点很大程度上在于制造过程的合理性和标准化。而在信息经济环境里,事务的独特性取代了重复性过程,信息本身也是动态的、不断变化的。灵活性成了新秩序的代名词。他们很快发现实行项目管理恰恰是实现灵活性的关键手段。他们还发现项目管理在运作方式上最大限度地利用了内外资源,从根本上改善了中层管理人员的工作效率。于是纷纷采用这一管理模式,并成为企业重要的管理手段。经过长期探索总结,在发达国家中现代项目管理逐步发展成为独立的学科体系和行业,成为现代管理学的重要分支。
用一句话来给一个学科体系下定义是十分困难的,但我们可以通过美国项目管理学会在《项目管理知识指南》中的一段话来了解项目管理的轮廓:"项目管理就是指把各种系统、方法和人员结合在一起,在规定的时间、预算和质量目标范围内完成项目的各项工作,有效的项目管理是指在规定用来实现具体目标和指标的时间内,对组织机构资源进行计划、引导和控制工作。"
项目管理的理论来自于管理项目的工作实践。时至今日,项目管理已经成为一门学科,但是当前大多数的项目管理人员拥有的项目管理专业知识不是通过系统教育培训得到的,而是在实践中逐步积累的。并且还有许多项目管理人员仍在不断地重新发现积累这些专业知识。通常,他们要在相当长的时间内(5-10年),付出昂贵的代价后,才能成为合格的项目管理专业人员。正因为如此,近年来,随着项目管理的重要性为越来越多的组织(包括各类企业,社会团体,甚至政府机关)所认识,组织的决策者开始认识到项目管理知识、工具和技术可以为他们提供帮助,以减少项目的盲目性。于是这些组织开始要求他们的雇员系统地学习项目管理知识,以减少项目过程的偶发性。在多种需求的促进下,项目管理迅速得到推广普及。在西方发达国家高等学院中陆续开设了项目管理硕士、博士学位教育,其毕业生常常比MBA毕业生更受到各大公司的欢迎。
项目管理是一种特别适用于那些责任重大、关系复杂、时间紧迫、资源有限的一次性任务的管理方法。近几年来,随着国际、国内形势的发展,这类任务越来越多,人们对项目管理的呼声越来越强烈,专业界的活动也日益频繁。国际项目管理发展的现状和特点是什么,我国应该如何发展项目管理,已成为政府部门和各行各业共同关注的问题。
目前,在欧美发达国家,项目管理不仅普遍应用于建筑、航天、国防等传统领域,而且已经在在电子、通讯、计算机、软件开发、制造业、金融业、保险业甚至政府机关和国际组织中已经成为其运作的中心模式,比如AT&T、Bell(贝尔)、US West、IBM、EDS、ABB、NCR、Citybank、Morgan Stanley(摩根。斯坦利财团)、美国白宫行政办公室、美国能源部、世界银行等在其运营的核心部门都采用项目管理。
分析当前国际项目管理的发展情况,我们可以用三大特点,三个热点来概括。
三大特点是:
² 全球化的时代特点
² 多元化的行业特点
² 专业化的学科特点
三个热点是:
² 证书制热
² 培训热
² 软件热
一、当今国际项目管理发展三大特点:
1、项目管理的全球化发展。
知识经济时代的一个重要特点是知识与经济的全球化。因为竞争的需要和信息技术的支撑,促使了项目管理的全球化发展。具体体现是:
² 国际间的项目合作日益增多。国际间的合作与交流往往都是通过具体项目实现的。通过这些项目,使各国的项目管理方法、文化、观念也得到了交流与沟通。
² 国际化的专业活动日益频繁。现在每年都有许多项目管理专业学术会议在世界各地举行,少则几百人,多则上千人,吸引着各行各业的专业人士。
² 项目管理专业信息的国际共享。由于Internet的发展,许多国际组织已在国际互联网上建起了自己的站点,各种项目管理专业信息可以在网上很快查阅。例如美国PMI 的"A Guide to the Project Management Body of Knowledge"整本书都可以从网上查阅或下载。
项目管理的全球化发展既为我们创造了学习的机遇,也给我们提出了高水平国际化发展的要求。
2、项目管理的多元化发展。
由于人类社会的大部分活动都可以按项目来运作,因此当代的项目管理已深入到各行各业,以不同的类型,不同的规模而出现。在行业性方面,建筑业的项目实践历史最悠久,随后是20世纪40年代美国的国防工业,继而是各行各业,现在也受到了高科技产业及各种社会大型活动的重视,开始在这些领域发挥它的作用。在项目类型方面有各种不同角度的理解,如宏观、微观,重点、非重点,工程、非工程,硬项目、软项目等。正是因为项目类型的多样化,有的项目是指大类,如城市建设项目,技术改造项目,有的项目则是指一件小的具体任务,如筹办一次运动会,举办一个培训班等等,莫衷一是,很不规范。反映在项目的规模上,也有类似情况,项目的范围有大有小,时间有长有短,涉及的行业、专业、人员也差别很大,难度也有大有小,因此出现了各种各样的项目管理方法。
3、项目管理的专业化学科发展。
在这方面近十年来项目管理也有了明显的进展,主要反映在以下三个方面:
² 项目管理知识体系(PMBOK)在不断发展和完善之中。美国PMI从1984年提出至今,数易其稿,并已将其作为该组织专业证书制考试的主要内容。欧洲IPMA和其他各国的项目管理组织也纷纷提出了自己的体系。
² 学历教育从学士、硕士到博士,非学历教育从基层项目管理人员到高层项目经理形成了层次化的教育培训体系。
² 对项目与项目管理的学科探索正在积极进行之中,有分析性的,也有综合性的,有原理概念性的,也有工具方法性的。国际项目管理组织目前正在积极筹备建立有关国际机构与论坛,以求发展全球项目管理的专业化与标准化问题。世界各国关于项目管理的专业书籍大量涌现,有关学科发展问题的呼声也很高。
二、当今国际项目管理发展的三个热点。
1、 证书制热。项目管理人员的素质是项目成功与否的关键,证书制是项目管理人员资质认证的制度。美国的PMI在PMBOK基础上开发了PMP认证制度,它代表了一种专业权威机构对从事项目管理人员的资质认可,也是一种牵引市场需求与学科发展非常有力的举措,从84年开始申报时只有50多人,到现在每年申报考试的有数千人,申请者不仅来自美国政府及各大企业,而且也开始扩展到了世界许多国家。国际项目管理协会IPMA (International Project Management Association) 在英国实施了多年的证书制基础上很快发展了一套ICB(International Competence Baseline,国际项目管理资质标准)体系。其特点是把项目管理人员的专业水平分为四个等级,通过一定的认证程度授予D、C、B、A四级证书。同时也允许各国的专业组织在ICB的基础上建立可以结合本国特点的NCB(National Competence Baseline,国家资质标准),这一体系得到各国专业组织的关注,预期在国际上会有较快的发展。
2、 培训热。由于项目管理从业人员日渐增多,培训的需求急骤增长,世界各国的学校,专业学术组织,专业培训机构,咨询公司等,纷纷提出可以满足各种层次需求的培训计划和方案。例如单是美国PMI从1998年3月到11月就安排了9次不同时间不同地点举办的研讨及培训班。一般每个班都有4?/FONT>6门课程可供选择,与专业证书考试相结合,两者是相得益彰。在欧洲,IPMA每年在丹麦的哥本哈根都安排有专业培训课程,内容广泛且注重实用性,如项目的准备与启动、项目的风险管理和多文化的项目管理等等。
3、 软件热。在激烈竞争的环境下,面对各种复杂的项目有大量的信息、数据需要动态管理,要提高管理水平,提高工作效率,就必须使用先进的方法和工具,1996年PMI对项目管理软件测评时,所涉及的63个商品软件,从几十美元到几十万美元不等。有数据表明,在美国项目管理人员中有90%左右的人已在不同程度上使用了项目管理软件,有面向计划与进度管理的,有基于网络环境信息共享的,有围绕时间、费用、质量三座标控制的,有信息资源系统管理的等等。
项目管理被引入我国的时间不算晚。20世纪60年代初,在著名数学家华罗庚教授倡导下,就引入了我国,在国民经济各个部门试点应用,当时将这种方法命名为“统筹法”。中国科学院管理科学与科技政策研究所还牵头成立了“中国统筹法、优选法与经济数学研究会”。项目管理在水利、建筑、化工等领域大量被应用,是在改革开放后。比如,联想集团结合业务对项目管理的需求,配合项目管理相关理论、方法,于2000年底在天麒、天麟产品的开发过程中编制软件方案,使该项目在8个月的时间内完成,达到了全球PC技术的最高水平。
但是,与发达国家相比,我国的项目管理尚处在较低水平,主要问题是未能在项目中全面系统地采用项目管理这种先进管理方法,没有形成专业化。据不完全统计,当前我国从事项目管理的人数已达上百万。这些人多从属于各企、事业单位或政府部门。上了新项目就调来做项目管理,项目结束又回去做其他事情。他们往往只有一两次实践,无法积累经验,管理水平难以提高。而在发达国家,中、高层项目管理人员已逐步走上了专业化道路,像律师、医师、会计师那样形成有特色的行业。从业者大都要通过培训、取得专业资质证书,并参加行业协会或学会。而我国至今未建立项目管理专业人员职业资格制度。1999年,一家外企想在国内寻找一位持有项目管理专业资质认证证书的管理人员,开价年薪5万美元,竟无人应聘,最后只好花10万美元到海外请。
一方面是差距显著,而另一方面则是项目管理在我国的市场日益广阔。近年来,我国实施积极的财政政策,扩大国内需求,拉动经济增长,每年的社会投资都达数万亿元。申奥成功,加入世贸组织以及西部大开发战略的实施,又将带来新的一轮投资项目的热潮。而实施项目管理已几成国际惯例,如联合国工业发展组织、世界银行、亚洲开发银行等国际组织和金融投资机构的项目,都要求应用项目管理。因为实施项目管理,可以在保证项目工期、降低成本、提高质量、预防和控制风险等诸多方面起到至关重要的作用。4月24日—26日,国家经贸委、中国科学院、国家外国专家局、联合国工业发展组织在北京共同举办了“中国(首届)项目管理国际研讨会”,会议以学术委员会的名义发布了《中国项目管理知识体系纲要》,从而为指导我国项目管理人才的培养和我国项目管理的实践提供了一个重要的标准。
从1999年开始,项目管理在国内被日益重视,各种培训,讲座,认证,考试让人目不暇接,俨然已成为培训热门。归纳起来,目前阶段我国项目管理的发展有以下特点:
1、瞄准全球化,与国际接轨
知识经济时代的一个重要特点是知识与经济的全球化。因为竞争需要信息技术的支撑,促使了项目管理的全球化发展。具体体现是:
·国际间的项目合作日益增多。国际间的合作与交流往往都是通过具体项目实现的。通过这些项目,使各国的项目管理方法、文化、观念也得到了交流与沟通。
·国际化的专业活动日益频繁。现在每年都有许多项目管理专业学术会议在世界各地举行,少则几百人,多则上千人,吸引着各行各业的专业人士。
·项目管理专业信息的国际共享。由于Internet的发展, 许多国际组织已在国际互联网上建起了自己的站点,各种项目管理专业信息可以在网上很快查阅。例如美国PMI 的“A Guide to the Project Management Body of Knowledge”整本书都可以从网上查阅或下载。
项目管理的全球化发展既为我们创造了学习的机遇,也给我们提出了高水平国际化发展的要求。
2、学科专业化
为了加快项目管理专业的发展,我国于近期在北京的几所高校先后开设了项目管理专业,这标志着项目管理正式被纳入到学位教育体系。同时,项目管理知识体系(PMBOK)在不断发展和完善之中。美国PMI从1984年提出至今,数易其稿,并已将其作为该组织专业证书制考试的主要内容。欧洲IPMA和其他各国的项目管理组织也纷纷提出了自己的体系。可以预计中国在借鉴国际通行的项目管理规范和指南的基础上,依靠自身的教育体系,将会使我国的项目管理专业化的水平提高到一个新的水平。
3、培训+认证制度
由于项目管理从业人员日渐增多,培训的需求急骤增长,世界各国的学校,专业学术组织,专业培训机构,咨询公司等,纷纷提出可以满足各种层次需求的培训计划和方案。例如单是美国PMI从1998年到起,每年都安排不同时间不同地点举办的研讨及培训班,与专业证书考试相结合,两者是相得益彰。同时,国内以推进证书制为突破口,促进专业人员水平的提高与学科发展。从国外发展经验看,这是一种极为有效的做法,它完全靠专业的权威性吸引着广大项目管理从业人员真正为提高他们的专业水平而努力。目前PMP考试的急剧升温就是很好的证明。
4、项目管理软件的应用
在激烈竞争的环境下,面对各种复杂的项目有大量的信息、数据需要动态管理,要提高管理水平,提高工作效率,就必须使用先进的方法和工具,有数据表明,在美国项目管理人员中有90%左右的人已在不同程度上使用了项目管理软件,有面向计划与进度管理的,有基于网络环境信息共享的,有围绕时间、费用、质量三座标控制的,有信息资源系统管理的等等。在我国, 项目管理人员也逐步使用项目管理软件来帮助他们进行有效的项目管理。目前使用较多的项目管理应用软件是Microsoft Project2000,它是针对每一个项目本身来进行跟踪和管理的,在它的新版本2002中是针对企业级的,但是在目前阶段,它还是可以胜任大多数的企业业务环境。
综上所述,当代项目管理发展之快已超过了我们的想像,美国Fortune杂志预言,项目管理将是下一个世纪的首选职业,从上述分析可见,这一预言不是没有道理的。项目管理历来为我国有关领导所重视,但问题是行业分隔性强,政府部门较多地关注政策性问题,企事业单位往往把它作为临时性的任务处理(这也确实是项目管理的特点),任务结束也就很少过问了。因此在分析了当代项目管理发展的特点后,急需结合我国的现状,提出我们的发展思路。
关于推进我国项目管理发展的几点思考:
当前世界为项目管理的发展提供了一个难得的机遇,如何抓住时机,努力使项目管理与我国社会经济协调发展已经是迫在眉捷的问题。为此我们提出如下建议。
1. 面向市场、面向国际,加快我国项目管理在实践应用、理论研究、教育培训、学科建设等全面发展的步伐。在应用方面应特别注意认真总结我国多年来的项目实践,并结合我国实际,跟踪国际发展水平,建立起我国的项目库,案例库;在理论研究方面要鼓励多学科介入和跨行业交流;在教育培训方面要加快学历教育的步伐,尽早设立我国项目管理的硕士点、博士点,积极开展在职培训;在学科发展上要在认真总结国内外现有研究工作的基础上,积极探索项目管理的学科体系建设。
2. 加大培训力度,以推进证书制为突破口,促进专业人员水平的提高与学科发展。从国外发展经验看,这是一种极为有效的做法,它完全靠专业的权威性吸引着广大项目管理从业人员真正为提高他们的专业水平而努力。由于证书制本身既要结合本国情况又是处于动态发展之中的,因此在这方面我们可以先以引进为主,在引进的同时也组织力量开发既结合我国特点,又考虑与国际接轨的项目管理专业证书制。
3. 尽快在政府支持下巩固与发展我国项目管理的学会组织。学会在专业学科的发展中是一支重要的生力军,特别是像项目管理这样多元化发展的学科。美国PMI和欧洲IPMA以及世界各国的学会组织的作用已充分说明了这一点。我国项目管理学会成立已有近10年的历史,有了比较良好的基础,为了更好地与国际沟通,我们希望得到政府在政策上强有力的支持,将现有的学会充实提高,作为全国一级学会与国际有关组织平等对话,尽快准予出版项目管理的专业杂志,进行国内外交流。
在世纪交替的时刻,我们有一种紧迫感。据了解,人们常常拿以下几个条件来看一门学科是否成熟,即:高等学校有没有人开课?可不可以授予学位?有没有专业刊物及专业性的学术团体?总体看来,我国在这几方面已经有了一些基础,但差距还很大。要真正跟上时代的步伐还需要有极大的投入。 应当承认我国的项目管理与国际水平仍有相当差距。现阶段要做好引进、消化、培养人才的工作,同时研究一些中国国情下的特殊的问题,逐步形成中国特色。我们应有一个健全的专业性、学术性组织保持和国际前沿的接触。中国特色应当是先进的特色、而不是落后的特色。
sandwish2000 发表于 >2005-3-20 9:37:11 [全文] [评论] [引用] [推荐] [档案] [推给好友]
2005-3-20
我国中小型软件企业的CMM实施对策的研究
sandwish2000
09:35 AM
一、软件业发展现状与趋势
1、国内软件业发展状况
软件产业是信息产业的核心和灵魂,是决定21世纪国际竞争力的战略性先导产业。经过十多年的发展,中国的软件产业已形成一定的规模,始终保持了持续快速的发展态势。1992年国内的软件产业销售额仅为43亿元,2001年国内的软件产业销售额达796亿元。其中软件产品销售额为330亿元,软件服务收入为406亿元,软件出口额为7.2亿美元。到2002年8月,国内通过认定的软件企业为4200家,销售额超亿元的有十几家,登记的软件产品达9830个,共有各类软件从业人员近50万人。
软件产业基地建设初具规模。近年来,软件园区对发展软件产业的重要作用越来越被国家有关部门所认同,地方各级政府也积极推进软件园的建设。2000年以来,国内已建立北京、上海、广州、南京、杭州、西安、成都、大连、济南、长沙和珠海等11家国家级的软件产业基地。据统计,2001年全国软件园实现软件销售收入245亿元,占全国软件产业销售总额的30%。这些软件产业基地对推动国内软件产业的发展将起到巨大的辐射和带动作用。
软件出口工作稳步推进。《关于鼓励软件产业和集成电路产业发展若干政策的通知》(国务院[2000]18号)发布后,对外贸易经济合作部、信息产业部等6部委《关于软件出口有关问题的通知》([2000]外经贸技发第680号)也付诸实施。此外,北京、天津等地也出台了一些地方性文件。北京、杭州、广州等地软件企业特别是中小软件企业积极自愿结合组织成立软件出口联盟。这些都推进了国内软件产品的出口,国内软件出口额1999年为21亿元,2001年为60亿元,增长迅猛。
国内软件产业的发展环境已经形成。近几年来,为了推进国内软件产业的发展,国家相继出台了一系列政策,营造了一个较好的外部环境。2000年国务院出台了18号文件《鼓励软件产业和集成电路产业发展若干政策》,从投融资、税收、技术、出口、收入分配、人才、装备及采购、企业认定、知识产权、行业管理等多个方面为软件产业提供了比较系统的环境支持,极大地调动了各部门、地方政府和企业的积极性,使国内软件产业的发展进入快车道。为了贯彻落实国务院18号文件,尽快提高国内软件产业的总体水平和国际竞争力,国家颁布和实施了《振兴软件产业行动纲要(2002年至2005年)》,提出进一步明确发展目标和重点,采取切实有效措施加快国内软件产业的发展。
从市场发展情况看,传统软件的市场垄断格局正受到挑战,为国内软件产业的发展提供了机遇。一是世界范围内的信息化浪潮和互联网的普及,直接引发对软件产品的新需求,软件产业正处于一个非常重要的转型期,从面向单机转为面向网络,这给软件发展带来了广阔的空间;二是后PC时代的到来,使得接入终端设备多样化的趋势加快,软件产业形态及其商业模式将随之发生变化;三是以Linux为代表的自由软件已得到众多硬件和软件企业的认可,市场份额不断扩大;四是服务已经成为软件市场竞争的重要手段之一,与其相关的系统维护、咨询、系统集成、资源外包、教育和培训已经形成了一个庞大的市场
2、国外软件产业发展状况
Ø 美国
美国在1997年其软件产业收入就达到1700亿美元,占当年美国GDP的2.1%。美国软件产业的发展固然与其整体强大的经济实力密不可分,但更为重要的是其创造了一个鼓励投入、不断培养软件人才的环境。
根据美国劳工部的统计数据,美国每年增加17.5万~25万个信息技术岗位,到2005年从事信息技术和服务机构和人员将翻一番。因此,美国为了吸引全球优秀的软件人才每年都要发放大量的技术签证,为软件业的发展解决根本问题。
Ø 印度
印度软件产业的发展历史并不长,但是却取得了举世瞩目的成就,特别是在软件出口方面,一跃成为仅次于美国的软件出口大国。1997~1998年度软件出口额到达了18.13亿美元,其软件园区近5年的软件出口平均增长速度达到了60%以上。根据世界银行对计算机软件出口国家能力的调查评估显示,印度软件出口的规模、质量和成本等综合指数名列世界第一。美国《财富》杂志所列全球最大的500家公司中,有200家采用印度软件。另据《财富》杂志的一项调查,美国最大的100家公司几乎100%把印度作为国外软件来源的首选市场。而印度除有6所理工大学提供IT人才外,还拥有各种职业培训机构每年可培养出数以百万计的计算机行业专业人才。
由此可见,推动软件产业的快速发展,软件人才是第一需求,而软件人才的工程化培养方向更是决定一个国家软件产业发展状况的关键因素。
3、国内软件产业需要关注的问题
目前国内对软件研发项目管理存在的最大问题是认识不足。管理实际上是一把手工程,需要高层管理人员的足够重视。据国外有些大公司的介绍,他们在软件研发项目管理方面的投资一般占软件研发费用的10%左右。做软件项目管理是要花钱的,需要投入一定的人力物力,这些都需要得到高层管理人员的支持。软件过程的重大修改必须由高层管理部门启动,这是软件过程改善能够进行到底的关键。此外,软件过程的改善还有待于全体有关人员的积极参与,否则不仅他本人将失去从软件过程改善中获得提高的机会,甚至还会成为过程改善的阻力。在进行软件项目管理的过程中,需要注意以下几点:
首先,软件过程改善不仅需要有明确的目标,而且需要对当前过程有很好的了解,就好比当查阅地图确定行进方向时,不仅行进的目标要明确,还需要知道现在自己所处的位置。
其次,需要认识到软件过程改善是一个持续改善的过程,需要不断地学习,需要知识的积累,特别是当主客观环境(例如客户需求和主要开发人员)发生变化时,需要对过程进行修改,以适应变化了的情况。
最后,软件过程改善不仅需要参与人员的自觉努力,还需要定期补充各项必要的资源。过程改善需要有关领导的规划、参与人员的忘我工作和管理人员的精心安排。但是如果没有必要的资金投入,整个软件过程改善工作就会缺乏物质基础。
除了要认识到过程改善工作是一把手工程这个关键因素外,还应认识到软件过程成熟度的升级本身就是一个过程,且有一个生命周期。因此,过程改善工作必然具有一切过程所具有的固有1特征,即需要循序渐进,不能一蹴而就需要持续改善,不能停滞不前;需要联系实际,不能照本宣读需要适应变革,不能凝固不变。将CMM/PSP/TSP引人软件企业最有效的途径首先要对单位主管和主要开发人员进行系统的培训。卡纳基梅隆大学软件工程研究所曾尝试让软件工程师通过自学的方式来进行,但实际上,只有不到20%的人能够坚持到底。另外一个有效的途径是自顶向下的课程培训,即从高层主管依次普及到下面的工程师。
二、CMM对我国软件产业的适用性
1、 国外成功经验的借鉴
我国软件产业在近年得到了迅速发展。但是与国外企业相比,国内软件企业在基本软件工程上存在一定的差距,在企业管理和软件开发过程管理方面一直不能得到充分的提高,产品和服务的质量以及与国际产业界对话的能力也存在较大的问题。
CMM/CMMI在全世界的应用推动了软件企业的软件过程改进和软件管理能力的提高,从而极大地提高了软件项目的控制能力和软件产品的质量。通过CMM实施可以不断改进过程,而国内企业实施CMM激励条件的外部因素大于内部因素,企业的起步目标就是CMM2级,一旦进入IDEAL模型,却发现企业面临巨大的工作量,加上缺乏这方面的专门人才和非常薄弱的过程管理基础,使企业面临进退两难的境地。而国外一些企业注重过程管理的改进已经有十几年的历史了,其CMM激励条件的内部因素较大,企业通常是根据自己的实际需求不断地改进过程管理。一定的政策和订单还不足以使软件企业充分重视企业管理水平和软件开发过程管理水平的迅速提高,需要通过强制性的准入手段来推动软件企业总体管理能力和素质的提高。
政府采购软件与服务,供应商须通过CMM认证
1987年卡内基·梅隆大学的软件工程研究所(SEI)发布了 “能力成熟度框架”和“成熟度问卷”。四年后在此基础上建立了一个模型(CMM1.0版),1993年推出CMM1.1版本,这个模型可以更有效地帮助软件企业建立和实施过程改进计划。2001年底推出CMMI(现为CMMI 1.1版),建立了一个自动的、可扩充的框架,提炼出多学科之间的一些公共过程域并减少了过程域的总数量,适应了新形势下软件工程的要求。
CMM的诞生主要是服务于政府的软件与服务采购,帮助政府在软件与服务的采购过程中不至于出现严重的选择错误。它的产生又是美国千百个软件公司数十年软件开发经验的总结和升华。对客户(包括政府)来说,CMM是衡量软件供应商状况的一个基本标准,而对于软件企业来说,CMM是基础的、科学的管理体系。由于美国政府对软件企业设立了软件与服务采购的CMM认定,因此CMM在美国的广泛实施和认同就是必然的了。从美国的实际情况来看,CMM的推广与实施起到了一个良性循环的作用:政府所采购到软件和服务的质量不断提高,效率和效益也在提高;企业在实施CMM的过程中又切切实实地提高了管理水平,从而出现了一个双赢的局面。
在美国,凡是要承接政府订单的软件公司,必须通过CMM认证,否则一切免谈。因此,想做政府项目的软件公司无不积极地实施CMM。由于美国政府的导向作用,如今,不仅做政府项目的公司积极实施CMM,其他的企业也同样在积极实施CMM。
CMM/CMMI实际作用与价值
软件开发与服务的过程是一个无法看见的过程,软件公司管理人员和软件客户都难以对过程进行有效的了解和控制,等到发现问题再进行修正,工期、预算、生产率就会受到严重影响。CMM的作用是使得一个软件项目的参与者(软件公司管理人员和开发人员、软件客户等),根据业务分工充分把握项目的时间节点、技术、文档规范、人员、工时、预算、成本等各个方面的情况与要求,从而实现软件开发过程“透明化”和高度可控性,同时可以有效降低编程过程中的差错率。
工程界近年来几个领域变化很大,如工程的环境更加复杂,执行任务的方式由于交叉学科群组、并行工程、多国标准等都影响到工程实践,各种模型的衍生使得过程改进目标和技术冲突,培训工作增长等。新的CMMI模型对于系统工程,集成化产品和过程开发,供应商管理等领域的过程改进克服了原有的缺陷,是一个扩展性良好的模型,并通过多学科技术人员的融合结合,很自然巧妙地使工程的并行工作问题得到解决,尤其是CMMI的连续式表示法,便于软件组织针对自己的软件产品开发的具体情况只选择部分适合自身实际需要的规程进行改进,能节省大量人才物力,可以根据实际情况将其过程能力改进到不同级别而不必要使所有的过程改进都达到同一级别,这样就给予了软件组织过程改进的灵活性。
CMMI同时改变了人们对原来实施CMM目的只是为了评估而不是促进组织过程改进的看法,于是更积极主动地进行变革,因此不仅对大企业有效,更加适合中小企业的实际情况。
在雷神(Raytheon)电子系统公司,有一本超过三百页的“蓝皮书”。这是一本从1988年开始制定,1991年在该公司实施CMM过程中重新修订,此后每年都进行更新的公司软件开发人员的“宝典”,它对整个软件开发过程中的所有环节都制定了严格、详细、规范的标准,从而使得公司软件开发的时间、成本、预算、人员数量得到精确的控制,差错率大大下降,效益大大提高。该公司从最初在预算、时间、人力等方面的估计与实际相差大约40%,到现在的估计与最终结果误差控制在5%以内,劳动生产率在10年中提高200%。在洛克希德·马丁公司软件部门、Stanley Associates、SBC等公司也看到大体相同的情况。
美国著名通信企业之一SBC公司的软件部门并不对外提供服务,只是为公司自己的系统服务,实施CMM只是为了使公司分布在不同地方的软件人员能够更好地协调一致工作,使整个软件开发的过程能够得到更有效的管理,在时间、成本、预算、人员等方面得到精确计划与控制。此外,活跃在财务、管理、能源等领域的诸多软件公司也都实施了CMM,这些企业希望通过CMM提升自身软件能力,降低生产成本。
设立门槛与资金扶持并举,鼓励软件企业实施CMM、ISO认证
我国目前政府在软件产品和服务的采购方面,一般要求的是通过软件企业资格认定或者获得相应等级的系统集成资质。客观地说,仅仅靠这两个条件,并没有办法判断服务商的实际能力。对于同样一个项目,通过了CMM认证的软件企业能十分准确、有依据地报出工期、成本、投入的人力、采用的技术,更重要的是,整个软件开发过程有一套科学合理的管理方法。而没有通过CMM认证的企业,在上述诸方面只能是凭经验和感觉了。对软件客户来说,选择一个通过CMM认证的企业,就意味着整个过程是可以得到比较充分的控制。
目前在与软件企业的接触过程中发现软件企业普遍对CMM实施的积极性不高,主要原因在于CMM认证的费用比较高、周期较长、牵涉的精力较多。我们可以参照国外的经验,尽快制定政府软件与服务采购新标准,优先采购通过CMM/CMMI和ISO认证的软件企业的产品和服务。与此同时,通过专项资金支持软件企业进行培训评估。经过几年的努力,将涌现出一批通过CMM/CMMI认证、有较高素质能力的软件企业,整个产业随之将跃上一个新的台阶。
从本质上讲,CMM与其说是一种标准,还不如说是一种管理方法和管理思想,是千百个软件公司数十年软件开发和管理经验的总结和升华。中国的软件企业要走向世界,首先要将世界先进的软件开发管理经验拿来,这样才可能被世界范围内的同行和客户认可,走向世界才能成为现实。
三、推广CMM的可行性和必要性
(1) 推广CMM的必要性
软件产业的发展,在经历了从70年代开始以结构化分析与设计、结构化评审、结构化程序设计以及结构化测试为特征的结构化生产时代,到90年代中期,以CMM模型的成熟模型和日益为市场接受为标志,已经进入以过程成熟模型CMM、个体软件过程PSP和群组软件过程TSP为标志的以过程为中心的时代,而软件发展第三个时代,及软件工业化生产时代,从90年代中期软件过程技术的成熟和面向对象技术、构件技术的发展为基础,已经渐露端倪,估计到2005年,可以实现真正的软件工业化生产,这个趋势应该引起软件企业界和有关部门的高度重视,及早采取措施,跟上世界软件发展的脚步。软件生产转向以改善软件过程为中心,是世界各国软件产业或迟或早都要走的道路。软件过程改善是当前软件开发技术的核心问题。
(2) 推广CMM的可行性
现在国内软件产业的发展可以说已经具有一定规模了,但除了北大方正、东大阿尔派、用友等大企业外,做软件工程项目更多的是一些规模在数十人左右的中小企业。也许有人会问,像他们这样一些人力物力资源匮乏的企业。又如何来进行软件研发项目的管理呢?其实,中小企业可以以CMM为框架,先从PSP做起,然后在此基础上逐渐过渡到TSP,以保证CMM/PSP/TSP确实在企业中生根开花。只要坚持改善软件工程的管理,并在实践中总结适合自身的经验,一定能取得很好的效果。
四、国中小型软件企业实施CMM的关键
目前CMM/CMMI认证在国内普遍开始受到重视,软件企业希望借此提高公司的声誉,改进研发的开发过程期望取得良好的效果。但中小公司往往由于资金、资源和规模等方面的原因不可能花巨额请大的咨询公司或主任评估师,造成无法实施过程改进的尴尬境地。在承接项目较小,时间要求紧,并受人力、设备资源限制的情况下,如果完全照搬CMM中KPA的要求去实施往往难度较大。公司的老板和员工易产生抵触情绪或流于形式。根据这种情况,采用“精简并行过程”(Simplified Parallel Process,SPP)指导国内IT企业持续地改进其软件过程能力将是切实有效的办法。SPP是基于CMMI以及软件工程和项目管理知识而创作的一种“软件过程改进方法和规范”,主要对CMMI 3级以内各过程域的内容和要求作了“精简”处理。在产品生命周期之内,项目管理过程、项目研发过程和机构支撑过程“并行”开展。建议用户根据自身情况(如发展战略、研发实力等)适当地修改SPP,然后推广使用。
图一
SPP模型的主要特征和优点,一是直观的过程模型,SPP模型将项目管理、项目研发、机构支撑所包含的工作划分为相对独立的三类过程,各个过程域之间的关系直观明了。这样,机构领导、项目经理、开发人员、测试人员、质量保证人员、外包与采购管理人员等人根据SPP模型,很容易知道自己“应该在什么时候、按照什么规范做什么事情”。所以有助于使机构内的各个职能单位有条不紊地开展工作;二是容易裁剪与扩充,SPP模型的三类过程贯穿了产品的整个生命周期,最常见的过程域都合理地安排在产品生命周期中的某些阶段。用户可以根据自己产品的特征,适当地裁剪或扩充SPP的过程域,很容易制定出最适合于本产品的过程模型。
项目管理过程域 目 的
立项管理 采纳符合机构最大利益的立项建议,通过立项管理使该建议成为正式的项目。杜绝不符合机构最大利益的立项建议被采纳,避免浪费机构的资源、资金、时间等
结项管理 在项目开发工作结束后,对项目的有形资产和无形资产进行清算、对项目进行综合评估以及总结经验教训等
项目规划 为项目的研发和管理工作制定合理的行动纲领(即项目计划),以便所有相关人员按照该计划有条不紊地开展工作
项目监控 周期性地跟踪项目计划的各种参数如进度、工作量、费用、资源等,不断地了解项目的进展情况,以便当项目实际进展显著偏离计划时能够及时采取纠正措施
风险管理 在风险产生危害之前识别它们,从而有计划地消除或削弱风险
需求管理 在客户与开发方之间建立对需求的共同理解,维护需求与其他工作成果的一致性,并控制需求的变更
项目研发过程域 目 的
需求开发 通过调查与分析,获取用户需求并定义产品需求
技术预研 在立项之后到开发工作完成之前的时间内,对项目将采用的关键技术提前学习和研究,尽可能早地发现并解决开发过程中将会遇到的技术障碍
系统设计 设计软件系统的体系结构、用户界面、数据库、模块等,从而在需求与代码之间建立桥梁,指导开发人员去实现能满足用户需求的软件产品
实现与测试 依据系统设计文档,编写并测试整个系统的代码。在SPP中,实现与测试是“编程、代码审查、单元测试、集成测试、缺陷管理与改错”的综合表述
系统测试 对最终系统进行全面的测试,确保最终系统满足产品需求并且遵循系统设计
Beta测试 在产品正式销售之前,开发方将产品交付给一些潜在的客户免费试用,请他们对产品进行测试,并获取他们对产品的建议
客户验收 客户依据合同对产品进行审查和测试,确保产品满足客户需求
技术评审 尽早地发现工作成果中的缺陷,并帮助开发人员及时消除缺陷,从而有效地提高产品的质量
机构支撑过程域 目 的
配置管理 通过执行版本控制、变更控制等规程,以及使用配置管理软件来保证所有配置项的完整性和可跟踪性。配置管理是对工作成果的一种有效保护
质量保证 提供一种有效的人员组织形式和管理方法,通过客观地检查和监控“过程质量”与“产品质量”,从而实现持续地改进质量
外包与采购管理 选择合适的承包商(外包)和供应商(采购),并依据合同进行有效的管理
培训管理 根据机构(或项目)的需求来制定培训计划,并监督该计划的实施,确保培训取得预期效果
服务与维护 是指产品销售之后的客户服务和产品维护,其宗旨是提高客户对产品及对开发方的满意度
表一
SPP的19个过程域 CMMI3级以内的18个过程域
项 目管 理过 程 立项管理 CMMI3级,Decision Analysis and Resolution
结项管理
项目规划 CMMI2级,Project Planning
项目监控 CMMI2级,Project Monitoring and ControlCMMI2级,Measurement and Analysis
风险管理 CMMI3级,Risk Management
需求管理 CMMI2级,Requirements Management
项 目研 发过 程 需求开发 CMMI3级,Requirements Development
技术预研系统设计实现与测试 CMMI3级,Technical SolutionCMMI3级,Product Integration
系统测试Beta测试用户验收技术评审 CMMI3级,VerificationCMMI3级,Validation
机 构支 撑过 程 配置管理 CMMI2级,Configuration Management
质量保证 CMMI2级,Process and Product Quality Assurance
外包与采购管理 CMMI2级,Supplier Agreement Management
培训管理 CMMI3级,Organizational Training
服务与维护
SPP其他成果:SPP综述文章SPP培训教材 基于Web的项目管理工具 CMMI3级,Organization Process FocusCMMI3级,Organization Process DefinitionCMMI3级,Integrated Project Management
表二
需要指出的是,决不能迷信他人推崇的过程标准和规范。SEPG一定要根据机构的实际情况(如发展战略、研发实力等)来制定机构过程规范,要充分考虑过程改进的成本和效益;SEPG要有计划地、逐步地完善机构的过程规范,切忌盲目追求“大而全”,否则欲速则不达。软件过程改进不是一次性买卖,只能靠持续地改良,不进则退;SEPG应当具备一定的软件工程和项目管理知识,再通读CMMI和SPP(或接受培训),才能结合机构实际情况裁剪或扩充SPP,形成机构自己的过程规范。
显然,SPP并没有覆盖机构的全部职能,它仅仅局限于软件项目的研发与管理领域。SEPG应当协助有关人员制定人力资源管理、财务管理、行政管理、市场管理、生产制造等领域的过程规范。上述每个领域的过程改进工作都是非常重要的。SEPG要认真撰写规范,力求使规范中的文字和图表没有歧义,并且简单易懂。
五、我国中小型软件企业实施CMM的对策
1、软件过程改进必须有高级主管的支持与委托,并积极地管理过程改进的进展。
n 高级主管必须批准用于过程改进所必须要的经费,主要包括:SEPG的培训,甚至于在必要的时候,招募有相关经验和能力的实施专家;实施过程中的咨询费用;相关软件、工具的购买费用;进行评审的费用。
n 高级主管指定特定的项目开发作为过程改进的试验田,同时在试验过程中赋予充分的权利和支持,推进过程的深化。
n 高级主管必须亲自参与过程管理的改进,而不是仅仅口头支持。同时,在过程改进的同时,也需要高级主管按照改进后的过程规范进行过程管理和实施。
n 高级主管必须有专职的人员,专门的时间用于过程改进和质量保证。其中的过程改进就是制定统一规范的标准,而质量保证就是监督软件开发过程中是否按照统一规范的标准来实施的。
以上四个要求是逐步递进的。高级主管对软件过程改进的支持是我国中小型
软件企业实施CMM的关键之一。高级主管对软件过程改进的支持程度可以用以上四个标准来衡量。可以说,如果连最基本的第一条标准都达不到的话,整个软件过程管理的改进过程将十分曲折和漫长,而其结果往往是以失败告终。
2、软件过程改进必须进行质量管理理念的变革
n 建立独立的测试和质量保证部门,并将测试部门细分到不同的测试小组,包括:单元测试,集成测试,系统测试和验收测试,独立负责不同的测试工作。
n 进行独立统一的技术评审机制,在项目实施过程中,周期性的进行项目评审,及时发现并消除产品中的缺陷,提高产品的质量。
n 由高级主管牵头质量管理部门,担任质量管理部门的主管,提高质量管理部门在企业的地位,赋予一定的行政权利。要求质量管理部门人员独立于任何项目,可以对质量不合格的工作成果进行一定的处理。
n 从质量修补到质量建设:要求软件在开发过程中转变质量保证小组的工作职能,由过去的“测试-提交开发人员修改”模式转变为“在开发过程中的质量建设”,实时提供开发人员质量预测报告,监督开发人员在开发过程中执行过程标准的情况。
n “零缺陷”的目标,在项目实施过程中从每一个成员手中出来的程序就是“零缺陷”的—— “第一次就把事情做对”。
n 全面质量管理,以质量为中心,以全员参与为基础,目的在于通过让顾
客满意和公司所有成员及社会受益而达到长期成功的一种质量管理模式。
以上六个要求也是逐步递进的。质量管理是我国中小型软件企业实施CMM的重要目标之一。软件过程改进中质量管理达到的标准可以用以上六个标准来衡量。可以说,如果连最基本的第一条标准都达不到的话,整个软件过程管理的改进过程就毫无意义,也将必然达不到它本身期望的效果。
3、软件过程改进必须进行项目工作方式和部分组织的重新建设
n 进行软件工作小组(部门)的建设,要求有丰富的CMM实施经验的人来组织建设软件工程小组(部门),同时认真制定规范,要求文字图表没有歧义,简单易懂。
n 软件工作小组(部门)建立详细的任务与目标,定期评估。根据评估结果,查找薄弱环节,研究解决措施。
n 项目团队要求按照自己的实际情况,可以对软件工作小组(部门)制定的规范标准进行适当的裁减,但是必须在软件工作小组(部门)的指导和监督下完成,同时,将整个项目过程定义在项目计划中。
n 项目成员必须按照项目过程制定的文档认真填写,并在项目定期评审中进行评审和交流。
n 将项目的软件过程能力作为项目考核的一个重要指标。
以上五个要求,是针对项目工作方式和组织的重新建设的要求,也是CMM实施的基础。如果实施CMM的目的是改进组织的过程,而非纯粹为了CMM认证,那么这些要求是必需要达到的。
建议在开始实施阶段,采取以下方法:
一、 确定生命周期模型,制定软件开发规范SPE
SPE(Software Product Engineering)这个KPA是在CMM三级中体现出来的,但在小公司开始规范化中可以先初步的实施。国内的一些小的企业大多数在具体的项目中都没有开发规范,思想深处是“重技术,轻管理”,软件工程理论没有明确的在开发过程中表现出来。制定出简单而实用的开发技术规范,比较容易符合开发人员的惯有思路。主要的目的是在开发人员中建立起最直接的规范,培养他们的管理意识。这要比一开始就让项目组去实施需求管理、项目策划和项目的跟踪与监督非技术的流程更实用。
在生命周期模型的选择上面,建议对于不成熟的公司采用迭代型,既能保留瀑布型“线性化”简单易用的优点,又能根据项目变化及时调整部署,避免方案流于形式。
二、 项目策划的实施,计划的制定
在项目执行过程中需要制定计划,这是CMM二级中SPP(SoftWare Project Planning)的核心内容,并且是SPTO(SoftWare Project Tracking and Oversight)的依据;项目计划这个活动的实施好坏直接影响到2个KPA的效果。这是CMM二级中的难点之一;在小公司实施CMM开始阶段,相关人员很难在制定计划前准确估计出项目的规模、工作量、进度、关键资源、预测风险及其预防措施,但是对于计划制定的必要性所有人还是比较认可的。所以在开始阶段让项目组一起讨论制定出计划,由项目经理或者项目管理人员跟踪计划,在项目结束后,总结记录作为下次开发的经验。几个项目的完成后,有历史数据对过程实际的认识后,再明确的提出估计活动和SPTO的相关活动,大家就会很自然的接受并执行了,大大的减少了推广的难度。
三、 建立评审机制
同行评审也是CMM三级的KPA之一;评审活动也可以在小的公司执行,首先从技术评审开始实施,管理评审可以先暂缓执行。技术评审对项目组的工作有着直接的帮助,并且能得到管理者的支持。评审会议可以采用讨论、问答、讲解等形式,执行一段时间后,所有的人对评审的流程和重要性有了充分的认识,结合公司的实际情况确定引入其他评审内容(例如里程碑的评审);但切不可急于求成,造成资源浪费和人员抵触,产生负面影响,很不利于以后的过程改进。
四、 建立配置管理制度
配置管理执行的过程中,暂时不设置SCCB这个机构,首先先确定受控的工作产品和做版本管理;进行相应的培训让项目组建立起基线、里程碑、版本一致性的概念并具体的工作为Check-in 和Check-out活动。对于配置审核、SCM活动状态的审计等管理、验证内容项目组可以暂缓执行,具体的工作可以由项目管理和配置人员作这方面的工作,发现问题提醒开发人员及时进行纠正。
五、 监督体系的完善
监督体系可以从三个方面进行。第一、项目经理每周提交项目周报,内容包括:项目的进度是否符合计划、从事的额外工作汇总、出现的问题及其解决办法、人员的变化等方面;第二、测试人员对相应工作产品的审核,包括需求文档、用户说明书、代码和产品质量等环节;第三、类似于SQA职责,主要的职责帮助制定计划、配置活动,出现了非技术性问题,由其解决并汇报。该步骤对SQA的要求较高,不仅承担高级管理者助手的作用,还要能帮助解决项目组实际困难的职责,需要一定的管理能力和工作技巧。
六、精简步骤:
根据国内企业的实际情况,CMM实施可以考虑从基本的软件配置管理着手,以便在CMM实施过程的早期完善基本软件工程、工作产品模板定义和工作产品转化的规范。具体实施时可采用以下步骤:
a) 选择一个较小的项目,仅把软件生命周期中的主要工作产品置于配置管理之下;
b) 各工作产品开发小组尽可能采用背靠背方式完成该项目;
c) SCCB(软件变更控制委员会)详细记录所有更改;
d) 项目结束后,由项目经理主持,认真分析产生更改的根原因。
一般来说,主要的原因有以下几条:需求规格说明书写得不好或不全;工作产品模板定义得不好;缺乏规范的工作产品转化定义。
改进的方法之一是采取如下步骤:首先研究编程语言的表示方式,然后确定上一级工作产品的表示方式(模板定义),同时研究并确定从这级工作产品到编程语言的转化规范,最后采用同样的方法一直倒推到需求规格说明书。
该项目的SCCB记录应该对以上改进提供大量较客观的原因供相关人员分析并确定需要改进的内容。项目完成后,企业应该在软件配置管理这个关键过程域方面建立了基础,同时需求管理也有了一个较好的基础。在此基础上开展项目计划、跟踪和质量保证工作将会使企业感到工作更为实在,同时,它也将提高实施人员的兴趣和信心。
采用这种方法期望目标有:为CMM的实施打下较好的工程基础;减少CMM实施的工作量; 缩短实施CMM2级的周期;进一步提高软件产品的质量;CMM实施是循序渐进的;树立企业人员实施CMM的信心;让企业看到每个阶段的成果;CMM实施最终真正改进企业的过程管理。
软件配置管理以确定工作产品模板定义和完成工作产品转化规范为目的,也涉及到CMM2级的其他关键过程域。在项目开始时,首先要制定项目计划,项目实施过程中还要进行项目跟踪、监督和质量保证工作。项目结束后,对需求规格说明书模板进行改进,为需求管理打下基础。不必对这些KPA按CMM进行全面地管理,否则过程的改进不仅将失去阶段重点,而且也消化不了。通过项目成功实施,参与人员和企业管理层人员都将对实施CMM树立信心。
六、结束语
总的来说,小公司实施CMM应当符合自己公司的现状,在人员、资源有限的情况下,将有限的精力用在“刀刃”上,每件事情都能起到积极的效果,保证产品和公司的最大利益才是最关键的。单纯追求通过CMM评估不应该是企业的终极目标,改进企业的软件过程管理才是企业真正应该追求的。