团队的远景
CMMI中与之对应的是:
IPM的SP3.1 Establish the Project’s Shared Vision
团队的远景,就是所谓的团队的目标。项目的远景要从几方面来考虑:从客户的角度,希望我们的最终系统是怎样的一个样子;从公司的发展战略,我们希望最终系统会是怎样的一个样子,最终系统会对组织财富库带来什么价值;从项目组本身发展需求,大家希望最终系统会是怎样的一个样子,对大家自身发展带来什么收益。
远景是由团队成员共同制定的,平衡了各方面的考虑,是大家的共同目标,所有成员都是为同一个远景工作。
您的团队成员是不是整日疲于奔命,而毫无成功感?考虑一下制定一份团队的远景吧。
团队的决策机制
CMMI中与之对应的是:
OPD的SP2.1 Establish Empowerment Mechanisms
做项目过程中,各个层面都可能出现很多问题,各个层面都可能需要做决策。小决策小至某个bug是否修改,大决策大至版本是否发布,都可能涉及到需要不同的人用不同的方法去做决定。组织级别应该定义好各种层次的关键决策由哪些人参与,采用什么方法和标准,这样才能保证好整个团队能顺畅地运作。
CMMI没有规定要制定怎样的一个决策机制,一个好的团队决策机制应该是充分调动成员的参与性,发挥大家创造力,同时也让关键人物起到关键作用的机制。如果决策机制就是某某人说了算,其他成员就没有参与感了,很难想象这样的团队能有多大的战斗力。
团队的组成及成员职责
CMMI中与之对应的是:
IPM的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
沟通管理应该是制度化的管理,组织要定义沟通的一些规则和指南,保证沟通是有序的而且有效的。我们公司对如何进行内部沟通、如何进行对外沟通都进行了详细的定义。没有规则和指南,天天说要加强沟通J就是废话。
另外我们看到,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有进一步认识。