食堂就餐卡系统设计方案 -week01
1.设计概述
为了规范公司的食堂就餐管理流程,方便管理人员对食堂消费数据分析,为员工提供更好的就餐服务,公司决定开发一套用于食堂就餐卡管理系统。
1.1 功能概述
本系统主要包括卡注册、缴费、扣费等主要功能。使用者包括食堂消费者、服务员、管理人员等。
1.2 非功能约束
食堂就餐卡系统预计一年用户量达到10W ,日订单量达到1W。
1.查询性能目标:平均系统响应时间<500ms ,单机TPS >100;
2.注册性能目标:平均系统响应时间<1s;
3.系统扣费性能目标:平均系统响应时间<1s;
4.系统核心功能可用性目标: >99%;
5.系统安全性目标:系统可拦截SQL注入、跨站点脚本攻击,密码数据散列加密,客户端数据传输使用https加密。
6.数据持久化目标:>99.99%;
2.系统需求
2.1 系统用例图
主要参与角色有: 消费者、服务员、管理员、收款机。
主要用例有:卡注册、缴费、扣费、计费、显示余额、打印报表。
3.系统部署图与整体设计
系统上线时预计部署2台应用服务器,和2两数据库服务器,后期根据就餐人员数量可对服务器进行扩容。
3.1系统部署图
Web应用服务器,独立部署1台服务器,主要对外提供管理操作界面。
API网关、应用接口服务、认证服务器,三个应用部署1台服务器,主要提供服务接口。
MySQL服务器,部署2台服务器,实现主从模式,对数据库实现备份。
3.2 卡注册系统序列图
消者进行卡注册时,首先请求Web应用服务器,再调用API网关,API网关调用认证服务器对当前请求进行权限验证,验证成功后,调用应用服务接口进行卡注册业务处理,最后将业务数据保存至数据库,并将注册结果返回。
3.3 充值系统序列图
<略>
3.4 消费系统序列图
<略>
4. 服务接口设计
该系统的主要职责是实现就餐卡系统的主要业务功能(注册、缴费、消费、计费等)其实主要包含等用户管理、卡务管理、充值消费等主要组件。
4.1服务接口组件图
应用服务接口主要包含6个组件
Main : 应用服务主入口
用户管理:主要负责用户资料的注册、状态管理。
消费管理:主要负责用户的充值、消费管理是整个系统的核心组件。
卡务管理:主要负责卡激活、卡状态管理。
日志模块:提供公用的日志存储模块
存储模块:提供公司的存储模块,主要与数据库交互。
4.1.1卡注册组件序列图
Main模块接收到外部调用注册接口请求后,首先调用用户管理模块,进行用户注册,持久化用户信息。再调用卡务管理模块,进行卡注册,绑定用户与卡的关系,再调用消费管理模块初始化卡内余额信息。最后返回操作结果。
4.1.2 充值组件序列图
<略>
4.1.3 消费组件序列图
<略>
4.2 卡务管理组件设计
卡务管理主要包含对卡的注册、删除、状态变更处理。其主要包含类
4.2.1卡务管理的类图
CardManager类实现了ICardManager的Activate接口,同时引用了ICardRepository ,IRechargeManager接口。
4.2.2 卡注册类序列图
4.2.3 CardStatus的状态图
所有物理卡通过入库操作进入系统,默认为未注册状态。当用户进行注册后,将卡状态变为正常。
评论