云快卖,提供专业好用的外卖系统、跑腿系统和同城信息系统,公众号+小程序+APP多端适用。
免费订餐系统 陈超赵俊路耿理吴可发布范围项目组成员版本Ver
2023-06-10 21:02:05 云快卖

<项目名称〉餐馆订餐系统详尽设计书作者陈超班委赵俊张波路耿理吴可发布范围项目组成员版本Ver?Final发布日期200&7.1TOC\o"1-5"\h\z1.序言3\l""\o""\h1」编写目的3\l""\o""\h1.2背景3\l""\o""\h1.3定义3\l""\o""\h1.4参考资料3\l""\o""\h?程序设计说明4\l""\o""\h2.1程序功能描述4\l""\o""\h2.2性能52.2.1确切性和及时性52.2.2系统安全性52.2.3可操作性和易维护性6\l""\o""\h2.3输入项描述7\l""\o""\h2.4输出项描述72.5系统流程图8\l""\o""\h2.6系统结布光9\l""\o""\h?插口设计9\l""\o""\h3」用户插口9\l""\o""\h3.2其它软硬件插口10\l""\o""\h3.3各个模块Z间插口10\l""\o""\h4?数据库的设计114」数据库E-R图11\l""\o""\h4.2在JDBC的插口上使用数据库,主耍维护下述6张表11\l""\o""\h4.3数据库与程序之间的关系12\l""\o""\h4.4数据字典12\l""\o""\h5?容错处理13\l""\o""\h5」错误输入信息13\l""\o""\h5.2错误处理对策141?序言1.1编撰目的在本饭店订餐系统项目的前一阶段,也就是概耍设计阶段中,己经将系统川户对本系统的了模块功能做了详尽的论述,这种模块功能具体设计将在木报告中详细得以表述及阐释。

木阶段已在系统概要设计的基础上,对饭店订餐系统做详尽设计。主要解决了实现该系统程序模块具体设计问题。包括确定算法,输入项,输出项的描述,插口的描述及限制条件,数据库的详尽设计等。在以下的详尽设计报告上将对在本阶段中对系统所做的所有详尽设计进行详尽的说明。在下一阶段的编码过程屮,程序设计员可参考该详尽设计说明书,在详尽设计对餐厅订餐系统所做的算法设计,数据结构以及数据库操作的某础上,对系统进行编码。在之后的软件测试以及软件维护阶段也可参考该说明书,便于丁?了解在详尽设计过程小所完成的各模块算法设计,或在更改时找出在本阶段设计的不足或错误。1.2背景随着人们生活水平的提升,外出用餐的机会随Z增多,餐厅的营业额势必会降低,非常是一些小型餐饮店,不可能再像先前一样用手工去记录,这样除了容易出错,但是效率还低,影响饭店业的营业现况,止是在这些状况下我们提岀做这样一个系统來。总Z为了现代化餐馆发展的须要,我们有必要做这样一个系统来提高我们的工作效率。手机记录除了记录慢,但是预约登陆很快就显得无法理解,这就很有可能造成经营上的问题。没有备份系统,假若一张收据毁坏了,餐厅就没有了那种白天的记录,如果某三天预约好多,假如另有人预约,找一张空的椅子都婆很长吋间,这样处理速率都会变慢。

由丁?这些诱因,餐厅碍要开发这样一个手动化的预约定餐系统,新系统应当和现冇系统一样才能显示预约和预约抵达显示,当有修改应当才能及时更新,致使处理速率变快。点菜和付钱更能使工作效率有很人的提升,但是这样出错的几率也会大大增加,捉升了确切性。能及时的更新也提供了挺好的及时性。1.3定义餐厅订餐系统是一款集处理接受、取消客人预订,接受散客用餐,编辑菜单楼价,付钱汇总等功能为一体的现代化餐厅辅助软件,自带密码登入,加锁解锁等辅助功能,提高了软件木身的安全性,是中大型饭店及宾馆的不二选择。机械工业出版社人连理工学院岀版社复旦学院出版社1?4参考资料机械工业出版社人连理工学院岀版社复旦学院出版社《JAVA2核心技术第一卷基础知识》《数据结构与算法基础》《面向对象设计与UML第2版》机械工业出版社电子工业出版社机械工业出版社电子工业出版社《关系数据库基础与实践教程》2?程序设计说明2.1程序功能描述该程序主要是实现用笔记本实现预约定餐、预约抵达、未约抵达用餐、点菜和结帐功能,其实在定餐的基础上可以取消预约,在未用餐之前还可以换桌,对于这其屮的问题,我们都给出很仔细的处理,例如说当换桌了的时侯,当从一个预定人数比较的桌了换到不能容纳预定数的时侯,系列会给出提示。

