(七)MSF团队模型与“外部协调”时的状态
为了保证团队项目的成功,团队还必须和其他外部工作组相互影响、交流、以及协调。这些交流的范围可以从业务角度和技术角度来分。工作组的范围涉及顾客、用户、还有其他开发小组。
在交流的过程中,对于交流中的责任进行区分是很重要的,因为这样顾客和开发小组都能知道团队中谁对这个信息负责。
下列图表说明中说明的是各角色具有代表性的责任,不是协调业务问题就是协调技术问题。
“程序管理”、“产品管理”、“用户经验”、以及“发布管理”角色是主要的信息交流促进者。“开发”角色是技术角度的中心,“测试”角色是业务角度的中心,并且这两个内部的中心与外部交流相隔绝。这样做是有道理的:“开发”角色不直接与业务发生关系,“测试”角色不直接与技术发生联系。这样可以保持各个中心的专业性,发挥各角色成员的专长,这样也可以保证它们不受外部的干扰的进行有效的工作。
不过这并不意味着开发者和测试者将会与外部世界相隔绝。对于 MSF 团队模型的理念是:建立以客户为中心的团队。MSF认为与真正的用户的接触是无价之宝,特别是在早期的项目成形阶段,无论如何这种与用户的交流都不能沦为形式。
那么,“测试”角色与“开发”角色如何接收到这些与用户的交流信息的?答案是通过与“用户体验”、“产品管理”、“发布管理”、“程序管理”的交流来达到目的。
有一个重要的地方需要强调:当负责外部协调的各种角色能够提供信息的输入并提供项目的建议的时候,不要让单个的成员或单个角色拥有修改项目功能、计划以及资源的优先级和权限。因为这些改变都是项目客户的特权,并由项目团队来负责执行。
下面是微软在开发Windows 2000时的各个角色的人员数安排:
值得注意的是“开发人员”和“测试人员”的人数比例为1:2。
下面是微软提供的另一个例子:
这里,“开发人员”和“测试人员”的人数比例也为1:2。
(八)MSF团队模型总结
MSF团队模型基于这样一种前提,即任何技术项目都必须达到特定的关键质量目标才能被认为是成功的项目。但,每一个目标的达成,都需要相关的、不同领域的知识和技能的综合运用。MSF把不同领域的知识和技能分别分配到不同的角色中去,每个角色都具有满足项目成功的标准。如果任何一个角色无法实现其目标,这都会危及到整个项目。因此,MSF小组模型中的每一个角色都认为是同等重要的,重要的决定都要共同作出。
MSF 团队模型并不能保证项目一定成功。除了团队结构之外,有着更多因素决定着一个项目的成功与失败。不过小组结构仍然是很重要的。
MSF 组队模型是防止“不良的团队结构会削弱成员的努力、增加开发时间、降低质量、使士气低迷、增大周转期间”这样的问题的。恰当的团队结构是成功的基石,贯彻MSF模型并且运用MSF的原则能够帮助团队,使之更加有效,因而取得成功。
---MSF团队模型完。