统一建模语言(UML)的特点、视图模型

这里就直接说UML的用法和基本内容了,那些历史和发展过程什么的就不介绍了。。


UML的特点和用途:

1、为使用者提供了统一的,表达能力强大的可视化建模语言,以描述应用问题的需求模型,设计模型和实现模型。

2、提供对核心概念的扩展机制,用户可加入核心概念中没有的概念和符号,可为特定应用领域提出具体的概念、符号表示和约束。

3、独立于实现语言和方法学,但支持所有的方法学,覆盖了面向对象分析和设计的相关概念和方法学。

4、独立于任何开发过程,但支持软件开发全过程。

5、提供对建模语言进行理解的形式化基础,用元模型来描述基本语意,OCL(对象约束语言)描述良定义规则,自然语言描述动态语义。

6、增强面向对象工具之间的互操作性,便于不同系统的集成。

7、支持较高抽象层次开发所需的各种概念,如协同、框架、模式和构建等,便于系统的重用。

UML的目标是以面向对象方式描述任何类型的系统,具有广泛的应用领域。UML最常用语简历软件系统的模型,但它同样可以描述非软件领域的系统,如机械系统、企业机构或业务过程,处理复杂数据的信息系统等。实践表明,UML适用于能以面向对象技术描述的任何类型系统,而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试、部署与维护。


UML2.0中的视图模型

UML2.0中有13种视图模型,在这13种视图模型中,类图,包图,对象图,构件图,组合结构图,部署图属于结构建模,活动图,顺序图,通信图,交互概览图,时序图,状态图,用例图属于行为建模。其中顺序图,通信图,交互概览图,时序图又可以归属为交互图。下面对这些视图模型进行简要说明。

1、结构建模

(1)类图:描述系统的静态逻辑结构,即构成系统的抽象元素以及元素之间的关系。类图最基本的元素是类与类之间的关系,包括关联,聚集,继承,依赖等关系。类图在系统的整个生存周期都有效。

(2)包图:是一种特殊类型的类图,描述类和接口如何进行逻辑上的划分,常用来描述软件系统的体系结构。

(3)对象图:与类图具有相同的表示形式,可以看作是类图的一个实例。对象是类的实力,对象之间的链接是类之间关联的实例。由于对象存在生存周期,因此对象图只能在系统某一时间段存在。

(4)构件图:描述了系统实现中的结构和依赖关系,可以用来表示软件开发,编译,链接,部署或者执行时构件之间的关系。

(5)组合结构图:这是UML2.0中新增加的视图,用于描述较为复杂的系统元素以及元素之间的关系。组合结构图把类图和构件图联系起来,表明系统元素如何组合在一起实现复杂的模式。

(6)部署图:描述系统硬件的物理拓扑结构以及在此结构上运行的构建。它可以显示实际设备之间的连接关系,链接的类型以及构件之间的依赖性,以及构建运行时在屋里平台上的配置和部署情况。

2、行为建模

(1)活动图:描述行为或活动的流程,与传统的流图类似,但表达能力更强。活动图可用来描述任何能够以流的形式表示的过程,包括算法,控制流,业务流,工作流等。

(2)顺序图:描述对象在其生存周期内的交互活动,交互中的消息传递按时间顺序进行排列。顺序图是最常用的一种交互图,对使用者来说非常直观。

(3)通信图:由UML1.X的协作图发展而来,更关注于描述特定行为中参与交互的对象及其连接关系,也能表示对象之间的消息传递,但对于显示顺序并不直观。很多情况下,通信图与顺序图可以相互进行转换。

(4)交互概览图:是活动图的一种简化版本,不像活动图一样强调每一步的活动,而是强调执行活动所涉及的元素。交互概览图也是UML2.0中新增加的视图。

(5)时序图:强调信息的详细时序说明,常常用来对实时系统进行建模,例如通信,硬件协议等,它能指定系统处理或相应一个消息需要多长时间。

(6)状态图:刻画一个元素内部的状态迁移,元素可以小到单独的一个类,也可以大到整个系统。状态图还常用来对嵌入式系统、协议规范以及实现进行建模。

(7)用例图:通过用例来描述系统的功能性需求,从用户的角度以一种与实现无关的方式刻画系统将能够做什么。还能够描述用例之间的关系。





你可能感兴趣的:(————软件工程————,————计算机基础————,专业课)