中小IT企业项目团队人员配置管理
最近在公司做项目,关于团队管理有了些自己的认识,本想自己写的项目管理的东西,因自感项目管理经验的累积不是很厚,搜索了网上的相关文章,我觉得和我最近的感慨相近。其要领如下:
对于国内大多数中小IT企业而言,由于成立时间太短、投资方较多、业务不够连续、家族式的管理等原因使得这些中小IT企业的管理水平处在一个较低的层次。特别是在软件项目开发的管理中存在的项目团队中人员配置和管理、岗位与职责、沟通和协调等问题。需要企业根据自身特点和项目情况合理的进行人员的配置,协调项目经理、系统分析员、系统设计员、程序员、测试员以及实施员之间的岗位、职责与权限,保证项目在开发过程中的可靠性、连续性和一致性,既符合软件工程的思想,又能达到客户基于过程控制的质量要求。
1、中小IT企业现状与项目管理概述
国内IT行业具有很强的自主创业欲望和驱动力,但这种创新背后的现状却是产生了一系列的中小IT企业,尤其是大量的小企业存在造成了中国IT产业分散度高、整体效益低等问题的产生。另外大量的跨国IT企业也不断的涌入中国,他们带来了大型IT项目、高端IT产品的开发能力,这些会给中国IT工程师积累经验和借鉴,对中国IT行业的创新是有帮助的,当然由此对国内中小IT企业生存的冲击也是巨大的。在这种国内外形式下,使得中小IT企业具有了一些新的特征。
(1)中小IT企业的产品和技术具有行业性与独特性。能够对某个行业或者某个领域有深入的理解,并能够提供相应的解决办法。但是中小IT企业的技术具有短期性和非核心性,不能快速产生市场规模和经济效益,无论是公司规模还是产品规模,中小IT企业与国内外大型IT企业有比较明显的差距。
(2)中小IT企业的人力资源具有较高的流动性。中国人民大学商学院副院长毛基业教授在《2007中国软件自主创新报告》中指出:“IT企业没有别的资源,就是人力成本。”中国本土IT企业普遍规模不大,在很大程度上就是由于很难留住人才。人才流失限制了企业的规模,而规模偏小又限制着企业进一步发展。这在某种程度上已经成为一种连锁反应,使得大多数中小IT企业在可持续发展方面的能力非常有限。
(3)中小IT企业的项目管理具有粗放性和随意性。IT行业的标准很多,既有ISO2000的质量规范,还有CMM开发规范,还有ITIL 等IT服务规范,这些行业规范成为一个很高的门槛,对管理粗放和随意的中小IT企业在承接软件开发业务、项目开发管理、技术支持、维护与服务等方面带来一定的影响,甚至威胁中小IT企业的生存空间,从提升自己的竞争力,获取企业持续发展的角度出发,中小IT企业必须不断规范和完善自己的管理水平。
对于以软件开发为主的中小IT企业而言,项目管理的能力是其管理水平的直接体现,反映了企业对人、技术和管理三者的结合程度。本文以美国项目管理协会的PMBOK管理知识体系中的人力资源管理为切入点,着重讨论软件项目开发团队建设中各种人员的角色、分工与职责等细节的配置与管理,既能规范企业内部管理制度,也能加强企业与客户的沟通与协调水平。
2、基于SDLC的中小IT企业项目团队管理模式
2.1 软件开发生命周期(SDLC)概述
软件开发生命周期是软件的产生直到报废的生命周期。主要包括问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,是一个持续改进的迭代过程,中小IT企业在软件开发过程中,根据自身资源情况,尤其是开发团队的人力资源情况,从加快开发速度、保证产品质量、便于与客户沟通和协调的角度出发,可以把SDLC主要划分为以下四个阶段:需求分析阶段、软件实施阶段、系统部署阶段和系统维护阶段。如图1所示。这种SDLC的划分符合中小IT企业的特点,使得人力资源得到了合理的利用,有利于软件开发的项目管理。
2.2 基于SDLC的项目团队人员配置
由于每个项目团队成员都有的各自的专业特长和性格特点,各项目成员的知识技能评估、个性特点分析、优点和缺点是要事先分析和考虑的内容,项目团队的组建是否合理,项目相关人员是否满足项目的需求,是项目能够顺利进行的关键,找错了人或者是将人放在错误的位置都可能会导致项目的失败。依据SDLC的划分,在每个阶段采取灵活的项目团队人员配置方案,如图1所示,对于需求分析阶段和系统维护阶段采用“1+2”的标准人员配置模式;对于软件实施阶段和系统部署阶段采用“1+4”的标准人员配置模式。根据企业规模的大小、人力成本以及团队成员的知识结构等因素,其中代表项目经理的“1”的职责会不断调整变化,适应企业和客户的要求;另外的“2”和“4”里面的成员则可以根据工作量的大小进行灵活的增减,既保证每个阶段的连续性,使开发过程顺利的过渡,又可以保证人员的充分合理利用,最大限度的发挥出中小IT企业的优势。
2.3 项目团队角色、岗位职责划分
软件开发的整个过程都会包含结构、需求、设计、开发、测试、配置管理等各项活动。而这些活动会对应到项目团队中的不同角色,必须根据团队规模的不同和项目本身的特点对项目成员的角色和岗位进行明确的划分,这样团队中的每个成员才可能有清晰的责任和目标。项目中进行岗位划分后每个岗位成员还可以兼职多个角色,形成相关的标准角色岗位职责矩阵。如表1所示:2.4 项目团队管理中可以采取的几种人员配置模式
根据企业规模和软件项目大小的不同,可以把上面的角色和岗位职责进行灵活的组合和调整,以项目经理为主,对项目团队中的相关角色和岗位进行合并或增减,在“1+2”和“1+4”的基础上形成“1+1”或“1+3”的组合,保证最佳的人员组合,既能高质量的完成开发任务,在多项目的情况下,又能最大限度的利用企业的人力资源,主要有以下三种人员配置模式。
(1)“1”+“1+1+1+1”配置模式
对于小型软件开发,或者企业规模较小,项目团队人数为3~5人时,项目经理本身又是技术专家,项目团队其他人员仅仅作为辅助人员,例如,可以指定1名维护员,负责前期协同项目经理调研和后期的维护工作;指定1名程序员,负责前期协同项目经理进行软件开发和实施工作。这种模式下可以由一个项目经理总览全局,负责SDLC中四个阶段的绝大部分工作。此时项目经理的职责最广泛,项目管理方面的工作包括制定产品的目标、制定各个工作的详细任务表,跟踪这些任务的执行情况,进行控制、组织会议对程序进行评审、综合具体情况,对各种不同方案进行取舍并做出决定、协调各项目参与人员之间的关系、对每个阶段的问题跟踪记录进行统计与汇总,及时处理项目过程中的问题、对软件开发的每个周期进行质量控制,保证软件开发的进度与质量;技术开发方面的工作包括需求调研、系统设计、程序设计与测试等主要的开发环节。所以小型项目团队对项目经理的业务,技术和沟通管理等技能都要求较高,项目经理的能力和技能往往决定了整个软件项目的成败。
(2)“1”+“1+2+2+1”配置模式
对于具有一定规模和实力的小型IT企业,项目经理可以跳出技术的范畴,不介入到模块设计和编码活动中,而应该把重点放在项目进度的控制和质量的保证上面,例如,可以指定1名程序员,主要负责软件开发和实施工作。项目经理一般有较强的技术能力,所以项目经理可以承担项目中要使用的一些新技术的研究,项目中一些疑难问题的解决等相关工作。项目经理还应该有计划的设计开发人员的代码进行审核,对发现的规范性、性能、复用差等问题跟项目团队成员确认,并写入到项目开发规范中。
在这种模式下,项目经理的重点在项目管理和与客户交流沟通上,只有清楚确认了用户需求,才能开发出用户满意度高的软件。研发经理的重点是对整个开发过程负责,包括对项目经理确认的进度目标进行任务的进一步分解,安排后续的增量和迭代计划。项目经理仅仅是参与讨论和评审。可以更好的对开发过程进行跟踪和协调,研发经理重点放在项目内部,而避免过多去和外部干系人沟通和协调。对于项目团队发展到5~10人的时候,项目中的测试工作必须专职化的由测试人员来完成。一般测试人员的配置比例为4~6个开发人员需要配置1名专职化的测试人员。测试人员站在第三方和模拟使用者角度来进行系统的测试,可以更好的发现系统的BUG和相关问题,有效的保证系统的质量。
(3)“1”+“1+3+3+1”配置模式
对于中型IT企业,其项目团队的规模发展到12~20人时,项目团队基本上可以算做中小型的项目团队。这时项目经理完全专职化做项目管理工作,包括项目进度计划制定,项目跟踪监控,风险分析和控制,项目度量分析和决策等相关内容。可以指定1名需求分析员,主要负责前期用户需求与系统需求的分析,同时项目团队设置1名专门的架构设计师,侧重于系统总体设计方案、整个系统的集成方案和具体功能单元和模块的集成。另外,由于项目规模的扩大,项目的配置项更加复杂,项目也需要同时兼顾开发、测试、集成等多个分支。因此需要设置1名专门的配置管理员来进行项目的配置管理。对于项目同时需要开发新版本,又需要对已经发布的维护版本进行功能改进的时候,项目中要考虑设置1名专门的维护人员。由维护人员来完成项目小功能的改进和Bug的修复。这样新版本设计开发人员可以更专注的进行新功能的开发。
3、结束语
首先介绍了当前IT行业的迅速发展,说明中小IT企业面临新机遇和挑战,充分考虑了国内外企业信息化的现状、需求、中小IT企业的特点、以及中小IT企业在软件开发项目管理中存在的一系列问题,尤其是项目团队管理方面的问题进行分析,结合中小IT企业本身的特点,基于SDLC科学、合理的进行人员配置,提出了三种相应的项目团队管理模式,不同情况的中小IT企业可以根据自身情况和需要,对这几种项目团队管理模式进行权衡和取舍,其他企业也可以参考该模式,建立和改进本企业中的IT规划与项目管理,充分发挥IT在企业发展中的作用。