基于web的网上订餐系统的设计与实现

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

摘要

当今社会,生活节奏越来越快,人们对餐饮的要求也越来越高,不仅要求色香味俱全,而且对就餐的时间和方式也有了更高的要求。许多顾客由于工作繁忙无法抽出时间来享受美味,这样就产生了人们对快捷订餐的需求。而随着互联网技术的快速发展,网络早已经成为现代人日常生活中不可或缺的部分,将餐饮业和计算机网络结合起来,网上订餐应运而生。

本文详细论述了基于WEB的订餐网站系统的开发设计过程。系统采用My Eclipse 作开发平台,Java为开发语言, SQL Server为数据库,实现了会员管理,菜品管理、订单管理、留言管理等功能。该系统符合基于WEB的订餐网站系统的要求,能够帮助切实提高工作效率。

本文的结构组织如下:首先阐述了该系统的可能性;其次介绍了相关的开发工具及技术基础;接着对系统的需求进行了分析,并提出了具体的设计方案和数据库模型;然后展现了整个系统和各功能模块的实现;最后阐明得出的结论。

关键字:JAVA 订餐 SQL SERVER

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

Abstract

In present society, the pace of life is becoming more and more quickly, and people's requirement of catering is also becoming higher and higher. The catering not merely needs to be delicious, nice and tasty, but also has the higher demand in time and way of ordering. As many customers are quite busy about work, they can't take the time to enjoy catering. So it is required to produce a fast way to order catering. And as the rapid development of Internet technology, the network has already being an indispensable part in people's daily life. And online order arises at this historic moment by combining catering and computer network.

My paper discusses the developing and design process in detail of the ordering website system based on WEB .The system uses My Eclipse as a development platform, Java as the development of language, the SQL server as the database, to achieve the member management, dishes management, order management and message management. The WEB-based ordering system meets the Web site system requirements and can help effectively to improve work efficiency.

The paper is organized as follows: First, the possibility to develop the system described; followed introduced the related development tools and technology infrastructure; then the system needs analysis, and proposed specific design and database model; and then shows the whole system concrete realization of the functional modules; final conclusion.

Key words: JA V A Ordering SQL server

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

目录

1.绪论 (1)

1.1 课题的研究背景 (1)

1.2 课题的研究意义 (1)

1.3 本文的组织工作 (1)

2.系统开发技术分析 (3)

2.1 编程语言:JAVA (3)

2.2 服务器软件:TOMCAT (4)

2.3 系统开发工具:MyEclipse (5)

2.4 动态网页技术:JSP (5)

2.5 数据库软件:SQL Server (6)

3.系统需求分析 (8)

3.1 系统运行环境 (8)

3.1.1 最低配置 (8)

3.1.2 建议配置 (8)

3.2 可行性分析 (9)

3.2.1 经济可行性分析 (9)

3.2.2 技术能力分析 (10)

3.2.3 运行可行性分析 (10)

3.2.4 法律可行性分析 (10)

3.3 业务流程分析 (10)

3.3.1 管理员业务流程 (10)

3.3.2 会员业务流程 (11)

3.4 数据流图 (12)

4.系统概要设计 (14)

4.1 系统的功能结构 (14)

4.1.1 系统总功能结构 (14)

4.1.2 菜品管理功能结构 (15)

4.1.3 订单管理功能结构 (15)

4.1.4 公告管理功能结构 (15)

4.2 E-R图 (16)

5.详细设计 (20)

5.1 数据表 (20)

5.1.1 管理员表 (20)

5.1.2 会员表 (20)

5.1.3 菜品类别表 (21)

5.1.4 公告表 (21)

5.1.5 菜品表 (21)

5.1.6 留言表 (22)

5.1.7 订单表 (22)

5.1.8 订单管理表 (22)

5.2 系统登录模块 (22)

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

5.2.1管理员登陆 (22)

5.2.2会员登陆 (23)

5.3 后台管理模块 (24)

5.3.1 系统属性管理模块 (24)

5.3.2 基本操作管理模块 (24)

5.3.3 会员管理模块 (25)

