所谓分散式项目是指管理的多个团队处于不同的地域环境下共同完成的项目,不同国家、不同地区,甚至不同楼层都可以称之为不同地域。这样的项目通常会面临时区上的差别,团队文化的差异等诸多问题,实施起来比较困难,而且成本很高。接下来,我们来看如何正确的管理分散式项目。
一、认识不同团队间解决问题的成本
分散式项目的解决问题的成本要比普通项目的解决问题的成本高出许多。试想,在一个时区差异超过八小时的两个团队中,如果A团队遇到了一个问题,该问题需要B团队支持,假设解决这个问题需要花费两个小时。但是B团队最早也只能在A团队下班后才开始工作,这样A团队的问题的最早解决时间也会延迟到第二天中,这样的一个问题的时间成本就等于是拖延了六个小时。如果每个月有6~7个这样的问题,就会浪费开发人员将近一周的时间,损失的成本等于个人月工资/4,个人自己算算就知道成本有多高了。
作为项目经理,应该尽可能安排整个团队在一起工作。即使整个团队不能在一起工作,也应该安排好解决问题的方案。
二、识别项目的文化差异
不同地域的文化差异不一样,比如A团队都进行每日构建,而B团队则执行按阶段集成。这样B团队的开发人员经常被A团队的开发人员搞的一塌糊涂,B团队的开发人员说A团队的开发人员没有责任感,而A团队的开发人员则说B团队的开发人员工作效率低。这就是典型的文化差异的问题。
项目经理在管理分散式项目时,应准备好应对各种文化冲突。要记住,整个项目不一定使用同样的生命周期模型、开发手段和具体实践,但整个项目团队必须使用互补的生命周期模型、开发手段和具体实践。
三、在团队间培养信任
分散式项目最重要的管理技巧,是帮助团队学会彼此信任。因为两个团队分散在不同的地点,平时见不到面,出现问题时,就容易互相责怪。如果经济允许的话,可以采用让全体团队成员到同一个地点一起工作一段时间的方式来培养团队之间的信任。如果经费不允许,可以让项目经理和技术带头人聚到一起。
四、在团队间使用互补实践
互补实践是指项目的生命周期,以及团队使用的任何开发、测试或是其他管理实践都应该采用互补的方式进行。比如可以在一个团队中使用瀑布生命周期,在另一个团队中使用迭代生命周期。并详细说明每个团队的里程碑和交接物,因为不同团队采纳的实践和项目词汇可能不同。
尽管分散式项目实施起来比较困难,但如果有正确的管理方式,也不是特别难的事情。如果你有其它的分散式项目管理的经验,欢迎分享~~