教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 范文大全 > 文秘资料 >

lec-09统一建模语言UML和Rational统一过程RUP

来源:网络收集 时间:2026-08-23
导读: 统一建模语言 第九讲 统一建模语言UML和Rational统一过程RUP 现代软件开发面临着要尽快将产品推向市场和开发高质量、低成本产品的矛盾。要成功解决软件开发中的矛盾,必须将软件开发作为一种团队活动。为了有效组织开发和进行交流,团队中不同参与者统一使用

统一建模语言

第九讲 统一建模语言UML和Rational统一过程RUP 现代软件开发面临着要尽快将产品推向市场和开发高质量、低成本产品的矛盾。要成功解决软件开发中的矛盾,必须将软件开发作为一种团队活动。为了有效组织开发和进行交流,团队中不同参与者统一使用公共的过程、公共的表达语言、以及支持该语言和过程的工具。Rational统一过程(RUP)就是这样一种公共过程,而且已经在多个软件开发组织的实践中被证实可以有效解决上述矛盾。统一建模语言(UML)则可以作为开发团队的公共语言。UML不是完整的开发方法,UML规范也没有定义标准的过程,而RUP则是有效使用UML的指南。本讲着重介绍UML和RUP的基本概念,并描述了如何在RUP的指导下用UML建模。

一.引言

现代软件开发中存在着一个基本矛盾:一方面,开发组织需要将产品尽快推向市场;另一方面,推出的软件系统必须兼具高质量和低成本。要在这二者之间取得平衡很困难:仓促地将一个软件系统推向市场,其质量肯定会受到影响;但是过分注重质量可能会需要过多的时间才能将软件交给用户。

要解决这个矛盾,首先要认识到软件开发已经发生了本质的变化。以前,许多信息系统的体系结构相当简单:上层的应用程序建立在中间层上,中间层则封装了业务规则和数据存取;中间层建立在持久存储之上,通常表现为一个关系数据库,这个数据库实质上就是系统的中心。Client/Server体系结构的出现有助于实现这种三层分离的体系,并且易于有效控制系统的变更。特别地,在保持系统状态不变的情况下可以快速创建和修改应用,可以引入新的业务规则而不影响系统的稳定,也可以随着时间以新的和不可预知的方式来进行数据挖掘。这种稳定的体系结构使得许多组织以相应的形式组织他们的开发团队:分析人员和最终领域专家一起将用户的要求转化为需求,数据建模人员建立满足用户功能需求的领域模型,应用开发人员则迅速建造满足系统行为需求的新系统。

然而,随着Web的出现,软件开发的世界发生了不可逆转的改变。首先,传统C/S结构的系统中,用户的数目是可以控制的,通常是数百或者数千。而Web上一个系统的用户可能数以百万计,并且大多不在系统开发组织的控制之中。再者,在传统的C/S系统中,应用和数据在概念上距离相当小,而Web上的许多系统都是由数千个可移动的部件组成,其中有使用脚本语言的,有经过编译的,使用的机制与传统的关系型存储大相径庭。第三,在C/S系统中,变更是不可避免的,但可以适度地控制;而在Web上,变更是持续的,并且在系统体系结构和实现技术的每个层次上都会发生。最后,在C/S系统中,参与系统开发的人员相对较少,而在Web上除了传统的软件开发团队以外,还有许多新的参与者,从内容创建人员、信息架构构造人员到网络设计人员,大家共同合作进行E-软件的开发。

另外,传统上着重处理大量数据的系统在实现上是相对同构的,主要使用Cobol语言。而Web的出现改变了一切。在Web上一个这样的系统可能在服务器端使用Cobol、C++或Java,或者少量的脚本语言和4GL,在客户端使用传统的语言如VB和Java。有时也会使用诸如XML这样的语言,而且XML本身就是作为一种在Web上表示结构化数据的通用语言出现的。除了面对这些庞杂的编程语言,开发队伍还必须处理众多的技术,如Micosoft的WinDNA,Sun的EJB等,这些技术提供给开发人员的编程模型也各不相同。

统一建模语言

