uml序列图_架构师系列UML

三,UML

      UML(Unified Modeling Language)是一种标准语言,用于制定,可视化,构造和文档的软件系统。对于UML的学习成本较高,个人认为应该采取 “抓大放小” 的学习方式。如果一上来就注重每一个实现细节,无疑成本是巨大的。而且现实工作环境中如果不是做专业的设计输出,UML 带来的价值远远不如同事们坐一起,把设计想法在草纸上画一下效率更高。所以以下内容只抓“大”。

面向对象的世界

      UML是强大到足以代表所有的概念存在于面向对象的分析和设计。UML图是面向对象的概念的表示。因此,学习UML之前,先熟悉一下面向对象的概念(特性)。

抽象: 抽象代表现实世界中实体及实体之间的关系。

封装: 封装是将信息或数据隐藏的访问的保护。

继承: 继承是用来表示类之间的 is-a 关系的,分为单继承和多继承。

多态: 定义的机制来以不同的形式存在(子类可以动态的替换父类的方法并执行)。

对象: 对象代表一个实体的基本构建块。

类: 类是对象的蓝图。

UML概念模型

      概念模型可以被定义为模型,它是由概念和它们之间的关系组成。概念模型的第一步是绘制UML图之前。它有助于了解在现实世界中的实体,以及他们如何互相交流。有三个主要的模型:1.功能模型:从用户的角度展示系统的功能,包括用例图。2.对象模型:采用对象,属性,操作,关联等概念展示系统的结构和基础,包括类别图、  对象图。3.动态模型:展现系统的内部行为。包括序列图,活动图,状态图。

       区分UML模型和UML图是非常重要的,UML图,包括用例图、协作图、活动图、序列图、部署图、构件图、类图、状态图,是模型中信息的图形表达方式,但是UML模型独立于UML图存在。

UML图

结构性图形(Structure diagrams)

目标:强调的是系统式的建模。

图形:静态图(static diagram)「类图,对象图,包图」,实现图(implementation diagram)「组件图,部署图」,剖面图,复合结构图。

行为式图形(Behavior diagrams)

目标:强调系统模型中触发的事件。

图形:活动图,状态图,用例图。

交互性图形(Interaction diagrams)

目标:属于行为图形的子集合,强调系统模型中的资料流程。

图形:通信图,交互概述图,时序图,时间图。

案例(食堂就餐卡系统设计)

     功能描述:系统中每个消费者都有一张卡,在管理中心注册缴费,卡内记着消费者的身份、余额。使用时将卡插入收款机则显示卡上金额,服务员按收款机上数字键,收款机自动计算并显示消费额及余额。管理中心的管理员监视每一笔消费,可打印出消费情况的相关统计数据。非功能描述(暂不讨论)。

部署图

部署图:1.管理系统用于餐卡,人员,刷卡设备,消费,支付的统一管理系统。2.消费管理用于用餐人员消费记录记录。3.支付系统用于餐卡充值对接第三方支付平台。4.设备管理用于刷卡设备与系统通信。

efd7262d27a033cfc00d479823a299e2.png

管理中心组件图

管理中心包括5个基本组件: 1.用户管理组件负责管理开卡用户和系统管理员及商户基本信息。 2.卡片管理组件负责卡片基本信息管理。 3.户账户管理组件负责消费者金额账户基本信息管理。 4.消费记录组件负责消费记录信息管理。 5.收款机通信组件负责收款设备的在线管理。

de518e6d0ff4394f60cfb5797ebdd146.png

注册序列图

用户注册流程:1.消费者通过管理系统完成开卡2.消费者信息对卡片进行管理确认3.消费者同支付平台进行充值 4.消费者充值完成之后产生充值类型的消费记录

b7afd9244c96c1c700350bde76733679.png

消费时序图

用户消费流程:1.刷卡设备通过设备管理服务建立与服务器的通信。2.用户插入卡片,设备读取卡片ID通过管理系统获取卡片及账户基本信息。3.操作员输入金额确认通知管理系统进行扣款。并返回处理结果4.管理系统处理扣款后将消费记录同步到消费管理。

0fb99280e302577168c4fe07f0d4510a.png

     UML 统一建模语言可以将沟通的成本降到最低(建立在对UML都有所了解的情况下)。学习UML的目的是帮助自己工作中理清设计思路,输出设计方案。架构不仅存在于大型的软件系统中,个人的生活,学习,职业发展也需要架构。架构是用来确定做事的边界。边界内做事才能将有限的精力发挥最大的价值。

3039cfde20cabe76ca6725ad8afc5614.png

未完待续

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值