UML的结构分为三部分,基本构造块、公共机制、UML的规则,其中公共机制和UML的规则是为基本构造块服务的,描述了怎样将这几种图有规则的排列到一起。基本构造块又分为事物、关系、图,将事物用关系连接起来就是我们今天所说的UML中的图。
一、导图宏观把控
二、图解
1 、用例图(Use case diagrams):用来描述用户的需求。从用户的角度描述系统的功能并指出各个功能的执行者,强调谁在使用系统,系统为执行者完成哪些功能。(是谁?在干什么?)机房收费系统中一般用户可以查询学生上机记录和自己的登录密码。如下图
2、类图(class diagram):用于定义系统中的类,包括描述类的内部结构和类之间的关系。类图上层是类的名字,中层是累的属性,下层是类的方法。比如一个人叫李明、年龄是他的属性,他会唱歌。
2.1、对象图(Object
):对象图是类图的一个实例,描述了系统在具体时间点上包含的对象以及各个对象之间的关系。
2.2、类图pk对象图 :对象图有声明域,和时间有关系,类图没有。
3、行为图:用来描述系统的动态模型和对象之间的交互关系。
3.1、状态图(Statechart diagrams):用来描述类的对象所有可能的状态以及事件发生时状态的转移条件。
3.2、活动图(Activity diagrams):用来描述满足用例要求索要进行的活动以及活动时间的约束关系,使用活动图有利于识别系统的并行活动。
3.3、活动图PK状态图:状态图侧重行为的结果描述(状态)
、 活动图侧重行为的动作描述(活动) 我认为状态图就是活动图某一个时刻的一个照片,这个照片将这一时刻的所有信息都记录下来。
4、交互图
4.1 序列图(Sequence diagrams):描述对象之间的交互顺序,着重体现对象间消息传递的时间顺序,强调对象之间消息的发送顺序,同时也显示对象之间的交互过程。下图是一个机房收费系统简单的用户登录序列图。
4.2 协作图(Collaboration diagrams):描述对象之间的合作关系,更侧重与说明对象之间有消息传递,下图是一个机房收费系统用户登录的协作图。
4.3、序列图pk协作图
顺序图中有一条时间轴,他能清楚的表达出消息发生的顺序(先从上到下,后从左到右),但是不好看出对象之间究竟发生多少次消息的传递,不如协作图一目了然。
协作图没有时间轴,用消息的名称+数字来表示消息传递的先后顺序,但是其很好的表达出对象之间传递了多少消息?什么消息?一块给列举出来。
5、实现图
5.1 构件图(Component diagrams):描述代码构件的物理结构以及构件之间的依赖关系。一个构件可以是一个资源文件、一个二进制文件或者一个可执行的文件。构建图我把它比作一个零件。比如螺丝钉就是机器上的一个零件,它起到固定的作用。
5.2、实施图(Deployment diagrams):定义了系统中硬件的物理体系结构,用来描述实际的物理设备以及它们之间的连接关系
三、小结
UML的九种图中,用例图来描述用户的需求;用对象图、类图、包图来描述系统的静态结构;用活动图、状态图、协作图、顺序图来描述系统的动态结构;用构建图和部署图将系统实施。