5.3.4 菜品类别管理模块 (26)

5.3.5 菜品管理模块 (27)

5.3.6 订单管理模块 (28)

5.3.7 留言管理模块 (28)

5.3.8 公告管理模块 (30)

5.4 订餐网站前台模块 (31)

5.4.1 网站主界面模块 (31)

5.4.2 用户登陆模块 (31)

5.4.3 菜品分类模块 (32)

5.4.4 我的订餐车模块 (32)

5.4.5 我的订单模块 (33)

5.4.6 留言模块 (33)

5.4.7 公告模块 (34)

6.网上订餐系统测试 (35)

6.1测试目标 (35)

6.2 测试方法 (35)

6.3 主模块测试 (36)

6.3.1登录/注册模块 (36)

6.3.2 订餐服务模块 (36)

6.3.3 订单处理模 (36)

6.3.4 菜单管理模块 (37)

6.4测试总结 (37)

总结 (38)

致谢 (39)

文献 (40)

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

1.绪论

随着互联网技术和信息技术的日益成熟,人类社会开始进入信息时代。信息时代的到来给社会生活的各个方面带来了巨大的变化,这些变化同样也影响到了管理。信息技术和信息系统几乎渗透到了每一个的管理活动中,对各个层次均产生了不可忽视的影响。

1.1 课题的研究背景

在电视等媒体出现以前,人们获取信息的主要方式是通过阅读书籍报刊等印刷媒体,有了电视以后人们获取信息的方式更多是通过看电视,因为电视能提供图像、声音等更丰富的信息,并能提供更快捷的服务。而现在人们能更有效的通过互联网来获取信息,是因为互联网能提供更加及时、大量的信息资源。互联网环境给我们带来的影响是广泛而深刻的,使信息资源的获取扩展到整个互连网络,所以可提供服务的信息资源极为丰富。

我们对基于于网络的电子商务开展状况进行了广泛的调研后得出结论,设计开发一个完善的网络订餐系统是一个极具光明前景的,可以加以实施的课题。

1.2 课题的研究意义

随着Internet的普及,越来越多的企业建立了自己的WWW网站,企业通过网站可以展示产品,发布最新动态信息,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。其中网上订餐系统是电子商务网站的一种,随着信息化时代的到来,人们对生活质量的追求不断提高。由于工作,学习的关系,人们常常无法按时吃饭。随着网络的普及,网上订餐业务在中国开始盛行,人们也通过网络订餐的方式获得自己需要的食物。这样既节省了时间,也可以为广大用户提供更多的口味。

传统餐饮企业的日常运作还是靠人工管理。从原材料入库到客人点单,再到结账基本上由人工完成记录。这样做不仅耗费人力资源而且容易导致记录丢失或重复等错误,造成管理水平低下。基于Web的订餐系统不仅能提高管理水平,还能给管理者提供一个企业运作的信息平台,同时帮助提升企业的形象及增强竞争力。使用餐饮管理系统能将餐饮企业业务管理和人员管理信息化,使企业从原材料进货到客人消费都由计算机管理并记录,可随时掌握餐厅客人点单,挂账等情况,并能尽可能的降低使用者的劳动强度,同时提高工作质量和效率。

1.3 本文的组织工作

第一章:概述课题的研究背景、研究意义及目的,确定论文的研究内容。

第二章:概述开发系统所用的主要技术。

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

第三章:介绍系统开发环境,分析系统的总体设计目的,确定系统的设计思想,提出系统的分层体系结构,介绍可行性分析,给出系统总体用例图。

第四章:分析系统的详细设计目标,分析系统设计方案,研究系统的数据库设计。

第五章:实现系统具体模块,设计实现功能主界面。

第六章:测试系统的各个功能。

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

2.系统开发技术分析

在摘要中已经提到,本系统使用的编程语言是Java,服务器软件为Tomcat,系统开发工具为MyEclipse,动态网页技术JSP,数据库软件SQL Server,下面分别给予简单介绍。

2.1 编程语言:JAVA

