收藏 分享(赏)

餐厅订餐管理信息系统.doc

上传人:精品资料 文档编号:10167688 上传时间:2019-10-15 格式:DOC 页数:27 大小:287.50KB
下载 相关 举报
餐厅订餐管理信息系统.doc_第1页
第1页 / 共27页
餐厅订餐管理信息系统.doc_第2页
第2页 / 共27页
餐厅订餐管理信息系统.doc_第3页
第3页 / 共27页
餐厅订餐管理信息系统.doc_第4页
第4页 / 共27页
餐厅订餐管理信息系统.doc_第5页
第5页 / 共27页
点击查看更多>>
资源描述

1、餐厅订餐管理信息系统可 行 性 分 析 报 告设计题目: 餐厅订餐管理信息系统 班 级: 营销 14-1 学 号: 1430020128 姓 名: 谢双浩 - 4 -目 录1. 设 计 目 的 和 任 务 .12. 开 发 环 境 .12.1 硬 件 环 境 . .12.2 软 件 环 境 .13.设 计 题 目 13.1 题 目 名 称 13.2 题 目 详 细 描 述 . 13.3 功 能 要 求 .14. 相 关 技 术 及 知 识 点 14.1 UML 的建模语言. 14.2 RUP 软件开发过程. . .24.3Rational Rose25. 设 计 .25.1 用 例 图 .25

2、.2 类 图 55.3 活 动 图 .55.4 序 列 图 .85.5 状 态 图 135.6 协 作 图 145.7 组件图 . 195.8 部署图 206. 双 向 工 程 207. 总 结 248. 参 考 资 料 .24移动计算技术与应用课程设计报告- - 1 - -1. 设 计 目 的 和 任 务本系统为一个餐厅的定餐系统,主要提供记录订餐和提醒的功能。基本需求是餐厅在营业时记录预约、更新预约单信息、分配餐桌以及接待未预约的顾客的能力,还添加了会员业务,为会员提供提前点菜的服务。2. 开 发 环 境2.1 硬 件 环 境一 台 PC 台 式 机 或 是 便 携 式 电 脑2.2 软

3、件 环 境中 文 windows98 以 上 系 统Rational Rose3.设 计 题 目3.1 题 目 名 称餐厅订餐管理信息系统3.2 题 目 详 细 描 述本系统的基本需求是餐厅在营业时记录预约、更新预约单信息、分配餐桌以及接待未预约的顾客的能力,添加了会员业务,为会员提供提前点菜的服务。主要的功能有下订单、修改订单、取消订单以及在顾客未按时到达时及时提醒顾客;同时还能记录未预约的顾客;维护订单和未预约记录,如记录到达、离开,以便及时更新餐桌的状态;附加的功能有管理会员信息,为会员提供提前点菜的服务。3.3 功 能 要 求本系统主要分为餐桌管理,会员管理,菜单管理和订单管理四大功能

4、模块。餐桌管理: 进入餐桌管理,可以点击餐桌对订单进行编辑,还可以显示餐桌的订单状态。会员管理: 进入会员管理,可以对会员信息进行编辑,可以添加会员,修改会员信息和删除会员信息。 菜单管理: 进入菜单管理,可以菜单会员信息进行编辑,可以添加菜单,修改菜单会员信息和删除菜单信息。订单管理: 进入订单管理,里面显示的是所有的订单信息。4. 相 关 技 术 及 知 识 点4.1 UML 的建模语言UML 的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。其中最常用的是建立软件系统的模型,但它同样可以用于非软件领域的系统,如机械系统、企- - 2 - -业机构或业务过程,以及处理复杂

5、数据的信息系统、具有实时要求的工业系统或工业过程等。UML 是一个通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。此外,UML 适用于系统开发过程中从需求规格描述到系统完成后测试的不同阶段。在需求分析阶段,可以用用例来捕获用户需求。通过用例建模,描述对系统感兴趣的外部角色及其对系统(用例)的功能要求。分析阶段主要关心问题域中的主要概念 (如抽象、类和对象等)和机制,需要识别这些类以及它们相互间的关系 ,并用 UML 类图来描述。总之,标准建模语言 UML 适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试和维护。4.2

