餐厅订餐管理信息系统设计_第1页
餐厅订餐管理信息系统设计_第2页
餐厅订餐管理信息系统设计_第3页
餐厅订餐管理信息系统设计_第4页
餐厅订餐管理信息系统设计_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

面向对象分析与设计(UML)课程设计报告设计题目: 餐厅订餐管理信息系统 院 系: 数学与统计学院 专 业: 数学与应用数学(软件设计)班级: 学 号: 姓 名: 指导教师: 设计地点: 学生姓名 成绩 评语: 指导教师(签名) 年 月 日目录1. 设计目的和任务.12. 开发环境. .12.1 硬件环境. .12.2 软件环境.13.设计题目.13.1 题目名称. .13.2 题目详细描述. .13.3 功能要求.14. 相关技术及知识点.14.1 UML的建模语言.14.2 RUP软件开发过程. .24.3Rational Rose25. 设计. .2 5.1 用例图. .2 5.2 类图55.3活动图.55.4序列图.85.5状态图 135.6协作图 145.7组件图. 195.8部署图 206. 双向工程.207. 总结.248. 参考资料.24- - 25 - -1. 设计目的和任务本系统为一个餐厅的定餐系统,主要提供记录订餐和提醒的功能。基本需求是餐厅在营业时记录预约、更新预约单信息、分配餐桌以及接待未预约的顾客的能力,还添加了会员业务,为会员提供提前点菜的服务。2. 开发环境2.1 硬件环境 一台PC台式机或是便携式电脑2.2 软件环境中文windows98以上系统Rational Rose3.设计题目3.1 题目名称餐厅订餐管理信息系统3.2 题目详细描述 本系统的基本需求是餐厅在营业时记录预约、更新预约单信息、分配餐桌以及接待未预约的顾客的能力,添加了会员业务,为会员提供提前点菜的服务。主要的功能有下订单、修改订单、取消订单以及在顾客未按时到达时及时提醒顾客;同时还能记录未预约的顾客;维护订单和未预约记录,如记录到达、离开,以便及时更新餐桌的状态;附加的功能有管理会员信息,为会员提供提前点菜的服务。3.3 功能要求本系统主要分为餐桌管理,会员管理,菜单管理和订单管理四大功能模块。餐桌管理: 进入餐桌管理,可以点击餐桌对订单进行编辑,还可以显示餐桌的订单状态。会员管理: 进入会员管理,可以对会员信息进行编辑,可以添加会员,修改会员信息和删除会员信息。 菜单管理: 进入菜单管理,可以菜单会员信息进行编辑,可以添加菜单,修改菜单会员信息和删除菜单信息。订单管理: 进入订单管理,里面显示的是所有的订单信息。4. 相关技术及知识点4.1 UML的建模语言 UML的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。其中最常用的是建立软件系统的模型,但它同样可以用于非软件领域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、具有实时要求的工业系统或工业过程等。 UML是一个通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。此外,UML适用于系统开发过程中从需求规格描述到系统完成后测试的不同阶段。在需求分析阶段,可以用用例来捕获用户需求。通过用例建模,描述对系统感兴趣的外部角色及其对系统(用例)的功能要求。分析阶段主要关心问题域中的主要概念(如抽象、类和对象等)和机制,需要识别这些类以及它们相互间的关系,并用UML类图来描述。总之,标准建模语言UML适用于以面向对象技术来描述任何类型的系统,而且适用于系统开发的不同阶段,从需求规格描述直至系统完成后的测试和维护。4.2 RUP软件开发过程Rational Unified Process(RUP,统一开发过程)是一套面向对象的软件工程过程。RUP说明了如何有效地使用成熟技术开发软件。 RUP中有9个核心工作流,分为6个核心过程工作流(Core Process Workflows)和3个核心支持工作流(Core Supporting Workflows)。9个核心工作流在项目中轮流被使用,在每一次迭代中以不同的重点和强度重复。业务建模(Business Modeling)理解系统的组织结构及其商业运作,确保所有参与人员对开发系统有共同的认识。4.3 Rational RoseRational Rose的特点1. 保证模型和代码高度一致2. 支持多种语言3. 为团队开发提供强有力的支持4. 支持模型的Internet发布5. 生成使用简单且定制灵活的文档6. 支持关系型数据库的建模5. 设计5.1 用例图 本系统是一个餐厅订餐系统,主要功能是为餐厅提供订餐记录和维护功能,同时扩展了订菜和定时提醒的功能。下面使用了用例图的方式表现了整个系统的所有功能。用例名:Record booking(记录预约) 角色:Receptionist描述:1、 接待员执行“显示预约”用例;2、 有一张合适的餐桌可以使用;3、 接待员输入顾客姓名和电话号码、预订时间、用餐人数以及预留的餐桌4、 系统记录和显示新预约用例名:Remind booking(订餐提醒) 角色:Receptionist描述:1、 系统显示预约用餐时间超过当前系统时间的预约2、 接待员执行“显示预约”用例3、 接待员打电话提醒顾客,询问是否取消预约4、 如果顾客回答“否”,用例终止5、 如果顾客回答“是”,接待员执行“取消预约”用例用例名:Cancel booking(取消订单) 角色:Receptionist 描述:1、 接待员选择要求的预约2、 接待员取消预约3、 系统询问接待员确认取消4、 接待员回答“是”,系统记录取消并更新显示用例名:Table transfer(换桌)角色:Receptionist ,Head Waiter描述:1、 侍者领班选择需要的预约2、 侍者领班改变该预约的餐桌分配3、 系统记录改变并更新显示用例名:Display bookings(显示餐厅预约信息)角色:用户描述1、 用户输入一个日期2、 系统显示当日的预约用例名:Search empty table(查找空桌)角色:Receptionist 描述:1、 接待员输入日期和时间2、 系统显示空桌的信息用例名:Modify member information(修改会员)角色:用户 描述:1、 用户执行“显示会员信息”用例2、 修改会员信息3、 系统询问用户确认修改4、 用户确认修改5、 用户回答“是”,系统记录更新并显示更新用例名:Display member information(显示会员信息)角色:用户 描述:1、 用户输入会员号2、 系统显示该会员的信息用例名:Delete member(删除会员) 角色Head Waiter 描述:1、 侍者领班选择要取消的会员2、 侍者领班取消该会员3、 系统询问侍者领班确认取消4、 侍者领班回答“是”,系统记录取消并更新显示用例名:Register member(会员注册) 角色:Head Waiter 描述:1、 侍者领班输入顾客的姓名和电话号码2、 系统记录并显示该顾客的信息用例名:Record left(记录离开) 角色Receptionist 描述:1、 接待员输入餐桌号2、 系统显示使用该餐桌的所有预约和未预约登记3、 如果存在预约或未预约登记处于用餐状态,接待员确认该预约或未预约登记已经离开4、 系统对此进行记录并更新显示器,将顾客标记为已离开用例名:Record walk-in(记录未预约登记)角色Head Waiter 描述:1、 侍者领班执行“显示预约”用例2、 侍者领班输入时间、用餐人数和分配给顾客的餐桌3、 系统记录并显示新预约用例名:Record arrival(记录到达)角色Head Waiter 描述:1、 侍者领班执行“显示预约”用例2、 侍者领班确认一个选定的预约已经到达3、 系统对此进行记录并更新显示,将顾客标记为已到达图5.1系统用例图5.2 类图在类图中类用矩形框来表示,它的属性和操作分别列在分格中。如不需要表达详细信息时,分格可以省略。一个类可能出现在好几个图中。同一个类的属性和操作可只在一种图中列出,在其他图中可省略。关系用类框之间的连线来表示,不同的关系用连线上和连线端头处的修饰符来区别。图5.2订餐系统业务类图5.3 活动图 UML中的活动图用于描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动和工作流程情况。活动图实际上就是用来为用例的事件流建模的工具。 图5.3-1记录预约活动图图5.3-2 记录到达活动 图5.3-3 记录离开 图5.3-4 修改会员信息活动图5.4序列图序列图表示了对象之间传送消息的时间顺序。每一个类元角色用一条生命线来表示,即用垂直线代表整个交互过程中对象的生命期。生命线之间的箭头连线代表消息。序列图可以用来进行一个场景说明即一个事务的历史过程。序列图的一个用途是用来表示用例中的行为顺序。当执行一个用例行为时,序列图中的每条消息对应了一个类操作或状态机中引起转换的触发事件。5.4.1 取消订单 取消订单功能,使用户可以取消已经下过的订单。图5.4-1 取消订单顺序图5.4.2 删除会员删除会员功能,使餐厅可以注销某些用户。图5.4-2 删除会员顺序图5.4.3 显示订单显示订单功能,根据用户设定的时间显示的餐桌的信息。图5.4-3 显示订单顺序图5.4.4显示会员信息显示会员信息功能,显示选定的会员信息,以供管理员查看并作为修改的依据。图5.4-4 显示会员信息顺序图5.4.5 修改订单修改订单的功能为用户提供修改预约的机会,比如更换时间、换桌等。 图5.4-5 修改订单顺序图5.4.6 修改会员信息修改会员信息提供给管理员以修改会员信息的功能,比图联系方式、用户姓名、信誉度等。图5.4-6 修改会员信息顺序图5.4.7 记录到达记录到达功能会记录用户的到达情况,同时餐桌状态的显示跟它有一定的关系。图5.4-7 记录到达顺序图5.4.8记录订单记录订单为接待员提供记录订单的功能,但接待员接到客户的电话预约时,会使用此功能来记录客户的预约,包括吃饭时间、吃饭桌号和预约人数等。图5.4-8 记录订单顺序图5.4.9记录离开记录离开功能,但用餐者吃完饭后离开时记录此事件,同时修改桌子的状态为没有使用。图5.4-9 记录离开顺序图5.4.10记录未订餐者记录未订餐者。对于没有预定的用餐者使用此功能来记录用餐信息。图5.4-10记录未订餐者顺序图5.4.11会员注册会员注册功能。可以增加新的会员。图5.4-11 会员注册顺序图5.4.12定时提醒定时提醒功能。但订单时间已到但用餐者还没有到达时就会体现本功能的作用。系统开辟一个线程单独来完成本功能,每隔一秒检查一下系统时间,如果到达用户设置的提醒时间,就从数据库中读取应当到达却未到达的订单信息显示给接待员,使其可以通过提供的联系方式提醒客户。图5.4-12 定时提醒顺序图5.5状态图5.5.1记录到达的状态图图5.5-1记录到达的状态图5.5.2 修改会员信息的状态图图5.5-2修改会员信息的状态图5.5.3 记录离开的状态图图5.5-3记录离开的状态图5.6 协作图协作图和序列图都可以表示各对象间的交互关系,但它们的侧重点不同。序列图用消息的几何排列关系来表达消息的时间顺序,各角色之间的相关关系是隐含的。协作图用各个角色的几何排列图形来表示角色之间的关系,并用消息来说明这些关系。在实际中可以根据需要选用这两种图。一个协作图描述了系统中为实现某些服务所涉及的对象扮演的角色及其相互之间的交互。协作图着重于有协作关系的对象之间的交互和链接(指对象实例之间的物理或概念上的链接,一个链接是某关联的一个实例)。它可用于图示系统中的操作执行、用例执行或一个简单的交互场景。协作图描述了对象及其之间的链接,还描述了链接的对象之间如何发送消息。5.6.1 取消订单取消订单功能,使用户可以取消已经下过的订单。图5.6.1 取消订单协作图5.6.2 显示会员信息显示会员信息功能,显示选定的会员信息,以供管理员查看并作为修改的依据。图5.6.2删除会员协作图5.6.3修改订单修改订单的功能为用户提供修改预约的机会,比如更换时间、换桌等。图5.6.3 显示订单协作图5.6.4修改会员信息修改会员信息提供给管理员以修改会员信息的功能,比图联系方式、用户姓名、信誉度等。 图5.6.4 修改会员信息协作图5.6.5记录到达记录到达功能会记录用户的到达情况,同时餐桌状态的显示跟它有一定的关系。图5.6.5 记录到达功协作图5.6.6记录订单记录订单为接待员提供记录订单的功能,但接待员接到客户的电话预约时,会使用此功能来记录客户的预约,包括吃饭时间、吃饭桌号和预约人数等。图5.6.6 记录订单协作图5.6.7 记录离开记录离开功能,但用餐者吃完饭后离开时记录此事件,同时修改桌子的状态为没有使用。图5.6.7 记录离开协作图5.6.8记录未订餐者记录未订餐者。对于没有预定的用餐者使用此功能来记录用餐信息。图5.6.8记录未订餐者协作图5.6.9会员注册会员注册功能。可以增加新的会员。图5.6.9 会员注册协作图5.6.10定时提醒定时提醒功能图5.6.10 定时提醒协作图5.7组件图 在UML中对一个系统的构件和组件图建模就是在物理结构上建模。每一个组件图只是系统静态视图的某一个图形表示,描述系统的某一个侧面。也就是说,任何一个组件图都不必面面俱到,试图全面地描述系统的整个面貌,系统中所有的组件图合起来才能描述系统的完整静态视图。5.8部署图部署视图表示运行时的计算资源(如计算机及它们之间的连接)的物理布置。这些运行资源被称作节点。在运行时,节点包含构件和对象。构件和对象的分配可以是静态的,它们也可以在节点间迁移。如果含有依赖关系的构件实例放置在不同节点上,部署视图可以展示出执行过程中的瓶颈。节点是某些计算资源的物理对象,包括计算机、外部设备等。节点可被看作类型,也可看作实例。节点与节点之间是通过物理连接发生关联,以便从硬件方面保证系统各节点之间的协同运行。餐厅订餐系统的部署图描述如下:节点:普通PC机和移动PC机作为终端设备, 1台应用程序服务器,和多台Web服务器。节点属性该系统各节点计算机的性能指标节点之间联系客户机节点是简单通信联系,采用TCP/IP通信协议;客户通过Internet网与Web服务器相连接,利用浏览器进行查询。餐厅订餐系统部署图6. 双向工程6.1简单类、在类中添加属性和方法、类可见性设置。修改属性、方法可见性,添加方法的参数。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 类图中的关系:泛化关系、关联关系(包括一对一关联、一对多关联、多对多关联、聚合关系、组合关系)、依赖关系、实现关系。泛化关系: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 gettableNumber()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() public void delete() public void recordLet() public void main()单向关联:Public class Reataurant Private 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 getNo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论