ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:199.61KB ,
资源ID:14929892      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-14929892.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(教职工食堂订餐系统的需求和总体设计前台子系统.docx)为本站会员(b****5)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

教职工食堂订餐系统的需求和总体设计前台子系统.docx

1、教职工食堂订餐系统的需求和总体设计前台子系统教职工食堂订餐系统需求和总体设计前台子系统1 系统需求分析1.1 系统总体业务流程 图1 教职工订餐系统客户端流程图从图1来看,前台子系统主要分为五大模块:查询今日菜单模块、留言板模块、购物车模块、注册登录模块、用户中心模块。图2 教职工订餐系统管理端流程图从图2来看,后台子系统主要分为七个模块:审查注册员工资格、菜单管理、今日菜单管理、推荐菜管理、信用度管理、订单打印和账单打印。1.2 系统功能需求这里只对订餐系统的前台子系统五个模块即查询今日菜单模块、留言板模块、购物车模块、注册登录模块、用户中心模块和后台子系统部分的审查注册员工资格模块进行分析

2、,其具体如下:1.2.1 查询今日菜单1) 任何用户登录网站即可以直接查询今日菜单,但是登录之后才能购买各种食物。2) 饮料订购快速窗口,直接查看饮料信息.3) 炒菜订购快速窗口,直接查看炒菜信息表1: 查询今日菜单模块功能表序号功能列表功能明细1查询今日菜单查看今日菜单全部,点击单个食物可以查看详细信息2饮料速订查看今日菜单后,可以只查看饮料信息3炒菜速订查看今日菜单后,可以只查看炒菜信息1.2.2 留言板1) 任何人登录网站都能查看,回复全部留言和签写新留言。2) 管理员登陆时可以删除留言。表2 留言板模块功能表序号功能列表功能明细1查阅留言可以查看所有留言内容,留言者,留言时间,点击GO

3、按钮可以查看指定页的留言2回复留言点击回复,填写回复内容即可回复该条留言3签写新留言输入昵称,邮箱,留言内容,点击提交即可留言4删除留言当管理员登陆时点击删除留言才能操作成功1.2.3 购物车模块1) 将选中的食物放入购物车。2) 浏览购物车。3) 取消购物车中的某一件食物。4) 继续购买。5) 清空购物车。6) 订餐。 表3 购物车模块功能表序号功能列表功能明细1将事物放入购物车在浏览今日菜单,饮料,炒菜或者查看单件事物的详细信息时,单击购买标识,就可以把事物加到购物车中2浏览购物车显示购买的食物名称,购买的食物数量,食物单位价格,每种食物的总价,所有食物总价3取消购物车中的食物从购物车中取

4、消某一种食物,单该事物数量大于一时,则减少该食物数量14继续购买继续往购物车里添加食物5清空购物车把购物车中的商品全部拿出6订餐正确的填写送餐时间和送餐地址后点提交订单即可订餐,晚上7点后不允许订餐,当天只能订当天的餐1.2.4 注册登录1) 新用户注册,填写正确的注册信息,等待管理员审查。2) 通过审查的用户登录。表4 注册登录模块功能表序号功能列表功能明细1用户注册用户填写正确的信息申请注册,待账号通过管理员的审核以后才能使用该注册账号进行登录2用户登录用户输入用户名和密码进行验证1.2.5 用户中心1) 用户信息修改。2) 用户密码修改。3) 订单管理。4) 用户注销。表5 用户中心模块

5、功能表序号功能列表功能明细1用户信息修改编辑并保存用户的注册信息2用户密码修改修改登录密码3订单管理查看当前拥有订单信息和状态,在送餐之前可以取消不想要的订单,距离订餐时间30分钟内取消订单则会扣除该用户信用度一分4用户注销用户注销1.2.6 管理员审查注册员工资格1) 查看待审查注册员工信息。2) 通过该员工注册。3) 放弃该注册员工。表6 管理员审查模块功能表序号功能列表功能明细1查看待审查注册员工信息查看待审查注册员工详细信息2通过注册员工通过电话或者邮件的方式确认注册员工的信息是否属实,信息正确则通过注册,该系统不对外开放3放弃注册员工放弃该注册人员1.3 系统其它需求1.3.1系统扩

6、展性要求 系统的运行将为以后的学生食堂在网上运行提供宝贵的经验,所以,对于系统功能的扩充要求比较高,系统后期的升级才能顺利方便,这就要求在建立系统的构架和设计系统时,一定要注意系统的可扩展性,而且现在很多项目开发是分期进行的。暂时准备的扩展有一些比较高级的功能,比如系统向用户提供收藏夹模块功能,用户可以把喜欢吃的食物收藏起来,下次购买时可以直接生成订单,还有网上充值和结账模块,使订餐的全程除了送餐外,全部实现在网上,达到真正的网络化。1.3.2时间特性要求1) 在用户执行添加删除食物,取消订单等操作的时候,在运行环境规定的条件下,单次操作的响应时间要求在3秒钟之内。2) 系统同时上线人数不超过