JAVA语言是SUN公司于1995年推出的一种面向对象的新一代程序。到现在JAVA 已经成为主流的开发语言之一,其应用领域带还在继续扩大。它最初被命名为Oak,目标设定在家用电器等小型系统的编程语言,来解决诸如电视机、电话、闹钟、烤面包机等家用电器的控制和通讯问题。由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。就在Oak几近失败之时,随着互联网的发展,Sun看到了Oak 在计算机网络上的广阔应用前景,于是改造了Oak,以“Java”的名称正式发布。

Java 编程语言的风格十分接近C、C++语言。Java是一个纯的面向对象的程序设计语言,它继承了 C++ 语言面向对象技术的核心,Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java SE 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。

Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(byte code),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。但在J2SE 1.4.2 发布后,Java 的执行速度有了大幅提升。

与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java 开发公司被要求所设计的 Java 软件必须相互兼容。“Java 语言靠群体的力量而非公司的力量”是 Sun 公司的口号之一,并获得了广大软件开发商的认同。JAVA有如下特点:

第一、面向对象,它是更加彻底的面向对象,面向对象的特点使设计集中于对象及其对象之间的联系。JAVA中提供了简单的类机制和动态接口模型,使对复杂系统的设计更加简单、清晰。

第二、平台无关性,用JAVA写的应用程序不用修改就可在不同的软硬件平台上运行。

第三、可靠性和安全性,由于JAVA主要用于网络应用程序开发,因此对安全性有较高的要求。如果没有安全保证,用户从网络下载程序执行就非常危险。JAVA通

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊过自己的安全机制防止了病毒程序的产生和下载程序对本地系统的威胁破坏。当JAVA字节码进入解释器时,首先必须经过字节码校验器的检查,然后JAVA解释器将决定程序中类的内存布局,随后,类装载器负责把来自网络的类装载到单独的内存区域,避免应用程序之间相互干扰破坏。最后,客户端用户还可以限制从网络装载的类只能访问某些文件系统。上述几种机制结合起来,使得JAVA成为安全的编程语言。

JAVA还有分布性、多线程、高效性和动态性等优点。

2.2 服务器软件:TOMCAT

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成,是目前被广泛使用的JSP/Servlet服务器。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。目前最新版本是7.0。本系统用到的版本是6.0.21。

Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。

Tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以在运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat 和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。

下面我们来看一下Tomcat的工作原理。不过在介绍Tomcat工作之前,必须先来了解一下servlet容器。

Servlet容器是一种运行在支持Java语言的服务器上的组件,它与普通Java类的区别就是它运行在服务器上。由于Java的平台无关性,再加之Servlet运行在服务器端,因此Servlet对于用户是完全透明的。Servlet容器的作用是负责处理客户请求。

当客户请求来到时,Servlet容器获取请求,然后调用某个Servlet,并把Servlet 的执行结果返回给客户。Tomcat就是起这样作用的容器。当客户请示某个资源时,Servlet容器使用ServletRequest对象把客户的请求信息封装起来,然后调用Java Servlet API中定义的一些Servlet方法,完成Servlet的执行,接着把Servlet执行的要返回给客户的结果封装到ServletResponse对象中,最后Servlet容器把客户的请求发给客户,完成为客户的一次服务过程。

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊2.3 系统开发工具:MyEclipse

MyEclipse,企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。MyEclipse是一个优秀的开发环境,它提供的核心框架和可延伸的外挂程式机制给广大的程序设计师提供了无限的想象和创造空间。目前网上流传相当丰富且全面的开发工具方面的外挂程式,但是My Eclipse已经超越了开发环境的概念,可以想象My Eclipse将成为未来的整合的桌面环境。目前的MyEclipse本身就具有资源管理和外部程式的功能,加上无所不能的外挂程式,将构成一个丰富多彩的工作环境而不仅仅是一个IDE。

在结构上,MyEclipse的特征可以被分为J2EE模型、WEB开发工具、EJB开发工具、应用程序服务器的连接器、J2EE项目部署服务、数据库服务和MyEclipse整合帮助七类。对于每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。

简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。MyEclipse6.0以后版本安装时不需安装Eclipse。

