uml中的十种图

    uml中有十种图,可以分为四大类,分别是用例图,静态图,行为图,实现图。静态图又分为类图、对象图、包图。行为图分为状态图、活动图、交互图;交互图分为序列图和协作图。实现图分为部署图和构件图。

uml中的十种图_第1张图片

一、用例图

    用例图是用来描述客户的需求,从用户的角度描述系统的功能,并指出系统的执行者,强调谁在使用系统,系统执行者完成了哪些功能。用例图包括角色、用例和关系。

    如何决定用例图的角色呢,可以从以下几个方面找:

    1.直接使用系统的人

    2.系统的维护人员

    3.系统使用的外设

    4.与系统相连的其他系统

    用例就是对系统功能的描述。关系是指角色和用例的关系,用例和用例之间的关系。关系有泛化、关联、依赖,用例之间的依赖关系又有扩展和包含。

    机房收费系统中一般用户的用例图:uml中的十种图_第2张图片

 

二、类图

    类图主要用于描述系统的静态结构。它是用于定义系统中的类,包括描述类的内部结构和类之间的关系,让我们在编写代码之前对系统有一个全面的认识。类图表示类、接口和他们之间的协作关系。类图中的类有三部分,分别是类名、属性、方法。关系有依赖、关联、泛化、实现。

    类:

uml中的十种图_第3张图片

    机房收费系统中一般用户的类图:uml中的十种图_第4张图片

 

三、对象图

    是类图的一个实例,描述了系统在具体时间点上所包含的对象以及各个对象之间的关系。对象图显示类的多个对象实例,而不是实际的类。它描述的不是类之间的关系,而是对象之间的关系。

 

四、包图

    包图用于描述系统的分层结构,由包或类组成,表示包与包之间的关系。

 

五、状态图

    描述类的对象所有可能的状态及事件发生时状态的转移条件。可以捕获对象、子系统和系统的生命周期。他们可以告知一个对象可以拥有的状态,并且事件(如消息的接收、时间的流逝、错误、条件变为真等)会怎么随着时间的推移来影响这些状态。一个状态图应该连接到所有具有清晰的可标识状态和复杂行为的类;该图可以确定类的行为,以及该行为如何根据当前的状态变化,也可以展示哪些事件将会改变类的对象的状态。状态图是对类图的补充。

    机房收费系统中,一个学生卡对象,开始空闲状态,按下上机按钮后,变为上机状态,按下下机按钮后,变为下机状态,最后结束。uml中的十种图_第5张图片

六、活动图

    描述满足用例要求所要进行的活动以及活动间的约束关系,使用活动图有利于识别系统的并行活动。能够演示出系统中哪些地方存在功能,以及这些功能和系统中其他组件的功能如何共同满足前面使用用例图建模的商务需求。活动图和流程很类似,但是活动图可以支持并行活动,不足之处在于它不能表达动作和对象之间的交互。

七、序列图

    对象之间的交互顺序,着重体现对象间消息传递的时间顺序,强调对象之间消息的发送顺序,同时也显示对象之间的交互过程。序列图是用来显示你的参与者如何以一系列顺序的步骤与系统的对象交互的模型。顺序图将显示的重点放在消息序列上,即强调消息是如何在对象之间被发送和接收的。序列图包括:对象、消息、生命线。

    机房收费系统中,一般用户查询学生余额的序列图:uml中的十种图_第6张图片

八、协作图

    描述对象之间的合作关系,更侧重于说明哪些对象之间有消息的传递。协作图和序列图可以互相转换的。他们的区别在于:序列图重在强掉时间顺序,协作图强调对象之间的交互。

九、组件图

    描述代码构件的物理结构以及各构件之间的依赖关系。用来建模软件的组件及其相互之间的关系,这些图由构件标记符和构件之间的关系构成。在组件图中,构件时软件单个组成部分,它可以是一个文件,产品、可执行文件和脚本等。

十、部署图

部署图定义了系统中硬件的物理体系结构,用来描述实际的物理设备以及他们之间的连接关系。例如计算机和设备,以及它们之间是如何连接的。部署图的使用者是开发人员、系统集成人员和测试人员。部署图用于表示一组物理结点的集合及结点间的相互关系,从而建立了系统物理层面的模型。

 

    做一个项目并不是uml中的每个图都要画出来,经常需要用到的图有用例图、类图、包图和序列图。用例图侧重系统的用户需求,类图描述系统的具体实现,序列图描述系统的行为。

 

 

 

 

 

 

 

 

你可能感兴趣的:(uml中的十种图)