你不是一个人在战斗 - 软件项目团队模型( 二 )


2)想尽办法提高测试工程师与实施工程师的水平 。
3.配置管理员、QA再低人一等,甚至可有可无 。
图中这两种角色是灰色的,这两者可能是整个项目团队中最“惨淡”的角色了!
好一点的公司都会有配置管理员,但往往被当作文员来看待,而有些公司甚至没有专职的配置管理员,项目经理甚至没有想到要配置管理这回事 。QA是一个四面不讨好,到处惹人非议的角色,可以说是项目组中最“差”的职位了 。
造成这局面原因也主要有两个:一就是大家的习惯性思维认为这两个职位就是最不重要的,二就是我们的配置管理员、QA的水平还不够的问题 。
对于配置管理工作,其实实质就是项目生命周期中各种工作产品的管理工作,我认为项目经理应该发挥更大的作用,而我们的配置管理员应该嵌入到项目的具体中去完成工作,而不要只抱着配置管理的大道理来工作 。
QA确实是最痛苦的职位,优秀的QA需要有资深的项目经验,但有资深项目经验的人大都不愿意做QA,这是多么矛盾和痛苦啊!
简单地说,实际的项目团队结构有以下严重问题:
1.团队的头不能专职项目管理 。
2.项目团队中各专业人才要么缺失、要么严重不平等 。
MSF的项目团队模型
MSF,全称是,微软解决方案框架,是微软进行研发活动的方法论 。
MSF的团队模型非常特别,它没有团队的头领:

你不是一个人在战斗 - 软件项目团队模型

文章插图
此图来自MSF的官方资料
微软的团队是没有项目经理的,由6类角色组成,分别是产品经理( )、程序经理( )、开发()、测试(Test)、发布管理( )、用户体验(User ) 。
各类角色负责的职责如下:
你不是一个人在战斗 - 软件项目团队模型

文章插图
该模型的几个重要特点:
1.没有所谓的项目经理 。
程序经理这个角色可以说是最接近项目经理的了,他需要编制计划及跟踪计划执行,但在行政级别上,他不是大家的头,大家都是平等的,大家只是处在不同专业的角度来负责工作 。
2.强调项目团队是由各专家组成的 。
软件开发活动是高强度高挑战的智力活动,我们需要由各类专家共同负责协调工作,每位专家都是同等重要的 。
3.用户体验是我们常常忽略的部分 。
用户体验简单地说就是用户使用软件时的感觉,软件的颜色、布局、文字、行为等等会直接影响用户使用软件的满意度 。目前我们国内的项目组,往往没有用户体验设计环节,也没有专职的用户体验设计师 。
你不是一个人在战斗 - 软件项目团队模型

文章插图
我第一次学习MSF团队模型时让我很震动,该模型体现了以人为本的开发模式,让团队中的每个人都极受鼓舞,但该模型在实际工作中很难完全应用,主要原因如下:
1.各专业人才水平参差不齐 。
我的个人感觉国内以上六类角色的水平由高到低排列,大致这样:开发、程序经理、产品管理、测试、发布管理、用户体验,而用户体验基本是空白 。各专业人才能力不相当,就无法组成“无头领”的团队,充分发挥各种角色的作用 。
2.各专业人才水平全部没达到要求 。
哪怕是水平最高的开发角色,我们的平均水平跟微软的相比还是相差太远,那就更加不需要提其他角色了 。
3.团队协助能力差 。
我们的团队基本不会“team work”,我们从小到大的教育就基本没有“team work”的教育 。
MSF常常也被人以“太理想化”质疑,MSF所描述的世界只是软件开发的乌托邦而已 。难道我们的现实情况就决定了我们的项目团队水平吗?我们没有办法建立一种实用的项目团队模型,让我们的项目团队能持续进步吗?