ご :静态建模

文章目录

  • 【任务5-1】了解类图的基础知识
    • 任务描述
    • 任务实现
      • 1.类图的概述
        • (1)对系统的词汇(概念)建模
        • (2)对简单协作建模
        • (3)对逻辑数据模式建模
      • 2.类图的组成要素
          • (1)类
            • ①类的名称。
            • ②类的属性。
          • (3)类之间的关系
            • ①关联关系。
            • ②聚合关系。

【任务5-1】了解类图的基础知识

  • 类图是UML静态建模中的重要组成,
    • 设计人员关心的核心,更是实现人员关注重点
  • 建模工具可根据类图来产生代码
  • 类图在UML图中重要,
    • 如果没有类图,
    • 就没有状态图、顺序图和通信图,
    • 也就无法从不同角度对软件系统进行描述

任务描述

  • 类图描述系统静态结构,在系统分析与设计阶段起重要作用
  • 绘制类图前必须掌握类图的基本知识,
    • 尤其是类图中涉及的一些基本组成要素,
    • 然后オ能结合具体的项目绘制合理的、清晰的类图。
  • 本任务将需要完成如下内容。
    • 类图的概述。
    • 类图的组成要素。

任务实现

1.类图的概述

  • 对软件系统分析、设计和建模的时候系统分析和设计人员,
    • 先从构造系统的基本词汇开始,
    • 分析这些词汇的基本属性和行为,
    • 考虑它们之间的关系,并以图形的方式显示。
  • UML中,用类图对这些构造块的词汇和它们之间的关系可视化,
    • 描述其构造细节,形成重要的可视化静态模型。

  • 类图是UML图形中最基本的图形之一,是描述系统中一组类、接口、协作,以及它们的结构和相互之间的关系的静态模型。
  • 类图是静态模型的主要部分,一个系统模型中也可能包含多个类图,系统分析和设计人员通常在如下三种情况下使用类图。
(1)对系统的词汇(概念)建模
  • 类的最常见的用途是对试图解决的问题或者从解决该问题的技术得到的抽象进行建模。
  • 用UML构建系统通常也是从确定系统构造块的基本词汇开始的,用于描述系统的边界,即用来决
    定哪些抽象是系统的一部分,哪些抽象是系统之外的,这就确定了系统最基本的元素。
  • 用类图来描述这些抽象及它们的职责。
(2)对简单协作建模
  • 用类图对这组类(词汇)和它们之间的关系进行可视化和详述。
(3)对逻辑数据模式建模
  • 数据库设计可分为概念结构设计、逻辑结构设计和物理结构设计等三个经典的设计阶段。
  • 概念结构设计阶段,通常使用数据库模式来描述数据库的概念结构设计。
  • 对数据库模式建模是数据库概念结构设计的蓝本,因此,可以使用类图对这些数据库的模式进行建模。

2.类图的组成要素

  • 类图,组成要素主要有:类( Class)、接口( Interface)和关系。
  • 关系包括关联关系( Association)、聚合关系( Aggregation)、组合关系( Composition)、泛化关系
    ( Generalization)、依赖关系( Dependency)和实现关系( Realization)。
  • 类图也同其他UML图形一样,可创建约束、注释和包等。
  • 图5-1为使用EA绘制的一般类图。

在这里插入图片描述

  • 对类图的主要组成元素详细
(1)类
  • 类的表示方法是一个矩形,这个矩形分隔成3个区域,
    • 类的名称类的属性( Attribute)、类的操作( Operation)。
  • 类的名称位于顶部,
  • 属性位于矩形的中间,
  • 操作位于矩形的底部。
  • 中间部分不仅显示属性名称,还显示属性的类型和初始值。
  • 底端不仅显示操作名称,还显示操作的参数表和返回类型
  • 如图5-2
  • 顶部区域的类名称是必须要有的,中间和底部可选

在这里插入图片描述

在这里插入图片描述

①类的名称。
  • 类的名称可以是一个不包含冒号的字符串
    • 也称简单名称,
  • 还可在类的名称前加上该类所在包的包名,中间用冒号隔开,也称
    路径名称,如 chapter5 3: Book,chapter5是类Bok所在的包名。
  • 为类命名时,一般遵循
②类的属性。
  • 属性的一般语法

在这里插入图片描述

好多没写

(3)类之间的关系
①关联关系。
  • 一个对象与另一个对象之间的联系,
    • 体现对象之间的引用关系,是一种结构关系
  • 用实直线,可单向,也可双向
    • 双向可以是有两个箭头,也可以没有箭头,而单向就只有一个箭头。
  • 图5-1中class1和clas3两个类间就是关联关系
  • 关联关系除基本连接形式外,
    • 还有名称、角色、多重性和导航性等特征来修饰,如图5-8

在这里插入图片描述

  • 名称

  • 描述关联的性质,通常使用一个动词或动词短语来命名关联,以表明源对目标执行的动作。

  • 命名是为了更清晰地明确类之间是何种关联关系,但是关联关系的名称并不是必需的,

  • 如果二者之间的关联关系的性质已经非常明了,就无须为关联命名。

  • 角色。

  • 角色是关联关系中一个类对另一个类所表现出来的职责

  • 关联关系中的类都扮演一个特定角色

  • 角色名解释类中的对象是如何参与关联关系

  • 多重性。

  • 描述关联关系中的类中对象的数量关系,

    • 指类中有多少个对象可参与该关联
  • 可表达为一个取值范围、特定值、无限定范围或一组离散值

  • 赋给关联关系一端的多重性表示该端可以有多少个对象与另一个对象关联。

  • 多重性标识在关联关系的末端,
    • 如5.15表示范围的最小下限为5,最大15。
    • “*”或“n表示无穷大或多。
  • 如果没有显式标明多重性,则默认1。
  • 常见的多重性表示方法如表5-1

在这里插入图片描述

  • 导航性。

  • 代表关联关系的方向性,描述关联关系中一端的类中对象通过导航访问另一端类中对象。

  • 箭头表示导航性。

  • 只在一个方向上可以导航的关联关系称为单向关联,用一条带箭头的实线来表示。如果在两个方向上都可以导航的关联关系称为双向关联,用一条没有箭头的实线表示;或者一条两端都带箭头的实线。

  • 图5-8中
  • Student和Book导航性的单向关联关系,
    • 关联关系的名称为“借阅”,
    • 二者之间的多重性表示1个 Student可以借0到多本Bok
  • Teacher和 Student没有导航性的双向关联关系,
    • Teacher的角色是“教学者”,
    • Student的角色是“学习者”,
    • 多重性表示1个 Teacher可以为1到多个 Student授课,
    • 1个 Student可以向1到多个 Teacher学习。

在这里插入图片描述

②聚合关系。
  • 特殊的的关联关系,整体和部分之间存在的一种拥有或属于
  • “hasa”或“ owns a”的关系
  • 聚合关系描述的整体和部分之间各自是独立的,可以分离的,
    • 它们各有自己的生命周期,
    • 部分可属于多个整体,也可作为多个整体共享

  • 聚合关系中,表示整体的类由一个或多个表示部分的类组成,当表示整体的类不存在了
  • 那么表示部分的类还可以继续存在。
  • 例如球队与成员、公司与员工、计算机与内存、汽车与轮胎,
  • 这些关系都是聚合关系

  • 聚合关系的多重性特征中
    • 表示整体的类的重数可以是1,也可以是多
  • 带空心菱形的实线
  • 空心菱形在表示整体这端

在这里插入图片描述

在这里插入图片描述


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部