其实这种都是比较小的细节,而且这种我们都做得很细,以便捷饭店进行管理。1)预约功能预约功能主要是对某一个合法的tl期进行预约定餐,这个定餐须要顾客的姓名、电话、以及预约人数、预约LI期以及一个可以用的合适的饭桌。合适可用的饭桌是指在用户所选择的H期时该饭桌没有被预约,但是饭桌所能容纳的人数才能满足川户所预定的人数。合法的FI期是指用八所选择的FI期必须是明天或明天之后,选择一个过去的日期是不能进行预约的,这种我们在程序中都进行挺好的逻辑性处理,致使能满足用户和餐馆的须要。对于饭桌不过小或是没有茶几可用的状态下,系统会给也提示。2)预约抵达当预约的客户在预定的时间到时,时间必须是当日才会抵达。需在把该饭桌的预约状态改为正在用餐,通常情况下用八到了肯定是要用餐的。此时须要操作员去确认一下,S的是确保操作的正确性。这儿的H期合法性是指预约到的H期只能是当日而不能是其它口期,在这儿就须要去LI期进行限定,以确保程序的正确性,用餐后用户能够进行点菜。3)取消预约当用户须要取消一个预约,用户须要提供预约的日期和茶几号,用户调出用户预定的信息后和用户信息进行确认对比,正确后即可取消预约。

这儿的H期我们没有做限制,是由于我们觉在当日之后的预定可以由用户取消,可能某三天用户没有到,也没有取消预约,此时可以由管理员取消先前(非当日)的预约。4)茶几调换当用八抵达之后对茶几位置不满意或是预定人数有降低或降低时,用户可以对茶几进行调换,不过这个必须是当日或之后的F1期能够进行此操作,换桌的时侯才会提示人数变动等问题。换桌必须是已预约的饭桌能够述行,但是在所选择的口期苗合适的饭桌能够交换。5)耒约进餐其实这是一个而向现代化的预约系统,并且对于一些未约进餐用户也提供的方案,当一个散客抵达时,其实这个口期只能是当日,只要选择一个合适可用的饭桌就可以进行用餐并点菜。这儿的L1期限制为只能是当日。6)点菜当用户进行用餐时,主可以进行点菜,其实因为时间有限,这个功能实现的不怎样好,只能满足的最基本的需求。7)结帐付钱一方面,估算用户消费了多少,另一方面当用餐结束后,必须付钱能够该及时释放掉所占用的椅子资源。以让其它用户能够使用,其实其前提是用户以在用餐后前提下才会付钱。2.2性能2.2.1确切性和及时性对于该系统,当用户进行某一项操作,其响应吋间应当在一定可以接受的范围内,太慢的话都会变得很不适用。