6、 RUP 软件开发过程Rational Unified Process(RUP,统一开发过程)是一套面向对象的软件工程过程。RUP 说明了如何有效地使用成熟技术开发软件。 RUP 中有 9 个核心工作流,分为 6 个核心过程工作流(Core Process Workflows)和 3 个核心支持工作流(Core Supporting Workflows) 。9 个核心工作流在项目中轮流被使用,在每一次迭代中以不同的重点和强度重复。业务建模(Business Modeling)理解系统的组织结构及其商业运作,确保所有参与人员对开发系统有共同的认识。4.3 Rational RoseRationa

7、l Rose 的 特 点1. 保 证 模 型 和 代 码 高 度 一 致2. 支 持 多 种 语 言3. 为 团 队 开 发 提 供 强 有 力 的 支 持4. 支 持 模 型 的 Internet 发 布5. 生 成 使 用 简 单 且 定 制 灵 活 的 文 档6. 支 持 关 系 型 数 据 库 的 建 模5. 设 计5.1 用 例 图本 系 统 是 一 个 餐 厅 订 餐 系 统 , 主 要 功 能 是 为 餐 厅 提 供 订 餐 记 录 和 维 护 功 能 ,同 时 扩 展 了 订 菜 和 定 时 提 醒 的 功 能 。下 面 使 用 了 用 例 图 的 方 式 表 现 了 整 个

8、系 统 的 所 有 功 能 。用例名:Record booking(记录预约) 角色:Receptionist描述:1、 接待员执行“显示预约”用例;2、 有一张合适的餐桌可以使用;3、 接待员输入顾客姓名和电话号码、预订时间、用餐人数以及预留的餐桌- - 3 - -4、 系统记录和显示新预约用例名:Remind booking(订餐提醒) 角色:Receptionist描述:1、 系统显示预约用餐时间超过当前系统时间的预约2、 接待员执行“显示预约”用例3、 接待员打电话提醒顾客,询问是否取消预约4、 如果顾客回答“否” ,用例终止5、 如果顾客回答“是” ,接待员执行“取消预约”用例用例名

9、:Cancel booking(取消订单) 角色:Receptionist 描述:1、 接待员选择要求的预约2、 接待员取消预约3、 系统询问接待员确认取消4、 接待员回答“是” ,系统记录取消并更新显示用例名:Table transfer(换桌)角色:Receptionist ,Head Waiter描述:1、 侍者领班选择需要的预约2、 侍者领班改变该预约的餐桌分配3、 系统记录改变并更新显示用例名:Display bookings(显示餐厅预约信息)角色:用户描述1、 用户输入一个日期2、 系统显示当日的预约用例名:Search empty table(查找空桌 )角色:Receptio

10、nist描述:1、 接待员输入日期和时间2、 系统显示空桌的信息用例名:Modify member information( 修改会员)角色:用户描述:1、 用户执行“显示会员信息”用例2、 修改会员信息3、 系统询问用户确认修改4、 用户确认修改5、 用户回答“是” ,系统记录更新并显示更新用例名:Display member information( 显示会员信息)角色:用户描述:1、 用户输入会员号- - 4 - -2、 系统显示该会员的信息用例名:Delete member( 删除会员 ) 角色 Head Waiter描述:1、 侍者领班选择要取消的会员2、 侍者领班取消该会员3、 系

11、统询问侍者领班确认取消4、 侍者领班回答“是” ,系统记录取消并更新显示用例名:Register member(会员注册) 角色:Head Waiter描述:1、 侍者领班输入顾客的姓名和电话号码2、 系统记录并显示该顾客的信息用例名:Record left(记录离开 ) 角色 Receptionist 描述:1、 接待员输入餐桌号2、 系统显示使用该餐桌的所有预约和未预约登记3、 如果存在预约或未预约登记处于用餐状态,接待员确认该预约或未预约登记已经离开4、 系统对此进行记录并更新显示器,将顾客标记为已离开用例名:Record walk-in(记录未预约登记)角色 Head Waiter描述

