火锅城点菜系统论文设计毕设论文.docx

上传人:b****4 文档编号:4456364 上传时间:2022-12-01 格式:DOCX 页数:21 大小:1.97MB
下载 相关 举报
火锅城点菜系统论文设计毕设论文.docx_第1页
第1页 / 共21页
火锅城点菜系统论文设计毕设论文.docx_第2页
第2页 / 共21页
火锅城点菜系统论文设计毕设论文.docx_第3页
第3页 / 共21页
火锅城点菜系统论文设计毕设论文.docx_第4页
第4页 / 共21页
火锅城点菜系统论文设计毕设论文.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

火锅城点菜系统论文设计毕设论文.docx

《火锅城点菜系统论文设计毕设论文.docx》由会员分享,可在线阅读,更多相关《火锅城点菜系统论文设计毕设论文.docx(21页珍藏版)》请在冰豆网上搜索。

火锅城点菜系统论文设计毕设论文.docx

火锅城点菜系统论文设计毕设论文

学号:

课程设计

 

题目

火锅城电子点菜系统

教学院

专业

班级

姓名

指导教师

 

课程设计任务书

2011~2012学年第2学期

学生姓名:

专业班级:

指导教师:

工作部门:

一、课程设计题目

火锅城电子点菜系统

二、课程设计内容(含技术指标)

火锅城电子点菜系统包括,点菜,配菜,结账,及日常账务管理和菜单管理,员工管理等模块,设计要求如下:

   1)进行需求分析,编写软件总体模块结构图;编写系统、模块功能说明,编写数据字典、数据流图。

   2)设计E-R图。

根据E-R图转换成关系模型。

   3)根据关系模型,设计数据库对象(表)。

   4)编码及测试。

三、进度安排

2012年6月5日,指导教师讲课,学生根据题目准备资料;

2012年6月5日,设计小组进行总体方案设计和任务分工;

2012年6月5日~2012年6月14日,每人完成自己承担的程序模块并通过独立编译;

2012年6月14日~2012年6月14日,将各模块集成为一个完整的系统,并录入足够的数据进行调试运行;

2012年6月14日~2012年6月14日验收、撰写报告;

2012年6月15日,答辩及总结。

四、基本要求

1、了解软件项目生命周期的各个阶段中的难点和常见问题,掌握解决问题的方法。

例如:

准备软件需求,审核软件项目,制定可行的软件开发计划、控制项目变更、软件质量保障、组织有效的测试等等。

2、可组成设计小组,小组成员分工协作完成。

要求每个成员有自己相对独立的模块,同时要了解其他组员完成的内容。

3、所设计的系统原则上要能够运行无误,结果准确。

目录

1引言1

1.1编写目的1

1.2背景1

1.3项目组组成1

1.3.1项目组成员名单:

1

1.3.2任务分工:

2

1.4开发及运行环境2

1.4.1开发环境2

1.4.2运行环境2

1.5参考资料2

2.程序(模块)系统的组织结构3

2.1系统模拟图3

2.2主要功能模块划分3

2.3模块说明4

2.4数据流图4

2..5整个系统的E--R图5

3.数据库规范、编码规范和用户界面规范5

3.1用户界面规范5

3.2数据库规范6

3.3编码规范9

3.3.1变量命名规范9

3.3.2数据变量类型10

3.3.3Script注释10

4.程序(模块)的需求及设计说明12

4.1结账子系统数据流图13

4.2结账子系统模块功能描述13

4.3结账子系统IPO图14

4.4结账子系统(CheckOut)模块设计说明14

4.41.数据字典14

4.42.流程逻辑16

4.43.结账子系统E-R图及关系模式16

4.44窗口(页面)对象说明17

5.程序(模块)的测试用例设计18

6.课程设计总结19

1引言

1.1编写目的

随着我国市场经济的快速发展,各行业都呈现出生机勃勃的发展景象。

在餐饮业竞争越来越激烈的今天,酒店如何提高服务质量、管理能力显得越来越重要。

如果单凭手工操作,不仅效率低下,而且会极大地影响到酒店的服务质量。

