餐饮管理系统详细设计总26页.docx
《餐饮管理系统详细设计总26页.docx》由会员分享,可在线阅读,更多相关《餐饮管理系统详细设计总26页.docx(29页珍藏版)》请在冰豆网上搜索。
餐饮管理系统详细设计总26页
餐饮管理系统_详细设计(总26页)
版本号:
文档名称:
详细设计说明书
项目名称:
餐饮管理系统
开发小组成员:
编写人:
评分:
教师:
评分日期:
年月日
1.引言
1.1编写目的
详细设计阶段的根本目标是确定应该如何具体的实现所要求的系统,也就是说,经过这个阶段的设计工作,可以完成对目标系统的精确描述,从而对下一步的编码阶段起到指导性作用。
本阶段的餐饮管理系统详细设计就是要根据前阶段的可行性分析、需求分析以及概要设计所发现以及扩展的问题进行进一步细化分析,使得客户能对本系统有更充分和具体的理解,也让编码人员对系统的下一步进程有更直观的了解。
1.2项目背景
近几年来,随着计算机网络、分布技术日趋成熟与自动化技术对各行各业的渗透,人们对餐饮业的服务要求与质量也有了进一步的提升,这使餐饮业的竞争也越来越激烈。
想在这样竞争激烈的环境下生存,那么就必须运用科学的管理思想和先进的管理办法,使点菜和管理一体化。
但一直以来人们使用的餐饮管理系统均是以人为主体的,需要很多的人力、财力、物力、且效率不高,在系统运营时也可能产生人为失误,以致餐饮管理工作既繁琐而且不利于分析企业的经营状况。
使用计算机对餐饮信息进行管理,具有人工管理所无法比拟的优点。
例如统计结账快捷、安全保密性好、可靠性好、存储量大、寿命长、成本低等。
这些优点不仅提高了工作效率,也避免了以前手工作业的麻烦,从而使管理者能够准确、有效的管理酒店或餐馆的餐饮服务。
1.3定义
文档中采用的专门术语的定义及缩略词简要如下:
RMS:
RestaurantManagementSystem,餐饮管理系统。
1.4参考资料
[1]张海藩《软件工程导论》(第5版)清华大学出版社2008。
[2]王东明、葛武滇《VisualC#.NET程序设计与应用开发》清华大学出版社2008。
[3]王珊,萨师煊《数据系统概念》(第四版)高等教育出版社,2006.
[4]王东明、孙健、柳盛《visualc#.net程序设计与应用开发》清华大学出版社,2008.
2.总体设计
2.1需求概述
本系统是适用于大中型餐饮酒店的餐饮管理系统,可以有效地对大中型餐厅消费进行管理。
本系统应需求如下:
◆系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存
储安全可靠。
◆实现对餐厅顾客开台、点菜/加菜、账目查询和结账等操作。
◆对用户输入的数据进行严格的数据检验,尽可能地避免人为错误。
◆实现对消费账目自动结算。
◆实现对消费的历史记录进行查询,支持模糊查询。
◆系统应最大限度地实现易维护性和易操作性。
◆能够提供一定的安全机制,提供数据的授权访问,防止随意删改,同时提供数据备份服务。
◆系统处理的准确性和及时性,以方便管理者进行即时分析。
◆系统的开放性和系统的可扩充性。
餐饮管理系统在开发过程中,应该充分考虑以后的可扩充性。
◆系统的易用性和易维护性。
2.2软件结构
本系统软件结构主要分三层,一是主界面到分界面的转换,本层次按照Jackson图的做法将本系统分为数据输入、信息调度和数据输出三大部分。
其中输入数据又往下分为对顾客信息的输入、对职员信息的输入以及对餐馆内部材料信息的输入。
信息调度和数据输出也依次分为对顾客信息的调度(输出)、职工信息调度(输出)、吧台信息的调度(输出)。
3.程序描述
3.1主模块
功能
建立与数据库的连接
获取系统设置
运行主对话框
根据输入调用子模块
退出系统时断开与数据库的连接
输入项目
用户鼠标点击进入
输出项目
对应版块的执行结果
程序逻辑
存储分配
内部数据数据库连接CS_CConnection_ConnectionPtr数据库连接指针
CS_IsConnectedBOOL数据库连接指示
CS_MainDLg主对话框
子对话框CS_OpenDlg用户开桌对话框
CS_ADDDlg吧台增加商品对话框
CS_BFDlg数据库备份显示
CS_HYDlg数据库还原显示
CS_DcDlg点菜对话框
CS_DeskDlg餐桌信息对话框
CS_AdministratorDlg管理员管理对话框
CS_RegidterDlg用户注册对话框
CS_JZDlg用户结账对话框
CS_XFDlg餐馆消费查询对话框
CS_ZTDlg餐馆桌台信息对话框
限制条件
PC机中装有SQL2000以上数据库配置和VS2008以上版本软件,机器能正常启动、运行。
测试要点
数据库连接情况:
正常情况,数据库文件是否缺少,外部系统是否异常,与数据库连接是否异常。
系统设置获取:
正常情况,外部系统异常。
对用户输入的响应:
合法输入,能够正常调用子模块;
非法输入,系统能否辨别,并作出响应(给出警告);
数据调度异常情况,系统能否及时作出响应。
数据输出时异常情况,系统能否及时响应,并做好备份。
3.2输入数据模块
功能
检查输入者身份合法性
运行登陆或注册框,方便下一步进行
输入项目
前台操作员的账号、密码
若要注册,需要填写账号和密码
输出项目
对应版块的执行结果
程序逻辑
●接口
调用形式:
FrmMainmain=newmain();
main.ShowDialog();
传入参数:
无
传出参数:
无
●存储分配
内部数据:
数据库Cs_pConnection_ConnectionPtr数据库连接指针
内部参数cs_idverchar(12)当前账号
cs_passwordverchar(8)
密码
限制条件
用户账户和密码必须匹对,会员信息必须合乎标准,职工号必须符合规范
测试要点
信息输入的合法性检查
模块正常响应流程
数据库操作异常是响应情况
对用户输入的响应:
合法输入,能够正常调用子模块;
非法输入,系统能否辨别,并作出响应(给出警告);
3.2.1注册模块
●功能
运行注册对话框
在数据库中注册用户的账号,密码
●输入项目
用户的账号,密码
●输出项目
注册成功
●程序逻辑
调用数据库查询模块
IF数据库中没有与之匹配信息
“返回”注册成功
ELSE
“返回”注册失败可能已注册
●接口
调用形式:
Registerregister=newRegister();
register.ShowDialog();
传入参数:
无
传出参数:
无
●存储分配
局部变量:
数据库m_pConnection_ConnectionPtr数据库连接指针
用户界面m_idverchar(12)账号
m_passwordverchar(8)密码
●测试要点
模块正常运行流程
账号输入数据检验,包括数据合理性检验,以及合法性检查
数据库操作
数据库连接异常时的响应情况
3.2.2登录模块
●功能
运行登录对话框
在数据库中匹配用户的账号,密码
●输入项目
用户的账号,密码
●输出项目
无
●程序逻辑
●接口
调用形式:
:
Loginlogin=newLogin();
login.ShowDialog();
传入参数:
无
传出参数:
无
●存储分配
局部变量:
数据库CS_pConnection_ConnectionPtr数据库连接指针
用户界面CS_idverchar(12)账号
CS_passwordverchar(8)密码
●测试要点
模块正常运行流程
账号密码输入数据检验,包括数据合理性检验,以及合法性检查
数据库操作
数据库连接异常时的响应情况
3.3信息调度模块
功能
检查输入者身份合法性
正常跳转子信息调度页面
获取系统设置
根据输入调用子模块
输入项目
前台操作员的账号、密码
点击右键选择进入
输出项目
对应版块的执行结果(用户信息核实、用户信息调度、吧台信息调度等)
程序逻辑
生成数据库查询语句
调用数据库查询模块
IF操作成功
进入下一步调度界面
IF“用户信息查询”
进入“用户信息查询”界面
ELSEIF“用户信息更新”
进入“用户信息更新”界面
ELSEIF“吧台信息查询”
进入“吧台信息查询”界面
ELSEIF“吧台信息更新”
进入“吧台信息更新”界面
ELSEIF“职工信息更新与查询”
进入“职工信息更新与查询”界面
ELSEIF“更新备份”
进入“更新备份”界面
ELSEIF“查询操作员记录”
进入“查询操作员记录”界面
ELSEIF“操作员权限更新”
进入“操作员权限修改”界面
ELSE“返回上一层”
ELSE
返回“操作失败”
●接口
调用形式:
Searchsearchr=newSearch();
Search.ShowDialog();
传入参数:
BOOLCS
传出参数:
无
●存储分配
局部变量:
数据库CS_pConnection_ConnectionPtr数据库连接指针
用户界面CS_idverchar(12)账号
CS_passwordverchar(8)密码
限制条件
用户账户和密码必须匹对,对子界面的选择必须按照规定
测试要点
数据库连接正常
数据库操作正常
数据库操作异常是响应情况
对用户输入的响应:
合法输入,能够正常调用子模块;
非法输入,系统能否辨别,并作出响应(给出警告);
子界面的跳转是否正常合理,是否有抛出异常
功能
查询用户个人信息
查询用户点菜、加菜、退菜信息
查询个人账单
查询会员信息
输入项目
预订餐桌时需要姓名和电话
若办会员,需要顾客身份证号、姓名、联系方式
输出项目
用户菜单、用户账单、用户会员信息
程序逻辑
●接口
调用形式:
Searchcssearch=newcssearch();
cssearch.ShowDialog();
传入参数:
无
传出参数:
无
●存储分配
局部变量:
数据库CS_pConnection_ConnectionPtr数据库连接指针
用户界面CS_idverchar(12)账号
CS_passwordverchar(8)密码
CS_nameverchar(20)姓名
CS_idverchar(20)身份证号
CS_phoneverchar(11)电话
CS_zhverchar(20)会员号
CS_datedata_time时间
CS_orderverchar(20)菜品号
限制条件
用户账户和密码必须匹对,会员信息必须合乎标准,操作必须符合规定,按要求保存。
测试要点
数据库数据异常(用户姓名为空)
数据库操作正常
数据库操作异常是响应情况
用户查询的结果保密性(对姓名和联系方式的保密)
用户查询结果的准确性
对用户输入的响应:
合法输入,能够正常调用子模块;
非法输入,系统能否辨别,并作出响应(给出警告);
功能
办理新会员或删除旧会员信息
用户会员信息更新
输入项目
预订餐桌时需要姓名和电话
若办会员,需要顾客身份证号、姓名、联系方式
输出项目
用户会员信息(包含个人信息)
程序逻辑
生成数据库查询语句
调用数据库查询模块
IF操作成功
返回“操作成功”
进入下一层
IF“会员办理”
输入个人信息后分配会员号和密码
存档个人信息
ELSEIF“会员信息更新”
输入“姓名”、“身份证号”、“性别”、“联系方式”
保存或修改
ELSEIF“会员删除”
会员信息删除
ELSE
置相关信息字符串为“操作异常”
返回“失败标志”(-1)
●接口
调用形式:
Updateupdate=newUpdate();
update.ShowDialog();
传入参数:
无
传出参数:
无
●存储分配
局部变量:
数据库CS_pConnection_ConnectionPtr数据库连接指针
用户界面CS_idverchar(12)账号
CS_passwordverchar(8)密码
CS_nameverchar(20)姓名
CS_Idverchar(20)身份证号
CS_hysexverchar(20)性别
CS_hyphoneverchar(11)电话
CS_hyidverchar(20)会员号
CS_datedate_time时间
限制条件
用户账户和密码必须匹对,会员信息必须合乎标准,操作必须符合规定,按要求保存。
测试要点
数据库数据异常(用户姓名为空)
数据库操作正常
数据库操作异常是响应情况
用户更新结果的准确性
用户更新信息不合理检测
对用户输入的响应:
合法输入,能够正常调用子模块;
非法输入,系统能否辨别,并作出响应(给出警告);
功能
对职员信息进行查询
对职员信息进行注册和修改
输入项目
操作员的账号和密码
职工的职工号、姓名、性别、年龄、联系电话
输出项目
职工信息
程序逻辑
生成数据库查询语句
调用数据库查询模块
IF操作成功
返回“操作成功”
进入下一层
IF“职工信息查询”
进入“职工信息查询”界面
输入“姓名”或“职工证号”
返回菜单详细结果
ELSEIF“职工信息更新”
进入“职工信息更新”界面
输入“姓名”、“编号”、“电话”、“性别”、“年龄”
IF“保存”
完成职工信息更新
IF“注册”
完成职工信息注册
IF“删除”
完成职工信息删除
ELSE
置相关信息字符串为“操作异常”
返回“失败标志”(-1)
●接口
调用形式:
Searchzgsearch=newzgsearch();
zgsearch.ShowDialog();
Updatezgzgupdate=newUpdatezg();
zgupdate.ShowDialog();
传入参数:
无
传出参数:
无
●存储分配
局部变量:
数据库CS_pConnection_ConnectionPtr数据库连接指针
用户界面CS_idverchar(12)账号
CS_passwordverchar(8)密码
CS_zgnameverchar(20)职工姓名
CS_zgidverchar(20)职工账号
CS_zgsexverchar(5)职工性别
CS_zgtelverchar(5)职工联系方式
CS_zgagverchar(5)职工年龄
限制条件
用户账户和密码必须匹对,用户操作必须符合规定,查询时输入格式必须注意,结果按要求保存。
测试要点
数据库数据异常(用户姓名为空)
数据库操作正常
查询结果集正常
数据库操作异常是响应情况及处理办法
用户查询的结果保密性
用户查询结果的准确性
对用户输入的响应:
合法输入,能够正常调用子模块;
非法输入,系统能否辨别,并作出响应(给出警告);
功能
对餐馆内餐桌情况进行查询
输入项目
操作员的账号和密码
餐桌名称、包间费、备注、餐桌位置、餐桌类型
输出项目
餐桌相关更新信息
程序逻辑
●接口
调用形式:
Updateczupdatecz=newUpdatecz();
Updatecz.ShowDialog();
传入参数:
无
传出参数:
无
●存储分配
局部变量:
数据库CS_pConnection_ConnectionPtr数据库连接指针
用户界面CS_idverchar(12)账号
CS_passwordverchar(8)密码
CS_cznameverchar(20)餐桌名
CS_czchargeverchar(20)包间费
CS_orderverchar(20)备注
CS_placeverchar(20)餐桌位置
CS_cztypeverchar(20)餐桌类型
限制条件
用户操作必须符合规定,查询时输入格式必须注意,结果按要求保存。
测试要点
数据库数据异常(用户姓名为空)
数据库操作正常
查询结果集正常
数据库操作异常是响应情况及处理办法
餐桌类型的填写异常
餐桌备注的填写和记录
对用户输入的响应:
合法输入,能够正常调用子模块;
非法输入,系统能否辨别,并作出响应(给出警告);
功能
对餐馆内餐桌情况更新
输入项目
操作员的账号和密码
餐桌名称、包间费、备注、餐桌位置、餐桌类型
输出项目
餐桌修改后相关信息
程序逻辑
生成数据库查询语句
调用数据库查询模块
IF操作成功
返回“操作成功”
进入下一层
IF“餐桌信息”
输入餐桌名称、包间费、类型、位置、备注
IF“重填”
Return“餐桌信息”
ELSEIF“保存”
保存修改信息
ELSEIF“删除”
餐桌信息信息删除
ELSE
置相关信息字符串为“操作异常”
返回“失败标志”(-1)
●接口
调用形式:
Updateczupdatecz=newUpdatecz();
update.ShowDialog();
传入参数:
无
传出参数:
无
●存储分配
局部变量:
数据库CS_pConnection_ConnectionPtr数据库连接指针
用户界面CS_idverchar(12)账号
CS_passwordverchar(8)密码
CS_cznameverchar(20)餐桌名
CS_czchargeverchar(20)包间费
CS_orderverchar(20)备注
CS_placeverchar(20)餐桌位置
CS_cztypeverchar(20)餐桌类型
限制条件
用户账户和密码必须匹对,用户操作必须符合规定,查询时输入格式必须注意,结果按要求保存。
测试要点
数据库数据异常(用户姓名为空)
数据库操作正常
查询结果集正常
数据库操作异常是响应情况及处理办法
餐桌信息修改后是否保存
数据传值时是否有问题
对用户输入的响应:
合法输入,能够正常调用子模块;
非法输入,系统能否辨别,并作出响应(给出警告);
3.3.5更新备份模块
●功能
根据用户界面的输入,更新当前记录各数据域并数据库备份
●输入项目
用户界面的各个变量(公共变量)
●输出项目
更新操作成功/失败标志(返回值);更新后的记录(存储文件)
●程序逻辑
保存当前系统设置
读入界面的值
IF系统设置发生变化
给出警告”不能更改系统设置”
恢复系统设置的值
生成数据库更新语句
IF更新操作成功
进行数据库备份
重新获取记录集
光标移动到原位置
返回”成功”
返回“备份成功”
ELSE
给出警告”操作失败”
返回”失败”
●接口
调用形式:
BOOLRefreshData()
传入参数:
无
传出参数:
操作成功/失败标志(BOOL值)
引用的全局变量:
CS_pConnection_ConnectionPtr使用
CS_namevertchar读
CS_idvertchar读写
CS_addministeridverchar读写
CS_datadatatime读写
CS_zgidverchar读写
CS_hyidverchar读写
CS_XFverchar读写
CS_ZTvechar=读写
CS_Dcverchar读写
CS_phoneverchar读写
●存储分配
局部变量:
操作参数vtCommand_variant_t操作命令
vRecsAffected_variant_t操作影响
类型转换strCommandCString操作命令类型转换
vtemp_variant_t命令参数类型转换
levelint命令参数类型转换
●测试要点
数据库连接正常
输入数据合理合法根据输入更新记录,返回“真”
输入数据不合理或不合法给出警告,返回“假”
数据库连接异常给出警告,返回“假”
●功能
获取所有操作员的记录
●输入项目
数据库连接
●输出项目
操作成功/失败标志;系统操作员记录集
●程序逻辑
生成数据库查询命令
查询数据库,打开记录集
IF操作成功
“返回”操作成功
查看操作员操作记录
ELSE
“返回”操作失败
●接口
调用形式:
CountAdministratorcountadministrator=newCountAdministrator();
countadministrator.ShowDialog();
传入参数:
无
传出参数:
查询成功/失败标志
引用的全局变量:
CS_endadiministersetprt数据查询结果集指针
CS_countint当前记录位置计数
CS_totalnumint记录总数
●存储分配
局部变量:
查询参数querysql查询命令
Queryconnectionvariant查询连接
●测试要点
数据库数据异常(用户姓名为空)
数据库操作正常
数据库操作异常是响应情况
用户查询的结果保密性(对姓名和联系方式的保密)
用户查询结果的准确性
对用户输入的响应:
合法输入,能够正常调用子模块;
非法输入,系统能否辨别,并作出响应(给出警告);
●功能
获取所有操作员的记录
●输入项目
数据库连接
●输出项目
操作成功/失败标志;系统操作员权限记录集
●程序逻辑
生成数据库查询命令
查询数据库,打开记录集
IF操作成功
“返回”操作成功
修改操作员权限
选择操作员身份
设置权限
ELSE
“返回”操作失败
●接口
调用形式:
CountAdministratorchangeduty=newCountAdministrator();
changeduty.ShowDialog();
传入参数:
无
传出参数:
查询成功/失败标志
引用的全局变量:
CS_endadiministers