12、:1、 侍者领班执行“显示预约”用例2、 侍者领班输入时间、用餐人数和分配给顾客的餐桌3、 系统记录并显示新预约用例名:Record arrival(记录到达)角色 Head Waiter描述:1、 侍者领班执行“显示预约”用例2、 侍者领班确认一个选定的预约已经到达3、 系统对此进行记录并更新显示,将顾客标记为已到达- - 5 - -图 5.1 系统用例图5.2 类 图在类图中类用矩形框来表示,它的属性和操作分别列在分格中。如不需要表达详细信息时,分格可以省略。一个类可能出现在好几个图中。同一个类的属性和操作可只在一种图中列出,在其他图中可省略。关系用类框之间的连线来表示,不同的关系用连线上

13、和连线端头处的修饰符来区别。图 5.2 订餐系统业务类图5.3 活 动 图UML 中的活动图用于描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识- - 6 - -别并行活动和工作流程情况。活动图实际上就是用来为用例的事件流建模的工具。图 5.3-1 记录预约活动图、业业业业业业业业、 、业业业业业业业业业业业业业业业- - 7 - -图 5.3-2 记录到达活动图 5.3-3 记录离开、业业业业业业业业、 、业业业业业业业业业业业业业业业- - 8 - -图 5.3-4 修改会员信息活动图5.4 序列图序列图表示了对象之间传送消息的时间顺序。每一个类元角色用一条生命线来表示,即用垂

14、直线代表整个交互过程中对象的生命期。生命线之间的箭头连线代表消息。序列图可以用来进行一个场景说明即一个事务的历史过程。序列图的一个用途是用来表示用例中的行为顺序。当执行一个用例行为时,序列图中的每条消息对应了一个类操作或状态机中引起转换的触发事件。5.4.1 取消订单 取消订单功能,使用户可以取消已经下过的订单。 :Staf :StafUI :BokingSystem :Restaurant :Store :DBmouseMove(cancel)mouseUp(cancel)UPDisplay()PutinID/ateAndNumCancel(boking)setCancel(boking)U

15、pDat()OK:bolOK:bolIsAvailble(boking)IDbokingSetStateCancel(IDboking)OK:bolCheck()OK:bolUpDat()OK:bol图 5.4-1 取消订单顺序图5.4.2 删除会员删除会员功能,使餐厅可以注销某些用户。- - 9 - -: Staf :stafUI Member systmouseDown(pos)updateDisplay()delteMember(name,phonenumber)return(details)searchMember(ID,name,member)return(details)图 5.4

16、-2 删除会员顺序图5.4.3 显示订单显示订单功能,根据用户设定的时间显示的餐桌的信息。 :Staf /BokingObserver:StafUI :BokingSystem :Restaurant :Bokingsubmit(date)display(date)update()getDt()getBokings()rturn bokingetBoking(date)return bokings getDate()rturn dt图 5.4-3 显示订单顺序图5.4.4显示会员信息显示会员信息功能,显示选定的会员信息,以供管理员查看并作为修改的依据。 : Staf :stafUI Membe

17、r systmouseDown(pos)updateDisplay()dispalyMember(name,phonenumber)return(details)searchMember(ID,name,meber)return(details)图 5.4-4 显示会员信息顺序图5.4.5 修改订单修改订单的功能为用户提供修改预约的机会,比如更换时间、换桌等。- - 10 - -:Staf /BokingObservr:StafUI :BokingSystem:Restaurant/Curent:Boking/Selcted:ResrvationmouseDown(pos)submit(det

18、ails)selctBoking(time,table)modify(details) modify(boking)getTable(tno)return tupdateDisplay()getDetails()Modify(date,t)图 5.4-5 修改订单顺序图5.4.6 修改会员信息修改会员信息提供给管理员以修改会员信息的功能,比图联系方式、用户姓名、信誉度等。 : Staf :stafUI Member systmouseDown(pos)mouseMove(pos)updateDisplay()modifyMember(ID,name,phonenumber)return(det

19、ails)searchMember(ID,name,meber)return(details)图 5.4-6 修改会员信息顺序图5.4.7 记录到达记录到达功能会记录用户的到达情况,同时餐桌状态的显示跟它有一定的关系。- - 11 - -:Head Waiter StafUI Boking SystemRestaurant BokingResrvationmouseDown(pos)mouseDoubleDown(pos)keyDown(Enter)display(date)updateDisplay()selctBoking(time,table)recordArival()updateDi

