UML软件工程组织

建模工具Rose的学习(2)

天雨

概述

在这个面向对象应用程序开发不断变化的时代,在合理时间内开发和管理高质量应用程序变得越来越困难。为了面对这种挑战,制定出每个公司都能使用的通用对象模型语言,统一建模语言(UML)。UML是信息技术行业的蓝图,是详细描述系统结构的方法。利用这个蓝图,我们越来越容易建立和维护系统,保证系统能适应需求的改变。一个系统的模型建得好,就为满足用户需求、保证系统的稳定性和质量、提高系统的扩展性打下了良好的基础。ROSE是用UML快速开发应用程序的工具之一,它是一个面向对象的建模工具。

UML统一建模语言

UML,Unified Modeling Language,统一建模语言,是一种面向对象的建模语言,它的主要作用是帮助我们对软件系统进行面向对象的描述和建模,它可以描述这个软件开发过程从需求分析直到实现和测试的全过程。UML通过建立各种类、类之间的关联、类/对象怎样相互配合实现系统的动态行为等成分(这些都称为模型元素)来组建整个模型,刻画客观世界。UML提供了各种图形,比如Use Case图、类图、顺序图、协作图、状态图等,来把这些模型元素及其关系可视化,让人们可以清楚容易的理解模型。我们可以从多个视角来考察模型,从而更加全面的了解模型,这样同一个模型元素可能会出现在多个图中,对应多个图形元素。

由视图view,图diagram,模型元素model element和通用机制general mechanism等几个部分组成 .视图是表达系统的某一方面特征的UML建模元素的子集,由多个图构成,是在某一个抽象层上,对系统的抽象表示.图是模型元素集的图形表示,通常为弧(关系)和顶点(其他模型元素)相互连接构成的.模型元素代表面向对象中的类、对象、消息和关系等概念,是构成图的最基本的常用概念.通用机制用于表示其它信息,比如注释、模型元素的语义等。另外,它还提供扩展机制,使UML语言能够适应一个特殊的方法(或过程),或扩充至一个组织或用户.

UML是用来描述模型的,用模型来描述系统的结构或静态特征,以及行为或动态特征。从不同的视角为系统的构架建模,形成系统的不同视图(VIEW)。

用例视图(use case view),强调从用户的角度看到的或需要的系统功能,是被称为参与者的外部用户所能观察到的系统功能的模型图;

逻辑视图(logical view),展现系统的静态或结构组成及特征,也称为结构模型视图(structural model view)或静态视图(static view);

并发视图(concurrent view),体现了系统的动态或行为特征,也称为行为模型视图(behavioral model view)、动态视图(dynamic view);

组件视图(component view),体现了系统实现的结构和行为特征,也称为实现模型视图(implementation model view) ;

配置视图(deployment view),体现了系统实现环境的结构和行为特征,也称为环境模型视图(environment model view)或物理视图(physical view)。

建模工具Rose 之游

ROSE是美国Rational公司的面向对象建模工具,利用这个工具,我们可以建立用UML描述的软件系统的模型,而且可以自动生成和维护C++、Java、VB、Oracle等语言和系统的代码。

ROSE是个菜单驱动应用程序,用工具栏帮助使用常用特性。它的界面分为三个部分--Browser窗口、Diagram窗口和Document窗口。Browser窗口用来浏览、创建、删除和修改模型中的模型元素;Diagram窗口用来显示和创作模型的各种图;而Document窗口则是用来显示和书写各个模型元素的文档注释。

Rose界面

Rose模型的四个视图是Use Case视图 、Logical视图、Component视图和Deployment视图。每个视图针对不同对象,具有不同用途。Use Case视图包括系统中的所有角色、案例和Use Case图,还包括一些Sequence图和Collaboration图。

Use Case视图

Logical视图关注系统如何实现使用案例中提到的功能。它提供系统的详细图形,描述组件间如何关联。除其它内容之外,Logical视图还包括需要的特定类、Class图和State Transition 图。利用这些细节元素,开发人员可以构造系统的详细设计。


Logical视图

Component视图包括模型代码库、执行库和其它组件的信息。组件是代码的实际模块。Component视图的主要用户是负责控制代码和编译部署应用程序的人。有些组件是代码库,有些组件是运行组件,如执行文件或动态链接库(DLL)文件。

Collaboration图关注系统的部署,可能与系统的逻辑结构不同。整个小组都用Collaboration图了解系统部署,但用户是发布应用程序的人员。

Rose的九种图

用例图use case diagram,描述系统功能

类图class diagram,描述系统的静态结构

对象图object diagram,描述系统在某个时刻的静态结构

序列图sequence diagram,按时间顺序描述系统元素间的交互

协作图Collaboration diagram,按照时间和空间顺序描述系统元素间的交互和它们之间的关系

状态图state diagram,描述了系统元素的状态条件和响应

活动图activity diagram,描述了系统元素的活动

组件图component diagram,描述了实现系统的元素的组织

配置图deployment diagram,描述了环境元素的配置,并把实现系统的元素映射到配置上

根据它们在不同架构视图的应用,可以把9种图分成:

用户模型视图:用例图

结构模型视图:类图、对象图

行为模型视图:序列图、协作图、状态图、活动图(动态图)

实现模型视图:组件图

环境模型视图:配置图