7、数据库承受能力时,相应速度不应超过3秒。1.3.3 错误处理要求1) 在用户输入一些不合理的数据的时候,能够进行合理的提示信息,并且正确处理跳转逻辑,不能因为输入错误而导致系统的错误,或者程序停止运行。2) 程序运行时,对服务器和网络通信故障能够识别并提示,当故障排除后,程序恢复正常运行。3) 数据库要求有备份机制,以防止数据在意外情况下丢失。1.3.4 安全需求 数据库安全:数据库级备份和恢复。数据库级用户进行角色和权限授权。使得在异常情况发生时,系统可以得以快速恢复,避免数据的丢失或将其影响降到最低限度。同样,要保证存储过程中数据不被非法访问和篡改。应用系统的安全:通过对用户的身份鉴别,并

8、实施相应的访问控制策略后,系统之分普通教职工用户和管理员,特殊操作如更改或删除数据库的操作必须受到严格的权限限制,以保证系统的正常运行。2 前台子系统的总体设计2.1 MVC设计方法介绍 图3 MVC组件类型的关系和功能8MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层。 视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。随着应用的复杂性和规模性,界面的处理也变得具有挑战性。

9、一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(Model)处理。比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。模型(Model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC最主要的核心。目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为

10、应用设计模型的框架。它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。对一个开发者来说,就可以专注于业务模型的设计。MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。抽象与具体不能隔得太远,也不能太近。MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。我们可以用对象编程来做比喻,MVC定义了一个顶级类,告诉它的子类你只能做这些,但没法限制你能做这些。这点对编程的开发人员非常重要。业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据 保存(持续化

11、)。比如将一张订单保存到数据库,从数据库获取订单。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。 控制(Controller)可以理解为从用户接收请求, 将模型与视图匹配在一起,共同完成用户的请求。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型。 图4 MVC的分工与协作模型、视图与

12、控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化-传播机制。模型、视图、控制器三者之间的关系和各自的主要功能,如图3所示。2.2 系统整体架构通过对系统的需求分析,确定了整个系统为一个WEB系统,采用的是MVC模式进行网站的开发,在这个系统中使用的Web Server是Tomcat 6.0,DBMS(数据库管理软件)是SQL Server 2000,并且使用Microsoft提供的JDBC驱动程序

13、。基于MVC模式的WEB项目的优点在上一节中已经介绍过了,在知道了Jsp、Servlet、Javabean分别在MVC模式中的角色和功能后,这里对网站的整体构架做一个详细描述,工作流程为:a) Web客户机向Web服务器发出请求;b) Web服务器把这一请求转送给控制器Servlet;c) Servlet对JavaBean进行必要的操作;d) 控制器把处理结果转发给JSP视图;e) JSP视图对模型进行格式化以备显示,并把HTML结果回送给Web服务器;f) Web服务器再把信息回送给Web客户机。 图5:系统构架图2.3 前台子系统功能模块设计前台子系统的功能模块图如下: 图6: 前台子系统

14、功能模块图1) 登录注册:教职工用户注册为系统用户,登录使用该系统;2) 查询今日菜单:任何用户都可以查询今日菜单,点击按钮则显示今日菜单;3) 购物车:用来临时保存登录用户所购买的物品,用户可以对购物车内的物品进行添加删除清空等操作,确认购买后,可以提交订单;4) 用户中心:用户登录后可以修改自己的注册信息,密码,查看自己的订单状态和信息,并且可以退出系统;5) 留言板:任何用户均可查看留言,并且允许签写新留言和回复留言,用于普通用户和其他用户交流、与管理员的交互和管理员用户进行答疑等,管理员用户可以删除任何留言。2.4 前台子系统总体页面设计1). 页面框架开发一个网站,好的界面风格和页面

15、框架是非常重要的,特别是对电子商务网站如本食堂订餐系统更需要有好的”门面” 。本系统采用的是比较传统的框架,如图7所示。 图7 页面框架可以看到,页面包含三个部分,最上面是菜单部分,下面的左边部分是一个固定页面,右边部分包好了根据不同的页面显示的内容,所有页面都直接套用该框架。2). 页面风格对于本系统来说,网站的美观是用户订餐的一种胃口的保证,是吸引顾客的重要因素之一,所以一般需要在页面里面制作专业的图片和动画,本系统中的头部和左边都有一个精美而且实用的FLASH动画,分别为top.swf和menu.swf,增加了页面的美感。同时在页面的整体风格上,定义了两个统一的式样单style.css和

16、web.css。2.5 数据库设计2.5.1 数据库概念结构设计前台子系统以及管理员审查模块的ER图如下:图8 前台子系统部分模块E-R图教职工实体的主要属性:教职工号,用户名,密码,性别,联系电话,办公室地址,单位,信用度。待审查教职工名单实体的主要属性:教职工号,用户名,密码,性别,联系电话,办公室地址,单位。管理员实体的属性:编号,用户名,密码,真实姓名,电话。菜谱实体的属性:食物编号,食物名,类型,描述,图片,价格,是否为今日菜。购物车实体的属性: 食物名,食物数量,总价格,订餐人,送餐时间,送餐地址。订单实体的属性: 订单号,食物名,单个食物价格,食物数量,订餐用户,送餐时间,送餐地

