UML(Unified Modeling Language,统一建模语言),是一种用于描述,构造软件系统以及商业建模的语言。“UML是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。”
UML系统开发中主要有三种模型,分别是以下几种:
功能模型:从用户的角度展示系统的功能,包括用例图。
对象模型:采用对象、属性、关联、操作等方面展示系统的结构与基础,包括类图、对象图。
动态模型:展现系统的内部行为,包括序列图、活动图、状态图。
UML模型图分为用例图、类图、序列图、活动图、状态图、对象图、组件图、部署图。
主要了解下用例图和类图,其他的以后补充。
用例图描述了一个作为外部的观察者(用户)的视角对系统的印象,强调这个系统是什么而不是这个系统是怎么工作的。一个用例图,是角色和用例的集合,一个单独的用例可以有多个角色(但rose上的说法是用例图由三部分组成,用例、角色以及关系)。从系统功能角度建模。
用例一般是指对一组动作序列的描述,系统通过执行这一组动作序列,对参与者产生一个可观察的结果。用例特征说明了系统具有的一种行为模式,获取系统需求的方法,测试系统的方法,参与者与开发者沟通的方法。
关系反应了用例与用例之间、用例与角色之间、角色与角色之间的一种相互作用。关系一般分为:关联关系、依赖关系、泛华关系。
1.关联关系(association)表示一种通信路径,存在于用例与参与者之间,提供用例与角色之间的通信,建立关系后,信息可以双向流动。箭头的方向并不是指信息流动的方向,而是谁启动信息(还有一种说法是箭头指向信息接收方)。
2.依赖关系(dependence)存在于模型要素与模型要素之间,表示一方的改变将影响另一方。箭头一般指向被依赖的一方。
3.泛化关系(inheritance)存在于一个略抽象的模型与一个较具体的模型之间,通常表现为类之间的继承关系。
除了以上三种关系以外,还有一些关系的扩展。
用例图除了图形以外,还有用例规约描述。
类图属于对系统的静态建模,通过显示出系统的类以及这些类之间的关系来表示系统,他们一般会显示什么可以产生影响,但不会告知到底什么时候产生。类分成三部分,类名、属性、以及方法。
类图有三种关系,分别是关联(association)、聚合(aggregation)以及泛化(generalization)。
1.关联关系(association)通常指两个类的实例之间的关系,如果一个类的实例必须要用另一个类的实例才能完成工作,就要用关联,关联类似于(has-a)模式。
2.聚合关系(aggregation)类之间一种整体与部分的关系,体现了类的层次结构。聚合关系用带有菱形的线条表示,菱形指向整体。
聚合关系中含有一种特殊的形式-----组合关系(composition),组合不能离开整体而存在。一般用实心的菱形表示。
3.泛化关系(generalization)是继承机制中产生的类与类之间的关系,类似于(is part of)模式(和用例图的泛化类似)
另外还有一种依赖关系(dependence),是一种使用关系,其中一个类的实现需要另一个类的帮助。
原文:http://www.cnblogs.com/mulberries/p/3545519.html