当新增一个预约或其它操作时应当才能在主GUI上血能及时的显示出來,而不能有太多的延时,因而我们采川了观察者模式以能及时更信息,当随着FI期的改变时所有的信息也应当跟随的变化。因为要读写数据库,因而对笔记本的配置也有一定的要求,太差的话可能造成反应很慢。2.2.2系统安全性对于数据我们进行了加密,其实BOSSW权晓得这个密码,对于使用该用户的操作员也要晓得一个川户名和密码就能登入使川,或许这样还是不能满足须要,假若操作员稍微离开一会儿,莫非为了不让人不经意或有意更改数据内容,就耍关掉整个程序吗?不用这儿我们捉供了一种锁机制,当用八要稍微离开吋可以选择锁定系统,此时任何人要想再使用户就必须晓得当前登入用户名的密码能够恢复系统,具体见以下截图:2.2.3可操作性和易维护性本程序采用JAVASWINGGUI编撰免费订餐系统,易看易懂的界而,操作也相当简单,只要是能熟练使用笔记本的人都能熟练的上手。其风格与饭店息息相关,其左上介是单个饭桌的信息,和所选择的口期的饭桌统计,屮间顶上一个口期选择器,通过它可以选择一个口期进行预约操作等,右上角是一个时间,这样操作员可以随时晓得时间,以对自己的操作有所帮助,下方左边是一个当程序木次启动以來的操作H志,操作员可以査看在哪些吋间进行了哪些操作,右方是一个点击某一个茶几吋的点菜菜单和总共消费淸单,这样便捷付钱。

其椅子的图片分别代表椅子的最大容纳人数,椅子显示不同字代表不同的信息,哪些字也没有代表茶几没有被预约或则是使用,当被预约后会显示已预约,川户抵达了的话会显示正在用餐免费订餐系统,这儿我们没冇采用图片变换,而是显示文字,这样更直观,不容易造成混淆。操作界而如下:文件BAI:2008-06-30僉參可以容纳人数:6狀歩:己艮约I预均6人I9JH:2(MW-06-30当祈加*餐黛敛:1722??的黨食:0己预妁的???:I|??▼耳列明天2008-6-300:08:53軽憶幡作日杰宓0已次幼旧的言妊未壬挞?不司以点英?栗$9号貞谿总共消身:阮2.3输入项描述新增预约:姓名、餐桌号、预定人数、电话号码、日期、到达时间茶几调换:现今的饭桌号未约用餐:茶几号、就餐人数、H期点菜:按照菜单选菜添加店名和酒水:店名、价格删掉店名和酒水:店名2.4输出项描述预约抵达:顾客姓名、联系电话、餐桌号、预定日期取消预约:要取消的预约茶几号、原预定的日期茶几调换:原先的饭桌号、口期付钱:姓名、电话、桌号、II期、应付款2.5系统流程图2.6系统结布光锁定系统退出系统更新証示茶几状态锁定系统退出系统更新証示茶几状态新增预约预约抵达取消预约茶几调换点菜付钱未约进餐7X3?插口设计3.1用户插口餐厅订餐系统GUI及内部处理模块均采用JAVA实现,客人用餐信息均由按键输入,系统提供菜单及菜单的编辑功能,付钱模块提供客户消费额。

山于本系统才用JAVA实现,所以只耍预装JVM的终端都能运行此系统,移植性极高。因为出于为习口的,数据库采川,故Linux及Unix系统用户须要另外配置数据库。3?2其它软硬件插口软件插口:本系统提供了供其它软件使用的函数,以达到软件的复用性。硬件插口:本系统通过JVM与底层硬件层交流。硬件Z间插口:本系统现版本暂时只为单机版,故不考虑终端Z间的交互。3.3各个模块之间插口木系统数据交互层通过类与数据库进行数据交互,主要包括数据插入、删除、更新等操作。类提供了一个插口给下层的类及类,类对类有一个引用,每位功能模块,包括登录、解锁、结账、点菜、添加删掉预约、预约抵达及未约用餐,都有一个对类的引用,即类提供了一个公共插口,而且可以说是整个系统的核心。本系统整体釆用的模式为观察者模式,被观察者为类,观察者为类,当类有所变化时,类都会手动及时更新,并将更新后的信息显示给用户。

因为整体类图过分庞大,在此文档中只给出局部类图:(from)力:int=0宓dateOate=null萨。?。?*$0*getC^?。^物I?Table因为整体类图过分庞大,在此文档中只给出局部类图:(from)力:int=0宓dateOate=null萨。?。?*$0*getC^?。^物I?Table(fromsrc)^:int^:(仙Eg)“forn?:=new0卷im二0惑「int=1^>date:Date?Table。

^*()?。??^?。*()**$**()*^^?getDate。^*(|^^^*()^?。*()*?.^O^^^^-$$tance-眉曲(fromsrc)?irst=true^:=Q^:int^:int^:int^:ViewjavaJang^:View:java::lang::^Viewjavalang:=null?:View:java::lang::=null^:=false^:View:Java:lang::=null^(fow:=false②long二IL◎date:Date^>:Viev/:ja*:View:javaJang:S*^^^^^^^^^^^O^^^^*()*()?**()^i^^静^^^含0^^?(fromD:lon<^>:':Date^舎。

^^^^fi^?数据库的设计4.1数据库E?R图'.2在JDBC的插口上使用'.2在JDBC的插口上使用数据库,主要维护下述6张表1)椅子信息表Table」主键Int2)预约订餐表Table」主键g3)客户信息表字段)散客表Table」主键)食物信息表Food字段)消费情况表Table」dFood外键.3数据库与程序之间的关系本系统中,与数据库直接进行交互的是负责底层数据处理的类。

