UML软件工程组织

被遗忘的角落——CMMI的团队管理

 

作者:张传波 来源:cmmionline

 

摘要:

不少人士可能都会对CMMI有这样的一些误解:

CMMI重视过程不太重视人员管理;

CMMI强调按过程执行,而忽视人员的主动性、创造力;

过程是死的,文档也是死的,但人是活的,事情也是变化的,CMMI的执行缺乏弹性;

……

本文将为大家阐述CMMI对团队管理方面的要求,还CMMI一个“清白”。

很久以前,国内某大软件公司通过了CMM2级认证(当时国内通过CMM评估的企业很少),媒体采访他们的成员,他们最大的感受就是以前不用写文档,现在要写很多文档。直到现在,“写文档”依然是众多过级企业的最大感受,如果SEI知道了,肯定郁闷死了!

曾经有QA问我,怎样保证项目组提交的数据是正确的?再深入问下去,原来项目组为了应付度量,会共同“造假”,QA苦无应对的良策。我非常纳闷,这样的团队,这样的氛围,如何做过程改进?

您的团队中有没有这些问题呢?

团队中存在一些不良的风气。

团队中没有人知道这个项目有什么用。

团队没有统一的行为准则、工作习惯。

劳碌了两三年,团队成员技能没有怎么增长。

遇到问题,不知道应该由谁来决策?如何决策?

每次总结教训都说要注意沟通,但沟通问题还是不断地出现。

……

CMMI中被遗忘的角落

CMMIv1.1版中的IT(Integrated Teaming)、OEI(Organizational Environment for Integration)这两个PA,常常是省略不评估的PA。业内普遍认为,这两个PA只适用于大型企业、大型团队,所以评估能省则省。

IT这个PA列出了对团队管理的要求,如:建立项目远景,组建团队等;而OEI这个PA在组织级别列出了对团队管理的要求,如:建立决策机构,制定组织级行为准则等。CMMIv1.2版,这两个PA已经“消失”了,两个PA的内容分别整合进IPM和OPD中了,OPD的SG2及IPM的SG3都被标示上“for IPPD”。

图一:CMMIv1.1 vs CMMIv1.2

不管是CMMIv1.1还v1.2,其实CMMI有专门内容对团队建设提出了要求,企业如果真正想做好过程改进,都应该认真学习这两个PA。

除此以外,每个PA的以下GP都是直接与团队管理密切相关的:

  • GP2.4 Assign Responsibility
  • GP2.5 Train People
  • GP2.7 Identify and Involve Relevant Stakeholders
  • GP3.2 Collect Improvement Information

CMMI中的这些要求,与一般的团队管理要素对应关系如下:

团队管理要素

CMMI中与之对应的

团队文化、行为准则

OPD的SP2.2 SP2.3

团队远景

IPM SP3.1

团队决策机制

OPD的SP2.1

团队的组成及成员职责

IPM SP3.2 SP3.3 SP3.4;所有PA的GP 2.4

沟通管理

OPD的SP2.2;IPM SP3.5;所有PA的GP 2.7

知识管理

所有PA的GP2.5 GP3.2;OT;OPD SG1

团队的文化与行为准则

CMMI中与之对应的是:

OPD(组织过程定义,Organizational Process Definition)的

SP2.2 Establish Rules and Guidelines for Integrated Teams

SP2.3 Balance Team and Home Organization Responsibilities

什么是企业文化?企业文化是公司全体员工的价值观、行为准则、思维习惯、做事风格、习惯等的总和。那什么决定一个公司的企业文化?有两个方面,一方面是公司倡导的文化,另一方面是每一位员工的文化。

企业文化可能迄今为止在企业管理中用得最泛滥的词语之一,企业文化怎样才能落到实处呢?公司倡导的文化,与每位员工的总体水平总是有差距的,怎样把所有员工导向公司所倡导的文化呢?企业就需要规划企业的远景,让全部员工了解,企业需要制定一些规则、指南,用来指导员工的行为,这样才能把企业文化落到实处。

CMMI中没有规定企业要制定怎样的企业文化、怎样的行为规则、指南等,但我们应该可以想象得到,好的企业文化应该具备公开坦诚、积极向上、推崇共享等特点,很难想象等级严明、安守本分的企业文化,如何能推动好团队建设,如何能推动好项目管理。CMMI越要做到高级,越需要好的企业文化做支持!

所以,如果您的团队中出现一些风气问题,您就需要进一步考虑,是不是整个公司都有这样的风气,是不是公司倡导的文化有问题?要通过招聘、解雇、培训、规划公司远景、制定行为准则、制定相关制度等办法来改善企业文化。

团队的远景

CMMI中与之对应的是:

IPM(集成项目管理,Integrated Project Management)的

SP3.1 Establish the Project’s Shared Vision

团队的远景,就是所谓的团队的目标了。项目的远景要从几方面来考虑:从客户的角度,希望我们的最终系统是怎样的一个样子;从公司的发展战略,我们希望最终系统会是怎样的一个样子,最终系统会对组织财富库带来什么价值;从项目组本身发展需求,大家希望最终系统会是怎样的一个样子,对大家自身发展带来什么收益。

远景是由团队成员共同制定的,平衡了各方面的考虑,是大家的共同目标,所有成员都是为同一个远景工作。

您的团队成员是不是整日疲于奔命,而毫无成功感?考虑一下制定一份团队的远景吧。