20、splay()update()update()getBokings(date)return bokings getDate()return dategetDetails()return bokingIfosetArivalTime(now)return OK/Eror图 5.4-7 记录到达顺序图5.4.8记录订单记录订单为接待员提供记录订单的功能,但接待员接到客户的电话预约时,会使用此功能来记录客户的预约,包括吃饭时间、吃饭桌号和预约人数等。- - 12 - -:Recptionist StafUI :Member :BokingSystem :Restaurnt :BokingmouseD

21、own(pos)updateDisplay()updateDisplay()getMmberInfo(meberID)eberInfomakeRservation(details)suceful?makeRservation(details)suceful? creatBoking()suceful?图 5.4-8 记录订单顺序图5.4.9记录离开记录离开功能,但用餐者吃完饭后离开时记录此事件,同时修改桌子的状态为没有使用。:Head Waiter StafUI Boking System :i t Restaurant :BokingmouseDown(pos)keyDown(Enter)d

22、isplay(date)updateDisplay()recordLeft(tno)updateDisplay()update()update()getBokings(date)return bokings getDate()return date图 5.4-9 记录离开顺序图5.4.10记录未订餐者记录未订餐者。对于没有预定的用餐者使用此功能来记录用餐信息。- - 13 - -:Head Waiter StafUI Boking System Restaurant WalkInsubmit(details)makeResrvation(detais)upDisplay()update()ma

23、keResrvation(detais)return OK/ErorsetArivalTime(now)return OK/Eror图 5.4-10 记录未订餐者顺序图5.4.11会员注册会员注册功能。可以增加新的会员。: Staf :stafUI Member systmouseDown(pos)updateDisplay()createMember(name,phonenumber)return datecheckMember(ID,name,phonenumber,)return date图 5.4-11 会员注册顺序图5.4.12定时提醒定时提醒功能。但订单时间已到但用餐者还没有到达时

24、就会体现本功能的作用。系统开辟一个线程单独来完成本功能,每隔一秒检查一下系统时间,如果到达用户设置的提醒时间,就- - 14 - -从数据库中读取应当到达却未到达的订单信息显示给接待员,使其可以通过提供的联系方式提醒客户。 :Timer:Receptionist:BokingSystem :RestaurantrestartTimer()overTime()updateDisplay()getOTBokings()图 5.4-12 定时提醒顺序图5.5 状态图5.5.1 记录到达的状态图、 、 、图 5.5-1 记录到达的状态图- - 15 - -5.5.2 修改会员信息的状态图、 、图 5.

25、5-2 修改会员信息的状态图5.5.3 记录离开的状态图、 、图 5.5-3 记录离开的状态图5.6 协作图协作图和序列图都可以表示各对象间的交互关系,但它们的侧重点不同。序列图用消息的几何排列关系来表达消息的时间顺序,各角色之间的相关关系是隐含的。协作图用各个角色的几何排列图形来表示角色之间的关系,并用消息来说明这些关系。在实际中可以根据需要选用这两种- - 16 - -图。一个协作图描述了系统中为实现某些服务所涉及的对象扮演的角色及其相互之间的交互。协作图着重于有协作关系的对象之间的交互和链接(指对象实例之间的物理或概念上的链接,一个链接是某关联的一个实例) 。它可用于图示系统中的操作执行

26、、用例执行或一个简单的交互场景。协作图描述了对象及其之间的链接,还描述了链接的对象之间如何发送消息。5.6.1 取消订单取消订单功能,使用户可以取消已经下过的订单。: Staf :stafUI:Restautant:store:Bokingsystem:DB12: UpDate()15: UpDisplay1: mouseMove(cancel)2: PtlnId/DatAdNum3: mouseUp(cancel)4: Cance(Boking)14: OK:bol6: IsAvalble(Boking)7: IDboking10: SetStateCancel(IDboking)1: OK