2.4 动态网页技术:JSP

JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和 scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP 文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。

JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。

JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。

自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。

JSP可用一种简单易懂的等式表示为:HTML+Java=JSP。

JSP技术的优点:

①一次编写,到处运行。除了系统之外,代码不用做任何更改。

②系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/.net的局限性是显而易见的。

③强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。

④多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。

⑤支持服务器端组件。web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。JSP可以使用成熟的JAVA BEANS 组件来实现复杂商务功能。

2.5 数据库软件:SQL Server

SQL Server 是一个关系数据库管理系统,它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了。Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本;Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。SQL Server 版本很多,本系统使用的是SQL Server2000。

SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的最新版本。该版本继承了SQL Server 7.0 版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。

SQL Server 2000 有很多特性,包括:

(1)Internet 集成。SQL Server 2000 数据库引擎提供完整的XML 支持。它还具有构成最大的Web 站点的数据存储组件所需的可伸缩性、可用性和安全功能。SQL Server 2000 程序设计模型与 Windows DNA 构架集成,用以开发 Web 应用程序,并且SQL Server 2000 支持 English Query 和 Microsoft 搜索服务等功能,在Web 应用程序中包含了用户友好的查询和强大的搜索功能。(2)可伸缩性和可用性。同一个

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊数据库引擎可以在不同的平台上使用,从运行 Microsoft Windows 98 的便携式电脑,到运行 Microsoft Windows 2000 数据中心版的大型多处理器服务器。SQL Server 2000 企业版支持联合服务器、索引视图和大型内存支持等功能,使其得以升级到最大 Web 站点所需的性能级别。

(3).企业级数据库功能。SQL Server 2000 关系数据库引擎支持当今苛刻的数据处理环境所需的功能。数据库引擎充分保护数据完整性,同时将管理上千个并发修改数据库的用户的开销减到最小。SQL Server 2000 分布式查询使您得以引用来自不同数据源的数据,就好象这些数据是 SQL Server 2000 数据库的一部分,同时分布式事务支持充分保护任何分布式数据更新的完整性。复制同样使您得以维护多个数据复本,同时确保单独的数据复本保持同步。可将一组数据复制到多个移动的脱接用户,使这些用户自主地工作,然后将他们所做的修改合并回发布服务器。

(4).易于安装、部署和使用。 SQL Server 2000 中包括一系列管理和开发工具,这些工具可改进在多个站点上安装、部署、管理和使用 SQL Server 的过程。SQL Server 2000 还支持基于标准的、与 Windows DNA 集成的程序设计模型,使 SQL Server 数据库和数据仓库的使用成为生成强大的可伸缩系统的无缝部分。这些功能使您得以快速交付 SQL Server 应用程序,使客户只需最少的安装和管理开销即可实现这些应用程序。

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

3.系统需求分析

3.1 系统运行环境

3.1.1 最低配置

服务器端:

1)硬件需求:处理器——Intel Pentium III

内存——128M

硬盘——40G

2)软件需求:Windows 98

Microsoft Internet Explorer 4.01

JAVA

SQL SERVER数据库

客户端:

1)硬件需求:处理器——Intel奔腾133或相当的处理器

内存——64M

硬盘——10G

2)软件需求: Windows 98

Microsoft Internet Explorer 4.01

3.1.2 建议配置

服务器端:

1)硬件需求:处理器——Intel Pentium IV 2.8G

内存——256M

硬盘——80G

2)软件需求:Microsoft Windows 2000/XP

Microsoft Internet Explorer 6.0

JAVA

SQL SERVER 数据库

客户端:

1)硬件需求:处理器——Intel Pentium IV 1.8或相当的处理

内存——128M

硬盘——20G

2)软件需求:Windows 2000/XP

Microsoft Internet Explorer 6.0

JAVA

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊3.2 可行性分析

在实施一个项目之前,首先要对将要实施的项目进行可行性分析,确定项目是否值得进行。并不是所有的问题都有简单明显的解决办法,事实上,许多问题不可能在预定的系统规模之内解决。如果问题没有可行解的话,那么花费在这项工程上的任何时间、资源、人力和经费都是浪费的。