酒店餐饮点菜系统作为餐饮管理规划的一部分,集点菜、结帐、查询、统计、设置等各种功能为一体,对于提高餐饮管理效率、增加收入发挥不可替代的作用。

本系统用开发,利用此系统,使得前台服务不再和以前一样使用纸笔记录,只是轻点键盘就能完成,减少错误地发生,避免不必要的损失;顾客可方便查询自己的点菜信息,管理员也可以方便的实现管理,如查看营业额、查询操作员和菜的信息等。

所以把先进的技术运用到餐饮管理和服务中来促进餐厅各部门的协作,提高餐饮管理的效率,是系统开发的主要目的。

1.2背景

项软件名称:

火锅城电子点菜系统。

项目任务提出者:

火锅城。

开发者:

用户:

火锅城。

1.3项目组组成

1.3.1项目组成员名单:

组长:

组员:

1.3.2任务分工:

姓名

负责系统

人事管理子系统

配菜子系统

点菜子系统

结账子系统

事务管理子系统

1.4开发及运行环境

1.4.1开发环境

(1)开发工具:

VS2010SQLSEVER2008

(2)开发语言:

C#

1.4.2运行环境

环境名称

软件环境

硬件环境

服务器端

操作系统:

windows2008server

数据库:

SQLSERVER2008

IIS6.5

最低配置:

CPUP3.6,RAM4G

硬盘2T,100M网卡

客户端

IE6.0以及以上版本

能支持IE6.0以及以上版本的操作系统所需要的最低硬件配置

1.5参考资料

1.《项目管理制度》质量管理体系文件Iso9001:

2000《软件工程国家标准汇编》

2.《软件工程——原理,方法与应用(第二版)》史济民顾春华等编著高等教育出版社2004

3.《软件工程——理论,方法与实践》孙家广主编刘强编著高等教育出版社2006

 

2.程序(模块)系统的组织结构

2.1系统模拟图

2.2主要功能模块划分

2.3模块说明

项目内容:

此系统使用了三层架构实现了管理人员登陆模块,菜单管理模块,餐台管理模块,餐厅人员管理模块,点菜功能模块,消费结帐等功能模块。

餐厅人员管理模块:

管理人员能增删改查员工的基本信息。

并进行日常维护。

菜单管理模块:

管理人员可以添加菜品到系统中,并能进行日常维护(包括修改菜的价格等),系统可以对整个菜单分类管理,可区分锅底、配菜、主食、烟酒和饮料。

餐台管理模块:

餐厅管理人员能维护和管理整个餐厅的餐台信息,可以显示该餐台是否可用,可以扩大或减小餐厅规模,可以新添包房和删除包房,当点击餐台图片时,可显示该餐台的所有信息。

点菜功能模块:

顾客入座后,该餐台显示有人,并将开台按扭设为不可用,顾客消费过程中,将消费情况记录到系统中,并支持查询,当点击餐台图片时,可显示该餐台的消费情况。

当点击加菜按钮时跳到另一页进行加菜功能。

消费结帐模块:

系统可以自动对消费情况进行结算.可显示该消费者的所有消费情况,并能自动实现找零计算和打印消费单情况的功能。

2.4数据流图

2..5整个系统的E--R图

3.数据库规范、编码规范和用户界面规范

3.1用户界面规范

1.用户点菜界面要合理,一看就懂,操作要尽量简单,还要美观

2.界面大小全屏显示

3.界面文字字体宋体6号颜色黑色

4.页面上部的广告部分动态显示点才数量最多的菜品

界面示例如图:

3.2数据库规范

(1)数据库表命名规范

此规范包括表名命名规范,索引命名规范,外键命名规范和字段名命名规范。

表名命名规则

数据库表的命名以是名词的复数形式且都为小写,如cities,categories,friends等等

如果表名由几个单词组成,则单词间用下划线("_")分割,如subscribed_pois,poi_categories等

表名尽量用全名

表名限制在30个字符内。

当表的全名超过30字符时,可用缩写来减少表名的长度,如description-->desc;information-->info;address-->addr等

表字段名命名规则

字段名为小写

