UML基础(一)
1.软件工程的生命周期
需求捕获、系统分析与设计、系统实现、测试、维护
2.UML(Unified Modeling Language统一建模语言)概述
3.UML组成
视图(View)是一个或多个图组成的对系统某个角度的抽象
图(Diagram)是模型元素集的图形表示
模型元素(Model Element)代表面向对象中的类、对象、接口、消息和关系的概念
通用机制(General Mechanism)用于表示其他信息,如注释、模型元素的语义等
4.视图
视图由图组成,UML提供9种不同的视图,其中视图的包括
用例视图(强调系统功能)也称用户模型视图
用例图
逻辑视图(展现系统的静态或结构组成特征)也称为结构模型视图或静态视图
类图、对象图
并发视图(体现系统的动态或行为特征)也称为行为模型视图或动态视图
时序图、协作图、状态图、活动图
组件视图(体现系统实现的结构和行为特征)也成为实现模型视图
组件图
配置视图(体现系统实现的环境的结构和行为特征)也称环境模型视图或物理视图
配置图
5.静态建模机制和动态建模机制
UML内容归纳为2大类:静态建模机制和动态建模机制
静态建模机制包括用例图、类图、对象图、组件图、配置图、包等
动态建模机制包括时序图、协作图、状态图、活动图、消息等
6.UML用来描述模型内容的有3种:事物、关系、图(静态视图和动态视图)
主要说说事物和关系
事物包括如下
结构事物:用例(椭圆)、类(矩形)、接口(圆心)、协作(虚椭圆)、活动类(粗线矩形)、组件、节点(资源:电脑)
行为事物:交互(通常画成带箭头的信息)、状态机(对象的一个或多个状态的集合)
组织事物:包
辅助事物:注释
关系:关联、依赖、泛化、实现
7:类与l类关系
类(矩形:名称、属性、操作、职责)
其中表示+、-、#是public、private、protected
关系
依赖(有方向的虚线):使用依赖、抽象依赖、授权依赖、绑定依赖
泛化(父类和子类的关系):描述了类之间的“is a kind of ”的关系,用子类指向父类的空心三角形箭头(实线)表示该关系。泛化使得多态成为可能。
关联:描述一组具有相同结构特征、行为特征、关系和语义的链接。
关联的修饰有:名称(描述关系的性质)、角色(职责)、多重性(0..n)、聚合(整体和部分,即has a的关系)、
组合(是更强的关系,是另外一种聚合,整体有管理部分特有的职责并且有一致的生命周期)等。
实现:实现规格说明和其实现间的关系。它表示不继承结构而只继承行为。大多数情况下,实现关系用来规定接口和实现接口的类或组件之间的关系。(带空心的箭头表示,线是虚线)
8.类图
描述类、接口、协作以及它们之间关系的图。
类图包括7个元素:类、接口、协作、依赖关系、泛化关系、实现关系以及关联关系
类图的作用:对系统的词汇建模、对简单的协作建模、对逻辑数据库模式建模
9.对象图
表示某一刻一组对象以及它们之间关系的图
10.包图(略)
11.用例视图
用例(Use Case):对一个系统或一个应用的一种单一的使用方式所作的描述。
参与者(Actor):系统外部的一个实体(可以说任何事物或人)
参与者之间的关系(泛化关系、包含关系、扩展关系)
12.时序图
描述对象之间传递消息的时间顺序,他用来表示用例中的行为顺序,是强调消息时间的交互图
包括4个元素:对象、生命线、激活、消息
13.协作图
强调参与交互的各对象结构的信息。协作图是一种类图。
协作图中包含3个元素:对象、链、消息。
14.状态图
通过类对象的生命周期建立模型来描述对象随时间变化的动态行为。
它包括:状态和转换
注意:初始状态:实圆心、终止状态:半实圆心。
状态机、状态、转化
其中状态包括:名字、入口/出口动作、内部转换、延迟事件、子状态。
转换包括:源状态、目标状态、出发事件、监护条件、动作
15活动图
描述一个过程或操作的步骤。描述状态外,更突出活动
动作状态、活动状态、动作流、分支、分叉和汇合、泳道、对象流。
16组件图
描述软件组件及组件之间的关系。
包括:组件、接口、关系(依赖、泛化、关联、实现)。
17.配置图
显示软件系统运行的物理硬件。
包括节点(单个物理对象)、组件和关系(依赖和关联)