论文部分内容阅读
摘 要:在教学过程中通过对MSF与RUP的过程模型进行深入的分析与比较,本文从过程阶段、规程、角色、活动、工件、原则、关键概念等方面,指出两个软件开发过程框架主要结构上的差别和相似之处,为灵活运用MSF或RUP等过程模型来指导软件项目的开发提供一些参考和帮助。
关键词:软件过程 MSF RUP
中图分类号:TP311.52 文献标识码:A 文章编号:1673-8454(2008)09-0053-03
一、引言
MSF(Microsoft Solutions Framework,Microsoft 解决方案框架)是微软公司1994 年首次提出的一种软件开发过程框架。目前的 MSF 4.0 版将其本身定义为一种已经由 微软公司证明了的原则、模型、规程、关键概念、指导和最佳实践等所组成的软件项目开发方法。
RUP(Rational Unified Process,Rational统一过程)现在是IBM公司开发和维护的一个软件开发过程框架产品。目前RUP 7.0版将其本身定义为由最佳实践和指南所组成的软件开发方法。除了包含开发过程中的所有基本元素(阶段、规程、角色、任务、活动、工件、工作流)之外,RUP还展示了关于和软件工程相关的元素的广泛概念库。RUP定义了一种迭代、以架构为中心,及用例驱动的软件开发方法。RUP目前是IBM RMC(Rational Method Composer)的一部分。RMC是一个软件过程裁剪工具。
MSF和RUP都为软件开发团队提供过程指导,两者都包含过程规程、角色、原则、最佳实践和工件等元素。但在某些情况下,名称相同的元素拥有不同的定义和用途,有些相同含义的元素却拥有不同的术语。这意味着很难将 RUP 元素直接映射到 MSF 元素上。但尽管如此,我们也可以明显看出二者的相似之处。本文的目标是指出MSF和RUP两个软件开发过程框架主要结构上的差别和相似之处,从而帮助软件开发组织更好地灵活运用MSF或RUP等过程模型来指导软件项目的开发。
二、过程模型的映射
初看上去,映射MSF与RUP两个框架似乎是非常简单的事情——就是分析阶段、里程碑、迭代和工件的问题。但是进一步观察其各自的阶段和规程,会发现该映射不是那样直接的。
在比较MSF与RUP过程模型之前,首先了解下MSF与RUP的过程模型。
MSF将过程模型分为两个不同的模型:“团队模型”和“过程模型”,分别描述了软件生命周期中的团队和活动。“团队模型”定义了在项目中工作的人,及其各自的活动,而“过程模型”在高层次上,安排了项目活动的顺序。MSF过程模型分为构想、计划、开发、稳定和部署等五个阶段,每个阶段都描述了一组副产品和应该达到的里程碑。每次经历完五个阶段后,便发布一个版本,称为一次迭代。
RUP用一个二维结构来描述开发过程。横轴代表了RUP的动态结构,用拥有迭代的四个阶段表示软件开发的生命周期。这四个阶段分别是初始阶段、细化阶段、构造阶段和移交阶段。纵轴代表了RUP的静态结构,即每个迭代都包含商业建模、需求、分析
关键词:软件过程 MSF RUP
中图分类号:TP311.52 文献标识码:A 文章编号:1673-8454(2008)09-0053-03
一、引言
MSF(Microsoft Solutions Framework,Microsoft 解决方案框架)是微软公司1994 年首次提出的一种软件开发过程框架。目前的 MSF 4.0 版将其本身定义为一种已经由 微软公司证明了的原则、模型、规程、关键概念、指导和最佳实践等所组成的软件项目开发方法。
RUP(Rational Unified Process,Rational统一过程)现在是IBM公司开发和维护的一个软件开发过程框架产品。目前RUP 7.0版将其本身定义为由最佳实践和指南所组成的软件开发方法。除了包含开发过程中的所有基本元素(阶段、规程、角色、任务、活动、工件、工作流)之外,RUP还展示了关于和软件工程相关的元素的广泛概念库。RUP定义了一种迭代、以架构为中心,及用例驱动的软件开发方法。RUP目前是IBM RMC(Rational Method Composer)的一部分。RMC是一个软件过程裁剪工具。
MSF和RUP都为软件开发团队提供过程指导,两者都包含过程规程、角色、原则、最佳实践和工件等元素。但在某些情况下,名称相同的元素拥有不同的定义和用途,有些相同含义的元素却拥有不同的术语。这意味着很难将 RUP 元素直接映射到 MSF 元素上。但尽管如此,我们也可以明显看出二者的相似之处。本文的目标是指出MSF和RUP两个软件开发过程框架主要结构上的差别和相似之处,从而帮助软件开发组织更好地灵活运用MSF或RUP等过程模型来指导软件项目的开发。
二、过程模型的映射
初看上去,映射MSF与RUP两个框架似乎是非常简单的事情——就是分析阶段、里程碑、迭代和工件的问题。但是进一步观察其各自的阶段和规程,会发现该映射不是那样直接的。
在比较MSF与RUP过程模型之前,首先了解下MSF与RUP的过程模型。
MSF将过程模型分为两个不同的模型:“团队模型”和“过程模型”,分别描述了软件生命周期中的团队和活动。“团队模型”定义了在项目中工作的人,及其各自的活动,而“过程模型”在高层次上,安排了项目活动的顺序。MSF过程模型分为构想、计划、开发、稳定和部署等五个阶段,每个阶段都描述了一组副产品和应该达到的里程碑。每次经历完五个阶段后,便发布一个版本,称为一次迭代。
RUP用一个二维结构来描述开发过程。横轴代表了RUP的动态结构,用拥有迭代的四个阶段表示软件开发的生命周期。这四个阶段分别是初始阶段、细化阶段、构造阶段和移交阶段。纵轴代表了RUP的静态结构,即每个迭代都包含商业建模、需求、分析