对于一个组织而言,开发队伍的成员能够以一种通用的方式沟通是至关重要的,不同的参与者对系统的设计和实现有不同的看法,只有使用通用的语言表达,才可能统一开发团队的活动。

因此,要成功解决软件开发中的矛盾,必须将软件开发作为一种团队活动,团队中从事开发和部署的不同参与者统一使用公共的过程、公共的表达语言、以及支持该语言和过程的工具。

Rational统一过程(Rational Unified Process,RUP)就是这样一种公共过程,而且已经在多个软件开发组织的实践中被证实可以有效解决上述矛盾。RUP提供在开发机构中分派任务和责任的纪律化方法,它的目标是在可预见的日程和预算的前提下,确保满足最终用户需求的高质量产品。RUP是风险和用例驱动的过程,它鼓励系统可执行版本的迭代和增量式交付,其迭代以用例为依据。除此之外,RUP还是体系结构优先的过程,系统的体系结构在早期就稳定下来,以便对设计进行验证,在后续的迭代中逐步进行精化。

统一建模语言UML(Unified Modelling Languae,UML)可以作为开发团队的公共语言。UML是一种直观化、明确化、构建和文档化软件系统产物的图形化语言。UML最主要的目标是成为所有建模人员可以使用的通用建模语言,它包含了当前主流建模技术的概念,并针对许多当前软件开发的问题,如大规模、分布、并发和团队开发等。

UML不是完整的开发方法,不包括逐步的开发流程。对于软件开发来说,良好的开发过程非常重要。UML规范没有定义标准的过程,但是可以用于迭代的开发过程,并支持现有的大多数面向对象的开发过程。而RUP则是有效使用UML的指南。

下面将分别介绍统一建模语言和Rational统一过程。

二.统一建模语言——UML

UML是一种可视化的建模语言,结合了Booch、Objectory和OMT方法,同时吸收了其它大量方法学的思想,提供了一种表示的标准。1997年OMG采纳UML作为软件建模语言的标准,可以应用于不同的软件开发过程。

下面介绍UML涉及的一些基本概念。

1.视图(Views)

UML用模型来描述系统的静态结构和动态行为。为了捕捉要构建的软件系统的所有决策信息,需要从团队中不同参与者的角度出发,为系统的体系结构建模,形成不同的系统视图。要描述一个软件系统,下面的五种视图尤为重要:

(1)用例视图(Use case view)

用例视图定义系统的外部行为,是最终用户、分析人员和测试人员所关注的。用例视图定义了系统的需求,是描述系统设计和构建的其它视图的基础,即用例驱动。用例视图也称为用户模型视图。

(2)逻辑视图(Logic view)

逻辑视图描述逻辑结构,该逻辑结构支持用例视图描述的功能,它描述了问题空间中的概念以及实现系统功能的机制,如类、包、子系统等,因而是编程人员最关心的。逻辑视图又称作结构模型视图或静态视图。

(3)实现视图(Implementation view)

实现描述用于组建系统的物理组件,如可执行文件、代码库和数据库等系统程序员所看到的软件产物,是和配置管理以及系统集成相关的信息。实现视图又称为组件视图(Component view)。

统一建模语言

(4)过程视图(Process view)

过程视图描述将系统分解为过程和任务,以及这些并发元素之间的通信与同步。过程视图对于系统集成人员特别重要,因为他们需要考虑系统的性能和吞吐量等。过程视图也称为并发视图、动态视图或者协作视图等。

(5)配置视图(Deployment view)

描述系统的物理网络布局,是系统工程师和网络工程师所感兴趣的。又称作物理视图。

2.图(Diagrams)

每个视图都由一个或者多个图组成,一个图是系统体系结构在某个侧面的表示,所有的图在一起组成系统的完整视图。UML提供了九种不同的图,分为静态图和动态图两大类。静态图包括用例图、类图、对象图、组件图和配置图,动态图包括序列图、状态图、协作图和活动图。

(1)用例图(Use case diagram):

用例图描 …… 此处隐藏:16085字,全部文档内容请下载后查看。喜欢就下载吧 ……

lec-09统一建模语言UML和Rational统一过程RUP.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/fanwen/1996414.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)