2710B01.docx
《2710B01.docx》由会员分享,可在线阅读,更多相关《2710B01.docx(34页珍藏版)》请在冰豆网上搜索。
![2710B01.docx](https://file1.bdocx.com/fileroot1/2022-11/16/cb1375ff-2826-4241-a3e4-241e14773f2c/cb1375ff-2826-4241-a3e4-241e14773f2c1.gif)
2710B01
第1章商务解决方案设计
本章介绍了商业解决方案的设计,你将会学习Microsoft®解决方案框架(MSF,Microsoft®SolutionFramework),该框架是用于设计应用程序的一组模型、一系列原则和指导方针。
然后你将学习MSF过程模型和它的各个阶段。
最后你还会学习在设计应用程序的过程中需要完成的主要工作,以及与这些工作相关的交付成果。
另外,本章还将学习一个案例,该案例说明了本章所讨论的概念和练习。
学习完本章后,将能够:
●描述MSF过程模型和MSF组队模型
●描述MSF准则:
风险管理、就绪管理和项目管理
●描述MSF过程模型的每个阶段的主要工作及每个阶段相关的交付成果
●描述贯穿本书的AdventureWorksCycles案例分析
1.1Microsoft解决方案框架概述
MSF提供了用于设计和开发企业解决方案的一组模型、一系列原则和指导方针,从而保证能够成功地管理项目的所有元素,包括人员、过程及工具。
MSF还提供了已经过验证的方法来计划、设计、开发和部署成功的企业解决方案。
在本课中,你将学习MSF所提供的过程模型和组队模型。
学习完本课后,将能够:
●描述MSF过程模型的各个阶段
●描述MSF组队模型中的角色
●描述MSF准则:
风险管理、就绪管理和项目管理
●描述如何管理平衡以保证企业项目的成功
●描述在企业项目中迭代的目的
●描述瀑布模型和螺旋模型
1.1.1过程模型
图11过程模型
为了保证企业项目能够顺利获得成功,Microsoft提供了一套指南,用于有效地设计、开发、部署、操作和支持解决方案,其中包括使用Microsoft技术创建的解决方案。
这个指南中所用到的知识源自于以下方面:
Microsoft内部以及与大型软件开发和服务操作项目相关的客户和供应商的经验,为企业级用户的项目提供指导的Microsoft顾问的经验,这些知识是从全球信息技术(IT)产业中获得的最好的知识。
(1)定义
过程模型指导项目活动的顺序,并表示了项目的生命周期。
在早期,有一些过程模型是静态的,而另外一些则不允许有检查点。
瀑布模型和螺旋模型就是这样的两个过程模型。
(2)瀑布模型和螺旋模型
这两个模型为项目生命周期提供了两种不同的方法。
前面的图1-1展示了瀑布模型的层叠检查点过程方法和螺旋模型的螺旋型过程方法。
●瀑布模型
这个模型使用里程碑作为转换点和评估点。
在使用瀑布模型的时候,进入下一阶段之前要完成本阶段的所有任务。
对于那些需求可以清楚定义而且在以后基本不会有变动的项目,瀑布模型非常适合。
因为这个模型在各个阶段之间有固定的转换点,所以能够很容易地监控进度,分配明确的责任并问责。
在此过程模型的图表中,使用菱形表示里程碑,箭头表示阶段。
●螺旋模型
有些项目的需求和估计需要不断的完善,而螺旋模型正是基于这一需要出现的。
螺旋模型对于快速开发很小的项目比较有效。
因为客户在每个阶段都会提供反馈和认可,所以该方法可以在开发团队和客户之间建立非常紧密的配合。
但是由于在螺旋模型中没有引入明确的检查点,所以开发过程可能会变得相当混乱。
1.1.2MSF过程模型的工作方式
图1-2MSF过程模型的工作方式
MSF过程模型说明了构建和部署企业级解决方案的一般工作顺序。
该过程相当灵活,并且能够广泛地应用于企业项目的设计和开发。
MSF过程模型是一个基于阶段的(phase-based)、里程碑驱动的(milestone-driven)、迭代的模型,它可以用于开发和部署传统应用程序,电子商务类的企业级解决方案,以及分布式Web应用程序。
(1)MSF过程模型
MSF过程模型结合了瀑布模型和螺旋模型的最佳原则。
它将瀑布模型基于里程碑的计划和结果的可预测性,与螺旋模型的反馈和有创造力的优点有机的结合在一起。
(2)MSF过程模型的阶段
MSF过程模型由五个不同的阶段组成:
●构思
●计划
●开发
●稳定
●部署
每个阶段到最后都将产生一个里程碑。
图1-3说明了MSF过程模型的阶段和里程碑。
有关这些阶段的更多信息,请参见本章的“MSF过程模型阶段”。
更多有关MSF过程模型的信息,请参见MSFWeb站点:
图1-3MSF过程模型的阶段
注意:
Microsoft解决方案框架是一个用于管理项目的过程。
快速应用程序开发(RAD,RapidApplicationDevelopment)和极限编程(ExtremeProgramming)等方法可以用来实现由MSF过程管理的项目。
因此,MSF和RAD之类的开发方法之间并不互相排斥。
1.1.3组织项目团队的方式
图1-4组织项目团队的方式
和MSF过程模型一起,MSF还提供了用于组织项目团队的MSF组队模型。
MSF组队模型强调以下内容对项目成功的重要性:
每个成员都要有明确的角色、责任和目标。
该模型还引入了对每个团队成员的问责(accountability)。
由于MSF组队模型非常灵活,所以你可以根据项目的范围,团队的规模以及队员的技能水平对模型进行调整。
该模型构成了创建有效的、具有弹性的、成功的项目团队的基础。
(1)MSF组队模型中的角色
在一个企业级解决方案项目中,必须完成很多的工作,而且还必须从几个不同的角度来观察这个项目。
为了满足这些需要,MSF组队模型指定了六个不同的角色,并且明确地定义了每个角色的责任和目标。
要点:
整个团队朝着同一个目标努力,团队成员的地位平等。
在团队中,每个角色都对项目的成功作出相应的贡献并负有相等的责任。
项目的每个成员及每个角色都将参与MSF过程的所有阶段。
随着团队进入不同的阶段,他们的责任也会相应地发生改变。
表11列出了MSF组队模型中的角色:
表11
角色
目标
责任
产品管理
满足客户
负责管理团队与客户的交流以及客户的期望。
在设计阶段,产品管理角色收集客户的需求,从而保证业务需要得到满足。
产品管理角色还负责制定项目的交流计划,例如给客户的简报,面向用户的市场营销活动,演示,以及产品的发行
程序管理
在项目约束范围内交付解决方案
负责开发过程,并在项目约束范围内向客户交付解决方案
开发
根据说明书进行构建
负责根据程序管理角色提供的说明书开发技术解决方案
测试
只有在确定并解决了所有产品质量问题之后,才批准发布
负责确定和解决所有的产品质量问题,并批准发布解决方案。
该角色会根据项目的远景和范围对设计方案进行评估和验证
发布管理
平滑部署以及日常运营
负责解决方案的部署和运营。
发布管理角色还将验证解决方案牵涉到的基础结构,以确保对其进行部署和支持
用户体验
提高用户的效率
分析用户对性能的需要以及产品支持的问题,考虑满足这些需要所要牵涉到的产品
注意:
在谈到一个角色向某个交付成果负责的时候,是指这个角色负责保证交付成果的完成,并不是说他一定要参与交付成果的创建过程。
当然,如果担当这个角色的人能够对交付成果的创建做出贡献,那么他也应该参与到其中。
尽管如此,为角色指定责任的主要目的是保证交付成果能够按期完成。
处于这个角色的成员应该根据需要召集项目团队的其他成员创建交付成果的内容。
在小型项目中,项目团队中的单个成员可以充当多个角色。
注意,在一个项目中单个成员承担多个不同的角色会给项目带来风险。
因此赋予成员适当的角色是非常重要的。
例如,不建议一个人既担当程序管理角色又担当开发角色。
为了尽可能地减小风险,可以根据表12来决定哪些角色可以组合,哪些角色不应该组合。
表12
团队角色的组合
角色
产品管理
程序管理
开发
测试
用户体验
发布管理
产品管理
N
N
P
P
U
程序管理
N
N
U
U
P
开发
N
N
N
N
N
测试
P
U
N
P
P
用户体验
P
U
N
P
U
发布管理
U
P
N
P
U
Legend:
P:
Possible可以
U:
Unlikely不可以
N:
Notrecommended不建议
(2)额外的团队成员
除了前面定义的角色之外,项目团队还包括项目干系人,虽然他们并不是MSF组队模型的一部分。
这些干系人包括下面的角色:
●项目发起人
是指发起项目,批准项目并在最后认可项目结果的一人或多人。
●客户(或商业发起人)
是指希望从解决方案中获得商业价值的一人或多人。
●最终用户
是指一个或多个直接与解决方案交互的人或系统。
●运营部门
是指在解决方案交付以后负责其运营的组织。
要点:
额外的团队成员需要像项目团队成员一样参与到项目的每一个方面。
1.1.4MSF准则
MSF指南包括以下一些准则:
管理人员、过程、以及大多数项目都会遇到的技术元素。
三个关键的MSF准则是风险管理、就绪管理和项目管理。
当这些准则应用于MSF上下文的时候,MSF更倾向于强调如何对这些准则进行调整,而不是完全重建这些准则。
可以预计的是,其他附加的准则在将来也会进行调整。
(1)MSF风险管理过程
MSF风险管理准则提倡在整个项目生命周期中进行主动风险管理,连续风险评估,以及决策制定。
团队不断地评估、监控风险,并积极地管理风险,直到风险被解决或者变成可以处理的问题。
(2)MSF风险管理的步骤
MSF风险管理过程定义了六个逻辑步骤,团队通过这六个步骤来管理当前的风险,计划并执行风险管理策略:
1.风险识别让每个成员识别风险,使整个团队清楚地认识到任何潜在的问题。
2.风险分析对风险识别阶段出现的具体风险进行分析,然后将相关的评估结果或数据转换成某种形式,团队可以使用这种形式来决定这个风险的优先级别。
3.风险计划使用风险分析阶段获得的信息制定策略、计划和活动。
4.风险跟踪监控具体风险的状态,并记录它们各自的活动计划的发展进度。
5.风险控制是执行风险活动计划并进行相关状态报告的过程。
6.风险学习将学习到的经验和相关的项目文档及工具进行正规化的处理,以一种可重用的方式记录这些知识,以便团队或者商业组织今后使用。
更多信息:
在本书第3章“构思解决方案”中将会学习到更多有关MSF风险管理的知识。
(3)MSF就绪管理过程
MSF就绪管理准则中包括了一个过程,该过程帮助你掌握一些知识、技能和能力(KSA:
theknowledge,skills,andabilities),这些知识、技能和能力是创建和管理项目及解决方案所必需的。
就绪管理过程由四个步骤组成:
定义、评估、变更和评价。
其中每一个步骤都包含了一系列的任务来帮助达到下一个里程碑。
(4)MSF就绪管理的步骤
●定义
在这个步骤中,团队需要确定场景、人员素质和熟练度以便于成功地计划、创建和管理解决方案。
同时团队还要确定组织中的每个角色需要哪方面的能力及相应的熟练程度。
团队中每个成员被分配的角色决定了他是否需要精通一种或多种已定义的能力。
●评估
在这个步骤中,团队开始分析各个工作角色当前的能力。
进行分析的目的是确定在这些角色中每个人的技能。
然后团队再将当前的技能与上一步所确定的技能进行比较。
通过将现有的技能水平与团队所需的技能水平进行比较,可以制定出相应的学习计划,以便于团队成员达到必要的能力水平。
●变更
在这个步骤中,团队成员开始通过结构化的学习提高他们的技能,以提高现有的熟练程度并达到所期望的水平。
该步骤包括:
●