UML模型系统体系结构

UML的最新版本在www.omg.com

在开发阶段中,最容易的阶段是实现阶段(编码,测试)

在面对大规模代码时就不能直接靠代码进行沟通了,希望通过一些专业图形,表格进行沟通

谚语:一张图胜过千言万语

目的:通过图形看到其中蕴含的代码的本质

UML的所有图的分类

一、从视图的角度

1、用例视图:用例图、活动图
2、逻辑视图:类图、对象图、状态图、顺序图、合作图、活动图
3、构件视图:构件图——反映文件的依赖关系的图形
构件:文件(源文件、头文件、辅助文件等等)**
4、进程视图:状态图、顺序图、合作图、活动图、构件图和配置图
5、配置视图:配置图

总共有10种图形,5种视图

UML模型元素

软件系统分析与设计 第十六节 UML模型系统体系结构

对象图下面有下划线,类图下面没有

类图描述属性时给出的是成员 变量:类型

对象图描述属性时给出的是成员变量:成员变量的值

软件系统分析与设计 第十六节 UML模型系统体系结构

关联:连接(connect)模型元素及链接(link)实例。

依赖:表示一个元素以某种方式依赖于另一种元素。

泛化(继承):表示一般与特殊的关系,即“一般”元素是“特殊”关系的泛化。由子类指向父类

聚合:表示整体与部分的关系。组成部分指向整体。

配置:设备(硬件设备、计算机、服务器等等)

二、从模型的角度

1、用例模型图:用例图
2、静态模型图:类图、对象图、包图、构件图、配置图
3、动态模型图:活动图、顺序图、状态图、合作图

三、用例图的图标

1、小人:执行者——角色
2、椭圆:用例——操作,用动词短语描述
3、长方形:系统边界
4、线段:执行者参与到某个操作的执行过程中。代表参与关系,线段上不需要写文字
5、用例之间的关系:
(1)includes包含(用虚线箭头,加上构造型):无条件
(2)extends扩展(用虚线箭头,加上构造型):有条件
(3)继承(用实线箭头,加上空心三角形)

例子:
java.lang.String
java.lang包名 String类名

import java.lang.String;
import tom.jiafei.String;

java.lang.String str;

java.awt.Frame
awt是abstract window tool抽象窗口工具类

包:用于给 类 进行分类的
同一个包里,类不能同名
不同的包里,类可以同名

子系统——包,子系统图标与包图标一样
大的长方形,左上角有一个小的长方形
(1)没有更多的标识:最底层的包,只含有类
(2)右上角多了“分叉”的标识:
子系统内部还有更深层的子系统
包内部还有更深层的子包
(3)右上角有“三角形”的标识:
系统模型图标

构造型:<<UML自带的单词、自定义的单词>>
自带:<>、<>等等
自定义:<>、<>等等

多重性:
0…1 0或1个
1…* 1或多个

  • 0个、1个或多个
    2…4 从2个到4个
    软件开发过程的在时间轴上的四个阶段:
    1、开始阶段
    2、详细规划
    3、系统构建
    4、移交

四、对象图的图标

软件系统分析与设计 第十六节 UML模型系统体系结构

-号表示私有

相关文章: