仟亿科技软件开发平台

软件开发项目管理利刃之MSF
MSF,MicrosoftSolutionFramework,微软解决方案框架是一个在预算范围内按期创建一个业务解决方案需要一种经过检验的方法。
  本文将结合MSF在项目管理中的实际应用进行讲解,如果您是软件项目的参与者,如项目经理、开发工程师、系统架构师、顾问、质量管理人员等,想找到项目管理中遇到问题的解决方案,相信本文会给您一定的帮助。
  MSF为成功地规划、设计、开发和部署IT解决方案提供了一套成熟的方法论。与具有固定框架的方法相反,MSF提供了一个可以伸缩的灵活框架,以满足任何规模的组织或者项目开发团队的需要。MSF指导由原理、模型和用来管理人员、项目和技术元素的准则(大多数项目都会碰到)组成。MSF模型本身来源于微软公司在大规模软件开发和服务操作项目上的宝贵经验积累,来自于微软公司的顾问在为企业客户实施项目时所获得的经验,以及融合了来自于全球IT行业的先进理念,最终形成的一套方法论。
  MSF为软件开发团队提供了一套可自定义、具有良好扩展的软件开发指导原则。MSF包括既灵活又具有逻辑的方法,允许软件开发团队中的成员使用这些方法选择最适合的方式完成个体的任务。采用MSF灵活的框架可以满足任何软件开发项目的需求,同时不必考虑项目的大小与复杂性。根据MSF的实现理念,没有一个单独结构或流程可以非常好地适用于所有项目的需求和环境。
  MSF框架于1994年被首次提出,最初被提出来是因为微软顾问咨询部门为了微软公司的一个产品开发项目提供项目管理咨询服务而产生的一套理论。从那时起,MSF开始逐步发展,这来自微软公司的产品组、微软服务中心、微软公司的内部操作和技术组(OTG)、微软公司合作伙伴和客户那里成功的和实践的最佳做法。MSF是基于一整套成熟的软件管理方法论,并融合了微软公司在IT行业内超过25年的项目周期管理经验。MSF框架中提供的方法论被设计帮助Microsoft的顾问、合作伙伴和客户来解决技术生命周期过程中碰到重大挑战。
  MSF使用这套经过内部和外部检验的真实最佳做法,并对这些其中部分方法进行简化、整理和检查,使得MSF具有更广泛的通用性,以便更多的合作伙伴和客户理解和采用。MSF由Microsoft里一个专门的产品小组在管理和开发,它同时还得到了国际顾问理事会该方面专家的指导和评论。MSF目前还在继续吸收微软公司当前的经验。同时微软公司在其发布的开发平台VisualStudio2005中提供了实现MSF的基础工具支持,VisualStudio2005已经不仅仅是一个开发的平台,更是强大一个软件项目团队管理和软件生命周期管理的工具。
  MSF的核心有八个基础原理,本文中将对几个和团队管理结合比较紧密的原理进行分析。
  推动开放式沟通
  在一些项目开发过程中经常会遇到这样的问题,项目开发周期较短工作量却很大,开发人员开发出来的软件和最终用户的需求在功能上吻合度很高,但是最终用户却觉得这个不是他们想要的软件。实际上这是交流与沟通的问题,项目的开发人员在时间紧迫的情况下,往往是只看到眼前的工作,而忽略了与团队成员及最终用户的沟通,结果就是从功能上完成了工作,但是软件产品或解决方案的易用性大打折扣,导致最终用户觉得最终提交物与他们的预期相距甚远。
  在一些国内的大型软件项目开发中,很多情况下是项目组成员可能根本都不在一个城市,他们有的来自于总部的研发中心,有的来源于测试中心,有的在遍及全国各地的各个实施地点负责具体实施,有的可能以顾问的角色参与到项目中来,这样就要求整个团队有一个良好的沟通方式,保证项目的顺利进行。
  软件项目和信息类解决方案都是由人的活动来构建和交付的。从事软件项目的每个人都会给项目组带来自己的智慧、能力和观点。为了将开发团队中成员的个人效力最大化,同时优化其工作效率,团队成员的交流和沟通就显得尤为重要。如果在客户和开发团队之间或团队成员之间没有一种很好的沟通形式,那么团队成员就无法有效地完成其任务,或是不能找到最正确的方法来完成任务。随着项目规模和复杂性的增加,对开放式沟通的需要就变得更加紧迫。完全基于开发团队内部个人意志的工作成果可能导致软件产品的缺陷,以至于削弱软件产品的可用性,甚至会产生软件产品本身的缺陷。
  MSF框架中最重要的一个基础的原理就是倡导团队内部和最终客户之间的沟通,团队成员之间的协作是项目进程中最重要的环节,MSF推出了一种开方式和包容式的沟通方式,既最大限度了团队成员的智慧和创造性,同时也在宏观上保证项目朝着正确的目标前进,并且能够符合诸如时间约束和特殊环境等条件的限制。很多可能在最终提交产品时候发现的问题,可能都会因为增强团队成员的沟通而及时发现和改进,这样不仅最大程度上降低了项目的风险,同时也提高了团队的协作能力。
  为共同的前景而工作
  在国内的软件行业中,多数的一线技术人员往往都是技术领域的专家,但是同时也缺乏对项目大局观的把握。他们知道如何正确的使用技术来完成自己当前的工作,却对项目的共同目标缺乏认识。这往往会导致软件项目在一致性上的不足,也会影响团队的协作。而项目的领导者通常是对团队成员的具体工作进行了布置和安排,但是忽略了对团队成员大局观的培养。
  项目经理在对开发人员布置任务的时候,通常要讲“你只要把某某功能实现就可以”,“你的程序要达到一个很高的稳定性和效率”,但是至于实现该项功能在整个项目中的作用,程序的稳定性直接关系到项目的哪些模块的稳定程度,都是没有最终传达给开发人员。这些都导致了团队成员缺乏对项目共同前景的了解。共同的前景是MSF小组和过程模型里的一个关键组件,它强调团队成员理解项目目标的重要性。当所有的参与者都理解了共同的前景并为之而工作的时候,他们才能清楚的认识到自己所做的工作在项目整个生命周期中的作用,进而调整自己的决定和工作重点。MSF过程模型中特别强调要求有一个共同的前景存在,以便指导解决方案朝着最终的业务结果前进。
  保持灵巧,预测变化
  很多项目经理或是团队的领导者经常犯的一个错误就是过于理想化。例如在做计划的时候将工作量估计的太过保守,殊不知团队中的成员有可能因为各种各样的其他原因不能在计划的时间中全部投入到项目中,或是最终用户的需求临时发生更改,所做的项目计划缺乏足够的灵活度,导致的结果就是项目计划抵御不了突然的外部条件变化,当这种变化真正发生时一切都已为时过晚。
<< 软件开发公司 树立自己的产品精神开始一个软件项目时最重要的是什么? >>

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最近发表

Powered By 仟亿科技 Copyright 2011-2012 仟亿科技. All Rights Reserved.