对餐厅信息管理系统的评价建议

对餐厅信息管理系统的评价与建议

  本博文为软件工程专业软件开发与创新课程设计第一次实验报告,就一个已有的项目,进行阅读分析,找出软件尚存得缺陷,并改进其软件做二次开发,并在最后写出此次试验的心得体会。

一、代码来源

  来自信息学院17级计算机科学与技术专业同学大一小学期作品。

二、代码、系统分析过程

  首先我了解到该作品的主题为餐厅信息管理程序,接下来,打开源程序文件夹,其中包括1个源程序文件和3个.txt文件。源程序文件包括设计该系统的所有代码,.txt文件存储系统所需数据。

2-1 源程序文件夹

  通过读取源代码并绘制流程图,了解系统的各个功能。

2-2 部分程序代码及注释

  然后通过分析系统并绘制各模块流程图,了解系统设计的内容,我将系统大致分为主界面选择操作、读取菜单点菜并结账(文件写入)、查看账本(文件读取)、删除订单(清空文件内容)等四大功能。

 

2-3 简易程序模块流程图

  该系统在点菜时读取菜单(menu.txt)信息,并根据客人输入的餐桌号、菜品号和菜品份数,对订单总价进行计算并将相关信息输入至临时订单(tableorder.txt)、账单(allorder.txt)中,并打印订单;查看账单时,读取账单(allorder.txt)信息;退出系统时,清空临时订单(tableorder.txt)信息。

 

三、系统应用技术说明

  该系统采用c++语言,通过类并运用文件的读写删除来实现系统的各个功能,同时还运用了vector容器读取文件中的指定数据实现功能,使用时间戳等为程序增添特色。

 

 3-1 文件的读写代码

 3-2 vector容器 

 

四、系统的优点

  1.功能区分明确

    该系统设计的菜单主页具有观赏性,各功能选择清晰可观,能给用户耳目一新的感觉。

 4-1 系统菜单界面

  2.合理运用代码以避免繁琐

  运用vector容器和string转int功能代码,将.txt文件中的string类型转换为int类型以方便计算订单价格,以此无需在代码中再次新建菜品信息等并提取计算,全程依赖.txt文件中的信息,代码简单明了,避免了运算过程的繁琐。

 

 4-2 订单计算部分代码

 

五、系统的不足之处

  1. 功能选择界面针对的对象不明确

  界面可选择客户点菜和查看账本,客户点菜功能面向的对象为用户,查看账本面向的对象是餐厅管理员,两者处于同一界面,任何人都可以选择该功能,容易引起混淆,使得系统不够严谨。

2.缺少菜单的管理功能

  此系统只可查看菜单,不能对菜单中的项目进行编辑与修改,说明该系统实用性与自由性较差。

六、针对不足之处的修改建议

  1. 针对功能选择界面针对的对象不明确问题的建议

  1.1要明确对象,首先就要给系统设置面向的对象,可在功能选择的菜单前增加登录系统,并设置客户登录与管理员登录选项,客户登录成功后有3个选项:点菜、查看个人订单、退出;管理员登录后有3个选项:编辑菜单、查看账本、退出。

  以下为理想界面设计:

 6-1 登录选择界面

 6-2 不同身份的功能选择界面

  1.2明确了对象以及其可用的功能后,可进一步增加系统的数据,以使得整个系统运行更清晰、完整。如:客户可进行注册,系统将注册的帐号和密码录入文件“user.txt”内,其用户点菜后的个人订单信息也会录入其文件中的对应词条内,以便用户查看历史个人订单。

 6-3 记录用户个人信息和订单信息的文件内容设想

2.针对缺少菜单管理功能的建议

  有了(1)的基础,此功能只需在管理员登陆后增加修改菜单即可实现,而同时可以引申出一些设置以更好地完善并合理化该系统,如:管理员帐号不可注册,需是系统中已存有的信息,管理员只需输入相应的账号密码即可登录。同时,用户界面的退出功能与管理员界面的退出功能并不相同,用户界面选择退出后依照原系统清空当前订单并退出系统,而管理员界面选择退出只是单纯的退出系统。

 

七、心得感受

  首先,在本次实验中,我通过阅读他人的代码,学到了许多曾经进行实践作业时没有想到的想法和技术,并对系统和代码进行分析后,取长补短,完善整个系统。其次,在这个过程中,我不仅能与同学交流学习,还能与对方分享自己的想法,共同学习,温故知新,这样大家都能突破曾经的自己,解决曾经认为无法解决的困难。最后,这次试验也为我本学期的学习提供了非常好的动力的学习方法,我会将本次阅读理解代码和完善系统的方法和心得,运用于各学科的学习中,不断提高自己。

posted @ 2022-03-02 10:44  Mubucy  阅读(234)  评论(0)    收藏  举报