随着经济的快速发展,B2C电子商务越来越受到人们的关注。订餐类网站,已如雨后春笋般的出现在了个大城市。特别是在公司,企业内部,团体订餐已经成为趋势。同时,随着全国人民的物质、精神和文化生活的高度提高,人们已经不再仅仅停留在吃饱的程度,而是不但要吃饱,还要吃好,并且越来越挑刺,正因为如此网上订餐业务的出现,正迎合了这些人的口味,他们不但省去了自己做饭的麻烦,而且也能寻找和发现新的菜种,品尝不同风格和不同种类的菜品,网上订餐业务在中国有着极大的发展空间和良好的发展前景。当代大学生与白领工作人士作为社会中的重要群体,他们对饮食的要求都在不断提高,饮食在他们生活中起着重要作用。因此,面向大学生与都市白领人士的网上订餐系统的设计有着良好的现实意义。

下面分别从技术可行性、经济可行性、操作可行性等方面进行分析和研究。

3.2.1 经济可行性分析

新系统的经济可行性分析的含义是,估计新系统开发和运行所

需的费用,以及新系统的效益,将投资和效益进行比较,说明在经济上是合算的。

本系统投资低,只需配置一台稍好的电脑及相关的应用软件,此外本系统能够提高数据处理的及时性和准确性;降低了管理人员的劳动强度,提高了劳动效率;使用信息更加方便,从而使决策更及时、准确;取得了其他经济和社会效益。

本环节通过分析新系统的成本效益,其中包括估计项目开发的成本,开发费用和今后的运行、维护费用以及新系统将获得的效益,估算开发成本是否高于项目预期的全部经费。下面具体列出了成本和效益的分析:

(1)支出

现在电脑的应用已经得到了普及是基础的信息化设施,目前使用计算机进行软件开发,网络环境和基础设施能满足本系统的实施要求,所以无须另外的资金投入。

其它一次性支出:

由于本系统的开发是作为课程实践来进行的,无须资金投入,而且本系统所用到的软件成本投入也不高。因此软件设计和开发费可以承受。

经常性支出:

系统运行后的日常维护费用少。仅需简单的管理中心,该中心的工作人员可以负责本系统的维护工作。

(2)效益

本系统的效益可以从经济效益和社会效益两方面考虑。其社会效益包括系统投入

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊运行后可以使管理实现科学化、规范化,增强用户对知识信息的管理能力,从而提高工作效率,从长远来看,也是信息化的必经之路。

由此可见系统的建设还是非常有发展前景的。

3.2.2 技术能力分析

根据本系统的功能需求,采用JAVA与开源的SQL server数据库引擎进行开发。JAVA是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到Java的web应用中。Java同时也是语言独立化(language-independent)的,所以,可以选择一种最适合自己的语言来编写程序,或者用很多种语言来编写程序,现在已经支持的有C#(C++和Java的结合体),JAVA,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向JAVA。因此在技术层面上,是完全可行的。

3.2.3 运行可行性分析

本系统的客户端采用的是图形界面方式,由于业务人员日常所使用的操作系统都是Windows系统,所以经过简单的培训就可以胜任新系统的操作工作。新系统的目标就是帮助用户实现资料的管理,并且新系统的运行不会对组织机构和管理方式产生大的影响,所以不会受到任何阻碍。

系统的设计上需要注重安全性和用户操作的流畅性。因此要在对用户的管理和资格审核环节做出限定,只有经过审核确认的用户才有权使用,而且需要对管理员进行不同的权限分配。

3.2.4 法律可行性分析

法律可行性主要是指待开发的软件是否存在知识产权等与法律有关的问题,如有这类问题,该软件即使开发成功,也难以成为产品销售。开发该系统的所有软件都使用正版,且属于自主设计,无剽窃他人设计行为。

因此,开发本系统在法律上是可行的。

3.3 业务流程分析

