面向对象分析与设计:九种建模的图

用例图Use case diagrams

用例图描述了作为一个外部的观察者的视角对系统的印象。强调这个系统是什么而不是这个系统怎么工作。用例图与情节紧紧相关的,情节scenario是指当某个人与系统进行互动时发生的情况。

“一个病人打电话给门诊部预约一年一次的身体检查。接待员找出在预约记录本上最近有没有预约过的时间,并记上那个时间的预约记录。”

一个用例图是角色、用例和它们之间的联系的集合,一个用例可以多个角色。

用例图在三个领域很有作用:

(1)决定特征(需求)。

(2)客户沟通。

(3)产生测试用例。

 

类图Class diagrams

类图通过显示出系统的类以及这些类之间的关系来表示系统。类图是静态的。

下面是一个顾客从零售商处预定商品的模型的类图。

 

面向对象分析与设计:九种建模的图_第1张图片

 

类图有三种关系:

(1)关联association:如果一个类的实例必须要用另一个类的实例才能完成工作进就要用关联。

(2)聚合aggregation:当一个类是别一个类的容器时。

(3)泛化generation:继承。

 

 

包图

为了简单地表示出复杂的类图,可以把类组合成包packages,一个包是有逻辑关系的元件的集合。

面向对象分析与设计:九种建模的图_第2张图片

 

对象图Object diagrams

用来表示类的实例,在解释复杂关系的细小问题时很有用。比如:

面向对象分析与设计:九种建模的图_第3张图片

这个类图表示一个大学的Department可以包括其他很多的Departments.

面向对象分析与设计:九种建模的图_第4张图片

这个对象图表示上面类图的实例。

 

顺序图

顺序图将交互关系表示为一个二维图,纵向是时间轴,时间沿竖线向下延伸。横向轴代表了协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。

面向对象分析与设计:九种建模的图_第5张图片

 

协作图

协作图也是互动的图表,他们像序列图一样传递相同的信息,但他们不关心什么时候消息被传递,只关心对象的角色。

 

面向对象分析与设计:九种建模的图_第6张图片

 

协作图的每个消息都有一个序列号,项层消息的数字是1,再根据他们出现的顺序增加一个后缀1、2等等。

 

状态图statechart diagram

对象拥有行为和状态,对象的状态是由对象当前的行为和条件决定的。

面向对象分析与设计:九种建模的图_第7张图片

 

活动图activity diagram

活动图和状态图之间是有关系的。状态图把焦点集中在过程中的对象身上,而活动图则集中在一个单独的过程动作流程。

面向对象分析与设计:九种建模的图_第8张图片

 

 

组件图

组件图是类图的物理实现, 是代码模块。

 

配置图Deployment diagram

显示软件及硬件的配置

面向对象分析与设计:九种建模的图_第9张图片

 

最后欢迎大家访问我的个人网站:1024s

​​​​​​​

你可能感兴趣的:(软件架构)