团队管理:从大公约数到小公倍数
团队是软件开发项目所依赖的组织基础,而项目管理者是团队的当然推动者,推动团队绩效从大公约数到小公倍数的转变。项目管理者需要注意如下几点:(1)时常通过这些关键词自我反省:领导能力、尊重、反馈、评估;(2)组建和谐的团队,项目管理者必须充当队员的激励者、教练、活跃气氛者、维和人员和冲突裁决人;(3)项目管理者所表现出的情绪—— 无论正面还是负面的,都将是团队成员培养品质的基础;(4)主要任务是为项目组提供服务,包括指导、顾问、问题及冲突解决、资源提供、目标及优先级设定、评估绩效和提供反馈,并在需要的时候提供技术性指导。
优先级管理:精于选择的艺术
作为项目管理者,项目初所能采取的重要一步可能是有意识地设定优先级。凡事皆有“本末”、“轻重”、“缓急”、“先后”之分,关键在于抓住“本”、“重”、“急”、“先”之事并优先解决,在资源的利用上作出倾斜,并在时间的安排上设定期限。的项目管理者可能对那些无足轻重的事情无动于衷,但他们对那些较重要的事务却总是倾力以赴。如果过于专注项目中的细枝末节,通常会变得对大事要事无能为力。“抓住大事,小事自会照顾好自己。”现代项目管理者的一大问题是注意力分散,分不清轻重缓急,也不善于区分轻重缓急。如果碰巧能力较强,即便错误的事情也能做得很好,不利的局面也多能扭转,但会无谓地耗费很多时间和资源。项目管理的目标不能太多太杂,太多等于没有目标,太杂会分散资源和精力,所以必须在多种事项中做出选择。选择像一条河流,河流变得越宽,有越多的人淹死在里面。而项目管理像游泳,项目管理者需要越来越强的游泳技巧,更需要游向正确的方向,需要在各个方向中做出选择。项目管理者必须能在所有的子项目中做出优先级的判断,做出优先级的选择,以佳方式实现项目管理的成功。
项目管理者的技能:34项关键技能
美国专家罗伯特·T.弗崔尔(Robert T.Futrell)等人在其《高质量软件项目管理》(Quality Software Project Management)中系统描述了软件质量协会的软件项目管理知识体系(SQI BOK,Software Quality Institute’s Body of Knowledge for Software Project Management),提出项目管理人员在产品开发管理、项目管理、人员管理方面所必需的34项关键技能,详见表2-1。
表2-1 项目管理人员所必需的技能
■产品开发技能
(1)评估过程—— 定义审查标准;
(2)知道过程标准—— 理解过程标准;
(3)定义产品—— 识别顾客环境和产品需求;
(4)评估可选择过程—— 评估各种方法;
(5)管理需求—— 监控过程变更;
(6)管理次级承包商—— 计划、管理和监控绩效;
(7)实施初始评价—— 评价难度、风险、成本和进度;
(8)选择方法和工具—— 定义选择过程;
(9)裁剪过程—— 调整标准过程以适合项目;
(10)跟踪产品质量—— 监控逐渐进化的产品质量;
(11)理解开发活动—— 学习软件开发周期。
■项目管理技能
(12)建立工作结构分解—— 为项目构建WBS;
(13)计划文档化—— 定义关键要素;
(14)估算成本—— 估算完成项目所需要的成本;
(15)估算工作量—— 估算完成项目所需要的工作量;
(16)管理风险—— 定义和确立风险的影响和处理;
(17)监控开发—— 监控软件的生产;
(18)安排进度—— 建立进度表和关键里程碑;
(19)选择量度—— 选择和使用适当的量度;
(20)选择项目管理工具—— 知道如何选择管理工具;
(21)跟踪过程—— 监控项目团队的执行度;
(22)跟踪项目进展—— 使用量度监控项目进展。
■人员管理技能
(23)评估绩效—— 通过评估项目团队强化绩效;
(24)因应知识产权—— 理解关键问题的影响;
(25)高效主持会议—— 计划和实施卓有成效的会议;
(26)互动与沟通—— 与开发者、高层管理者和其他团队进行交流;
(27)领导能力—— 训导团队成员以获得佳绩效;
(28)管理变更—— 作为因应变更的有效代理人;
(29)成功交涉—— 成功地解决冲突和实施谈判;
(30)规划职业发展—— 构筑和提供职业发展指导;
(31)有效展示—— 使用有效的书面和口头技能;
(32)招聘—— 成功地招聘和面试项目成员;
(33)选择团队—— 选择高效能团队;
(34)构建团队—— 组织、引导和维护有效的团队。