字段名为有意义的单词,或单词的缩写

如果字段由几个单词组成,则单词间用下划线("_")分割,如client_id,post_code等

字段名限制在30个字符内。

当字段名超过30字符时,可用缩写来减少字段名的长度,如description-->desc;information-->info;address-->addr等

(2)索引命名规则

索引须按照IDX_table__,其中

是建立索引的表名,是建立索引的字段名

索引名限制在30个字符内。

当索引名超过30字符时,可用缩写来减少索引名的长度,如description-->desc;information-->info;address-->addr等

主键、外键命名规则

主键按照PK_

的规则命名,其中
为数据库表名

唯一键按照UK_

_的规则命名,其中
为数据块表名,为字段名

外键按照FK___的规则命名,其中为父表名,为子表名,为序列号

(3)数据库规范化设计的一些基本要求:

一、表中应该避免可为空的列。

虽然表中允许空列,但是,空字段是一种比较特殊的数据类型。

数据库在处理的时候,需要进行特殊的处理。

如此的话,就会增加数据库处理记录的复杂性。

当表中有比较多的空字段时,在同等条件下,数据库处理的性能会降低许多。

解决方法:

一是通过设置默认值的形式,来避免空字段的产生。

二是若一张表中,允许为空的列比较多,接近表全部列数的三分之一。

而且,这些列在大部分情况下,都是可有可无的。

若数据库管理员遇到这种情况,建议另外建立一张副表,以保存这些列。

二、表不应该有重复的值或者列。

三、表中记录应该有一个唯一的标识符。

四、数据库对象要有统一的前缀名。

五、尽量只存储单一实体类型的数据。

六、尽量符合数据库的几个范式。

(4)设计规范

所有字段在设计时,除以下数据类型timestamp、image、datetime、smalldatetime、uniqueidentifier、binary、sql_variant、binary、varbinary外,必须有默认值。

字符型的默认值为一个空字符值串’’;数值型的默认值为数值0;逻辑型的默认值为数值0;

其中:

系统中所有逻辑型中数值0表示为“假”;数值1表示为“真”。

datetime、smalldatetime类型的字段没有默认值,必须为NULL。

当字段定义为字符串形时建议使用varchar而不用nvarchar。

字段的描述

数据库中每个字段的描述(Description)如下:

表内的每一个值只能被表达一次

表内的每一行都应当被唯一的标示

表内不应该存储依赖于其他键的非键信息

如果字段事实上是与其它表的关键字相关联而未设计为外键引用,需建索引。

如果字段与其它表的字段相关联,需建索引。

(5)SQL开发代码规范

我们规定sql语句编码的时候程序员需要遵循以下规范:

a所有的关键字的所有字母必须大写。

如果一个常量由几个词组成,我们规定两个词之间使用下划线(_)来划分。

表名、列名、视图名或它们的别名必须和它们的定义保持一致。

b注释必须要规范。

(6)其他设计技巧 

1)避免使用触发器  

触发器的功能通常可以用其他方式实现。

在调试程序时触发器可能成为干扰。

假如你确实需要采用触发器,你最好集中对它文档化。

2)使用常用英语(或者其他任何语言)而不要使用编码在创建下拉菜单、列表、报表时最好按照英语名排序。

假如需要编码,可以在编码旁附上用户知道的英语。

  

3)保存常用信息。

让一个表专门存放一般数据库信息非常有用。

在这个表里存放数据库当前版本、最近检查/修复、关联设计文档的名称、客户等信息。

这样可以实现一种简单机制跟踪数据库,当客户抱怨他们的数据库没有达到希望的要求而与你联系时,这样做对非客户机/服务器环境特别有用。

 

4)包含版本机制。

在数据库中引入版本控制机制来确定使用中的数据库的版本。

时间一长,用户的需求总是会改变的。

最终可能会要求修改数据库结构。

把版本信息直接存放到数据库中更为方便。

 

5)编制文档。

对所有的快捷方式、命名规范、限制和函数都要编制文档。

采用给表、列、触发器等加注释的数据库工具。

对开发、支持和跟踪修改非常有用。

