【IT168 技术文章】
目前专门针对IT行业、软件行业的项目管理工具越来越多,但大多数产品目前还只是具有较通用功能,一些管理精细的要求难以在工具中得到支持。笔者根据实际应用,探讨一下项目管理中的工具支持功能,此为系列之一,欢迎从事项目管理工具研究或者感兴趣的人员 ,探讨研究。
一般有一定规模的软件开发组织,项目基本上都是项目群。一般规模的项目群可能分为两级,一个项目群下面包括若干项目组,大的项目,项目分级可能有3到4级。目前的管理工具对于项目群的支持都不够好,项目管理中对于项目群的描述,也是篇幅有限,认为管理好所有子项目,即可。对于项目群中各个项目之间关系一般很少阐述。一般的项目管理工具即使支持项目群的管理,也就是可以象树形展开那样,对项目群信息进行汇总查看,对于项目群的各个项目之间的关系、管理模模式等都不涉及,项目群就是若干项目的简单组合而已。
实际中,我以一个ERP软件公司为例,简单阐述下两种典型的组织架构下的两种项目管理模式,。
1、项目单独型:此种情况下,项目群中每个项目组是较为独立的,彼此间的任务基本没有太多联系。
这种模式下,每个项目组的项目经理,负责从需求、开发、测试整个的管理与跟踪,整个项目的项目计划跟踪由项目经理负责,这种管理模式下,项目群可以简单的看作是一系统子项目的集合,大部份能够支持项目群的项目管理工具都可以支持。
2、混合模式:
上述管理模式中,因为不利于资源的整合和利用,目前很多公司进行了改进,所以一般会将需求、测试从单个项目组中抽出来,组成需求组和测试组。
这样情况下,严格意义上讲,高级项目经理才是真正的项目经理,但在实际中,如果让高级项目经理(一般我们称为部门经理)负责项目任务的建立、跟踪,是完全不可能的。一般的部门,估计项目任务有好几百条任务,部门成员有20-30人,没有哪个部门经理能承担得了这个工作量。而且,在这种模式下,工作量估算也是分开的。
一般工具的解决方案就是,与上一种模式中的一样,将需求组、开发组、测试组也视为一个项目组,单独建任务。这样又产生两个问题:
1、 同一个功能点,被重复建了三个任务,并且之间没有任何关联,部门经理要跟踪功能点的完成情况,很麻烦;
2、 需求、开发、测试之间协作会较累,比如,我们在项目中,都要实时标记,是否提交开发、提交测试、测试完成,结果不知道要针对哪个任务进行标记。
所以我认为,现有的项目管理工具,即使是专门针对软件开发的项目管理工具,都没有考虑到这么细,这样的需求有一定个性化,但我认为在很多大型研发组织,还是有一定的代表性。说明管理工具的需求做得得还不够精细和深入,或者缺少。
我建议的解决方案是:对于项目群的管理,支持项目组的任务建立关联和继承关系,比如
上述混合模式中,开发组任务可以由需求组任务继承,测试组由开发组继承,需求组、开发组、测试组关注自己组的任务,对于部门经理,因为这些任务这间有继承关系,所以可以展现从需求、开发、测试的一体化跟踪表。