该系统应该主要的用户有两大类,一是卖家,在使用系统时为管理员身份;而是买家,在使用时是会员身份。下面分别就这两类用户介绍具体的业务流程。

3.3.1 管理员业务流程图

①输入网址,进入网站主页面。

②进入管理员登录页面,输入用户名和密码并登录。

③登录成功后即可对网站内储存的各种信息,包括管理员信箱,已注册的用户信息,菜品类别,菜品信息,已提交的订单信息,公告信息,以及用户发表的留言信息

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊进行相应的适当操作,以维护网站的正常运行。

④注销登录,退出网站。

具体可见图3-1.

图3-1 管理员业务流程图

3.3.2 会员业务流程

①输入网址,进入网站主页面。

②若是已经注册用户,可以直接登录。若不是,则先注册,再登录。

③登录成功后即可以使用网站的相关功能,包括下订单和留言等。具体流程如图3-2所示。

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

图3-2 会员业务流程图

3.4 数据流图

数据流程图是结构化系统分析的工具。它既可以表达数据在系统内部的逻辑流向及存储,又可以表达系统的逻辑功能和数据的逻辑变换。数据流程图既能表达现行人工系统的数据流程和逻辑处理功能,也能表达自动化系统的数据流程和逻辑处理功能。数据流图是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

数据流图英文缩写DFD(Data Flow Diagram)它是描绘信息流和数据从输入移动到输出的过程中所经受的变换。

数据流图从数据传递和加工的角度,以图形的方式刻画数据流从输入到输出的移动变换过程。

数据流程图包括:

①指明数据存在的数据符号,这些数据符号也可指明该数据所使用的媒体;

②指明对数据执行的处理的处理符号,这些符号也可指明该处理所用到的机器功能;

③指明几个处理和(或)数据媒体之间的数据流的流线符号;

④便于读、写数据流程图的特殊符号。

在处理符号的前后都应是数据符号。数据流程图以数据符号开始和结束。数据流图有两种典型结构,一是变换型结构,它所描述的工作可表示为输入、主处理和输出,呈线性状态。另一种是事务型结构,这种数据流图呈束状,即一束数据流平行流入或流出,可能同时有几个事务要求处理。

下图为本系统主要的数据流图:

图3-3系统主要数据流图

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

4.系统概要设计

4.1 系统的功能结构

4.1.1 系统总功能结构

本系统分前台和后台两个模块。前台包括用户登陆、我的信息查询、我的订餐车查询、留言板功能、进入后台入口、菜品分类、菜品查询、公告等功能。后台主要对前台的功能进行管理,包括系统属性、基本操作管理、会员管理、菜品类别管理、菜品管理、订单管理、留言管理和公告管理。总功能结构图如下:

图4-1系统总功能结构图

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊4.1.2 菜品管理功能结构

菜品管理主要包括三项:菜品添加管理、删除管理和查询管理。针对菜品管理的功能细化图如下:

图4-2菜品管理结构图

4.1.3 订单管理功能结构

订单操作主要包括对订单的明细管理、

受理管理和删除管理。针对订单的功能细化图如下:

图4-3订单管理结构图

4.1.4 公告管理功能结构

公告管理主要包括公告的发布,查询和删除。针对公告的功能细化图如下:

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊

图4-4公告管理结构图

本系统中其他细化的功能结构图大致类似,不再赘附。

4.2 E-R图

E-R图也即实体-联系图(Entity Relationship Diagram),提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。

构成E-R图的基本要素是实体型、属性和联系,其表示方法为:

·实体型(Entity):具有相同属性的实体具有相同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名;比如学生张三丰、学生李寻欢都是实体。如果是弱实体的话,在矩形外面再套实线矩形。

·属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。如果是多值属性的话,再椭圆形外面再套实线椭圆。如果是派生属性则用虚线椭圆表示。

·联系(Relationship):联系也称关系,信息世界中反映实体内部或实体之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。在E-R图中用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1 : 1,1 : n 或m : n)。

本系统中主要涉及的实体有后台管理员、用户、订单、留言、菜品类别、菜品信息和公告。各个实体之间的联系可以见下图。

相关文档
最新文档