对数据库文档化,或者在数据库自身的内部或者单独建立文档。

这样,当过了一年多时间后再回过头来做第2个版本,犯错的机会将大大减少。

6)测试、测试、反复测试。

建立或者修订数据库之后,必须用用户新输入的数据测试数据字段。

最重要的是,让用户进行测试并且同用户一道保证选择的数据类型满足商业要求。

测试需要在把新数据库投入实际服务之前完成。

 

7)检查设计。

在开发期间检查数据库设计的常用技术是通过其所支持的应用程序原型检查数据库。

换句话说,针对每一种最终表达数据的原型应用,保证你检查了数据模型并且查看如何取出数据。

3.3编码规范

3.3.1变量命名规范

序号

项目

前缀

备注

1

全局变量

G

Global

2

共享变量

S

Shared

3

实例变量

I

Instant

4

局部变量

L

Local

5

远端变量

R

Remote

3.3.2数据变量类型

序号

项目

前缀

备注

1

任意类型

A

Any

2

大数据

Blob

Blob

3

布尔型

B

Boolean

4

字符型

C

Char,Character

5

日期型

D

Date

6

时间型

T

Time

7

日期时间型

DT

DateTime

8

小数型

Dec

Dec,Decimal

9

双精度型

DB

Double

10

整型

I

Int,Integer

11

长整型

L

Long

12

实型

R

Real

13

字符串型

S

String

14

无符号整型

UI

Uint,UnsignedInt,UnsignedInteger

15

无符号长整型

UL

Ulong,UnsignedLong

3.3.3Script注释

a).注释符号

‘//’

不许使用’/**/’作注释符。

b).函数注释

每个函数都应描述该函数的名称、功能、作用范围、入口参数的类型和传值方式及参数含义、返回值类型及返回值的含义。

格式:

//

//Function:

函数名

//Purpose:

用途

//Scope:

作用范围

//Args:

入口参数(列表)类型传值方式含义

//Returns:

返回值类型(可确定值列表)含义

//

c).非函数注释

注明该模块的作用

格式:

//

//功能

//

d).程序行间注释

在程序行的每一个处理单元前作注释。

格式:

//注释

3.3.4格式规范

1.程序块采用缩进风格,空格为4个.

说明:

对于开发工具自动生成的代码可以不一致

2.分界符(如大括号{和})应各自占一行并且在同一列,同时与引用它们的语句左对齐,在方法的开始,类和接口的定义,以及if,for,do,while,switch,case语句都要采用上述缩进

说明:

for(…)

{

…//yourcode

}

3.较长(>80字符)的语句,表达式和参数要分多行,长表达式要在低优先级操作符划分新行,操作符放在行首,新行要适当缩进,整齐,语句可读.

说明:

