可视化建模与UML餐饮管理系统建模.docx
- 文档编号:24576187
- 上传时间:2023-05-29
- 格式:DOCX
- 页数:34
- 大小:304.17KB
可视化建模与UML餐饮管理系统建模.docx
《可视化建模与UML餐饮管理系统建模.docx》由会员分享,可在线阅读,更多相关《可视化建模与UML餐饮管理系统建模.docx(34页珍藏版)》请在冰豆网上搜索。
可视化建模与UML餐饮管理系统建模
可视化建模与UML_餐饮管理系统建模
课题名称:
餐饮治理系统建模
姓名:
吴在兴
学号:
90914026
班级:
09软件本
(2)班
学院:
电子与信息工程学院
指导老师:
夏洁武
完成日期:
2012年5月28日
名目
第一章引言
1.1系统目的
学生成绩治理系统是一个治理学生信息、成绩和教师信息的小型系统。
统目标是学生方便直观的查询个人信息和成绩,教师能治理学生的成绩,治理员治理所有用户的信息和本系统。
1.2用户特点
1.2.1用户分类
本系统可将用户分为以下三类:
◆经理
经理拥有登录后台治理的功能,能够进行人事治理、登录治理、菜谱治理、报表统计、成本治理和系统设置等功能的使用权
收银员
收银员具有登录收款系统的权限,能够进行餐桌治理、点菜服务、会员服务、结账服务等功能的使用权
治理员
其权限功能和经理是一样的
1.3运行环境和资源
本系统是基于windows平台上的应用程序,java语言编写开发。
其软硬件条件必须满足windows和java的正常运转要求。
软件环境:
需要安装有eclipse、jdk。
数据库系统:
MicrosoftsqlServer2005。
1.4软件的体系结构
软件体系结构如图1-1所示
图1-1软件体系结构图
‘
第二章用例模型
用例模型是所有用例、参与者以及相互关系的集合,是关于系统功能和环境的模型。
一个用例确实是系统要实现的一项功能,即用例描述系统要做什么。
用例模型是软件需求分析结果的可视化表示。
2.1用例图描述
用来描述用户的需求,它从用户的角度描述系统的功能,并指出功
能的执行者,强调谁在使用系统,系统为执行者完成哪些功能。
是基于系统要实现的功能的一个可视化描述。
用例图是用例模型的重要组成部分,是对系统从宏观角度的确定描述。
用例图是系统建模的起点,通过用例图搜集用户的需求,明确和系统有关
的用户和其他系统,同时确定系统将会提供什么功能,差不多各个功能之间的关系。
2.2构建用例图
1.确定系统的执行者
执行者是系统外部的一个实体,是与系统进行交互的任何事物或人,以某种方式参与用例的执行过程,参与者通过向系统输入或向系统发出某种要求来触发系统的执行。
执行者通常是以他们在系统中所扮演的角色来命名,而不是以他们要执行的功能来确定的,否则会产生命名歧义。
如图2-1所示。
图2-1用例执行者
2.确定系统用例
用例是描述执行者使用系统以打到某个目的涉及的一系列场景的集合。
通过从各个执行者的角度进行分析,按照用户需求,将系统功能划分为三个功能模块。
(1)收银员模块
◆餐桌治理
◆点菜服务
◆会员服务
◆结账服务
(2)经理和治理员模块
◆人事治理
◆登录治理
◆菜谱治理
◆报表统计
◆成本治理和系统设置
2.3结账用例图
图2-2结账用例图
简要讲明
本用例描述收银员和顾客结账的过程
事件流
(1)差不多流
①顾客选择预订餐桌
②系统按照顾客的需求生成相应的预定餐桌
③顾客选择点菜服务
④系统按照顾客的点菜生成相应的餐桌订单
⑤顾客选择结账服务
⑥系统显示顾客的订单,顾客确定后并储存
⑦系统显示结账的方式
⑧顾客选择付款方式进行结账
⑨系统判定顾客是否会员运算出订单的总额
⑩顾客确认订单结算成功信息,终止结账服务
(2)备选流
①顾客取消结账服务,系统给出提示,终止
②若顾客没有付款,给出提示.保留该订单,等待顾客付款
专门条件
需要系统能和现有的银行系统连接,获得顾客付款信息
前置条件
结账服务打折必须顾客是系统会员,否则不能进行优待打折结算
后置条件
无
扩展点
无
有关数据
顾客所选的餐桌类型,以及顾客点菜的菜式和数量
2.4经理用例图
图2-3经理用例图
简要讲明
本用例描述餐厅经理能使用的系统功能
(1)差不多流
①系统以闪屏的形式加载
②加载完后,弹出登录框.输入正确的用户名和密码
③系统通过判定用户职位为经理,从而切换到经理登录界面
④显示出系统的主界面,经理可选择相应的功能模块进行操作
⑤人事治理能够对餐厅职员信息的治理
⑥登录治理能够对登录该系统的权限进行设置
⑦菜谱治理能够对餐厅的菜式进行增删改查
⑧报表统计实现对餐厅销售额的实时图形观看
⑨成本治理能操纵餐厅的成本
⑩系统设置能够更换系统的差不多外观和背景音乐
(2)备选流
①若输入的用户名为收银员,且密码正确.则系统进入收款界面
②若用户的密码输入错误,则不能进入系统.需重新输入
专门条件
用户名和密码均输入正确,且有相应的权限
前置条件
无
后置条件
无
扩展点
无
有关数据
餐厅职员信息、菜式信息、餐厅各时刻段的营业额信息
2.5人事治理和登录治理用例图
图2-4人事治理和登录治理用例图
简要讲明
本用例描述系统的人事治理和登录治理功能部分
(1)差不多流
①用户输入自己的用户名和密码
②系统通过判定用户为经理或治理员,切换到相应的系统界面
③用户选择人事治理
④系统按照用户选择的人事治理,将职员的要紧信息以表格的形式显示出来
⑤用户有查看职员详细信息、修改职员信息、添加职员的功能权限
⑥用户选择删除职员信息
⑦系统按照用户选择的职员,将该职员的信息从数据库中删除
⑧用户选择查看职员详细信息
⑨系统按照用户选择的职员,将该职员的详细信息从数据库中调取出.并以对话框的形式显示出来
⑩用户选择修改职员信息
系统对用户修改的职员信息进行更新,并重新显示给用户查看
用户选择退出系统,系统储存信息并退出
(2)备选流
①若用户的密码输入错误,则提示用户重新输入
②若用户没有选择相应的职员进行删除操作,则弹出对话框提示用户选择需要删除的职员
③若用户选择登录治理功能,则切换到登录治理功能界面
专门条件
用户名和密码均输入正确,且有相应的权限
前置条件
无
后置条件
无
扩展点
无
有关数据
职员的详细信息(包括姓名、年龄、薪水等)、系统用户的登录权限信息
咨询题讲明
无
第三章类模型
3.1类图的描述
述类和类之间的关系,是UML中最差不多和最重要的一类图。
要紧用于一些概念类的描述,描述类的外部特性和描述类的内部实现。
类图是面向对象系统的核心。
类图的直观性不论在分析时期、设计时期依旧编码时期都有十分重要的作用,软件开发人员在清晰地看到系统的设计之后,专门容易提升编码的效率。
类图的元素包括:
◆类名称:
唯独标识一个类的名称。
◆属性:
描述类的对象所具有的特点。
◆方法:
对属性数据的处理过程。
类间关系包括:
关联、泛化、依靠、聚合、组合、实现、接口。
给定一个类图,能够判定一个对象是否表示了系统的一个可能状态。
对象之间的关系是由类图上对应的关联关系来定义的。
两个类之间的关联关系表明了他们的对象在运行时存在的连接关系。
3.2构建类图
类是对显示世界中具有相同性质和行为的一类对象的抽象,它封装了这些
类对象所共有的属性和操作。
3.3庐陵楼系统登录类图
图3-1庐陵搂系统登录类图
MhlMain类
(1)作用:
该类为系统的主调方法,是系统运行的主函数类
(2)具有的属性
p:
DownLoad(为类DownLoad的一个对象)
(3)具有的方法
①voidrun():
操纵闪屏存在的时刻,即一个线程方法
②voidmain():
系统的主函数
DownLoad类
(1)作用:
该类的要紧作用为实现系统的闪屏加载
(2)具有的属性
①t:
Thead(为线程对象)
②f:
Font(MyTool类中的定义的静态字体类型)
③ss:
String(闪屏加载显现的欢迎词,为字符串类型)
(3)要紧方法
①paintComponent(Graphicsg):
充当面板的画笔作用,用于画出个组件
②voidrun():
实现进度条的线程操纵
UserLogin类(继承JDialog)
(1)作用:
闪屏加载完后,用户的登录界面
(2)具有的属性
①jl1,jl2:
JLabel(Swing标签组件)
②jb1,jb2:
JButton(Swing按钮组件)
③jt1:
JTextField(Swing文本组件)
④jp:
JPasswordField(Swing密码框组件)
(3)具有的方法
①actionPerformed(actionEvente):
对用户完成输入后点击确定时刻的监听
②UserLogin():
构造函数,对该类中使用到的组件、变量进行初始化
Windows1类(继承JFrame)
(1)作用:
用于显示系统的主界面
(2)具有的属性
①jmb:
JMenuBar(Swing菜单条组件)
②jm1,jm2,jm3:
JMenu(Swing菜单项组件)
③jmi1,jmi2,jmi3,jmi4,jmi5,jmi6:
JMenuItem(Swing子菜单组件)
④jp1,jp2,jp3:
JPanel(Swing面板组件)
(3)具有的方法
①actionPerformed(actionEvente):
对用户完成输入后点击确定时刻的监听
②UserLogin():
构造函数,对该类中使用到的组件、变量进行初始化
③mouseEntered(MouseEvent):
对鼠标的进入事件进行监听
④mouseExited(MouseEvent):
对鼠标退出事件进行监听
⑤mousePressed(MouseEvent):
对鼠标按下事件进行监听
⑥mouseReleased(MouseEvent):
鼠标按下松开事件进行监听
⑦initMenuBar():
对主界面的菜单条进行初始化
⑧initToolBar():
对主界面的工具条进行初始化
⑨initCenter():
对主界面的中间面板切换部分进行初始化
UserModel类
(1)作用:
用户数据模型,实现用户操作的业务操作
(2)具有的属性
无
(3)具有的方法
①CheckUser(StringuserID,StringuserPD):
对用户输入的用户名和密码进行验证
SqlHelper类
(1)作用:
对数据库进行加载驱动并返回查询的数据结果集
(2)具有的属性:
①ct:
Connection(数据库连接类)
②ps:
PrepareStateement(数据库操作类)
③rs:
ResultSet(数据结果集)
④url:
String(数据库驱动路径)
(3)具有的方法
①SqlHelper():
构造函数
②query(Stringsql,String[]paras):
结果集方法
③exeUpdate(String,String):
对数据库的更新操作
④voidclose():
关闭数据资源方法
MyTool类
(1)作用:
系统工具类
(2)具有的属性
①f1,f2,f3:
Font(字体类)
(3)具有的方法
无
3.4添加职员类图
图3-2删除职员类图
AddClerkDialog类
(1)作用:
人事治理添加职员时的对话框,用于录入职员信息
(2)具有的属性
①jname,jsex,jnum,jpost,jage:
JLael(Swing标签组件)
②jnameText,jnumText,jsexText,jpostText,jageText:
JTextField(Swing文本组件)
③jsexRadio:
JRadioButton(Swing单选组件)
④b1,jb2:
JButton(Swing按钮组件)
(3)具有的方法
①voidactionPerformed(ActionEvente):
对用户录入信息后的点击确定事件进行监听,并将添加职员的信息传递给ClerkModel层
②AddClerkDialog(ClerkInfoclerkInfo,Stringtitle,booleanmodel):
构造函数
ClerkModel类
(1)作用:
实现对人事治理的数据逻辑操作
(2)具有的属性
①columns:
Vector
②rows:
Vector
(3)具有的方法
①voidquery(Stringsql,String[]paras)
②booleandelClerk(StringclerkNo):
提供一个通过获得职员号来删除职员的方法
③ObjectgetValueAt(introwIndex,intcolumnIndex):
获得当前列的每行数据
④StringgetColumnName(intcolumn):
返回数据表的列名
⑤intgetColumnCount():
获得数据表的列数
⑥intgetRowCount():
获得数据表的行数
第四章交互模型
顺序图和协作图统称交互模型,用来描述系统中多个对象之间的相互关系及对象间消息传递,用于系统中多个对象的相互作用的过程进行建模。
4.1顺序图概述
又叫时序图,它是强调消息时刻顺序的交互图,描述类以及类间相互交换以完成期望行为的消息。
顺序图向UML用户提供事件流畅时刻推移的、清晰的、可视化的轨迹。
使用顺序图来描述一个完整的用例过程,用途是把用例图表达的需求,转化为进一步、更加正式的精细表达。
表示用例中的行为顺序。
4.2构建顺序图
1.确定用例的需求
按照用户需求能够专门容易确定用例的需求。
2.找出需求中涉及的对象
4.3职员(经理)登录顺序图
图4-1经理登录顺序图
登录系统的过程如下
(1)用户登入前,系统先以闪屏的形式加载.并动态的出现出欢迎用户的话语
(2)闪屏加载完,弹出用户登入界面.用户输入自己的用户名和密码
(3)当用户点击确定登录时,通过actionPerformed(Actione)将用户的信息提交给mvc中的userModel模型层
(4)用户模型层(userModel)以sql语句和用户信息的形式传递给数据操纵层sqlHelper,
该过程是由CheckUser(Stringsql,StringuserPD)来实现的
(5)数据操纵层sqlHelper从userModel获得信息的同时,加载数据库驱动.从数据库中猎取该用户的职位信息,并以ResultSet()的形式返还给userModel层
(6)userModel从ResultSet结果中提取出用户职位,并返回给UserLogin登录界面层
(7)UserLogin将获得的用户职位信息进行判定为经理,同时发送显示系统消息给window1系统界面
(8)用户登录成功,并显示出系统的主界面
按照登录系统的过程,找出参加交互的对象.那个过程中参加交互的对象要紧包括:
用户(经理)、DownLoad、UserLogin、UserModel、SqlHelper、windows1
(1)经理:
登录系统并使用系统各个功能的用户
(2)DownLoad:
登录前,实现系统的闪屏加载
(3)UserModel:
负责对登录系统的用户进行业务操作
(4)SqlHelper:
对数据库进行加载驱动,并获得对数据库操作的结果集
(5)windows1:
用于显示系统的主界面,即用户登入成功后的界面
经理登录过程的消息表
消息
发送对象
接收对象
newDownLoad()
经理
UserLogin
newUserLogin()
DownLoad
UserLogin
actionPerformed(Actione)
UserLogin
UserModel
checkUser(Stringsql,StringPD)
UserModel
SqlHelper
ResultSet
SqlHelper
UserModel
returncelZW()
UserModel
UserLogin
getName()
UserLogin
UserLogin
newWindows1()
UserLogin
Windows1
表4-1用户(经理)登录过程消息的发送和接收表
4.4删除职员顺序图
图4-2删除职员顺序图
登录系统的过程如下
(1)用户登入后,选择人事治理功能模块
(2)进入人事治理模块后,选择一待删除职员并进行删除操作
(3)ClerkInfo职员信息显示层,将接收到的删除职员命令通过以职员号为行参将删除员
工方法delClerk(clerkNo)传递给UserModel层
(4)UserModel层接收到删除职员方法后,又以sql语句和paras为形参发送更新操作
exeUpdate(sql,paras),并传递给SqlHelper数据操纵层
(5)数据操纵层SqlHelper接收到更新数据操作的同时,加载数据库驱动.并将得到的新的结果集Result返还给UserModel层
(6)userModel从ResultSet结果中提取出删除职员后新的职员信息,并返回给ClerkInfo
(7)ClerkInfo职员信息得到更新
(8)将重新更新的职员信息显示在windows1中
按照登录系统的过程,找出参加交互的对象.那个过程中参加交互的对象要紧包括:
经理(或治理员)、ClerkInfo、UserModel、SqlHelper、windows1
(1)经理(或治理员):
对职工进行有关的crud操作
(2)ClerkInfo:
显示职员的详细信息,并在那个地点进行增删改查操作
(3)UserModel:
负责对登录系统的用户进行业务操作
(4)SqlHelper:
对数据库进行加载驱动,并获得对数据库操作的结果集
(5)windows1:
用于显示系统的主界面,即用户登入成功后的界面
经理登录过程的消息表
消息
发送对象
接收对象
删除职员
经理
ClerkInfo
delClerk(clerkNo)
ClerkInfo
UserModel
exeupdate(sql,paras)
UserModel
SqlHelper
Result()
SqlHelper
UserModel
ClerkInfo()
UserModel
UserInfo
refresh()
UserInfo
Windows1
表4-2经理(或治理员)删除职员操作的消息的发送和接收表
第五章行为模型
行为模型分为状态图和活动图,是用来描述系统的动态行为特点的,是状态机的变现形式,要紧用于描述事物的状态变化和处理过程。
5.1活动图概述
活动图是一种描述系统行为的图,它用于展现参与行为的类所进行的各种活动的顺序关系。
活动图是专门的状态图,其中所有状态均为动作状态,同时源状态中的动作一经完成即会触发操纵流。
活动图是用来描述一个目标所实施一系列活动的过程,描述系统的动态特点。
使用活动图来描述用户的业务流程能够关心设计者理清用户业务过程,业务中的要紧活动,参加活动的对象,以及这些对象之间的关系。
活动图的用途广泛。
可用于描画用例的事务流;为复杂的商务行为或过程建模。
描画用例的事务流标准的用例图往往使用简单的图形和大量的文字体现用户需求和系统功能,文字的显现增加了用例图的阅读者懂得图形的难度,进而阻碍了他们下一步的分析和设计工作。
用活动图描画用例的事务流,能使复杂的用例事务流更容易被懂得。
5.2构建活动图
1.过程分析
找到用例业务过程中的活动,能够通过一下咨询题来关心查找业务过程中的活动。
◆该业务过程需要完成哪些工作步骤。
◆每个参与者都要执行哪些操作。
◆有没有哪些事件启动了哪些工作步骤。
按照上面的咨询题,分析在系统执行的过程中,要紧有哪些活动。
2.活动连接
得到业务过程中的要紧活动后,就需要进一步考虑这些活动的执行顺序。
分析出各个活动、活动的操纵流、活动的执行顺序、活动执行的条件、活动的分支、活动的并发执行。
按执行的顺序、分支和汇合等连接活动图。
3.画出活动图
按照以上分析得出的结果进行汇总,设计各个用例的活动图,最后画出活动图。
5.3状态图和活动图
概述
以下状态图和活动图是用于描述该系统的动态行为特点的,要紧描述系统事物状态的变化和处理过程
活动图和状态图包含的元素
(1)状态图包含的元素
①起点
②终点
③状态
④事件
⑤转换
⑥符合状态和子状态
(2)活动图包含的元素
①起点和终点
②活动
③转移
④接收信号和发送信号
⑤决策点和汇合点
⑥分叉和回合
⑦操纵流终点
⑧泳道
状态图和活动图的分析过程
(1)状态图
①状态分析
②状态描述
(2)活动图
①过程分析、
②活动连接
③活动图描述
图中使用到的图符的含义
(1)状态图图符含义
(2)活动图图符含义
5.4用户登入活动图
图5-1用户登入活动图
过程分析
在用户登入这一过程中,系统先需以闪屏的形式加载.之后弹出登入界面,用户输入用户名和密码,点击确定提交信息.系统会按照用户名来判定密码是否正确.正确则进入系统主界面,否者不能进入系统.直至用户输入的密码正确.按照那个过程能够得到如下一些要紧活动:
①闪屏登录
②输入用户名和密码
③提交
④检查用户密码
⑤进入系统
活动描述
按照前面分析出的活动以及各活动的操纵流,能够设计出如图7-8的过程活动图.
当用户输入的信息被提交时,系统会先从数据库中得到数据来判定用户输入的密码是否正确,当密码正确时.再按照用户的职位来相应的进入到系统主界面(如经理和主管一样,但收银员则进入结账系统界面).
5.5餐桌预定活动图
图5-2餐桌预定活动图
过程分析
餐桌预定过程,顾客选择预定餐桌时,系统先判定有无可预定的餐桌.当还有剩余餐桌可预定时,系统会提示用户选择相应的餐桌类型:
一般或高级.最后系统按照用户选择的餐桌类型进行顾客登记.综上,能够得出这一过程的要紧活动
①预定餐桌
②离开
③餐桌类型
④一般餐桌
⑤高级餐桌
⑥客户登记
活动连接
通过分析所有活动的执行顺序和条件,能够发觉在判定是否有剩余可预定餐桌显现一个决策点,而在顾客选择完餐桌类型后会显现一个汇合点
活动图描述
图7-9的活动图描述餐桌预定的全过程.
5.6菜单生成活动图
图5-3菜单生成活动图
过程分析
当顾客预定餐桌后,有一分岔和汇合的过程.即顾客可选择评判赶忙终止这一过程,亦可选择退菜或者点菜.当用户选择点菜后,系统按照用户选择的菜式生成相应的菜单.最后等待用户的结账,过程终止.具有的状态:
①预定餐桌
②评判
③点菜
④退菜
⑤提示失败缘故
⑥生成菜单
⑦结账
活动连接
通过分析所有活动的执行顺序和条件,能够发觉在顾客预定完餐桌后显现一决策点,随后在顾客选择完菜式又形成一个汇合点
活动图描述
图7-10的活动图描
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可视化 建模 UML 餐饮 管理 系统