--问题描述
1.目标
超市管理系统
2.应用场景
本系统为超市用户管理相关商品信息。
3.数据要求:
数据全为字符串类型数据。
数据需要存放在纯文本文件中,扩展名为txt。
4.界面要求:
每次等待用户命令前显示用户能执行的所有操作(菜单)。
给每个操作赋予一个代码,用户输入操作相应的代码。
用户输入的操作代码有误时,在报告错误后,再次显示菜单等待用户的输入。
5.主要功能:
用户登录和注册,退出,商品录入,查询商品列表,退出管理。
6.功能需求:
用户登录:要求用户输入相应的用户名和密码,然后系统根据输入的用户名和密码是否存在来确认用户是否能够进入管理界面。
用户注册:用户输入新建立的用户名和密码,系统保存数据。
退出:即退出整个程序。
商品录入:用户输入商品编号,名称和价格,系统保存数据到文件中。
查询商品列表:显示出录入的所有商品信息。
退出管理:退出管理界面,再次进入到登录注册界面。
7.总体业务流程
系统总体业务流程如图1所示。在启动时,从数据文件中读入数据。系统启动后首先显示所有可能的操作(菜单),每一次操作后明确给出响应,要么报告错误情况,要么报告操作完成,然后再次显示菜单,仅当用户明确要求退出系统时才终止系统的运行。在系统退出或者用户要求保存时才把内存中的数据保存到文件中。而在操作过程中每次操作完成后若有数据更新则保存在内存中。数据操作包括用户登录和注册,退出,商品录入,查询商品列表,退出管理。
图1超市管理系统总体业务流程
--设计需求
1.包的分类
一共六个包,分别为goods,supermarket,user,menu,service和service2。
2.类的实现
1)goods
Getgoods商品类:保存商品的编号,名称和价格
2)supermarket
App类:是整个程序的入口,实现用户登录和注册界面,调用Users和Menu类
3)user
Users用户类:保存用户的用户名和密码
4)menu
Menu菜单类:实现超市管理系统菜单界面,调用goodsService类
5)service
goodsService类:实现goodsInterface接口,从而实现商品录入和查询商品列表的功能
6)service2
userService类:实现userInterface接口,从而实现用户登录和注册的功能
功能设计流程
系统功能设计流程如图2所示。在App启动时,先调用Users类,实现userService中的相关功能,同时可以进入Menu界面,创建Getgoods类,实现goodsService中的功能。退出goodsService再次进入菜单,退出菜单再次进入App中。
图2超市管理系统功能设计流程