if(filename!

=null

&&newFile(logPath+filename).length()

{

…//yourcode

}

4.一行只写一条语句

说明:

LogFilenamewow=null;

LogFilenamethat=null;

5.if,for,do,switch,while,case,default各占一行,它们的执行语句无论多少都要加{}

说明:

if(writeToFile)

{

writeFileThread.interrupt();

}

6.相对独立的程序块,变量,说明要加空行

说明:

if(log.getLevel()

{

return;

}

//空行

LogWritewriter;

7.对齐只用空格键,不用TAB键

4.程序(模块)的需求及设计说明

电子点菜系统的结账处理既快又方便,不需要人工计算及会计处理,系统会自动化地处理好。

其具体设计如下:

4.1结账子系统数据流图

4.2结账子系统模块功能描述

名称

结账

标识

H0003

子系统名称

HGCJ

接 口

说 明

输入

查询顾客点餐餐桌号信息

输出

餐桌消费账单,更新桌台号

功 能

说 明

查看顾客所点菜品及消费额并结账

调用关

系说明

调用模块

HGCJ

被调用模块

4.3结账子系统IPO图

数据产生周期:

每日

4.4结账子系统(CheckOut)模块设计说明

4.41.数据字典

外部项

系统名:

火锅城电子点菜系统编号:

条目名:

桌子别名:

输入数据流:

桌台号

输出数据流:

主要特性:

桌子:

即顾客就餐餐桌,主要特征有:

桌台号,座位数

简要说明:

根据桌台号可以查看顾客点菜信息

修改记录:

编写

日期

审核

日期

数据流

系统名:

火锅城电子点菜系统编号:

条目名:

账单别名:

来源:

桌子

去处:

点菜系统数据库

数据流结构:

账单:

{桌台号+菜名+点菜单价+点菜份数+消费金额}

简要说明:

保存顾客消费信息

修改记录:

编写

日期

审核

日期

数据存储

系统名:

火锅城电子点菜系统编号:

条目名:

账单别名:

存储组织:

顾客就餐消费的每一条记录

记录数:

约XXX

主关键字:

桌台号

记录组成:

项名

桌台号

菜名

点菜单价

点菜份数

消费金额

近似长度(字节)

10

20

20

20

100

简要说明:

由系统数据库后台自动生成

修改记录:

编写

日期

审核

日期

加工

系统名:

火锅城电子点菜系统编号:

条目名:

生成账单别名:

输入:

桌台号

输出:

账单

加工逻辑:

根据顾客就餐餐桌号从相应的数据库中调出顾客消费情况动态生成账单供收银员结账。

简要说明:

生成账单验证系统能自动后台执行

修改记录:

编写

日期

审核

日期

4.42.流程逻辑

输入查询信息

输入数据

数据库

输出信息

4.43.结账子系统E-R图及关系模式

1、结账子系统E-R图:

2、关系模式:

桌子(桌台号、座位数)

收银员(员工编号、员工姓名、员工性别、员工年龄)

4.44窗口(页面)对象说明

页面名:

Account.aspx

说明书编号:

001

页面对象控件列表:

对象类型

对象名

对象事件

对象功能描述

用户使用控制

TextBox

SearchText

输入查询顾客就餐桌台号

收银员

Button

Inquire

Inquire_Click

查询顾客消费详情

GridView

GridView1

显示顾客消费账单详情及消费金额并提供结账和更新桌台号功能

 

5.程序(模块)的测试用例设计

系统模块

功能点

用例编号

用例说明

前置条件

输入

预测结果

测试结果

失败原因

 

结账

收银员根据顾客就餐信息结账

 

1

 

查询桌台号

 

系统已登录后台管理

 

顾客就餐餐桌号

显示顾客点菜详细信息及消费金额

 

成功

 

2

 

打印顾客消费账单

已付款,系统给出顾客消费信息

付款

打印出顾客消费账单

 

成功

 

3

 

更新大厅桌台状态

已付款和打印出账单,系统已登录后台管理

 

付款

点餐板上显示桌台状态空闲

成功

6.课程设计总结

这次课程设计我们小组做的是火锅城电子点菜系统,该系统是用VS2010和SQLSEVER2008开发实现的,所使用的语言是C#。

点菜系统划分为点菜、配菜、结账、人事管理、事务管理几个模块,实现了顾客点菜,账单入库,账单查询等功能。

这次设计时我所负责的是结账模块,该模块主要功能是根据顾客就餐消费信息结账、打印账单。

再设计过程中我们这组遇到了很多问题,设计数据字典时概念模糊,画E-R图时对各个实体的属性考虑不全等,不过在余老师的耐心指导和组员的团结协作下我们小组终于把系统设计出来了,不过我们所设计的系统在功能上还是存在很多不足,如系统在设计模块功能上较单一,系统安全性不是很好,页面布局不是很美观等,这些都还有待改进。

次课程设计使我对软件工程和数据库有了更深的理解,提高了我的理论知识水平,让我懂得了细心的重要性;这次课程设计也让我感受到了团队分工合作、互帮互助的重要性,使我懂得了遇事要先自己独立思考,然后再利用各种资源,这样学习效果才会显著。

在这次课程设计中指导老师帮了我们很多,使我们受益匪浅,在此,我我衷心地感谢老师的悉心指导,在余老师的严格要求下,我们小组的课程设计才有了较为完善的一面,同时也使我学到了很多知识,使我的能力在锻炼的过程中有了提高。

展开阅读全文
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1