27、:bol8: Check()9: OK:bol5: SetCance(Boking)13: OK:bol图 5.6.1 取消订单协作图5.6.2 显示会员信息显示会员信息功能,显示选定的会员信息,以供管理员查看并作为修改的依据。: Staf :stafUIMembersystem6: UpdateDisplay()1: mouseDown(pos)2: searcheMember(ID,name,member)3: return(details) 4: delteMember(name,phonenumber)5: return(details)图 5.6.2 删除会员协作图5.6.3修改订单

28、修改订单的功能为用户提供修改预约的机会,比如更换时间、换桌等。- - 17 - -: Staf:StafUI :BokingSystem:Restaurant:Boking1: submint(date) 2: display(date)7: update()8: getDate()9: getBokings()10: returnbokings 3: getBoking(date)6: returnbokings4: getDate()5: returnDate图 5.6.3 显示订单协作图5.6.4修改会员信息修改会员信息提供给管理员以修改会员信息的功能,比图联系方式、用户姓名、信誉度等。

29、图 5.6.4 修改会员信息协作图5.6.5记录到达记录到达功能会记录用户的到达情况,同时餐桌状态的显示跟它有一定的关系。: Head WaiterStafUI BokingsystemBokingRestaurantReservation7: updateDisplay()17: updateisplay()1: mouseDown(pos)9: mouseDoubleDown(pos)13: keyDown(Enter) 2: display(Date)8: update()10: selctBoking(time,table)14: recordArival()18: update()

30、3: getBokings(Date)6: returnbokings1: getDetails()12: return boking info15: setArivalTime(now)16: return OK/eror4: getDate()5: return date图 5.6.5 记录到达功协作图- - 18 - -5.6.6记录订单记录订单为接待员提供记录订单的功能,但接待员接到客户的电话预约时,会使用此功能来记录客户的预约,包括吃饭时间、吃饭桌号和预约人数等。: Receptionist StafUIMemberRestaurantBokingSystemBoking4: Upd

31、ateDisplay()1: pdateisplay()1: mouseDown(pos) 2: getMemberInfo(memberID)3: memberInfo5: makeReservation(details)10: suceful?7: creatBoking()8: suceful?6: makeReservation(details)9: suceful?图 5.6.6 记录订单协作图5.6.7 记录离开记录离开功能,但用餐者吃完饭后离开时记录此事件,同时修改桌子的状态为没有使用。: Head Waiter :BokingSystemRestaurantStafUI:Bok

32、ing7: updateDisplay()10: updateDisplay()1: mouseDown(pos)8: keyDown(Enter)3: getBokings(date)6: return Bokings4: getDate()5: return Date2: display(date)9: recordLeft(tno)1: update()图 5.6.7 记录离开协作图- - 19 - -5.6.8记录未订餐者记录未订餐者。对于没有预定的用餐者使用此功能来记录用餐信息。: Head Waiter StafUIBokingsystemRestaurantWalkIn7: up

33、Display()1: submit(details)2: makeReservation(details)8: Update()3: makeReservation(details)4: return Ok/Eror5: setArivalTime(now)6: return Ok/Eror图 5.6.8 记录未订餐者协作图5.6.9会员注册会员注册功能。可以增加新的会员。Membersystem: Staf :stafUI6: updateDisplay()1: mouseDown(pos)2: checkMember(ID,name,phonenumber)3: return date

34、4: creatMember(name,phonenumber)5: return date图 5.6.9 会员注册协作图5.6.10定时提醒- - 20 - -定时提醒功能:Timer :BokingSystem:Restaurant : Receptionist2: restartTimer() 4: updateDisplay()1: overTime()3: getOTBokings()图 5.6.10 定时提醒协作图5.7 组件图在 UML 中对一个系统的构件和组件图建模就是在物理结构上建模。每一个组件图只是系统静态视图的某一个图形表示,描述系统的某一个侧面。也就是说,任何一个组件图

