|
概述
市场发展,促使某些国内软件企业的领导者盲目的追求进度,追求在短时间内通过尽可能高的级别,获得高级别的证书来对外宣称自己企业的成熟度高,再加上个别评估公司,乃至个别主任评估师的商业利益为先的作法,使个别
企业CMM/CMMI评估成为形式,没有真正的使企业进行内部过程持续改进成为一个机制,提升企业能力和成熟度。而成为企业进行外部包装,进行市场宣传的工具。
我们需要在这里明确:软件企业做CMM/CMMI是和企业自身发展的战略相一致的,必须明确不是所有的企业都能从CMM/CMMI中获益,CMM/CMMI是需要企业自身的能力相匹配的。
企业的能力与CMM的关系
我们在这里所说的软件企业的能力是指作为业务运营的实体,自身具备的人员,市场,管理团队和管理制度,以及建立在此基础之上的企业发展战略的制定和执行能力所达到的水平。
企业的要素:
l 人员
l 技术(详细结构,工作方式…)
l 市场开发
l 项目类型和工作方式
l 管理层
企业的能力就是对应以上各个要素的的构成结构,资源和组织管理的能力,综合体现在企业发展战略的定位和企业增长的能力,应变的能力上。
CMM/CMMI是一种软件能力成熟度模型,是确定软件企业如何做才能实现提升自身的软件开发能力的指导框架。
CMM/CMMI是实践科学的总结和抽象模型,通过CMM/CMMI可以简化许多企业的流程,建立适合的管理流程,但是不要希望通过CMM/CMMI来解决软件企业的所有的问题。CMM/CMMI不是企业管理,不
能替代企业的商业的运营。
在国内个别企业出现的希望通过CMM/CMMI的实施来替代企业管理的想法是不切实际的。就象有人提问的,如果软件企业的开发技术部门通过了CMM5,而公司的市场,行政,管理部门却是初始级的水平,这种情况可能
吗?当然不会,CMM/CMMI所代表的持续过程改进的思想必然渗透到公司的各个部门和岗位。
企业实施CMM/CMMI的益处
企业为什么会热衷于CMM/CMMI的实施呢?
因为企业看中拥有CMM/CMMI可能获得对外进行宣传,借助CMM/CMMI的权威树立企业形象的效应。
还有一部分企业希望首先通过CMM/CMMI认证,从而获得政府的支持,确立自己当地软件行业龙头企业的形象和政策支持。
一部分企业希望通过CMM/CMMI认证获得国外软件分包的合同。
而事实上,CMM/CMMI不是圣经,它的实施是和企业的商业利益相一致的,与上面三种着重眼前市场利益不同的是,它着眼于企业内部,以提升企业过程持续改进能力为目的。所以SEI并不希望所有的企业都获得四,五
级的认证,二,三级的能力已经能够制造(开发)相当不错的软件产品,如果这个产品的功能和质量要求只需要二,三级的能力就足够了。这样从某种程度就是对企业能力的分级,也是对软件开发市场的细分,便于不同质量和功
能水平的需求方和开发方进行协作。
究竟通过CMM的哪个级别就是通过企业对自身的实力,市场定位和企业发展战略共同确定的。只有明晰自身特点,知道CMM/CMMI能够帮助自己企业改进哪些问题,并潜心进行过程改进的企业才能真正获得CMM/CM
MI的益处。
CMM对企业能力要求
CMM/CMMI是不能在一个初创企业,内部管理制度还不健全的企业实施的,这是很容易理解的,当然更多的情况是根本不了解CMM/CMMI,不知道用CMM/CMMI来解决自身什么问题的企业是要避免盲目建设
CMM/CMMI的。
任何一个模型都不是完全正确的,CMM/CMMI也是。尽管SEI一直对CMM/CMMI集成度和实用性进行不断的改进,提供了一定的剪裁规则,大大的提高了CMM/CMMI的适用范围,但是我们也不得不承认,
CMM/CMMI的实施需要一定的条件,对企业的能力存在一定的约束和要求。
1.CMM/CMMI对企业运营状况和资源能力的要求
CMM/CMMI是一种企业内部管理框架的建立,同时也要经过咨询,预评估,评估及个阶段,需要在内部建立相应的管理组织团队,在内部进行大量的培训。所有这些的付出是相当巨大的。仅评估一个阶段,聘请国内的评
估师需要四五十万,如果聘请国外的评估师则需要七八十万的费用,作为国内的软件企业,这是很大的一笔费用。
如果处于一种良好的运作和发展状态的企业,那就需要有相应的主持改进的高素质人员,管理者的支持,相应的管理工具的购置(如:项目计划管理工具,配置工具,测试工具等),所有的资源配给能够到位和协调工作才是对
企业资源管理能力的挑战。
2.CMM/CMMI对企业人员素质能力的要求
CMM/CMMI是一种管理模型,是建立在大量的软件工程实践和软件企业管理的经验和理论总结的基础之上的。并不是任何没有相关背景和工作经验的管理者和公司员工就能轻易理解的,而CMM/CMMI的实施必须影
响到每一个接受改进的内部部门的员工,也同时需要他们对内部改进活动有相当的认识,对改进活动提出自己的意见和建议,才能真正的在企业内部建立起持续改进的过程。
所以在选择内部首先建立内部过程改进的部门和项目团队时,需要选择学习能力较强,软件背景较强,已经建立起内部软件质量和配置管理制度的部门和项目团队。通过他们实施的效果,不断总结实施的经验和教训,以减少一哄
而上所造成的损失。
最好有意识的将企业内部个人综合素质和能力较高的人员组成团队,作为进行CMM/CMMI的实施的试点,然后将他们实施的结果拷贝到其他部门和项目团队,遇到的阻力较少,可以大大加快实施的速度。
3.CMM/CMMI对企业管理能力的要求
CMM/CMMI的实施的效果之一就是企业组织过程优化高效,企业现行的制度对企业资源的调配和管理能力决定了CMM/CMMI建立的壁垒,如果管理能力跟不上,即使有足够的资金和资源的保证,建立CMM/CM
MI的周期,耗费和最终达到的效果也是不尽相同的。
CMM/CMMI的实施应该站在企业战略的高度来定位,如果企业确定实施CMM/CMMI是依据企业自身的能力,市场定位,企业发展方向以及企业发展定位确定的战略决策,是需要一经通过就是明确牺牲部分短期利益
获得长期的发展的企业共识,从各个方面全力保证它的实施,从企业的整体利益上来说,减少实施过程的耗费,提升实施效果,尽快使CMM/CMMI发挥作用才是为企业的利益考虑。所以CMM/CMMI的实施往往要求主
要领导人的全力支持。
4.CMM/CMMI对企业技术能力的要求
CMM/CMMI主要针对软件过程的改进,虽然其管理的主要对象是过程,但是只有和企业自身的业务和技术水平相结合的过程管理才能获得好的实施效果。ISO9000簇对企业的管理过程做了很好的定义,但是为什么
还需要CMM/CMMI?其中一个重要的原因就是其建立的是软件管理的模型,软件这个特殊的思想逻辑产品的制造过程具有其特殊的过程和管理特点。虽然CMM/CMMI一直致力于将软件开发过程进行类似于制造业的管
理模式,但是其间的差异是显而易见的,而且CMM/CMMI的改进也需要一个过程。
CMM/CMMI的实施需要企业具备对自身的业务具有细化,分类和岗位流程定义的能力,每个技术环节的能力水平的识别,能够提供相应的调整的方案和补偿的办法。这样才能将CMM/CMMI的模型和企业的业务类型
和生产流程充分的结合在一起,否则生搬硬套的结果就是人为为自己增加一个枷锁。只有企业具有足够的技术能力将CMM/CMMI和自身业务结合在一起,才能在实质上获得CMM/CMMI对企业的推动力。
此外企业要有能力按照企业的业务特点确定实施CMM/CMMI所需的一些工具的使用方法,盲目的增加汇报文档的数量和统计内容,并不是最好的数据收集和控制的手段。
5.CMM/CMMI对企业市场能力的要求
CMM/CMMI的实施是以企业大量的项目的经验和数据的积累为基础的。CMM/CMMI对于不同类型的项目实施过程的剪裁略有差别,尤其对于成熟度比较低的企业,类似的项目之间的比照,对于初步建立CMM/C
MMI的过程是很必要的。所以企业的市场能力能否保证在实施CMM/CMMI的过程中有足够多的类似项目成为确保实施的一个要求。
此外很难想像一个没有确定类型和行业背景项目的企业会能够有足够的经验和能力把握项目和有精力在项目内实施持续过程改进。所以如果企业的市场部门能够确立在某个行业或者某个类型项目的优势,将会保证CMM/CM
MI持续改进的效果。要知道CMM/CMMI实施本是也是个优化改进的过程,大量类似项目积累的数据和改进经验正是CMM/CMMI最好的保证。也是为进行其他类型项目提供了保证。
如果企业不具备相应的能力,实施CMM/CMMI是不切实际的选择。CMM/CMMI对企业能力的分析可以作为企业实施CMM/CMMI决策的参考。
结论
CMM/CMMI是一种内部过程过程改进的思想和框架,我们可以借鉴CMM/CMMI严谨的过程持续优化改进的思想和相应的一些管理方法和工具,但是不能希望通过实施CMM/CMMI来替代管理,CMM/CMM
I毕竟是产生在软件和系统集成等相关行业背景企业的环境下,具有很深的软件行业的特点和要求,不能盲目的期望能够解决所有的问题,就象凡事必提孔孟,只会堕入到闭目塞听的境地。
只是希望获得CMM/CMMI的商业利益而不愿真正的实施CMM/CMMI,也只会获得短暂的风光,其中的花费不会体现在最终的企业能力和运作效率的提高上的利益上,应该说是最大的浪费。这时的损失已经不仅仅是
金钱,而且很可能是企业的商誉。
要知道,如果CMM/CMMI是锦上添花的话,市场运作和企业发展就是固本培元,一个软件企业的发展壮大,正是CMM/CMMI和商业运作和管理良好结合的产物。只有在一个强壮的植株上才能开出似锦的繁花。
最后只能说:明确自身问题,具备一定能力的企业通过CMM/CMMI的实施可以获得企业提升和壮大。 |
|