就这个问题我来谈谈我个人的观点 我想在主要是做国外外包项目的中方开发团队PM。需求/概要设计。然后在中国作详细设计/开发/UT,然后在拿到国外去做结合测试/系统测试等后期测试。 为了明确表达,把用户在的一边叫作本地,把不在本地的其他地方叫异地。 我觉得作为一个项目整体的PM,需要注意以下的事情 1)异地开发中最重要的部分还是上游工程的质量。所以,项目整体负责的PM必须在客户的一边,就是呆在本地,带领团队很好的作需求分析和概要设计。这部分做好了,下游的工作都好控制(因为都是自己公司内部的问题了。) 2)异地开发的团队的负责PM同样非常的重要,必须具有很好的项目管理的经验。 3)本地团队和异地团队之间的问题远远不是版本控制这么小的技术问题,最大的问题就是沟通的问题。因为虽然有电话/传真等多种通讯工具了,异地团队和本地团队可以非常容易的沟通,当时,这种沟通一样是一种成本(这里指双方讨论所需要的时间),如果有效的减少这个成本是很重要的。我们现在的方法是,在transition的地方都定义一个transition point。在项目开始之前,在这个transition point上,明确定义出需要从本地团队转移到异地团队的各种文档,以及各个文档的详细程度。这样就可以顺利的进行交接。 4)PM不要太多的涉足异地团队的管理工作。这部分工作时异地团队的PM的工作。但是,如我在另外一个帖子[“CMM/CMMi和项目管理”]中阐述的那样,过程是非常重要的,所以,异地团队的PM会用什么过程进行管理,会在什么地方通过什么数量指标(metrics)来进行控制必须明确。同时,作为项目整体的PM,异地团队的哪些metrics是自己关心的,对项目整体有影响的,这些metrics就需要异地团队PM及时地汇报上来。 我在Accenture(埃森哲)的中国开发中心作Senior manager,我自己负责了大大小小十数个异地开发的项目,深刻感觉到,任何的项目的上游是最重要(所有人都明白的道理),所以,开发工作在什么地方做都可以,只要有一个明确的流程,对流程有明确的度量,就应该没有什么问题。 以上仅仅是我的一点点体会。欢迎在论坛探讨,也可通过email来探讨。jin.jia@accenture.com
|