文章目录
- 一、活动图
- 二、类图
一、活动图
活动图
-
活动图用于描述业务流程、工作流程或算法中的控制流。活动图强调的是流程中的各个步骤的先后顺序,它可以帮助系统分析师、设计师和程序员更好地理解系统的动态行为。
-
活动图与用例模型互为补充,主要用于需求分析阶段
-
活动图的功能
-
描述一项任务执行过程中所完成的工作(动作)
-
描述对象内部的工作
-
显示如何执行一组相关的动作,以及这些动作如何影响它们周围的对象
-
显示用例的实例如何执行动作以及如何改变对象状态
-
说明一次业务流程中的人(参与者)和对象是如何工作的
-
活动图的基本组成部分
-
开始节点(Start Node):用一个实心圆表示,是活动图的起点。
-
结束节点(End Node):用一个实心圆外加一个圆环表示,是活动图的终点。
-
活动(Activity):用一个圆角矩形表示,代表过程中的一个步骤或动作。
-
决策节点(Decision Node):用一个菱形表示,表示流程中的分支点,通常与条件语句对应。
-
分支和合并(Fork and Join)
-
分支用水平线分割成两个或多个方向,表示并发执行的动作。
-
合并则是分支的逆过程,表示并发流程的同步。
-
同步棒是一条水平或垂直的粗线条
-
-
泳道(Swimlane):水平或垂直的矩形,用于将活动图中的活动按照职责分组成不同的部分,通常代表参与流程的不同角色或对象。
-
对象节点(Object Node):用一个矩形表示,代表流程中创建或消耗的信息。
-
控制流(Control Flow):用带箭头的直线表示,指出活动的顺序。
-
数据流(Data Flow):带箭头的虚线,表示数据在活动间的流动。
活动图示例
二、类图
类图 Class Diagram
-
类图是一种静态结构图,用于描述系统中类的结构以及类之间的关系。
-
类图的元素包括
-
类(Class):类是具有相同属性、操作、关系和语义的对象的集合。在类图中,类通常由一个矩形表示,矩形分为三个部分:类名、属性和操作。
-
属性(Attribute):属性定义了类的特性,通常包含可见性、属性名、类型等信息。例如:
-name: String
。 -
操作(Operation):操作定义了类可以执行的行为,通常包含可见性、操作名、参数类型和返回类型等信息。例如:
+display(): void
。
-
-
接口(Interface):接口定义了一组操作,这些操作没有具体的实现。在类图中,接口通常用带有名称和操作列表的矩形框表示,其名称上方标有
<<interface>>
。 -
类的规约(Class Specification):是类的详细描述,它定义了类的属性、操作(方法)、职责以及与其他类的关系。
类与类之间的关系
- 继承(Inheritance):用空心箭头表示,箭头指向基类。
- 关联(Association):表示不同类的对象之间的连接。关联可以有方向,也可以是双向的。
- 聚合(Aggregation):表示整体与部分的关系,是一种特殊的关联关系,用空心菱形加实线表示,菱形指向整体。
- 组合(Composition):是聚合关系的一种特例,表示部分和整体的生命周期相同,用实心菱形加实线表示,菱形指向整体。
- 依赖(Dependency):表示一个类使用另一个类的方法或资源,用带箭头的虚线表示。
- 关系的修饰:包括名称及其方向、角色和多重性,这些修饰提供了关于类之间如何交互的额外信息。
类图的作用
- 类图不仅用于软件设计和开发过程中的需求分析和系统设计阶段,也可以用于软件文档化,帮助开发人员理解系统的结构和设计。
- 通过类图,可以清晰地表达系统中的数据模型,为软件开发提供了一种标准化的视觉表示方法。
- 类是面向对象分析设计的核心概念,也是难点。用面向对象的思维方式去思考,去发现类、定义类、定义类之间的关系、定义每个类应该承担的职责。
类图示例
参考资料:Mermaid画类图
您正在阅读的是《面向对象分析与设计Python版》专栏!关注不迷路~