35、都不必面面俱到,试图全面地描述系统的整个面貌,系统中所有的组件图合起来才能描述系统的完整静态视图。ordersytemRecord bokingRemind bokig Cancel bokigSearch mpty tableTable trnsfrDelte mbrDisplay bokingsDisplay meber infortionModify meber infrationRecord arivalRecord lftRegister mbrRecord walk-in- - 21 - -5.8 部署图部署视图表示运行时的计算资源(如计算机及它们之间的连接)的物理布置。这些运行资

36、源被称作节点。在运行时,节点包含构件和对象。构件和对象的分配可以是静态的,它们也可以在节点间迁移。如果含有依赖关系的构件实例放置在不同节点上,部署视图可以展示出执行过程中的瓶颈。节点是某些计算资源的物理对象,包括计算机、外部设备等。节点可被看作类型,也可看作实例。节点与节点之间是通过物理连接发生关联,以便从硬件方面保证系统各节点之间的协同运行。餐厅订餐系统的部署图描述如下:节点:普通 PC 机和移动 PC 机作为终端设备, 1 台应用程序服务器,和多台 Web 服务器。节点属性该系统各节点计算机的性能指标节点之间联系客户机节点是简单通信联系,采用 TCP/IP 通信协议;客户通过 Intern

37、et 网与 Web 服务器相连接,利用浏览器进行查询。餐厅订餐系统部署图6. 双 向 工 程6.1 简单类、在类中添加属性和方法、类可见性设置。、 、web、Client、 、IntranetInternet- - 22 - -修改属性、方法可见性,添加方法的参数。public class Walkin public Walkin() public void walkin() public void insert() public void modify() public void delete() public void recordLet() public void main() 6.2

38、类图中的关系:泛化关系、关联关系(包括一对一关联、一对多关联、多对多关联、聚合关系、组合关系) 、依赖关系、实现关系。泛化关系:- - 23 - -Public class BookingPrivate int Booking;Private int eateing;Private int left;Private int TableNumber;Private Date eatDate;Private int eatTime;Private int state;Public Booking()Public geteatTime()Public geteatDate()Public getta

39、bleNumber()Public getstate()Public settableNumber()Public seteatDate()Public seteatTime()Public setstsate()Public cancel()Public recordLet()public class Walkin extends Booking public Walkin() public void walkin()public void insert()public void modify() - - 24 - -public void delete() public void reco

40、rdLet() public void main()单向关联:Public class ReataurantPrivate int Booking;Private int eating;Private int left;Public void restaurant()Public void main()Public void getBooking()Public void searchEmptyTable()Public void cancel()Public void makeRastaurant()Public void modifyBooking()Public void getNotA

41、rrival()Public void getRestaurant()Public class SystemInfoPrivate Arrays RemindTimes;Private boolean NeedRemind;Public Restaurant theRestaurant;Public void SystemInfo()一对多关联:- - 25 - -Public class MenuPrivate String Name;Private String Desciption;Public OrderList theOrderList;Public void Menu()Publi

42、c void getMenu()Public void getDesciption()Public class OrderListPublic Menu Menu;Public void OrderList()Public void GetOrderList()Public void main()7. 总结订餐系统颠覆了传统餐饮业的经营模式,为用户节约了时间,缩短了距离,带来了方便,提高了效率,具有较高的实用价值。经过本次设计,进一步加深了我们对 UML 语言的认识,这对以后的就业工作是很有帮助的。在此也非常感谢我的同学们,在我的设计中,他们给予了我极大的帮助。使我对整个设计的思路有了总体的把握,并耐心的帮我解决了许多实际问题,使我有了很大收获。在整个过程中提出了许多宝贵意见,并给我解决了一些专业性问题。在课程设计过程中经常给我提出许多关键性的问题,使我受益匪浅。8. 参考资料1.系统分析设计 (美) John W. Satzinger2.软件工程(第二版) 张海潘3 面向对象设计 UML 实践 (英)Mark Priestley

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报