产品经理必学UML:类图

UML(UnifiedModelingLanguage)又称统一建模语言或标准建模语言,可以看做用于系统设计阶段给开发做参考的一种方式,其中很多图需要用到面向对象程序的思维。

上图为产品经理经常用到的UML图,包括静态视图(类图)和动态视图(用例图、状态图、顺序图、活动图),其中静态视图主要用来分析业务概念,描述静态场景;动态视图描述业务行为,分析动态场景。

本文主要介绍类图。

一、概念

类图(ClassDiagrame)是描述类、接口、协作以及它们之间关系的图,用来显示系统中各个类的静态结构。

类图包含7个元素:类、接口、协作、依赖关系、泛化关系、实现关系以及关联关系。

二、用途对系统的词汇建模(建立抽象系统词汇,如班级、学生);对简单协作建模(将系统词汇中是事物协同工作的方式可视化和详述,如班级和学生的关系表示);对逻辑数据库模式建模。三、类图元素

在类图中,类用矩形来表示,分为3个部分:名称部分(Name)、属性部分(Attribute)和操作部分(Operation,也可称作方法)。

1.类名称(ClassName)

类的名称是一个文本串,分为简单名称和路径名称。简单名(singlename)即单独的名称不含冒号;路径名(pathname)即用类所在的包的名称作为前缀。

简单名、路径名

2.属性(Attribute)

描述类在软件系统中代表的事物所具备的特性。UML中类属性的语法:[可见性]属性名[:类型][=初始值][{属性字符串}],如【-姓名:string】,其中[]中的部分是可选的。

(1)可见性

包括共有(Public)、私有(Private)和受保护(Protected)3种。

共有类型可以被外部查看和使用,用“+”表示;私有类型即不可以从其他类中访问该属性,用“-”表示;

受保护类型常与泛化和特化一起使用,用“#”表示。如果没有符号,表示没有定义该属性的可见性

(2)属性名

由描述所属类的特性的名词或名词短语组成。按约定,单字属性名小写,多个单词的话需要合并,且除第一个单词之外的其余单词首字母大写,比如className。当然,若为中文就不必如此。

(3)类型

典型的属性类型有:整数(int)、布尔型、实型和枚举类型。当一个类的属性被完整定义后,任何一个对象的状态都由这些属性的特定值所决定。

(4)初始值

保证系统的完整性;为用户提供易用性。

(5)属性字符串

关于属性的其他信息。

3.操作(Operation)

类的操作是对类的对象所能做的事务的抽象,相当于服务的实现。UML中类操作的语法:[可见性]操作名[(参数表)][:返回类型][{属性字符串}],如【+查询():歌曲】,其中[]中的部分是可选的。

包括共有(Public)、私有(Private)、受保护(Proteted)和包内公有(Package)4种。

其中公有类型即只要调用对象能访问操作所在的包,就可调用该操作,用“+”表示;私有类型即只有属于同一个类的对象才可以调用,用“-”表示;

受保护类型即只有子类的对象才可以调动父类,用“#”表示;

包内公有类型即只有在同一个包里的对象才可以调用,用“~”表示。

(2)操作名

描述所属类的行为的动词或动词短语。约定同属性名。

(3)参数表

指一些按顺序排列的属性定义了操作的输入。定义方式采取“名称:类型”,多个参数用逗号隔开。

(4)返回类型

绝大部分编程语言只支持一个返回值,即返回类型至多一个。

4.接口(Interface)

接口是指类或组件所提供的、可以完成特定功能的一组操作的集合。接口描述了类或组件的对外的、可见的动作,通常一个类实现一个或多个接口。

定义看起来比较枯燥,通俗点说接口就像螺丝和螺帽的关系,是为类制定了一种规范,是类与类之间的一种约束和协定。

对于一些小程序,一般不需要接口,因为功能的改动对整体的影响不大;但对于大的程序,一旦用户需求对功能进行变动,而功能之间的耦合度高的话就会对整个程序造成影响,而如果使用接口的话,就能在使用之前就想好它要实现的全部功能,即功能的封装。之后需求变化只需要重新写实现类,同样其他人只需要调用接口,不需要知道类的消息。

5.关系(Ralationship)

(1)依赖(Dependency)关系

表示某一类元以某种形式依赖于其他类元,它表现了这样一种场景,如下图,对于一个元素(提供者)的某些更改会影响或提供消息给其他元素(客户),即客户以某种形式依赖于提供者。

(2)泛化(Generalization)关系

表示一种存在于一般元素和特殊元素之间的分级关系,描述了“isakindof”(是……的一种)的关系,如汽车是交通工具的一种。在类中一般元素称为超类或父类,特殊元素称为子类。

(3)关联(Association)关系

表示一组具有共同结构特征、行为特征、关系和语义的链接,是一种结构关系,指明一个事物的对象与另一个事物的对象间的关系。如学生和大学的关系,学生在大学里学习,大学又包括了很多学生,所以可以在学生和大学之间建立关联关系。

