本篇,我们重点来讲述一下VSTS中的管理理论基础——MSF,它是VSTS同期发布后,重点宣扬的一种理念,是一整套的可借鉴的开发流程和方案集合。
 
MSF概念界定
 
       MSF(Microsoft Solution Framework),它来自于超过25年的微软与众多合作伙伴的最佳应用实践,是一个将软件开发流程、原则和公认的做法完全集成的集合,并且提供了很好的模板级解决方案实现来支持团队开发。
 
       这里首先要明确一点,虽然仍旧将MSF作为产品进行发布,但是,它不是一套软件,而是一个体系,一个Framework,VSTS中整合了最新的MSF 4.0。
 
团队开发的问题
 
       相信大家在团队开发过程中都有下面类似的经历,可能项目经理的感觉更为深刻,但是,即使是普通的开发人员,也会对下面的情况有所感触:
 
◆项目中缺少必要的边界管理,变更管理等等,最后产品与需求定义完全脱离
◆沟通存在障碍,团队开发效率低下
◆过程管理不够灵活,缺少应对灵活性
◆开发人员关注最新的技术,最cool的功能,可能未必是客户需要的
◆如此等等
 
       那么,作为软件界当之无愧的老大,微软是如何面对这些问题,如何实践一个项目的呢?他们有哪些成功经验呢?而我们又如何才能得到他们的专家级解决方案呢?
 
微软解决方案框架(MSF)
 
       微软将自己的最佳实践作为VSTS的管理理念基础,提供了一套通过最佳实践而得到的过程方法论——MSF。MSF融合进了IT行业的世界观方法论:IT世界的目标是如何将主要力量,丰富的技术与人和过程进行高效结合,而不是更多的技术。
 
       MSF来自于微软全球产品组,咨询部门,信息技术部门以及与众多合作伙伴的成功经验的总结,包含了两个模型和三个准则,即:团队模型、过程模型;项目管理准则、风险管理准则、就绪管理准则。这些模型和准则是值得我们借鉴和学习的,但是,根据每个项目的不同特征,我们应该学会灵活变通,使其真正发挥效用,盲目服从既定的准则,一成不变,势必是要摔跟头的。
 
       下面我们来简单了解一下MSF的两个模型和三个准则,感兴趣的朋友可以针对项目所需进一步深入研究,这里只抛砖引玉,让大家有一个宏观的理解,正如上文所说,重要的在于借鉴和灵活变通,完全照搬不是一种聪明的做法。
 
团队模型
 
       阻碍项目成功的一个重要的人的因素就是,项目不能以一个团队的方式进行沟通和运作。MSF提出的团队模型,可以有效避免团队之间的隔阂和分离,提高团队的合作效率,从而提高项目成功的可能性。
 
       MSF团队模型将整个团队人员分成六种核心角色,包括:程序管理角色、开发角色、测试角色、发布管理角色、用户体验角色和产品管理角色(我将在后续文章中详细介绍团队模型的各种角色职责和目标),每种角色承担不同的职责,完成不同的任务,任务之间彼此连接连续,从而角色之间互有沟通,这样,就加强了团队的合作,提高了工作的效率。
 
过程模型
 
       过程模型是MSF中一个非常重要的内容,分为构思(规划)阶段,计划(设计)阶段,开发阶段,稳定阶段,部署阶段,通过每个阶段交付不同的成果,可以促进项目的依次交付,增加项目的可预见性和可控制性,使最终项目成果与预期目标保持一致,各个阶段的衔接也给项目提供一个从开始到结束的过渡。
 
       过程模型的一个重要特点就是使用里程碑确保项目的方向保持正确,里程碑可以计划监控项目的进展,并制定主要的成果的交付时间,可以使项目人员和客户清晰看到我们的成果。里程碑是需要审核的,只有通过审核,才能进入到下一个阶段。同时,MSF过程模型是一个迭代的过程,这样,也可以把项目细化,从而也降低了风险。
 
       过程模型可以很好地和团队模型进行结合,不同的阶段由不同的角色来推动,同时不同的角色支持不同阶段的里程碑实现。
 
项目管理准则
 
       项目管理可以被用来描述一个角色以及在某个领域里的技能和专长,这里要注意,项目管理不是项目经理一个人来完成的,它作为一种活动由很多人来共同完成。
 
       MSF 用一种分布式的小组方法来进行项目管理,通过将小组角色抽象成为一套职能职责,而不是特定的职位描述,这样可以提高责任性,并允许大范围的可伸缩性,既适用于小的项目,也适用于非常巨大和复杂的项目。
 
风险管理准则
 
       风险是会给项目顺利进行带来负面影响的可能性。MSF中给我提供了一些可借鉴的准则来管理和控制风险,提高项目成功的几率。
 
       MSF定义了以下风险管理原则:
 
◆风险是不可避免的
◆识别风险是一项正面的活动,是我们项目中一定要做的活动
◆有效管理风险,风险管理过程需要贯穿项目始终
◆风险评估,MSF认为这是一项持续的活动,不能仅在项目之初讨论风险之后了事,要在项目的不同阶段识别风险,管理风险
◆强调主动规避风险
◆不能简单地以风险的数量来评价项目的价值
 
就绪管理准则
 
       就绪管理是 MSF 中的核心准则,其最终的目标是预先确定团队针对每个项目需要的技能,提前进行准备。这一准则所采用的方法将用于对规划、构建和管理成功解决方案的知识、技能和能力进行管理。持续的就绪管理将给企业组织带来巨大的技术架构储备,也给远期企业组织的发展带来不可估量的基础能量。就绪管理需要有规划有重点分类别进行持续操作,随着就绪管理工作的深入,企业在项目过程中也会减少障碍,提高效率,建立越来越大的知识库。
 
结束语
 
       以上初步介绍了MSF的整体框架,包括两个模型和三个准则,具体实施过程中,这些都是交汇在一起的,如何能够避重就轻,取长补短,得到适应自己组织的方法准则,还需要在工作中进一步体会和借鉴MSF的理论,逐步摸索,以形成适合于自身团队的流程模型,从而按部就班,轻便灵活地进行项目开发。  
     
       本篇笔者只对基础理论进行了宏观阐述,感兴趣的朋友可以详细研究。后续文章将会对VSTS的各个角色版本进行一下体验,将一些心得和大家分享。