如何使用 UML 做需求分析与系统架构

用户头像
柳旭
关注
发布于: 2020 年 06 月 09 日
如何使用UML做需求分析与系统架构

架构0期-W1-实战作业

需求

食堂就餐卡系统设计

需求描述如下

  • 系统中每个消费者都有一张卡,在管理中心注册缴费,卡内记着消费者的身份、余额。

  • 使用时将卡插入收款机则显示卡上金额,服务员按收款机上数字键,收款机自动计算并显示消费额及余额。

  • 管理中心的管理员监视每一笔消费,可打印出消费情况的相关统计数据。

要求

请设计系统用例图,组件图,组件时序图,部署图。




由于是练习,我们这里假设消费者初始状态没有卡片,注册的过程中会得到卡片。与我们去小吃城之类的地方业务流程差不多。

另外在充值环节,我们考虑也是需要用户插入卡片。

另外在做架构过程中,我们将外设考虑进去。这样在给关注方描述架构方案时,关注方可以更好、更完整的理解方案。




角色分析

  • 消费者

  • 消费者在管理中心进行注册

  • 消费者通过管理中心进行充值

  • 消费者将卡片插入收款机,查看余额与消费记录

  • 管理员

  • 在管理中心进行监视消费

  • 在管理中心对数据进行统计并打印

  • 服务员

  • 输入消费金额,进行扣款

  • 收款机

  • 读取卡片

  • 显示余额

  • 显示消费金额

  • 扣费

用例分析如下:







组件分析与描述

  • 管理系统

管理系统对外开放注册接口,充值接口,管理接口,保存消费记录接口,读卡接口。

管理系统需要打印接口。

  • 收款机

收款机对外开放读卡接口,接收键盘输入接口。

收款机需要保存消费记录接口,输出卡信息接口

接收录入设备输入的信息。

输出需要显示的信息。

  • 读卡器

读卡器对外开放插卡接口。

读卡器需要外部读取卡信息的接口

  • 键盘

录入设备,输出录入信息。

  • 显示器

显示设备,提供数据显示接口。

  • 打印机

打印设备,提供打印接口。

组件图如下:



组件时序图

用户注册

用户通过管理系统进行注册,取得消费卡片。



用户充值

用户将卡插入读卡器,使用管理系统充值。(忽略写卡)



用户消费

插卡

用户消费前,需要先插卡,插卡后系统对卡信息进行验证。验证通过后方可消费。



扣款

服务员使用输入设备输入消费金额。系统进行扣款,产生消费记录发送到管理系统。将余额与消费金额输出到显示器上,供服务员查看。



数据统计与打印

管理员使用管理系统对消费记录进行查看,统计并打印。



部署图

部署图这里我们将数据库服务器考虑进去。





用户头像

柳旭

关注

复杂的东西简单讲,简单的东西深刻讲。 2018.08.21 加入

已昏懒人

评论 (13 条评论)

发布
用户头像
很赞!
2020 年 06 月 16 日 09:34
回复
用户头像
作者对用例的理解还要改进,每个用例要求是一个完整的业务。比如插卡,就不是一个完整的业务,用户去食堂不是为了插卡。插卡是充值、消费用例依赖的一个操作。充值、消费才是完整的业务。
2020 年 06 月 14 日 18:41
回复
谢大神指教。插卡只是一个动作或行为,要考虑是为了做什么业务。再次感谢!
2020 年 06 月 15 日 13:22
回复
用户头像
什么工具画的呢
2020 年 06 月 14 日 11:32
回复
带颜色的是visio画的,黑白的是staruml画的
2020 年 06 月 15 日 23:37
回复
用户头像
插卡完成的具体动作是什么,是把卡拔出来还是完成了一整个事务,然后完成的时候自动注销用户.
2020 年 06 月 09 日 22:20
回复
望解惑
2020 年 06 月 09 日 22:21
回复
确实是没有设计一个时机把卡取出,建议您设计时可以采用刷卡的方式。
2020 年 06 月 09 日 22:54
回复
用户头像
写的很详细,逻辑性很强,推荐大家阅读。
2020 年 06 月 09 日 15:22
回复
置顶了,好开心
2020 年 06 月 09 日 21:55
回复
用户头像
写的真好,建议纳入系统课程
2020 年 06 月 09 日 15:06
回复
用户头像
给你点赞
2020 年 06 月 09 日 15:05
回复
用户头像
写的真好,建议纳入系统课程
2020 年 06 月 09 日 15:04
回复
没有更多了
如何使用UML做需求分析与系统架构