17、址。留言的属性:留言编号,IP,留言者邮箱,留言时间,留言内容,回复内容,回复时间,昵称。2.5.2 数据库逻辑结构设计以下仅对重要的表进行列举和分析。表7:教职工信息表 userInfo字段名称中文描述数据类型非空缺省值备注userId用户编号int (4)YPKuserName用户名varchar (20)YuserSex性别char (8)YuserPwd密码varchar (16)YuserTel电话char (11)YuserAd地址Varchar(50)YuserDepartment工作部门Varchar(50)Y为送餐地址的默认值Feedback信用度int (4)Y4信用度小于

18、1时注销账户说明:用户使用userName和userPwd进行登录, userTel将作为管理员与用户取得联系的重要方式,其他信息用于管理员进行身份审核时对照只用,信用度每个人初始为4,以后根据规则,信用度将会调整,当信用度小于1时,该用户将被取消订餐功能。 userDepartment 将为以后的送餐地址提供默认值。表8:菜单表 Menu字段名称中文描述数据类型非空缺省值备注menuId食物编号Int(4)YPKmenuName名称varchar (20)YmenuType类型varchar (20)menuDescribe描述varchar (50)YmenuPicture图片varcha

19、r (50)YmenuPrice价格varchar (50)Yistoday是否今日菜Int(4)Y00为非今日菜,1为今日菜说明: menuId作为一个菜的唯一标识, menuType只能是荤菜,素菜,凉菜,饮料,米饭,便于在今日菜单中进行菜品分类, menuPicture保存的是图片的路径, istoday作为一个标识,当管理员添加一个菜的时候,默认是没有在今日菜单上的,当管理员发布了之后,该属性值就为1。 表9:留言信息表 Messages字段名称中文描述数据类型非空缺省值备注id留言编号int (4)YPKipIP地址varchar (50)Yemail邮箱varchar (50)ti

20、me留言时间varchar (50)Ycontent留言内容varchar (50)Yrestores回复内容varchar (50)restore_time回复时间varchar (50)xm姓名varchar (50)说明: id为留言的唯一标识,ip记录了留言者的IP地址,time自动保存提交留言的时间, content为留言内容,而restores作为一个留言的属性,表示一条留言只能有一条回复,如果多次回复,回复内容将会覆盖,之保存最后一天回复内容,回复时间restore_time也是只保留最后一条回复的时间。表10:订单信息表 Orders字段名称中文描述数据类型非空缺省值备注Id菜

21、品标识int (4)YPKorderId 个人订单编号int (4)YgoodName 食物名varchar (50)YgoodPrice食物价格varchar (50)YgoodNum 食物数量int (4)Yusername订餐者varchar (50)YRoomAddress 送餐地址varchar (50)YorderTime 送餐时间varchar (50)Y说明: 该表的设计为一个重点。Id作为主键,标识订单上的某一个食物,以便控制以后扩展功能时对单个食物的控制。orderId作为一个用户特有的订单号,从1开始,即每个用户都可以有从1开始的订单号, userName表示订餐人,所以

22、一个订单由orderId和userName共同决定。在一个表中, userName相同并且orderId相同的菜属于同一张订单,一个人可以有多张订单。如图: 图9 orders表图用户liyanhui有orderId从2到6共5个订单,用户芳芳有2个订单,其中Id为10和11的两个菜都属于同一个订单 ordered=2。 2.6 开发运行平台选择与分析系统采用了面向对象的设计方法,所以在开发语言上,理所当然选择了JAVA,凭借JAVA的跨平台性,使订餐系统对操作系统的选择多样化。 Java Web应用程序需要在支持Servlet和JSP的Web容器中运行。现在,很多厂家都开发了支持Servle

23、t和JSP的Web容器。其中不乏一些优秀的、免费的、开放源代码的产品,比如Apache的Jakarta Tomcat,Jakarta Tomcat 是Apache Jakarta项目组开发的机遇GPL自由软件协议的JSP引擎,配合JDK就可以搭建一个最简单的JSP试验平台。Tomcat开发源代码,使用起来比较简单,Tomcat是Servlet和JSP1.1规范的官方参考实现。Tomcat既可单独作为小型Servlet、JSP测试服务器,也可以继承到Apache Web 服务器。考虑到本系统的实际需要和Tomcat的诸多优点和特性,我们使用Apache Tomcat作为Web服务器。开发环境:硬件:CPU:AMD Athlon(tm) 64 3000+内存:512M操作系统:Microsoft Windows XP Professional + SP2服务器:HP ProLiant ML370 G4 操作系统:Microsoft Windows 2000 Server + SP4Web服务器:Apache Tomcat 6.0开发工具:Eclipse V3.1, Dreamweaver V8.0数据库管理系统:SQLServer 2000

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2