从上面的表格中,我们可以清晰的看出,软件开发中不同角色分工是不一样的。对于一个软件开发项目来说,前四个阶段是至关重要的,所以总体架构师CSA一般都要参加,在第四、五、六阶段一般程序员参加较多,在后面测试阶段测试员参加较多。从整体来看PM和CSA是项目中的两个重要角色,在项目前和项目收尾时都有参加。这也正体现了软件开发过程中开头和收尾是两个控制重点。
另外,项目经理要要按不同阶段适时运用人员,恰当掌握用人标准。一般来说,软件项目不同阶段不同层次技术人员的参与情况是不一样的。下图是典型的软件开发人员参与情况曲线:
五、项目经理(PM)与总体架构师(CSA)的职责区别
作为软件项目管理中的两个重要角色PM与CSA两者缺一不可。从管理上应该是CSA服从PM的领导,CSA应该给PM提供技术支持。从技术上来说,CSA是项目的总负责,同时CSA也行使部分管理权力,如对开发小组长的管理。CSA可以理解为技术经理的角色。但PM与CSA在软件项目实施过程当中到底分工如何呢?我们将用下面一个表格进行说明。