数据库中维护着一张Login表,当用八背陆系统时,用八名及密码会被传给类,并与Login表中的用户名和密码作对比,只有符合权限的用户能够登入。类中有一些get方式,如:数据库中的表有一个State数组,类中的getTabl方式就是与该表交互,并返冋每位椅子的状态;及技巧查询农,并返冋响应的客户信息;是返回Table表中椅子能容纳的具体人数;而及方式则是返回food表中关于食物的信息。类屮还有一些杳询的方式,通过杏询数据库表来提取数据,女(1:方式,拿来验证输入用户是否存在于数据库表中。在该类中,还存在一些对数据库进行添加、删除等更新操作的方式,如方法就是当每次有散客抵达时,向屮插入散客的桌号、人数、到达日期等信息。同样,在表屮,当有预约抵达时,都会有相关的新记录被插入。

相应丁?这两个方法,有技巧,当有预约取消等操作进行时,都会将和应表屮的信息删掉。当预约的桌了被交换时,表中的tableid都会被及时更新。4.4数据字典名子:Login别称:描述:系统登入用户的用户名和密码定义:Login=ID+(用八名)+(密码)位置:输入到数据库名子:别称:描述:描述订餐用户的的信息定义:=oid(编号)+name(姓名)+(电话号码)名子:別名:描述:描述预约信息定义:=oid(编号)+(顾客编号)+(预定人数)+date(预约|~1期)+(预约桌号)+time倒达时间)+sate(预约状态)位置:输入到数据库名子:food别称:描述:描述未约进餐定义:food二ID(编号)+(名称)+(价钱)位置:输入到数据库名子:别称:描述:描述某一个饭桌的订餐定义:Mydish=ID(编号)+(茶几号)+(名称)+price(价钱)+(日期)位置:输入到数据库名7:别称:描述:描述饭桌的消费历史定义:story=ID(编号)+(茶几号)+date(H期)+(消费金额)位置:输入到数据库5■容错处理5.1错误输入信息程序在运行过程中,主要出现软错误(在这儿我们忽视程序运行时岀现的硬错误),即输入的信息不符合程序要求时,产牛的错谋。

对于软错谋,必须在类屮对用户输入的信息进行逻辑剖析,判定错课类型,再生成相应的错谋提示句子,并输入错误处理模块。出错时必须给出相应的错误诱因,比如:“您所选择的日期为明天曾经,不可能预约到达!”、“X号茶几己经有人用餐,饭桌不能调换!”等等。5.2错误处理对策考虑到用户主机在操作时会有断电情况,当此情况出现时,不会有太多影响,主机将调用数据库屮的FI志文件,对数据进行操作,使数据恢复到断电先前的状态。在选择主机时,应当尽量选择运行稳定的机器。

免责声明:部分文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性,如本站文章和转稿涉及版权等问题,请作者在及时联系本站,我们会尽快为您处理。

云快卖

留言咨询

×