团队的决策机制

CMMI中与之对应的是:

OPD(组织过程定义,Organizational Process Definition)的

SP2.1 Establish Empowerment Mechanisms

做项目过程中,各个层面都可能出现很多问题,各个层面都可能需要做决策。小决策小至某个bug是否修改,大决策大至版本是否发布,都可能涉及到需要不同的人用不同的方法去做决定。组织级别应该定义好各种层次的关键决策由哪些人参与,采用什么方法和标准,这样才能保证好整个团队能顺畅地运作。

CMMI没有规定要制定怎样的一个决策机制,一个好的团队决策机制应该是充分调动成员的参与性,发挥大家创造力,同时也让关键人物起到关键作用的机制。如果决策机制就是某某人说了算,其他成员就没有参与感了,很难想象这样的团队能有多大的战斗力。

团队的组成及成员职责

CMMI中与之对应的是:

IPM(集成项目管理,Integrated Project Management)的

SP3.2 Establish the Integrated Team Structure

SP3.3 Allocate Requirements to Integrated Teams

SP3.4 Establish Integrated Teams

所有PA的

GP2.4 Assign Responsibility

根据项目的特点,我们需要规划相应的团队架构并让合适的人员担当相应的角色,并规划好每种角色的职责。不管采用MSF的6种角色对等的项目团队架构,还是采用常见的项目经理领衔的架构,只要是对实现团队的远景有利的,都是合适的。

同样,CMMI也没有告诉我们应该如何规划团队的组成,团队应该包含什么角色。当您的团队有问题时,您可以考虑一下,是不是团队的架构没有定义好,团队各角色之间的职责没有划分好?

沟通管理

CMMI中与之对应的是:

OPD(组织过程定义,Organizational Process Definition)的

SP2.2 Establish Rules and Guidelines for Integrated Teams

IPM(集成项目管理,Integrated Project Management)的

SP3.5 Ensure Collaboration among Interfacing Teams

所有PA的

GP2.7 Identify and Involve Relevant Stakeholders

沟通管理应该是制度化的管理,组织要定义沟通的一些规则和指南,保证沟通是有序的而且有效的。我们公司对如何进行内部沟通、如何进行对外沟通都进行了详细的定义。没有规则和指南,天天说要加强沟通是废话来的。

另外我们看到,CMMI中很多地方出现了要让相关的人或者组卷入进来的描述,CMMI很强调组间协调,在CMM的时候就专门有一个组间协调的KPA。“要注意多协调”,也成为我们团队管理中最常见的废话之一。协调也是需要制度化的,制度化的协调办法有:

  • 制定计划,考虑干系人的介入并让干系人评审该计划;
  • 根据计划,让相关干系人参与进来;
  • 所有工作产品是某人的工作输入时,都需要某人评审该工作产品;
  • 所有计划的大变动,都需要相关干系人评审并通报相关成员。

不要光喊口号了,制定一些切实的办法让沟通有效起来!

知识管理

CMMI中与之对应的是:

所有PA的

GP2.5 Train People

GP3.2 Collect Improvement Information

OT(Organizational Training)的全部内容

OPD(组织过程定义,Organizational Process Definition)的

SG1 Establish Organizational Process Assets

保证团队中每位成员都具备完成本职工作所需要的技能,CMMI所有PA的GP2.5与MSF的就绪管理有异曲同工之妙。

知识管理需要在组织级别的高度上做。根据组织的发展需要,安排系统的培训,通过财富库的方式把知识“固化”,所有团队都可以从这个财富库中获取知识和提交知识。

CMMI对知识管理要求很高,这样的高要求,对团队成员以及组织都是有很大好处的。大家可以对照自己的团队,思考以下的问题:

  • 您有埋怨过团队成员中有人技能不够吗?
  • 项目面临极大的进度压力,但前辈们没有留下可供使用的东西。
  • 长期用相同的技术解决不同的问题,技能没有怎么增长。
  • 把项目做完就阿弥陀佛了,根本没有想过要去总结些什么。

软件开发团队是智力型的团队,如果大家每天都在“行尸走肉”,工作没有激情,知识没有积累,那就干脆改行算了。

CMMI既强调过程也强调人的管理

当我对MSF还是一无所知的时候,我听了3天的MSF课程,给我带来了极大的震撼,收益匪浅。当我对CMM一无所知的时候,我听了3天的Intro to CMM的课程,给我带来的是一堆问号,内容没有吸收多少。CMMI确实给我们带来了太多的误解,我想SEI最大的失误可能就是没有把CMMI这个宝贝用大家能容易理解的方式描述清楚。

本文要澄清的几点就是:

  • CMMI非常强调团队管理的,而且从组织层面、项目层面、个人层面都有详细的要求,而且所有的层面的管理都要求制度化。
  • CMMI很重视企业文化建设,而这点经常是我们过程改进所忽视的,只有好的企业文化,才能支撑做好过程改进,只有做好团队管理,才可能做好过程改进。
  • CMMI很强调人的作用,如:不同职责的人需要掌握相应的技能,通过培训机制保证相关人员具备适应公司未来发展的技能,众多工作产品都需要不同的人来评审把关等。

过程和人是分不开的,越高级别的过程越需要高水平的人来执行。希望通过本文,让大家从团队管理的角度对CMMI有进一步认识。

 


版权所有:UML软件工程组织