美文网首页
大师兄的信息化管理学习笔记(九):UML语言

大师兄的信息化管理学习笔记(九):UML语言

作者: superkmi | 来源:发表于2023-01-19 17:54 被阅读0次

    大师兄的信息化管理学习笔记(八):软件需求分析
    大师兄的信息化管理学习笔记(十):面向对象方法

    一、关于UML

    • UML(Unified Modeling Language,)是一个通用的可视化建模语言,它是面向对象分析和设计的一种标准化表示,用于对软件进行描述、可视处理、构造和建立软件系统的文档。
    • UML的特点:
    • 支持需求分析开始的软件开发全过程
    • UML不是一种可视化的程序设计语言,而是一种可视化的建模语言
    • 是一种建模语言规格说明,是面向对象分析与设计的一种标准表示
    • 不是过程,也不是方法
    • 简单并且可扩展,具有扩展和专有化机制,便于扩展,无需对核心概念进行修改

    二、UML的结构

    1. 构造块
    • UML的三种基本构造块:
    • 事务:UML的基础
    • 关系:事务之间的联系
    • 图:事务的集合
    2. 规则
    • 规则是构造块如何放在一起的规定。
    • 构造块命名
    • 范围
    • 可见性
    • 完整性
    • 执行
    3. 公共机制
    • 达到特定目标的公共UML方法:
    • 规则说明(详细说明)
    • 修饰
    • 公共分类(通用划分)
    • 扩展

    三、UML的事务

    类型 描述
    结构事务 - 静态部分,代表概念上或物理上的元素。
    - 7种结构事务:类、接口、写作、用例、活动类、构件和节点。
    行为事务 - 动态部分,代表时间和空间上的动作。
    - 行为事务分为交互和状态机两类。
    - - 交互:消息、动作次序、连接。
    - - 状态机:由一系列对象的状态组成。
    分组事务 - 将UML模型中的元素进行分组。
    - 只有一种分组事务,称为包
    注释事务 - URL模型的解释部分

    四、UML2.0中的十四种图

    结构图 行为图
    类图(Class diagram) 用例图(Use Case diagrames)
    对象图(Object diagram) 活动图(Activity diagrames)
    包图(Package diagrams) 状态图(State machine diagrams)
    构件图(Component diagram) 顺序图(Sequence diagrams),属于交互图
    组合结构图(Composite structure diagram) 通信图(Communication diagrams),属于交互图
    部署图(Deployment diagram) 定时图(Timing diagrams),属于交互图
    制品图(Artifact diagram) 交互概念图(Interaction overview diagrams),属于交互图
    1. 类图Class diagram
    • 类图用来显示系统中的类、接口、协作以及它们之间的静态结构和关系,是UML中最常见的图。
    • 类图的3个基本组成部分:类名、属性和方法
    • 类之间的关系:


    • 泛化关系(generalization):表示is-a的关系,是对象之间耦合度最大的一种关系,子类继承父类的所有细节。直接使用语言中的继承表达。
    • 关联(Association):对象之间的一种引用关系,比如客户类与订单类之间的关系。通常使用类的属性表达。关联可以是单项或双向。
    • 依赖(Dependency):对象之间最弱的一种关联方式,是临时性的关联。代码中一般指由局部变量、函数参数、返回值建立的对于其他对象的调用关系。
    • 实现(Realization):在类图中就是接口和实现的关系。
    • 聚合(Aggregation):表示has-a的关系,是一种不稳定的包含关系,没有整体,局部也可独立存在。
    • 组合(Composition):表示contains-a的关系,是一种强烈的包含关系,比聚合关系更强,部分不能脱离整体存在。
    2. 对象图Object diagram
    • 对象图描述一组对象及它们之间的关系。
    • 对象图描述的是参与交互的各个对象在交互过程中某一时刻的状态,可以看做是类图在某一时刻的快照。
    3. 包图Package diagrams
    • 为了简单地表示出复杂的类图,可以把类组合成
    • 一个包是UML上有逻辑关系的元件的集合。
    4. 构件图Component diagram
    • 表示系统中构件与构件之间,类或接口与构件之间的关系图。
    • 其中,构件图之间的关系表现为依赖关系,定义的类或接口与类之间的关系表现为依赖关系或实现关系。
    5. 组合结构图Composite structure diagram
    • 描述系统中某一部分(构件或类)的内部结构,包括该部分与系统其它部分的交互点。
    6. 部署图Deployment diagram
    • 也称配置图,用来显示系统中软件和硬件的物理架构。
    • 它描述了运行时的硬件结点,以及在这些结点上运行的软件组件的静态试图。
    7. 用例图Use Case diagrames
    • 用例图展现系统功能用例,主要用来描述“用户、需求、系统功能单元”之间的关系。
    • 它展示了一个外部用户能够观察到的系统功能模型图。
    • 用例图所包含的元素如下:
    • 参与者Actor:表示与应用程序或系统进行交互的用户、组织或外部系统,用一个小人表示。
    • 用例Use Case:用例就是外部可见的系统功能,对系统提供的服务进行描述,用椭圆表示。
    • 子系统Sub System:用来展示系统的一部分功能,这部分功能联系紧密。
    • 用例图中的四种关系
    类型 说明 符号
    关联 参与者与用例间的关系
    泛化 参与者之间或用例之间的关系
    包含 用例之间的关系
    扩展 用例之间的关系
    8.活动图Activity diagrames
    • 活动图是一个特殊的流程图,集中在一个单独过程动作流程。
    • 活动图告诉我们活动之间的依赖关系。
    9.状态图State machine diagrams
    • 状态图描述一个状态机,它由状态、转移、事件和活动组成。
    • 状态图给出了对象的动态试图,对于接口类或协作的行为建模尤为重要。
    • 状态图强调事件导致的对象行为,这非常有助于反应式系统建模。
    10.顺序图Sequence diagrams
    • 顺序图展现了一组对象或参与者以及它们之间可能发送的消息。
    • 顺序图是强调消息的时间次序的交互图。
    11.通信图Communication diagrams
    • 顺序图类似,但是通信图更侧重于对象间的联系,而顺序图强调消息的先后顺序。
      image.png
    12. 定时图Timing diagrams
    • 定时图用来显示随时间变化,一个或多个元素的值或状态的改变。
    • 定时图强调消息跨越不同对象或参与者的实际时间。
    13. 交互概览图Interaction Overview Diagrams
    • 交互概览图是多种图的组合。

    五、UML中的视图

    • 视图从更宏观的层面展示了系统的结构。
    1. 逻辑视图Logical View
    • 逻辑视图展现系统静态或结构组成及特性,表示了设计模型中在架构方面具有重要意义的部分,如类、子系统、包和用例实现等。
    2. 进程视图Process View
    • 进程视图是逻辑视图的一次执行实例,描述了并发与同步结构,系统的动态或行为特征。
    3. 实现视图Implementation View
    • 实现视图对组成基于系统的物理代码的文件和构件进行建模,指导开发架构设计。
    4. 部署视图Deployment View
    • 部署视图把构件部署到一组物理节点上,表示软件到硬件的映射和分布结构。
    • 部署视图指导物理架构设计,主要是部署图。
    5. 用例视图Use-Case View
    • 用例视图是最基本的需求分析模型,强调从用户的角度看到的或需要的系统功能,在系统建模中处于中心地位。

    相关文章

      网友评论

          本文标题:大师兄的信息化管理学习笔记(九):UML语言

          本文链接:https://www.haomeiwen.com/subject/fyijcdtx.html