(4)聚合(Aggregation)关系

是一种特殊形式的关联关系。表示整体与部分关系的关联,简单来说,就是关联关系中的一组元素组成了一个更大、更复杂的单元。描述了“hasa”的关系。如大学和学院,大学是由很多个学院组成的,因此两者之间是聚合关系。

(5)实现(Realization)关系

表示规格说明和其实现之间的关系,将一种模型元素和另一种模型元素连接起来,比如类和接口。如打字员和键盘,键盘保证自己的部分行为可以实现打字员的行为。

四、连接关系图形小结

由于连接关系之间使用的图形较为相似,基本由箭头和直线组成,容易混淆,在此进行总结,以便查看。

五、小练习——简易听歌系统类图

本文由@AugTalk原创发布于人人都是产品经理,未经许可,禁止转载。

THE END
1.UML图书借阅管理系统的用例图.pdf管理系统UML图书借阅管理系统的用例图.pdf 6页内容提供方:180***7385 大小:354.94 KB 字数:约2.77千字 发布时间:2021-11-24发布于江苏 浏览人气:339 下载次数:仅上传者可见 收藏次数:0 需要金币:*** 金币 (10金币=人民币1元)UML图书借阅管理系统的用例图.pdf 关闭预览 想预览更多内容,点击免费...https://mip.book118.com/html/2021/1124/7165121165004050.shtm
2.图书馆管理系统UML用例图迅捷画图,在线制作流程图这是一份图书馆管理系统UML用例图模板,简单围绕图书馆管理系统的功能用例进行制图,从外部用户角度描述系统功能的需求,帮助实现图书馆管理系统的开发,希望可以帮助您绘制UML用例图.https://www.liuchengtu.com/process/3313.html
3.UML系列——用例图中的各种关系(includeextend)实例:图书管理系统 图书管理员处理借书或者还书时的用例图,借书与还书都要考虑是否有overtime的书。 5.png 实例:订单管理系统 6.png (3)使用场合 a.如果两个以上用例有大量一致的功能,则可以将这个功能分解到另一个用例中,其他用例可以和这个用例建立包含关系(如之前介绍的饮料自动售货机)。 https://www.jianshu.com/p/8833815067eb
4.软件需求分析复习指南(二)系统显示可送餐时间; 顾客指定送餐时间、地点和支付方式; 系统确认接受订单,然后发送E-mail给顾客以确认订餐,同时发送相关订餐信息通知给餐厅员工。 系统采用面向对象方法开发,使用UML进行建模。系统的顶层用例图和一次订餐的活动图初稿分别如下图(a) 和(b) 所示。 https://developer.aliyun.com/article/1249157
1.深入理解UML用例图:概念构成与应用实例UML用例图是一种展示系统功能需求的模型图,它描述了系统的主要功能以及用户(或其他系统)如何与之交互。用例图通常在需求分析阶段使用,以明确用户需求和系统要实现的功能。用例图能够帮助开发团队从用户的角度理解系统的业务需求,并为后续的设计和开发提供依据。 https://blog.csdn.net/fudaihb/article/details/143786404
2.图书馆管理信息系统的用例图和类图技术标签: UML 团队开发 流程管理图书馆管理信息系统的用例图和类图 类图 图书管理系统主要管理对象是图书,系统的用户包括,借阅者,图书管理员。该系统主要设计的类包括:Book (代表一本书)、Borrower (借阅者)和 Worker(图书管理员)。 其中Borrower和Book之间为关联关系,Borrower和Book存在关联关系。类图如下: 用例图...https://www.pianshen.com/article/72431569733/
3.图书管理系统用例图7篇(全文)图书管理系统用例图 第1篇 图书管理系统 UML建模与设计模式 实验报告 计算机与信息工程学院 一、实验目的 在熟悉用例概念与应用的基础上,掌握用例模型的建立,包括: 1.掌握用例图的建立。 2.掌握用例描述文档的编写。3.掌握建模工具的使用。 二、实验内容 ...https://www.99xueshu.com/w/filesaiudqen.html
4.图书管理系统中UML图分析与设计UML统一建模语言相信大家有所了解,它是如何使用的呢,这里通过基于B/S模式的图书管理系统中UML图的分析与设计这个实例来向大家介绍一下,欢迎大家一起来学习。 本节向大家介绍一下基于B/S模式的图书管理系统中UML图的分析与设计,主要包括图书管理系统用例分析和系统静态建模两部分内容,相信通过本节的介绍你对UML图有更...https://www.51cto.com/article/204739.html
5.uml图书管理系统需求分析与设计2.3 图书管理系统的用例图 从以上分析中我们不难得出系统的基本用例图,如图二所示: 图二 系统的基本用例图 图书管理和图书管理是图书管理系统的重要组成部分,为此我们按照前文所述将图书管理模块和读者模块以及系统管理模块详细精化得出如下的用例图,如图 三、图 四、图五所示: 图三 图书管理模块的用例图 图四 读...https://www.360wenmi.com/f/file68j4f5m2.html