架构师训练营 - 第一章 -uml 练习作业
需求背景描述:
食堂就餐卡系统设计
系统中每个消费者都有一张卡,在管理中心注册缴费,卡内记着消费者的身份、余额
使用时将卡插入收款机则显示卡上余额,服务员按收款机上数字键,收款机自动计算并显示消费额和余额
管理中心的管理员监视每一笔消费,可打印出消费者相关的统计数据。
要求:
根据系统需求画出系统的用例图、组件图、组件时序图、部署图。
理解:
我的理解,需求本身不是很精确,所以脑补了一些内容。系统是一个BS模型的系统,有接口提供给收款机调用。系统中分为用户信息模块、资金管理模块、消费管理模块、数据统计模块。
用例图
题中直接看有消费者、收款机、服务员、管理员等几种可能的参与者。
其中消费者和管理员都是通过管理中心和系统交互的,而服务员是通过收款机和系统交互的。
所以最终确认的用户包括:消费者、收款机、管理员三种。
其中消费者有注册和缴费功能。收款机可以查看余额,可以扣款,可以查看消费额。
管理员可以查看消费记录,可以打印统计,统计需要能统计数据,而统计数据就需要查询消费者数据和消费记录。
组件图
组件图表示出系统中都有哪些组件参与业务,以及组件件的关系。
当前需求中,用户需要能注册,系统要能保存用户的资料信息,用户信息管理组件负责这些业务。用户能充值,能查看余额,资金管理组件负责这块业务。用户能消费,数据统计需要能统计用户消费记录,消费管理组件负责这块业务,同时消费管理组件依赖资金管理组件。然后管理员要能查看并打印用户资料数据和消费数据,那么需要有数据打印组件和数据统计组件。
组件时序图
组件时序图,我只画了用户注册和消费业务。这块主要是表示在业务中组件之间的交互和信息流转方向。
部署图
系统中管理中心运行在客户端的pc机上,收款机和客户pc,通过负载均衡访问系统服务器。
系统的配置管理服务单独部署,就餐卡系统通过内网负载均衡访问配置服务器获取配置。通过内网负载均衡获取数据库数据。数据库有一个备用节点,主节点故障时,由负载均衡自动切换。
这里认为负载均衡本身是高可用的。这个部署模式可以方便扩展业务机器。只是数据库的可用性会有限制,如果主节点故障,备节点切换后,需要人工介入来修复主节点,以及对应的数据补偿。
评论