资讯专栏INFORMATION COLUMN

UML统一建模语言

ninefive / 2463人阅读

摘要:什么是全称是又称统一建模语言或标准建模语言。于是乎,为了统一起来,就有了组织对象管理组织,这个组织让这种描述需求设计的语言统一了,就称作是了。

什么是UML?

UML全称是:Unified Modeling Language 又称统一建模语言或标准建模语言。

是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。
它是一种语言,语言就是用来描述一件事物的。
为什么我们要使用UML?

我们了解一下软件开发的历史,才明白为什么要使用UML。

软件历史分为3个阶段:

程序设计阶段【1946年~1955年 对硬件进行开发,规模很小,程序设计追求节省空间和编程技巧】

软件设计阶段 【在1956年~1970年,硬件增长速度快,性价比越来越高,软件开发技术没有重大突破,软件产品的质量不高,生产效率低下,导致了“软件危机”

软件工程阶段【1970年~至今,大量需求被提出,采用工程化的思想来管理软件

软件工程的目标:利用工程化的方法.在给定成本、进度的前提下,开发出具有可维护性、正确性、可移植性的软件. 提高软件产品的质量和开发效率,减少维护的困难

随着软件工程地进展,IT界想用一种语言来描述它们完成的需求,设计,但是不同的公司开发了自己的产品。

于是乎,为了统一起来,就有了OMG组织【ObjectManagementGroup对象管理组织】,这个组织让这种描述需求、设计的语言统一了,就称作是UML了。

也就是说,UML用来给我们设计,需求分析

使用IBM Rational

我们使用的是IBM Rational这个工具来讲解UML。

一般地,我们这个工具用来做三个事情:

用例图

类图

时序图

用例图
用例图显示谁将是系统的使用者、用户希望系统提供什么服务以及系统能够为用户提供什么样的服务;从用户的角度描述系统的功能。用例图最常用来描述系统以及子系统

用例图的2种元素4种关系

参与者(Actor)

用例(Use Case)

关联关系(Association)

包含关系(Include)

扩展关系(Extend)

泛化关系(Generalization)

我们使用它来模拟一个商城的用例图

我们想描述的信息是这样子的:

游客拥有浏览商品,登陆注册的功能

会员拥有游客的所有功能,并且拥有购物,管理个人信息的功能

在购物上,包括了选购商品、添加到购物车、支付这么几个功能

而支付又有货到付款、在线支付、其他支付这么几个支付功能

无论哪种支付,都要生成订单

订单由客服来管理,客服还拥有着商品管理的功能

客服拥有的功能,管理员都有,管理员还拥有着管理会员的功能。

类图

类图用于描述系统中的类与类之间的各种关系

类图下有以下的关系:

继承:父子类关系

实现:类与接口关系

关联(全局变量, 组合/聚合): 值、引用

组合的关系强

聚合的关系没那么强【普通引用关系】

关联具有导航性:即双向关系或单向关系

依赖:局部变量(非Spring中 依赖注入)

方法中的局部变量

时序图

需要用例的时候,我们可以把用例拖过去给时序图用。

如果文章有错的地方欢迎指正,大家互相交流。习惯在微信看技术文章,想要获取更多的Java资源的同学,可以关注微信公众号:Java3y

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/68702.html

相关文章

  • Eclipse Modeling Framework, 2nd Edition. (EMF)学习笔记

    摘要:定义模型元模型用于表示中模型的模型称为。用于表示的类型,它可以是基本类型,例如或对象类型等。此外,因为是货物的容器并会在其中将货物作为孩子序列化,所以需要标识出。 EMF介绍 为了理解EMF究竟是什么,你只需要知道一件事:模型(model)是什么?模型的目的是什么? EMF不要求全新的方法论亦或是任何复杂的建模工具。只需要从Eclipse的Java开发工具着手开始。 EMF将建模概念...

    yagami 评论0 收藏0
  • Eclipse Modeling Framework, 2nd Edition. (EMF)学习笔记

    摘要:定义模型元模型用于表示中模型的模型称为。用于表示的类型,它可以是基本类型,例如或对象类型等。此外,因为是货物的容器并会在其中将货物作为孩子序列化,所以需要标识出。 EMF介绍 为了理解EMF究竟是什么,你只需要知道一件事:模型(model)是什么?模型的目的是什么? EMF不要求全新的方法论亦或是任何复杂的建模工具。只需要从Eclipse的Java开发工具着手开始。 EMF将建模概念...

    yacheng 评论0 收藏0
  • ❤️ 程序员【代码管理】工具介绍❤️,热门语言更新这么快,你绕不过这一关的!

    上次讲了2个游戏源码 前端实战之js推箱子游戏(有界面、附源码、赞关藏) Python实战:五子棋小游戏,切身感受一下前端和桌面应用的区别,选择自己喜欢的 本来今天准备写一篇面向对象文章,但是想一想,讲面向对象之前还是先给大家介绍几款实用的工具,更加快速的理解,掌握知识点。 1.UML 统一建模语言(Unified Modeling Language,UML)是一种为面向对象系统的产品进行说明、可...

    array_huang 评论0 收藏0
  • 什么是状态机图?UML State Diagram

    摘要:或有时称为状态图,状态机或状态图显示实体的不同状态。简单状态机图表示法进入和退出行动在州中指定的进入和退出操作。以下状态机图表对具有两个并发子状态的拍卖进行建模处理出价并授权付款限额。 showImg(https://segmentfault.com/img/remote/1460000019578094); 实体的行为不仅是其输入的直接结果,而且还取决于其先前的状态。实体的过去历史可...

    chemzqm 评论0 收藏0
  • Learning PHP —— 设计模式 | Chap2:设计模式与UML

    摘要:设计模式设计模式基本原则设计原则按接口而不是按实现来编程按接口而不是按实现编程是指,要将变量设置为一个抽象类或接口数据类型的实例,而不是一个具体实现的实例。例如父类的一个改变会逐级向下传递给子类实现,这可能会影响子类使用的某个算法。 设计模式 设计模式基本原则 设计原则 ① : 按接口而不是按实现来编程 按接口而不是按实现编程是指,要将变量设置为一个抽象类或接口数据类型的实例,而不是一...

    senntyou 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<