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

山西煤炭管理干部学院

毕业论文

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

姓 名:赵霞

专 业:计算机信息管理

班 级:08信管

指导教师:邓越萍

日 期:2011.06.07

山西煤炭管理干部学院

毕业论文评阅意见

论文题目:_____________________

____________________

评阅意见:____________________

____________________

____________________

____________________

____________________

____________________

____________________

____________________

答辩成绩:____________________

指导教师:_____ 职称:____ 日期:____

摘 要

越来越多的人接受了电子商务这种便捷、快速的交易形式,网上订餐的推出也很快受到了大家的欢迎。首先,简要地介绍了国内网络技术和信息产业的发展情况以及研究课题的现状,阐述了网上订餐系统的解决方案以及实施的重要意义。然后是建设网上订餐系统,具体分析如何实现系统功能,规划系统流程,设计系统数据库的逻辑结构,介绍在开发系统过程中所使用的重要开发语言、开发工具、配套插件以及开发平台。最后设计和实现了一个B/S结构的网上订餐系统,着重论述了系统的功能与实现、数据流程及存储。包括会员管理、菜品信息介绍、网上订餐、用户留言、系统用户管理以及后台数据库管理等,使用图文并茂(功能代码及截图)的方式,对整个网上订餐系统功能模块的实现方法进行阐述和分析。

关键词:数据库;网上订餐系统;ASP

目 录

1 引 言 . ..............................................................................................................................................................3

1.1

1.2

2 网上订餐的市场趋势 . ..........................................................................................................................3 网上订餐的市场优势 . ..........................................................................................................................3 系统开发技术介绍.........................................................................................................................................5

2.1 系统开发语言 . .............................................................................................................................................5

2.1.1开发语言---ASP . ................................................................................................................................5

2.1.2开发语言---HTML ...............................................................................................................................6

2.1.3开发语言---VBScript . .....................................................................................................................6

2.1.4开发语言---JavaScript .................................................................................................................7

2.2系统开发工具及插件 .................................................................................................................................7

2.2.1开发工具---Access ..........................................................................................................................7

2.2.2开发工具---Dream weaver MX ......................................................................................................8

2.2.3开发工具---IIS . ................................................................................................................................8

2.2.4开发插件---LyfUpload ....................................................................................................................9

3 需求分析 ...........................................................................................................................................................10

3.1 系统分析 . ...................................................................................................................................................10

3.2 设计目标 . .....................................................................................................................................................10

3.3 可行性分析 .................................................................................................................................................10

3.4 设计的总体规则.........................................................................................................................................12

3.5 功能设计 . .....................................................................................................................................................12

3.5.1 管理员对功能的需求 . ....................................................................................................................12

3.5.2 客户对功能的需求 .........................................................................................................................14

3.5.3 性能需求 ...........................................................................................................................................14

3.6数据库 E-R 图............................................................................................................................................15

4 总体设计 ...........................................................................................................................................................16

4.1网站功能概述.............................................................................................................................................16

4.2 系统功能模块划分 .................................................................................................................................16

4.3系统功能模块分析.....................................................................................................................................16

5 数据库设计.......................................................................................................................................................19

5.1 数据库需求分析.......................................................................................................................................19

5.2 数据库逻辑结构设计 . .............................................................................................................................20

6.1前台功能模块分析....................................................................................................................................24

6.1.1数据库连接 . .......................................................................................................................................24

6.1.2菜品图片浏览......................................................................................................................................26

6.1.3订单填写...............................................................................................................................................27

6.1.4在线留言...............................................................................................................................................29

6.2后台功能模块分析.....................................................................................................................................32

6.2.1添加菜单...............................................................................................................................................32

6.2..2菜单管理 .............................................................................................................................................35

6.2.3查看回复留言 ...................................................................................................................................36

7 软件测试 ...........................................................................................................................................................38

7.1软件测试的目的和意义 . ...........................................................................................................................38

7.2软件测试的步骤 .........................................................................................................................................38

7.3软件测试的具体实现 ................................................................................................................................39

7.4软件测试结论..............................................................................................................................................41

7.5评价 ...............................................................................................................................................................41

结 论 . .................................................................................................................................................................42

参考文献 . .................................................................................................................................................................43

致 谢..................................................................................................................................................................44

1

引 言

高新科技和计算机的飞速发展,给人们带来了更多的便利.电脑普及时代即将到来, 网络技术也在逐渐完善, 人们的生活已经开始发生重要的变革,效率已经成为各个企业生存的首要条件,更好更快的使用和了解相关的信息,以及处理更多更繁琐的事物便是我们设计网上购物系统的初衷。

由于互联网发展已深入家庭,网上订餐这个课题已经提出,为了方便人们生活,提高人们的生活效率,本系统根据现实订餐的方式虚拟于网络之上,使人们通过网络就可以完成生活中必要的事情(饮食)。系统的完成不仅可以基本实现客户订餐的功能,还能在此基础上提供更多的,更贴心的服务。信息技术的发展将更快的推动互联网的发展,订餐系统的重要性也将越显其强大的作用。

1.1 网上订餐的市场趋势

随着越来越多的人接受了电子商务这种便捷、快速的交易形式,网上订餐的顺势而出很快受到了大家的欢迎。

互联网的应用以普及千家万户, 这为网络订餐提供了良好的发展空间。同时,网上订餐服务的直观、有效、便捷等优点是传统的电话订餐业务无法比拟的。调查数据显示,北京白领更乐于选择网上订餐服务, 网上订餐将是白领一族捕获餐店信息、进行订餐的发展趋势。

网络订餐随着互联网的成长会逐渐被人们所喜爱,正如几年前手机移动的短信一样,为企业带来的几百个亿的业务收入。在互联网世界里面,谁早一步在应用上创新,谁就掌握了未来的方向,品牌更是一炮打红,网络订餐,看到希望的是希望,看到泡沫的是泡沫。

1.2 网上订餐的市场优势

网络订餐可充通过色彩、图片、说明、设置动画加强了产品了宣传,大大达到了餐饮业的“色型”要求。实现产品管理方便,起到立竿见影的效果,不用因为更改菜色而重新印刷。只要在后台鼠标轻轻一点,全线马上更新。采用

B/S模式,订餐者无须安装第三方软件,能上网就能订餐,甚至可以利用手机上网订餐,使操作更加简便,订餐信息更加准确。避免口头传递信息的错误,优化服务。网络不会跟电话一样占线,在高峰期对订餐的处理更是游刃有余,只看着屏幕点打印即可,就可下厨房配菜配送。地址永远不会丢失,是一个永远存在的电子菜单,甚至还可以通过我们的推广而让更多的客人认识,不用派人派宣传单,省去一笔宣传和人工费用。订餐途径有了更好的改善,网络订餐成为电话订餐又一有力补充,扩大客流,从而整体提高业务量。倡导了一种时尚,餐店的定位更是网络化,时尚化,具备更为勃勃的生机。缓解了食堂的拥挤的困境,为食堂提供更为轻松的环境。有时间的提前性,方便统筹安排,集中处理。采用会员制度,设立积分换赠送,营销手段更是利用得淋漓尽致。可以设立团体会员制,利用赠品或优惠,扩大市场份额。利用网页技术,展示本公司的精品,增强吸引力。详细介绍每一个产品,展现公司周到、细微的服务。容易形成品牌和连锁经营,即使没有合适的店面,主要配送队伍健全,一个店面,就可以做全市生意。订餐者省电话费,实现双盈。提供了交流的平台,实现消费者可贵信息的反馈和交流。方便统计和查询,分析经营来得更直接。企业创新,跟得上市场的需要。

2 系统开发技术介绍

2.1 系统开发语言

2.1.1开发语言---ASP

Active Server Pages(ASP ,活动服务器页面)就是一个编程环境,在其中,可以混合使用HTML 、脚本语言以及组件来创建服务器端功能强大的

Internet 应用程序。如果你以前创建过一个站点,其中混合了HTML 、脚本语言以及组件,你就可以在其中加入ASP 程序代码。通过在HTML 页面中加入脚本命令,你可以创建一个HTML 用户界面,并且,还可以通过使用组件包含一些商业逻辑规则。组件可以被脚本程序调用,也可以由其他的组件调用。目前,Internet 上的许多基于Windows 平台的Web 站点已开始应用ASP 来替换CGI 。

ASP 是基于WEB 的一种编程技术,可以说是CGI 的一种。它可以完成以往CGI 程序的所有功能,如计数器、留言簿、公告板、聊天室等等.ASP 可以轻松地实现对页面内容的动态控制,根据不同的浏览者,显示不同的页面内容。而浏览者一点觉察不出来,就像为他专门制作的页面一样。使用各种各样的组件,ASP 可以完成无比强大的功能。使用FileSystemObject ,可以对服务器上的文件进行操作,浏览、复制、移动、删除等等。有ADO (Active Database Object ,动态数据库对象)的支持,ASP 对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。使用CDONTS (Collaboration Data Objects for NTS,NTS 协作数据对象),可以发送、查看邮件,实现WEBMAIL 的功能。结合WSH (Windows Scripting Host ),可以实现对NT 主机的管理,如NT 用户管理、IIS 虚拟主机设置、EXCHANGE 邮箱设置等等,就像管理本地机一样方便。

ASP 工作流程图如下:

图2-1 ASP工作流程图

2.1.2开发语言---HTML

HTML (Hyper Text Markup Language超文本标记语言)是一种用来制作超文本文档的简单标记语言。与常见的字处理文件不同,Web 页以超文本标识语言编排格式。它能独立于各种操作系统平台(如UNIX ,WINDOWS 等)。

HTML 语言作为一种标识性的语言,是由一些特定符号和语法组成的,所以理解和掌握都是十分容易的。可以说,HTML 语言在所有的计算机编程语言中是最简单易学的。 组成HTML 的文档都是ASCII 档,所以创建HTML 文件十分简单,只需一个普通的字符编辑器即可。如 Windows中的记事本、写字板都可以使用。也可以采用专用的 HTML 编辑工具:如 CoffeeHTML、 Homesite、 HTMLedit Pro 等工具,它们的特点是能够自动检查HTML 文档中的语法错误并协助改正。由于有了图形化的HTML 开发工具,使得学习HTML 更加容易,可以先用它制作好网页,再在它附带的HTML 代码编辑器在删去那些无用的代码,利用它的所见即所得特性,从而很快就能熟练地掌握HTML 。

2.1.3开发语言---VBScript

VBScript 程序语言是Microsoft 公司将VB 程序语言加以简化,使其较易学习,且完全以配合网页设计发展重点,除去了有安全性顾虑的指令,诸如读写删除文件或执行系统调用程序等,使设计者可安心地在Internet 上传送。此

外,又加上适合其他操作平台的可移植性,并大大提升了执行效率,使得VBScript 广受网页设计者的欢迎。

VBScript 脚本语言脚本是应用程序在网页上表达的语言, 可以将脚本嵌入Web 页中。通常脚本在服务器上运行, 但也可以采用客户端和服务器端结合使用VBScript 是ASP 的默认脚本语言。

2.1.4开发语言---JavaScript

JavaScript 是1995年由美国Netscape 公司为Navigator2.0浏览器的应用而发明的。它是写在HTML 文件中的一种基于对象和事件驱动并具有安全性能的脚本语言,当用户在客户端的浏览器中显示该网页时,浏览器就会执行JavaScript 程序,让用户通过交互式的操作变换网页的显示内容,以实现HTML 语言所不能实现的一些功能。

JavaScript 是一种解释性的,用于客户端的,基于对象的一种程序开发语言。在系统的设计过程中可以通过它实现一些客户端的功能,以减轻服务器运行任务的压力,从而达到高效率的目的

2.2系统开发工具及插件

2.2.1开发工具---Access

Access 数据库管理系统是Microsoft Office 套件的重要组成部分,适用于小型商务活动,用以存贮和管理商务活动所需要的数据。Access 不仅是一个数据库,而且它具有强大的数据管理功能,它可以方 便地利用各种数据源,生成窗体(表单),查询,报表和应用程序等。数据库是有结构的数据集合, 它与一般的数据文件不同,(其中的数据是无结构的) 是一串文字或数字流。数据库中的数据可以是文字、图像、声音等。

Access 数据库由六种对象组成,它们是表、查询、窗体、报表、宏和模块。 表(Table) 表是数据库的基本对象,是创建其他5种对象的基础。表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。

查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。

窗体(Form) 窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联的表的内容。窗体也称表单。

报表(Report) 报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。

宏(Macro) 宏相当于DOS 中的批处理,用来自动执行一系列操作。Access 列出了一些常用的操作供用户选择,使用起来十分方便。

模块(Module) 模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据自己的需要编写程序。模块使用Visual Basic编程

2.2.2开发工具---Dream weaver MX

Macromedia 公司的Dream weaver自问世以来备受网页设计专业人士的青睐,被誉为“网页三剑客之一”。经过多年的改进,Macromedia 公司又推出了新版本:MX 系列的Dream weaver。Dream weaver MX主要负责网页版式设计,网页编辑制作。新版本中,它将Dream weaver UltraDev 的所有功能整合近来。

2.2.3开发工具---IIS

IIS 是微软公司主推的Web 服务器产品,最新版本的是Windows 2003里所包含的IIS6.0。IIS 支持HTTP ,FTP 以及SMTP 协议。IIS 支持与语言无关的脚本编写和组件,完全支持VBScript ,JavaScript 脚本开发语言以及Java 语言,也支持CGI 和WinCGI ,ISAPI 扩展等。其响应性能很高,同时系统资源消耗相对比较少,IIS 安装,管理和配置都比较简单。在IIS 提供的服务器端脚本执行环境中,设计人员可以建立和运行动态的,交互的,高效的Web 应用程序。

2.2.4开发插件---LyfUpload

LyfUpload 是个免费的ASP 组件,遵从 RFC-1867 HTTP 请求,它可以在ASP 页面中接收客户端浏览器使用encType="multipart/form-data"的Form 上载的文件。

本版本支持单文件上载、多文件上载、限制文件大小上载、限制某一类型文件上载、文件上载到数据库、数据库中读取文件及文件上载重命名等功能。功能:(1)支持单文件上传 (1.2版支持上载文件覆盖判断功能) ;(2)支持上传多个文件;(3)可以将上传的文件改名保存(1.2版支持变量保存功能) ;(4)可以同时使用其它的form 元素的信息;(5)支持限制文件上传的大小;(6)支持限制文件上传的类型 (1.1版修改,支持多文件类型)(1.2版修正) ;(7)可以得到上传文件的大小 (1.1版新增功能) ;(8)支持将文件内容保存进数据库,如上载图形文件、DOC 文件等各类Windows 文件(1.1版新增功能) ;(9)支持从数据库中读取上载文件到数据库中的记录, 如显示图形文件、DOC 文件等各类

Windows 文件 (1.1版新增功能) ;(10)可以得到上传文件的MIME 类型,如gif 文件为images/gif(1.2版修正) 。

系统采用上传组件的主要目的就是为了实现在后台对商品图片的上传保

存,以实现在前台用户在购买商品对商品有更深的了解。

3 需求分析

3.1 系统分析

系统分析是平台开发的一个不可缺少的环节,为了能够使本系统更好、更完善地被设计出来,就必须先进行调查研究。在系统调查的基础上,对新系统的功能进行细致的分析,从而才能够开发出完整的系统设计。

到实际的试运行之中,进行测试,如果测试满意的话,将进行平台的完善开发,从而实现信息化,规范化,系统化,网络化的平台,具有较好的适应性和推广性。

3.2 设计目标

本平台利用现在比较广泛的ASP+Access数据库的架构实现的,进行系统分析,为将来进一步的实施打下一个坚实的技术基础。本平台将投入到实际的试运行之中,进行测试,如果测试满意的话,将进行平台的完善开发,从而实现信息化,规范化,系统化,网络化的平台,具有较好的适应性和推广性。

此系统分为前台管理和后台管理。前台管理是友好的操作界面,供用户浏览、查询使用。包括:浏览商品、查询商品、订购商品、留言等功能;后台管理是提供给管理员的,其中包括:新闻信息管理、用户管理、订单管理等。使管理员从繁琐的手工操作中解脱出来,并提高了办公效率。

3.3 可行性分析

“民以食为天”,随着人民生活水平的提高,餐饮业在服务行业中占有越来越重要的地位。努力在当前餐饮行业日趋激烈的竞争中脱颖而出,已成为每位餐饮业经营者 所追求的目标。网络订餐实现了小店面大作为的成本效益,解决了因为店面小的限制而无法提高营业额的难题,是一个小投入大成效的经营新模式。

在网上参观订餐的人相对网下人来说还是比较少, 一个是对网上餐馆的信用度持疑虑态度;另一个是网上订餐只可以看到物品的说明简介和外观,没有看到实体于细节处,无法通过快速浏览确定是不是自己想要的菜品。而这正是

传统的实体餐馆优于网上餐馆的地方。而在网上订餐的人都是一般都是对电脑比较熟练的人,也就就是比较年青化的消费群体。就是白领、大学生、高中生和对计算机操作相对比较熟的人。因为这些人工作都比较忙,而且对计算机也比较熟,思想也比较超前,对于在网上订餐能够接受,并经常上网订餐。

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

①技术可行性分析

网络订餐系统的开发是一项复杂的系统工程。为了保证系统开发成功,必须采用工程化的系统开发方法,并研究出一些符合工程化标准的开发方法。这些方法旨在指导开发者进行工程化的系统开发,从而加快系统开发的速度,保证质量以及降低开发成本。工程化的系统开发方法确实在开发实践中取得了一定的效果。此次开发使用JSP 作为开发语言,采用Servlet 技术,Tomcat5.0作为Web 服务器。

②运行可行性分析:

随着计算机知识的普及和推广,越来越多的人掌握了计算机的基本使用方法和技能。随着Internet 的发展,用户对于网络、WINDOWS 等环境下的软件使用比较熟悉,对于新鲜事物,用户表现出极大的兴趣和热情。

③经济可行性分析:

网络订餐系统给人们带来了方便,成为一种全新的商务模式。因此,不用出门就可以在家购物的新时尚已经到来,构建一个网络订餐系统在经济上是完全可行的。

④法律可行性分析:

即该平台的开发会不会在社会上引起侵权或其它责任问题。因为该平台是作为毕业设计与商业无关,又因为是自主开发设计,因此不会构成侵权,在法律上是可行的。

就本系统而言,随着电脑的普及,为学生在网络上进行购物提供有利的条件。而一个网络订餐系统可以为学生提供软件条件,这样学生便可以足不出户的买菜品了。商家可以从中获得利润,两全其美。

通过以上的分析,开发网络订餐系统是完全可行的。

3.4 设计的总体规则

无论哪个网站都要有它自己的设计规则。该平台也一样,它的主要设计规则有:

简单性:在实现平台的功能的同时,尽量让平台操作简单易懂,这对于一个网站来说是非常重要的。

针对性:该平台设计是网上订餐系统及后台管理的定向开发设计,所以具有专业突出和很强的针对性。

实用性:该平台能完成菜品展示和管理员管理的基本信息,具有良好的实用性。

3.5 功能设计

经过以上的初步调查和研究,并且确定了该平台的可行性,并决定开发本平台,为了能够对现行的平台内容进行充分了解,使所要开发的平台更具有实用性和适应性,设计出该平台功能如下:

3.5.1 管理员对功能的需求

3.5.1.1 菜品管理

● 添加菜品。添加菜品的信息主要有:类别、菜名、价格、图片、介绍、类型 ● 查看及修改菜品信息。修改菜品的信息包括:菜肴的信息、价格、

最新产品

● 删除菜品信息。

3.5.1.2 餐饮新闻管理

● 添加新闻信息

● 查看及修改新闻信息

● 删除新闻信息

3.5.1.3 用户管理

● 浏览所有用户信息。用户信息包括:用户ID 号、昵称、姓名、密码、

电子邮件、电话、注册日期、具体地址等信息;

● 有权删除任一用户;

● 浏览用户留言,可对其进行回复、删除

3.5.1.4 订单管理

● 可通过选择查看所有定单,已处理的定单和未处理的定单列表以及

其详细信息,并处理尚未处理的帐单

3.5.2 客户对功能的需求

● 注册;填写用户信息

● 登陆;输入用户名和密码登陆

● 所有菜品总览;

● 新品推荐、老牌名菜浏览;

● 订单信息浏览。订餐时间、到达时间、订餐内容、价格、订单状态 ● 个人信息修改

● 购买菜肴

● 发表留言

3.5.3 性能需求

● 界面友好

● 相互信息传递顺利

● 运行时间满足使用需要;

● 安全性得到一定保障;

3.6数据库 E-R 图

4 总体设计

4.1网站功能概述

网上订餐系统分两个部分,第一部分是面向用户的部分,用户可是实现在线注册、登陆、购买菜肴、提交订单等操作,都在这一部分完成;另一部分是后台管理部分,这部分的内容包括:管理员对菜品的添加、删除、查询、种类的管理、订单的处理、管理员的管理、注册用户的管理等。

4.2 系统功能模块划分

对于网民,能吸引住他们的先决条件是网站的整体构思,所以网站的首页提供了一个简洁明快的界面,分为三个模块:用户管理模块、图书销售系统模块、在线管理系统,如图3-2所示。以让浏览者能一目了然的知道,自己想要的内容放在哪里,这些内容可以提供给所有的浏览者。

4.3系统功能模块分析

网上订餐系统的模型结构如下图所示:

系统模块总图

从前面的需求分析中得知,可以将功能分为前台和后台两类,因此模块也分为两大类:前台模块和后台模块。

下图为系统模块总图:

4.4 系统功能流程图

订单及管理流程图(如图3-3) 介绍了用户从开始订餐到网站后台管理者查看订单,实现送货,更改订单状态的整个过程,也是整个订餐系统的运作过程。

下订单流程图: 订单管理流程图:

图3-3订单及管理流程图

5 数据库设计

数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏直接对应用系统的效率及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。

在充分了解了用户的各种要求后,开始数据库设计。 数据库的设计一般包括如下几个步骤: ●数据库需求分析 ●数据库概念结构设计 ●数据库逻辑结构设计

5.1 数据库需求分析

(1) 用户的需求具体体现在各种信息的提供、保存、更新和查询方面,这就要求数据库结构能充分满足各种信息的输出和输入。

通过第三章的系统功能分析,针对一般的网上订餐系统,总结出如下的需求信息:

用户分一般用户、注册用户和管理员用户

一般用户和管理员用户都可以不登陆就查看菜品信息

注册用户登陆后可以维护自己的信息,购买菜肴,并且在向网站发出订单时自动填写自己的联系信息。

图书按内容来分类,每本书对应一个类别 一个用户可以购买多本书 一个用户对应一张订单详细信息

(2) 根据上述的系统功能分析和需求总结,考虑到将来功能上的扩展,设计下的数据项和数据结构:

系统用户信息数据库,列出以下数据项:

用户信息:用户ID (自动编号)号、用户昵称、用户姓名、密码、电话号E-mail 地址、家庭住址、邮编。

系统的菜肴信息(book )数据库,列出以下数据项: 书籍的记录信息:ID (自动编号)、菜名、价格、图片、数量 所属类别、其他备注。

5.2 数据库逻辑结构设计

数据库的概念设计结束后,现在可以把上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。根据开发系统的情况,是一个小型的网上订餐系统,所以采用Assess 数据库。

功能介绍:记录后台管理员信息。用于管理员登录后台时进行数据调用。

功能介绍:记录客户订单信息。记录客户姓名、联系方式、订餐付钱方式等。

功能介绍:记录客户信息。记录客户姓名、联系方式、注册时间会员种类等。

表4 prokind1(菜品分类大类)

功能介绍:记录菜品分类。

功能介绍:记录新闻分类。

功能介绍:记录菜品信息。显示菜品新闻介绍、菜品类别以及相关图片。

功能介绍:记录新闻内容。显示新闻来源、发布时间以及相关图片。

6 详细设计

在注册信息时,先填写用户名和密码,然后判断用户名和密码是否真确,,不合法重新输入。

N

在订餐时,先选择菜品和数量,下订单,判断信息是否完整,提交订单。

N

订餐流程图

在修改信息时,先选中一条待修改的记录,然后直接输入数据,判断合法性,合法则保存至数据库,不合法重新输入。

N

用户数据修改流程图

6.1前台功能模块分析

6.1.1数据库连接

专门独立一页面除了作为进行数据库连接功能的实现,同时写入系统常用的几个函数,其目的是方便以后其它页面的功能实现时能直接调用此页面,而

不需反复写入代码,提高效率。函数的编写主要是利用了ASP 内置几个重要函数来实现的。Conn_xt文件下包含两个页面。 页面shopxt.asp :

Rem 过滤HTML 代码

function HTMLEncode(fString)

if not isnull(fString) then

fString = replace(fString, ">", ">") fString = replace(fString, "

fString = Replace(fString, CHR(10) & CHR(10), "

") fString = Replace(fString, CHR(10), "
") 'fString=ChkBadWords(fString) HTMLEncode = fString else

HTMLEncode=fstring end if end function

Rem 过滤SQL 非法字符 function checkStr(str) if isnull(str) then checkStr = ""

exit function

end if

checkStr=replace(str,"'","''")

end function

Rem 判断字符是否是整型 function isInteger(para) on error resume next

dim str dim l,i

if isNUll(para) then isInteger=false exit function end if

str=cstr(para)

if trim(str)="" then isInteger=false exit function end if l=len(str) for i=1 to l

if mid(str,i,1)>"9" or mid(str,i,1)

isInteger=true

if err.number0 then err.clear end function %>

6.1.2菜品图片浏览

用户可直接在主页面查看菜品信息包括菜品图示以及价格。操作简单只需将鼠标放在菜名上即可显示菜品图示。浏览方便,特色性强。采用JavaScript 语言编写。在网上搜索代码嵌入页面使用。如图4-1所示。

图4-1 菜单浏览页面

6.1.3订单填写

订单是用户管理自己在网站订餐的一个模块,此功能在这里不仅给用户提供了查看自己的订餐,还提供了自动计算功能。如图4-2所示。

图4-2 订单菜单

页面 dingcan.asp: function subm(){ if(!checkDate())return;

var str = '您的订单如下:\n\n-------------------\n\n';

var ts = '';

var allN = 0;

for(var i =0;i

if(form3(i).name=='number'){

if(form3(i).value>0){

ts += ' ⊕'+form3(i-2).value+' '+form3(i-1).value+'元 X '+form3(i).value+'份='+(form3(i-1).value*form3(i).value)+'元 \n\n'

allN += (form3(i-1).value*form3(i).value);

}

}

}

str += ts + '-------------------------------------\n\n总计: '+allN+'元';

str += '\n\n送餐时间:'+form3.hours.value+'点'+form3.minutes.value+'分';

if(ts == '')return alert

if(confirm(str)){

form3.list.value = ts;

form3.list1.value = allN

form3.submit();

}

}

查看订单状态:

此功能为会员所特有,只有会员登陆后才能查看订单信息。如图4-3所示。

图4-3 查看订单

网页:ckdd.asp

aa=session("names")

set rs=server.CreateObject("adodb.recordset") rs.open "select * from tdgl where yhm='"&aa&"' order by id desc",conn,1,3

if rs.eof and rs.bof then response.write "您还没订过餐!!" 'response.End Else %>

if not rs.eof then i=1 do while not rs.eof %>

rs.movenext

i=i+1

6.1.4在线留言

在网站建设初期,针对所有用户开放留言区,用户可以提出对菜品信息、如何送货以及对网站建设的任何问题。在网站正式步入轨道后将改为只针对会员开放。如图4-4所示。 loop rs.close end if end if %>

图4-4 用户留言页面

网页:liuyan.asp

主要介绍分页代码:

Const MaxPerPage=10

dim totalPut

dim CurrentPage

dim TotalPages

dim j

dim sql

if Not isempty(request("page")) then

currentPage=Cint(request("page"))

else

currentPage=1

end if

if currentpage

currentpage=1

end if

if (currentpage-1)*MaxPerPage>totalput then

if (totalPut mod MaxPerPage)=0 then

currentpage= totalPut \ MaxPerPage

else

currentpage= totalPut \ MaxPerPage + 1

end if

end if

检查留言信息是否填完整:

图4-5 查看留言填写完整

页面:liuyan1.asp

ifrequest.Form("name")=""orrequest.Form("email")=""or

request.Form("textarea")="" then

response.Write("")

response.end()

end if

names=request.Form("name")

email=request.Form("email")

title=request.Form("title")

textarea=request.Form("textarea")

exec="select * from liuyan"

set rs=server.createobject("adodb.recordset")

rs.open exec,conn,2,3

rs.addnew

rs("name")=names

rs("email")=email

rs("title")=title

rs("content")=textarea

rs("adddate")=now()

rs.update

rs.close

response.Write("") set rs=nothing

conn.close

set conn=nothing

%>

6.2后台功能模块分析

6.2.1添加菜单

页面除了添加菜单的基本窗口,还使用了2个插件来完善添加菜单详细信息:一个是上传组件,目的是实现菜单图片的上传;还有一个就是详细说明的编辑,每个菜单都需要细节的介绍,此插件提供了类似于具有办公软件的功能的编辑窗口。

页面 Addpro.asp:

首先页面利用对象Session 来实现对后台管理员的身份和权限的控制,再通过对数据库的连接,实现二个功能:一个功能是获取页面Addpro.asp 所提交的商品相关信息,并插入到数据库相应的表里;再一个是对提交商品的更新信息来刷新数据库,完成对商品信息的编辑, 如图4-6所示。

页面 addpro.asp

//将里面的链接换成本地链接

aa="http://"&Request.ServerVariables("server_name")&Request.ServerVariables("path_info")

aa= mid(aa,1,len(aa)-17) '16=admin/xpaddnews.asp

'response.write aa

'response.end

content=replace(content,aa,"")

session("content")=content

rs("newscontent")=content

rs.update

rs.close

图4-6 添加菜单

set rs=nothing

session("content")=""

response.write ""

response.End

');

else

set rs=server.CreateObject("adodb.recordset")

sql="select * from prokind1"

rs.open sql, conn, 1, 1

set rs1=server.CreateObject("adodb.recordset")

sql="select * from prokind2"

rs1.open sql, conn, 1, 1

//当大类改变时执行

function changelocation(locationid)

{ document.form1.prokind2.length = 0; var locationid=locationid; var i; document.form1.prokind2.options[document.form1.prokind2.length] = new Option("选择小类",0);

for (i=0;i

= new document.form1.prokind2.options[document.form1.prokind2.length]

Option(subcat[i][0], subcat[i][2]);

} } }

6.2..2菜单管理

查看菜单信息:

显示菜品名、所属分类以及发布时间,管理者可对菜单进行编辑。如图4-7所示。

图4-7 菜单管理页面

//用户登陆及权限控制

dim selecttype,selectkey,selectid

selectkey=trim(request.form(trim("selectkey")))

selecttype=trim(request.form("selecttype"))

selectid=request.form("selectid")

//根据参数值判断是否删除指定商品

if selectid"" then

conn.execute "delete from product where id in ("&selectid&")"

response.Write ""

response.End

end if

6.2.3查看回复留言

图4-8 回复留言

回复留言:

管理者及时回复顾客留言,并在前台显示。如图4-8所示。

liuyanreply.asp

dim id //建立一个数据集

id=request("id")

if request.QueryString("action")="save" then

set rs=server.CreateObject("adodb.recordset")//建立一个数据集的实例,此时数据集中没有数据

rs.open "select * from liuyan where id="&id,conn,1,3//打开数据集

rs("reply")=trim(request("reply"))

rs("replydate")=now()

rs.update//把更改过的值更新回数据库

rs.close

set rs=nothing

response.write ""

response.End

end if

action="liuyanreply.asp?action=save&id=" onSubmit="return checkdata()" onReset="return ResetForm();">

set rs=server.CreateObject("adodb.recordset")//定义数据集

rs.open "select * from liuyan where id="&id,conn,1,1//打开数据集在其中搜索%>

7 软件测试

软件测试是系统质量保证的主要活动之一。测试虽然不是质量保证的“安全网”。但它是不可缺少的,而且是重要的环节。因为,在系统开发的过程中,涉及一系列的活动,而在这个活动过程中,人们可能犯很多错误,错误可能发生在设计阶段,也可能发生在整个过程的开始阶段。

系统测试的目标是:测试是一个程序的执行过程,其目标在于发现错误。一个好的测试用例能够发现至今尚未察觉的错误。一个成功的测试则是发现至今尚未察觉的错误的测试。

总之,测试是发现错误,这不只是从技术角度测试下定义。软件测试中最为重要的是,实际工作中人们的心理学和经济学问题。系统的测试分为单元测试、组装测试、确认测试和系统测试,每一步都是在前一步的基础上进行的。

7.1软件测试的目的和意义

在系统的详细设计以及编码过程进行完成之后,就要对办公自动化管理系统的程序进行测试。软件测试是软件开发过程中的一个重要环节。软件测试是为了发现程序中的错误而执行程序的过程;好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;成功的测试是发现了至今为止尚未发现的错误的测试。软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计出一批测试用例,并利用测试用例来运行程序,以发现程序错误的过程。测试阶段的主要任务是尽量发现程序错误,改正错误,直至程序的功能、性能满足用户需求。

7.2软件测试的步骤

1.单元测试:又称模块测试,是针对软件设计的最小单元程序模块进行测试的工作。其目的是发现模块内部的错误,修改这些错误使其代码能够正确运行。其中,多个功能独立的程序模块可并行进行测试。

2.集成测试:又称组装测试, 它的任务是按照一定的策略对单元测试的模块进行组装,并在组装过程中进行模块接口与系统功能测试。集成测试的策略主要有两种:一次性组装方式和增值式组装方式。

3.有效性测试:又称确认测试,目的是验证软件的有效性,即验证软件的

功能和性能及其他特性是否符合用户要求。软件的功能和性能要求参照软件需求说明书。

4.系统测试:系统测试的目的是为了测试软件安装到实际应用的系统中后,能否与系统的其余部分协调工作,以及对系统运行可能出现的各种情况的处理能力。

7.3软件测试的具体实现

1.运行程序,进入系统登陆界面,,输入用户名、密码和验证码,若输入有误系统会给出相应的提示信息,以此检测软件的安全可靠性

2.用管理员身份进入系统后台,测试信息发布功能模块,进行信息发布、删改信息,操作成功后在阅读相信信息。

3.用普通用户身份进入该系统前台,测试留言模块功能,说明以实现该项功能。

4.用管理员身份进入该系统后台,测试留言回复模块,说明以实现该项功能。

订餐信息中送餐地址不能为空

用户登录用户名或密码不正确

7.4软件测试结论

经过对各个模块的功能测试, 已经实现了各个功能, 达到了任务书中的各种要求, 该系统界面友好, 功能强大, 对用户来说是一款非常实用的企业网站信息系统。

7.5评价

软件基本达到设计要求,软件功能完整,用户界面良好,错误处理正确,且能正确提示错误种类。但是在测试中也发现软件的一些不足与缺陷,比如软件在用户第一次登陆时,也就是用户刚拿到软件时,必须用预先设定好的管理员账号登陆系统,等等一些缺陷,需要在软件进一步修改和维护时予以纠正。总的来说,软件通过测试。

结 论

本文简要介绍了典型B/S电子商务网上订餐系统的主要体系结构及功能模块, 重点讨论了系统开发工具、开发语言等关键技术以及系统的数据库建设,系统流程图和功能模块的代码分析。目前此系统基本可以完全的实现网上订餐的功能。但系统仍然有一些不尽人意,而这些问题主要集中在系统的安全上,虽然系统已经通过相关的控制语句对登陆用户身份进行验证,但是在当今网络信息安全中,仅仅对用户身份验证是不够的,还需要对传送数据进行加密,防止数据传输过程中被篡改等攻击进行防御。因此在今后的工作里, 这些功能的实现还需要更高的技术支持,也只有这样才能完善网上订餐系统,让所有的客户能在一个互相信任且安全的环境中享受购物的乐趣。

网上订餐系统无论是在开发过程中,还是建成后的日常维护过程中,都需要进行严格的检测,以保证订餐系统的服务质量。建议网上订餐系统应注意以下3点。

(1)把握好食物质量和宣传内容环节。提供的菜品必须是新鲜的优质产品而决非过期剩菜。产品宣传广告内容应健康真实,既要反映客观事物又要有欣赏价值。

(2)服务功能的检测:

①网上订餐系统不仅要把好进货关,而且由于网上订餐系统提供的是虚拟的电子商品,包含的信息量大,多分支、多链接、多媒体,所以网上订餐系统的服务检测就显得格外重要。对虚拟电子商品的审查,首先要进行内容正确性测试。如文字录入的错误、参照图像的错误等都会降低用户对商品的信任度。

②进行系统功能的测试。订餐系统所有功能是否能正确执行,有无死机或其他异常情况发生,交互手段是否能满足用户需求。

③对系统的执行效率进行测试。测试系统对大量数据的检索效率、数据的装载时间及对鼠标的反应速度等。

(3)用户身份确认及菜品的配送

随着网上订餐系统技术的日趋成熟、网上订餐的优势日趋明显,会有更多的人参与到网上订餐的浪潮中来,人类最终将迎接电子商务时代的来临。

参考文献

1 陈延文. 对ASP 的Request 和Response 两个内建对象的研究. 唐山:河北理

工学院学报, 2003年02期

2 张维明, 肖卫东, 邓苏, 代长华, 陈卫东, 汤大权. 应用软件生成环境ASP 的设

计与实现. 上海:国防科技, 1995年01期

3 张建章. 浅谈ASP 开发WEB 数据库应用技术. 合肥:计算机系统应用,1998

年09期

4 丁宝康. 数据库原理. 上海:经济科学出版社,2000

5 陆丽娜. 软件工程. 上海:经济科学出版社,2000

6 D.Livigston .CSS&DHTML FOR WEB 专业设计. 北京:清华大学出版社,

2000

致 谢

在本论文完成之际,首先要向我的导师邓老师致以诚挚的谢意。在论文的写作过程中,他们给了我许许多多的帮助和关怀。老师们学识渊博、治学严谨,待人平易近人,在老师的悉心指导中,我不仅学到了扎实的专业知识,也在怎样处人处事等方面收益很多;同时他们对工作的积极热情、认真负责、有条不紊、实事求是的态度,给我留下了深刻的印象,使我受益非浅。同时,我要感谢我们学院给我们授课的各位老师,正是由于他们的传道、授业、解惑,让我学到了专业知识,并从他们身上学到了如何求知治学、如何为人处事。我也要感谢我的母校山西煤炭管理干部学院,是她提供了良好的学习环境和生活环境,让我的大学生活丰富多姿,为我的人生留下精彩的一笔。另外,衷心感谢我的同窗同学们,在我毕业论文写作中,与他们的探讨交流使我受益颇多;同时,他们也给了我很多无私的帮助和支持,我在次深表谢意。

最后,向我的亲爱的家人和亲爱的朋友表示深深的谢意,他们给予我的爱、理解、关心和支持是我不断前进的动力。学无止境。明天,将是我终身学习另一天的开始。

山西煤炭管理干部学院

毕业论文

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

姓 名:赵霞

专 业:计算机信息管理

班 级:08信管

指导教师:邓越萍

日 期:2011.06.07

山西煤炭管理干部学院

毕业论文评阅意见

论文题目:_____________________

____________________

评阅意见:____________________

____________________

____________________

____________________

____________________

____________________

____________________

____________________

答辩成绩:____________________

指导教师:_____ 职称:____ 日期:____

摘 要

越来越多的人接受了电子商务这种便捷、快速的交易形式,网上订餐的推出也很快受到了大家的欢迎。首先,简要地介绍了国内网络技术和信息产业的发展情况以及研究课题的现状,阐述了网上订餐系统的解决方案以及实施的重要意义。然后是建设网上订餐系统,具体分析如何实现系统功能,规划系统流程,设计系统数据库的逻辑结构,介绍在开发系统过程中所使用的重要开发语言、开发工具、配套插件以及开发平台。最后设计和实现了一个B/S结构的网上订餐系统,着重论述了系统的功能与实现、数据流程及存储。包括会员管理、菜品信息介绍、网上订餐、用户留言、系统用户管理以及后台数据库管理等,使用图文并茂(功能代码及截图)的方式,对整个网上订餐系统功能模块的实现方法进行阐述和分析。

关键词:数据库;网上订餐系统;ASP

目 录

1 引 言 . ..............................................................................................................................................................3

1.1

1.2

2 网上订餐的市场趋势 . ..........................................................................................................................3 网上订餐的市场优势 . ..........................................................................................................................3 系统开发技术介绍.........................................................................................................................................5

2.1 系统开发语言 . .............................................................................................................................................5

2.1.1开发语言---ASP . ................................................................................................................................5

2.1.2开发语言---HTML ...............................................................................................................................6

2.1.3开发语言---VBScript . .....................................................................................................................6

2.1.4开发语言---JavaScript .................................................................................................................7

2.2系统开发工具及插件 .................................................................................................................................7

2.2.1开发工具---Access ..........................................................................................................................7

2.2.2开发工具---Dream weaver MX ......................................................................................................8

2.2.3开发工具---IIS . ................................................................................................................................8

2.2.4开发插件---LyfUpload ....................................................................................................................9

3 需求分析 ...........................................................................................................................................................10

3.1 系统分析 . ...................................................................................................................................................10

3.2 设计目标 . .....................................................................................................................................................10

3.3 可行性分析 .................................................................................................................................................10

3.4 设计的总体规则.........................................................................................................................................12

3.5 功能设计 . .....................................................................................................................................................12

3.5.1 管理员对功能的需求 . ....................................................................................................................12

3.5.2 客户对功能的需求 .........................................................................................................................14

3.5.3 性能需求 ...........................................................................................................................................14

3.6数据库 E-R 图............................................................................................................................................15

4 总体设计 ...........................................................................................................................................................16

4.1网站功能概述.............................................................................................................................................16

4.2 系统功能模块划分 .................................................................................................................................16

4.3系统功能模块分析.....................................................................................................................................16

5 数据库设计.......................................................................................................................................................19

5.1 数据库需求分析.......................................................................................................................................19

5.2 数据库逻辑结构设计 . .............................................................................................................................20

6.1前台功能模块分析....................................................................................................................................24

6.1.1数据库连接 . .......................................................................................................................................24

6.1.2菜品图片浏览......................................................................................................................................26

6.1.3订单填写...............................................................................................................................................27

6.1.4在线留言...............................................................................................................................................29

6.2后台功能模块分析.....................................................................................................................................32

6.2.1添加菜单...............................................................................................................................................32

6.2..2菜单管理 .............................................................................................................................................35

6.2.3查看回复留言 ...................................................................................................................................36

7 软件测试 ...........................................................................................................................................................38

7.1软件测试的目的和意义 . ...........................................................................................................................38

7.2软件测试的步骤 .........................................................................................................................................38

7.3软件测试的具体实现 ................................................................................................................................39

7.4软件测试结论..............................................................................................................................................41

7.5评价 ...............................................................................................................................................................41

结 论 . .................................................................................................................................................................42

参考文献 . .................................................................................................................................................................43

致 谢..................................................................................................................................................................44

1

引 言

高新科技和计算机的飞速发展,给人们带来了更多的便利.电脑普及时代即将到来, 网络技术也在逐渐完善, 人们的生活已经开始发生重要的变革,效率已经成为各个企业生存的首要条件,更好更快的使用和了解相关的信息,以及处理更多更繁琐的事物便是我们设计网上购物系统的初衷。

由于互联网发展已深入家庭,网上订餐这个课题已经提出,为了方便人们生活,提高人们的生活效率,本系统根据现实订餐的方式虚拟于网络之上,使人们通过网络就可以完成生活中必要的事情(饮食)。系统的完成不仅可以基本实现客户订餐的功能,还能在此基础上提供更多的,更贴心的服务。信息技术的发展将更快的推动互联网的发展,订餐系统的重要性也将越显其强大的作用。

1.1 网上订餐的市场趋势

随着越来越多的人接受了电子商务这种便捷、快速的交易形式,网上订餐的顺势而出很快受到了大家的欢迎。

互联网的应用以普及千家万户, 这为网络订餐提供了良好的发展空间。同时,网上订餐服务的直观、有效、便捷等优点是传统的电话订餐业务无法比拟的。调查数据显示,北京白领更乐于选择网上订餐服务, 网上订餐将是白领一族捕获餐店信息、进行订餐的发展趋势。

网络订餐随着互联网的成长会逐渐被人们所喜爱,正如几年前手机移动的短信一样,为企业带来的几百个亿的业务收入。在互联网世界里面,谁早一步在应用上创新,谁就掌握了未来的方向,品牌更是一炮打红,网络订餐,看到希望的是希望,看到泡沫的是泡沫。

1.2 网上订餐的市场优势

网络订餐可充通过色彩、图片、说明、设置动画加强了产品了宣传,大大达到了餐饮业的“色型”要求。实现产品管理方便,起到立竿见影的效果,不用因为更改菜色而重新印刷。只要在后台鼠标轻轻一点,全线马上更新。采用

B/S模式,订餐者无须安装第三方软件,能上网就能订餐,甚至可以利用手机上网订餐,使操作更加简便,订餐信息更加准确。避免口头传递信息的错误,优化服务。网络不会跟电话一样占线,在高峰期对订餐的处理更是游刃有余,只看着屏幕点打印即可,就可下厨房配菜配送。地址永远不会丢失,是一个永远存在的电子菜单,甚至还可以通过我们的推广而让更多的客人认识,不用派人派宣传单,省去一笔宣传和人工费用。订餐途径有了更好的改善,网络订餐成为电话订餐又一有力补充,扩大客流,从而整体提高业务量。倡导了一种时尚,餐店的定位更是网络化,时尚化,具备更为勃勃的生机。缓解了食堂的拥挤的困境,为食堂提供更为轻松的环境。有时间的提前性,方便统筹安排,集中处理。采用会员制度,设立积分换赠送,营销手段更是利用得淋漓尽致。可以设立团体会员制,利用赠品或优惠,扩大市场份额。利用网页技术,展示本公司的精品,增强吸引力。详细介绍每一个产品,展现公司周到、细微的服务。容易形成品牌和连锁经营,即使没有合适的店面,主要配送队伍健全,一个店面,就可以做全市生意。订餐者省电话费,实现双盈。提供了交流的平台,实现消费者可贵信息的反馈和交流。方便统计和查询,分析经营来得更直接。企业创新,跟得上市场的需要。

2 系统开发技术介绍

2.1 系统开发语言

2.1.1开发语言---ASP

Active Server Pages(ASP ,活动服务器页面)就是一个编程环境,在其中,可以混合使用HTML 、脚本语言以及组件来创建服务器端功能强大的

Internet 应用程序。如果你以前创建过一个站点,其中混合了HTML 、脚本语言以及组件,你就可以在其中加入ASP 程序代码。通过在HTML 页面中加入脚本命令,你可以创建一个HTML 用户界面,并且,还可以通过使用组件包含一些商业逻辑规则。组件可以被脚本程序调用,也可以由其他的组件调用。目前,Internet 上的许多基于Windows 平台的Web 站点已开始应用ASP 来替换CGI 。

ASP 是基于WEB 的一种编程技术,可以说是CGI 的一种。它可以完成以往CGI 程序的所有功能,如计数器、留言簿、公告板、聊天室等等.ASP 可以轻松地实现对页面内容的动态控制,根据不同的浏览者,显示不同的页面内容。而浏览者一点觉察不出来,就像为他专门制作的页面一样。使用各种各样的组件,ASP 可以完成无比强大的功能。使用FileSystemObject ,可以对服务器上的文件进行操作,浏览、复制、移动、删除等等。有ADO (Active Database Object ,动态数据库对象)的支持,ASP 对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。使用CDONTS (Collaboration Data Objects for NTS,NTS 协作数据对象),可以发送、查看邮件,实现WEBMAIL 的功能。结合WSH (Windows Scripting Host ),可以实现对NT 主机的管理,如NT 用户管理、IIS 虚拟主机设置、EXCHANGE 邮箱设置等等,就像管理本地机一样方便。

ASP 工作流程图如下:

图2-1 ASP工作流程图

2.1.2开发语言---HTML

HTML (Hyper Text Markup Language超文本标记语言)是一种用来制作超文本文档的简单标记语言。与常见的字处理文件不同,Web 页以超文本标识语言编排格式。它能独立于各种操作系统平台(如UNIX ,WINDOWS 等)。

HTML 语言作为一种标识性的语言,是由一些特定符号和语法组成的,所以理解和掌握都是十分容易的。可以说,HTML 语言在所有的计算机编程语言中是最简单易学的。 组成HTML 的文档都是ASCII 档,所以创建HTML 文件十分简单,只需一个普通的字符编辑器即可。如 Windows中的记事本、写字板都可以使用。也可以采用专用的 HTML 编辑工具:如 CoffeeHTML、 Homesite、 HTMLedit Pro 等工具,它们的特点是能够自动检查HTML 文档中的语法错误并协助改正。由于有了图形化的HTML 开发工具,使得学习HTML 更加容易,可以先用它制作好网页,再在它附带的HTML 代码编辑器在删去那些无用的代码,利用它的所见即所得特性,从而很快就能熟练地掌握HTML 。

2.1.3开发语言---VBScript

VBScript 程序语言是Microsoft 公司将VB 程序语言加以简化,使其较易学习,且完全以配合网页设计发展重点,除去了有安全性顾虑的指令,诸如读写删除文件或执行系统调用程序等,使设计者可安心地在Internet 上传送。此

外,又加上适合其他操作平台的可移植性,并大大提升了执行效率,使得VBScript 广受网页设计者的欢迎。

VBScript 脚本语言脚本是应用程序在网页上表达的语言, 可以将脚本嵌入Web 页中。通常脚本在服务器上运行, 但也可以采用客户端和服务器端结合使用VBScript 是ASP 的默认脚本语言。

2.1.4开发语言---JavaScript

JavaScript 是1995年由美国Netscape 公司为Navigator2.0浏览器的应用而发明的。它是写在HTML 文件中的一种基于对象和事件驱动并具有安全性能的脚本语言,当用户在客户端的浏览器中显示该网页时,浏览器就会执行JavaScript 程序,让用户通过交互式的操作变换网页的显示内容,以实现HTML 语言所不能实现的一些功能。

JavaScript 是一种解释性的,用于客户端的,基于对象的一种程序开发语言。在系统的设计过程中可以通过它实现一些客户端的功能,以减轻服务器运行任务的压力,从而达到高效率的目的

2.2系统开发工具及插件

2.2.1开发工具---Access

Access 数据库管理系统是Microsoft Office 套件的重要组成部分,适用于小型商务活动,用以存贮和管理商务活动所需要的数据。Access 不仅是一个数据库,而且它具有强大的数据管理功能,它可以方 便地利用各种数据源,生成窗体(表单),查询,报表和应用程序等。数据库是有结构的数据集合, 它与一般的数据文件不同,(其中的数据是无结构的) 是一串文字或数字流。数据库中的数据可以是文字、图像、声音等。

Access 数据库由六种对象组成,它们是表、查询、窗体、报表、宏和模块。 表(Table) 表是数据库的基本对象,是创建其他5种对象的基础。表由记录组成,记录由字段组成,表用来存贮数据库的数据,故又称数据表。

查询(Query)查询可以按索引快速查找到需要的记录,按要求筛选记录并能连接若干个表的字段组成新表。

窗体(Form) 窗体提供了一种方便的浏览、输入及更改数据的窗口。还可以创建子窗体显示相关联的表的内容。窗体也称表单。

报表(Report) 报表的功能是将数据库中的数据分类汇总,然后打印出来,以便分析。

宏(Macro) 宏相当于DOS 中的批处理,用来自动执行一系列操作。Access 列出了一些常用的操作供用户选择,使用起来十分方便。

模块(Module) 模块的功能与宏类似,但它定义的操作比宏更精细和复杂,用户可以根据自己的需要编写程序。模块使用Visual Basic编程

2.2.2开发工具---Dream weaver MX

Macromedia 公司的Dream weaver自问世以来备受网页设计专业人士的青睐,被誉为“网页三剑客之一”。经过多年的改进,Macromedia 公司又推出了新版本:MX 系列的Dream weaver。Dream weaver MX主要负责网页版式设计,网页编辑制作。新版本中,它将Dream weaver UltraDev 的所有功能整合近来。

2.2.3开发工具---IIS

IIS 是微软公司主推的Web 服务器产品,最新版本的是Windows 2003里所包含的IIS6.0。IIS 支持HTTP ,FTP 以及SMTP 协议。IIS 支持与语言无关的脚本编写和组件,完全支持VBScript ,JavaScript 脚本开发语言以及Java 语言,也支持CGI 和WinCGI ,ISAPI 扩展等。其响应性能很高,同时系统资源消耗相对比较少,IIS 安装,管理和配置都比较简单。在IIS 提供的服务器端脚本执行环境中,设计人员可以建立和运行动态的,交互的,高效的Web 应用程序。

2.2.4开发插件---LyfUpload

LyfUpload 是个免费的ASP 组件,遵从 RFC-1867 HTTP 请求,它可以在ASP 页面中接收客户端浏览器使用encType="multipart/form-data"的Form 上载的文件。

本版本支持单文件上载、多文件上载、限制文件大小上载、限制某一类型文件上载、文件上载到数据库、数据库中读取文件及文件上载重命名等功能。功能:(1)支持单文件上传 (1.2版支持上载文件覆盖判断功能) ;(2)支持上传多个文件;(3)可以将上传的文件改名保存(1.2版支持变量保存功能) ;(4)可以同时使用其它的form 元素的信息;(5)支持限制文件上传的大小;(6)支持限制文件上传的类型 (1.1版修改,支持多文件类型)(1.2版修正) ;(7)可以得到上传文件的大小 (1.1版新增功能) ;(8)支持将文件内容保存进数据库,如上载图形文件、DOC 文件等各类Windows 文件(1.1版新增功能) ;(9)支持从数据库中读取上载文件到数据库中的记录, 如显示图形文件、DOC 文件等各类

Windows 文件 (1.1版新增功能) ;(10)可以得到上传文件的MIME 类型,如gif 文件为images/gif(1.2版修正) 。

系统采用上传组件的主要目的就是为了实现在后台对商品图片的上传保

存,以实现在前台用户在购买商品对商品有更深的了解。

3 需求分析

3.1 系统分析

系统分析是平台开发的一个不可缺少的环节,为了能够使本系统更好、更完善地被设计出来,就必须先进行调查研究。在系统调查的基础上,对新系统的功能进行细致的分析,从而才能够开发出完整的系统设计。

到实际的试运行之中,进行测试,如果测试满意的话,将进行平台的完善开发,从而实现信息化,规范化,系统化,网络化的平台,具有较好的适应性和推广性。

3.2 设计目标

本平台利用现在比较广泛的ASP+Access数据库的架构实现的,进行系统分析,为将来进一步的实施打下一个坚实的技术基础。本平台将投入到实际的试运行之中,进行测试,如果测试满意的话,将进行平台的完善开发,从而实现信息化,规范化,系统化,网络化的平台,具有较好的适应性和推广性。

此系统分为前台管理和后台管理。前台管理是友好的操作界面,供用户浏览、查询使用。包括:浏览商品、查询商品、订购商品、留言等功能;后台管理是提供给管理员的,其中包括:新闻信息管理、用户管理、订单管理等。使管理员从繁琐的手工操作中解脱出来,并提高了办公效率。

3.3 可行性分析

“民以食为天”,随着人民生活水平的提高,餐饮业在服务行业中占有越来越重要的地位。努力在当前餐饮行业日趋激烈的竞争中脱颖而出,已成为每位餐饮业经营者 所追求的目标。网络订餐实现了小店面大作为的成本效益,解决了因为店面小的限制而无法提高营业额的难题,是一个小投入大成效的经营新模式。

在网上参观订餐的人相对网下人来说还是比较少, 一个是对网上餐馆的信用度持疑虑态度;另一个是网上订餐只可以看到物品的说明简介和外观,没有看到实体于细节处,无法通过快速浏览确定是不是自己想要的菜品。而这正是

传统的实体餐馆优于网上餐馆的地方。而在网上订餐的人都是一般都是对电脑比较熟练的人,也就就是比较年青化的消费群体。就是白领、大学生、高中生和对计算机操作相对比较熟的人。因为这些人工作都比较忙,而且对计算机也比较熟,思想也比较超前,对于在网上订餐能够接受,并经常上网订餐。

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

①技术可行性分析

网络订餐系统的开发是一项复杂的系统工程。为了保证系统开发成功,必须采用工程化的系统开发方法,并研究出一些符合工程化标准的开发方法。这些方法旨在指导开发者进行工程化的系统开发,从而加快系统开发的速度,保证质量以及降低开发成本。工程化的系统开发方法确实在开发实践中取得了一定的效果。此次开发使用JSP 作为开发语言,采用Servlet 技术,Tomcat5.0作为Web 服务器。

②运行可行性分析:

随着计算机知识的普及和推广,越来越多的人掌握了计算机的基本使用方法和技能。随着Internet 的发展,用户对于网络、WINDOWS 等环境下的软件使用比较熟悉,对于新鲜事物,用户表现出极大的兴趣和热情。

③经济可行性分析:

网络订餐系统给人们带来了方便,成为一种全新的商务模式。因此,不用出门就可以在家购物的新时尚已经到来,构建一个网络订餐系统在经济上是完全可行的。

④法律可行性分析:

即该平台的开发会不会在社会上引起侵权或其它责任问题。因为该平台是作为毕业设计与商业无关,又因为是自主开发设计,因此不会构成侵权,在法律上是可行的。

就本系统而言,随着电脑的普及,为学生在网络上进行购物提供有利的条件。而一个网络订餐系统可以为学生提供软件条件,这样学生便可以足不出户的买菜品了。商家可以从中获得利润,两全其美。

通过以上的分析,开发网络订餐系统是完全可行的。

3.4 设计的总体规则

无论哪个网站都要有它自己的设计规则。该平台也一样,它的主要设计规则有:

简单性:在实现平台的功能的同时,尽量让平台操作简单易懂,这对于一个网站来说是非常重要的。

针对性:该平台设计是网上订餐系统及后台管理的定向开发设计,所以具有专业突出和很强的针对性。

实用性:该平台能完成菜品展示和管理员管理的基本信息,具有良好的实用性。

3.5 功能设计

经过以上的初步调查和研究,并且确定了该平台的可行性,并决定开发本平台,为了能够对现行的平台内容进行充分了解,使所要开发的平台更具有实用性和适应性,设计出该平台功能如下:

3.5.1 管理员对功能的需求

3.5.1.1 菜品管理

● 添加菜品。添加菜品的信息主要有:类别、菜名、价格、图片、介绍、类型 ● 查看及修改菜品信息。修改菜品的信息包括:菜肴的信息、价格、

最新产品

● 删除菜品信息。

3.5.1.2 餐饮新闻管理

● 添加新闻信息

● 查看及修改新闻信息

● 删除新闻信息

3.5.1.3 用户管理

● 浏览所有用户信息。用户信息包括:用户ID 号、昵称、姓名、密码、

电子邮件、电话、注册日期、具体地址等信息;

● 有权删除任一用户;

● 浏览用户留言,可对其进行回复、删除

3.5.1.4 订单管理

● 可通过选择查看所有定单,已处理的定单和未处理的定单列表以及

其详细信息,并处理尚未处理的帐单

3.5.2 客户对功能的需求

● 注册;填写用户信息

● 登陆;输入用户名和密码登陆

● 所有菜品总览;

● 新品推荐、老牌名菜浏览;

● 订单信息浏览。订餐时间、到达时间、订餐内容、价格、订单状态 ● 个人信息修改

● 购买菜肴

● 发表留言

3.5.3 性能需求

● 界面友好

● 相互信息传递顺利

● 运行时间满足使用需要;

● 安全性得到一定保障;

3.6数据库 E-R 图

4 总体设计

4.1网站功能概述

网上订餐系统分两个部分,第一部分是面向用户的部分,用户可是实现在线注册、登陆、购买菜肴、提交订单等操作,都在这一部分完成;另一部分是后台管理部分,这部分的内容包括:管理员对菜品的添加、删除、查询、种类的管理、订单的处理、管理员的管理、注册用户的管理等。

4.2 系统功能模块划分

对于网民,能吸引住他们的先决条件是网站的整体构思,所以网站的首页提供了一个简洁明快的界面,分为三个模块:用户管理模块、图书销售系统模块、在线管理系统,如图3-2所示。以让浏览者能一目了然的知道,自己想要的内容放在哪里,这些内容可以提供给所有的浏览者。

4.3系统功能模块分析

网上订餐系统的模型结构如下图所示:

系统模块总图

从前面的需求分析中得知,可以将功能分为前台和后台两类,因此模块也分为两大类:前台模块和后台模块。

下图为系统模块总图:

4.4 系统功能流程图

订单及管理流程图(如图3-3) 介绍了用户从开始订餐到网站后台管理者查看订单,实现送货,更改订单状态的整个过程,也是整个订餐系统的运作过程。

下订单流程图: 订单管理流程图:

图3-3订单及管理流程图

5 数据库设计

数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏直接对应用系统的效率及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。

在充分了解了用户的各种要求后,开始数据库设计。 数据库的设计一般包括如下几个步骤: ●数据库需求分析 ●数据库概念结构设计 ●数据库逻辑结构设计

5.1 数据库需求分析

(1) 用户的需求具体体现在各种信息的提供、保存、更新和查询方面,这就要求数据库结构能充分满足各种信息的输出和输入。

通过第三章的系统功能分析,针对一般的网上订餐系统,总结出如下的需求信息:

用户分一般用户、注册用户和管理员用户

一般用户和管理员用户都可以不登陆就查看菜品信息

注册用户登陆后可以维护自己的信息,购买菜肴,并且在向网站发出订单时自动填写自己的联系信息。

图书按内容来分类,每本书对应一个类别 一个用户可以购买多本书 一个用户对应一张订单详细信息

(2) 根据上述的系统功能分析和需求总结,考虑到将来功能上的扩展,设计下的数据项和数据结构:

系统用户信息数据库,列出以下数据项:

用户信息:用户ID (自动编号)号、用户昵称、用户姓名、密码、电话号E-mail 地址、家庭住址、邮编。

系统的菜肴信息(book )数据库,列出以下数据项: 书籍的记录信息:ID (自动编号)、菜名、价格、图片、数量 所属类别、其他备注。

5.2 数据库逻辑结构设计

数据库的概念设计结束后,现在可以把上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。根据开发系统的情况,是一个小型的网上订餐系统,所以采用Assess 数据库。

功能介绍:记录后台管理员信息。用于管理员登录后台时进行数据调用。

功能介绍:记录客户订单信息。记录客户姓名、联系方式、订餐付钱方式等。

功能介绍:记录客户信息。记录客户姓名、联系方式、注册时间会员种类等。

表4 prokind1(菜品分类大类)

功能介绍:记录菜品分类。

功能介绍:记录新闻分类。

功能介绍:记录菜品信息。显示菜品新闻介绍、菜品类别以及相关图片。

功能介绍:记录新闻内容。显示新闻来源、发布时间以及相关图片。

6 详细设计

在注册信息时,先填写用户名和密码,然后判断用户名和密码是否真确,,不合法重新输入。

N

在订餐时,先选择菜品和数量,下订单,判断信息是否完整,提交订单。

N

订餐流程图

在修改信息时,先选中一条待修改的记录,然后直接输入数据,判断合法性,合法则保存至数据库,不合法重新输入。

N

用户数据修改流程图

6.1前台功能模块分析

6.1.1数据库连接

专门独立一页面除了作为进行数据库连接功能的实现,同时写入系统常用的几个函数,其目的是方便以后其它页面的功能实现时能直接调用此页面,而

不需反复写入代码,提高效率。函数的编写主要是利用了ASP 内置几个重要函数来实现的。Conn_xt文件下包含两个页面。 页面shopxt.asp :

Rem 过滤HTML 代码

function HTMLEncode(fString)

if not isnull(fString) then

fString = replace(fString, ">", ">") fString = replace(fString, "

fString = Replace(fString, CHR(10) & CHR(10), "

") fString = Replace(fString, CHR(10), "
") 'fString=ChkBadWords(fString) HTMLEncode = fString else

HTMLEncode=fstring end if end function

Rem 过滤SQL 非法字符 function checkStr(str) if isnull(str) then checkStr = ""

exit function

end if

checkStr=replace(str,"'","''")

end function

Rem 判断字符是否是整型 function isInteger(para) on error resume next

dim str dim l,i

if isNUll(para) then isInteger=false exit function end if

str=cstr(para)

if trim(str)="" then isInteger=false exit function end if l=len(str) for i=1 to l

if mid(str,i,1)>"9" or mid(str,i,1)

isInteger=true

if err.number0 then err.clear end function %>

6.1.2菜品图片浏览

用户可直接在主页面查看菜品信息包括菜品图示以及价格。操作简单只需将鼠标放在菜名上即可显示菜品图示。浏览方便,特色性强。采用JavaScript 语言编写。在网上搜索代码嵌入页面使用。如图4-1所示。

图4-1 菜单浏览页面

6.1.3订单填写

订单是用户管理自己在网站订餐的一个模块,此功能在这里不仅给用户提供了查看自己的订餐,还提供了自动计算功能。如图4-2所示。

图4-2 订单菜单

页面 dingcan.asp: function subm(){ if(!checkDate())return;

var str = '您的订单如下:\n\n-------------------\n\n';

var ts = '';

var allN = 0;

for(var i =0;i

if(form3(i).name=='number'){

if(form3(i).value>0){

ts += ' ⊕'+form3(i-2).value+' '+form3(i-1).value+'元 X '+form3(i).value+'份='+(form3(i-1).value*form3(i).value)+'元 \n\n'

allN += (form3(i-1).value*form3(i).value);

}

}

}

str += ts + '-------------------------------------\n\n总计: '+allN+'元';

str += '\n\n送餐时间:'+form3.hours.value+'点'+form3.minutes.value+'分';

if(ts == '')return alert

if(confirm(str)){

form3.list.value = ts;

form3.list1.value = allN

form3.submit();

}

}

查看订单状态:

此功能为会员所特有,只有会员登陆后才能查看订单信息。如图4-3所示。

图4-3 查看订单

网页:ckdd.asp

aa=session("names")

set rs=server.CreateObject("adodb.recordset") rs.open "select * from tdgl where yhm='"&aa&"' order by id desc",conn,1,3

if rs.eof and rs.bof then response.write "您还没订过餐!!" 'response.End Else %>

if not rs.eof then i=1 do while not rs.eof %>

rs.movenext

i=i+1

6.1.4在线留言

在网站建设初期,针对所有用户开放留言区,用户可以提出对菜品信息、如何送货以及对网站建设的任何问题。在网站正式步入轨道后将改为只针对会员开放。如图4-4所示。 loop rs.close end if end if %>

图4-4 用户留言页面

网页:liuyan.asp

主要介绍分页代码:

Const MaxPerPage=10

dim totalPut

dim CurrentPage

dim TotalPages

dim j

dim sql

if Not isempty(request("page")) then

currentPage=Cint(request("page"))

else

currentPage=1

end if

if currentpage

currentpage=1

end if

if (currentpage-1)*MaxPerPage>totalput then

if (totalPut mod MaxPerPage)=0 then

currentpage= totalPut \ MaxPerPage

else

currentpage= totalPut \ MaxPerPage + 1

end if

end if

检查留言信息是否填完整:

图4-5 查看留言填写完整

页面:liuyan1.asp

ifrequest.Form("name")=""orrequest.Form("email")=""or

request.Form("textarea")="" then

response.Write("")

response.end()

end if

names=request.Form("name")

email=request.Form("email")

title=request.Form("title")

textarea=request.Form("textarea")

exec="select * from liuyan"

set rs=server.createobject("adodb.recordset")

rs.open exec,conn,2,3

rs.addnew

rs("name")=names

rs("email")=email

rs("title")=title

rs("content")=textarea

rs("adddate")=now()

rs.update

rs.close

response.Write("") set rs=nothing

conn.close

set conn=nothing

%>

6.2后台功能模块分析

6.2.1添加菜单

页面除了添加菜单的基本窗口,还使用了2个插件来完善添加菜单详细信息:一个是上传组件,目的是实现菜单图片的上传;还有一个就是详细说明的编辑,每个菜单都需要细节的介绍,此插件提供了类似于具有办公软件的功能的编辑窗口。

页面 Addpro.asp:

首先页面利用对象Session 来实现对后台管理员的身份和权限的控制,再通过对数据库的连接,实现二个功能:一个功能是获取页面Addpro.asp 所提交的商品相关信息,并插入到数据库相应的表里;再一个是对提交商品的更新信息来刷新数据库,完成对商品信息的编辑, 如图4-6所示。

页面 addpro.asp

//将里面的链接换成本地链接

aa="http://"&Request.ServerVariables("server_name")&Request.ServerVariables("path_info")

aa= mid(aa,1,len(aa)-17) '16=admin/xpaddnews.asp

'response.write aa

'response.end

content=replace(content,aa,"")

session("content")=content

rs("newscontent")=content

rs.update

rs.close

图4-6 添加菜单

set rs=nothing

session("content")=""

response.write ""

response.End

');

else

set rs=server.CreateObject("adodb.recordset")

sql="select * from prokind1"

rs.open sql, conn, 1, 1

set rs1=server.CreateObject("adodb.recordset")

sql="select * from prokind2"

rs1.open sql, conn, 1, 1

//当大类改变时执行

function changelocation(locationid)

{ document.form1.prokind2.length = 0; var locationid=locationid; var i; document.form1.prokind2.options[document.form1.prokind2.length] = new Option("选择小类",0);

for (i=0;i

= new document.form1.prokind2.options[document.form1.prokind2.length]

Option(subcat[i][0], subcat[i][2]);

} } }

6.2..2菜单管理

查看菜单信息:

显示菜品名、所属分类以及发布时间,管理者可对菜单进行编辑。如图4-7所示。

图4-7 菜单管理页面

//用户登陆及权限控制

dim selecttype,selectkey,selectid

selectkey=trim(request.form(trim("selectkey")))

selecttype=trim(request.form("selecttype"))

selectid=request.form("selectid")

//根据参数值判断是否删除指定商品

if selectid"" then

conn.execute "delete from product where id in ("&selectid&")"

response.Write ""

response.End

end if

6.2.3查看回复留言

图4-8 回复留言

回复留言:

管理者及时回复顾客留言,并在前台显示。如图4-8所示。

liuyanreply.asp

dim id //建立一个数据集

id=request("id")

if request.QueryString("action")="save" then

set rs=server.CreateObject("adodb.recordset")//建立一个数据集的实例,此时数据集中没有数据

rs.open "select * from liuyan where id="&id,conn,1,3//打开数据集

rs("reply")=trim(request("reply"))

rs("replydate")=now()

rs.update//把更改过的值更新回数据库

rs.close

set rs=nothing

response.write ""

response.End

end if

action="liuyanreply.asp?action=save&id=" onSubmit="return checkdata()" onReset="return ResetForm();">

set rs=server.CreateObject("adodb.recordset")//定义数据集

rs.open "select * from liuyan where id="&id,conn,1,1//打开数据集在其中搜索%>

7 软件测试

软件测试是系统质量保证的主要活动之一。测试虽然不是质量保证的“安全网”。但它是不可缺少的,而且是重要的环节。因为,在系统开发的过程中,涉及一系列的活动,而在这个活动过程中,人们可能犯很多错误,错误可能发生在设计阶段,也可能发生在整个过程的开始阶段。

系统测试的目标是:测试是一个程序的执行过程,其目标在于发现错误。一个好的测试用例能够发现至今尚未察觉的错误。一个成功的测试则是发现至今尚未察觉的错误的测试。

总之,测试是发现错误,这不只是从技术角度测试下定义。软件测试中最为重要的是,实际工作中人们的心理学和经济学问题。系统的测试分为单元测试、组装测试、确认测试和系统测试,每一步都是在前一步的基础上进行的。

7.1软件测试的目的和意义

在系统的详细设计以及编码过程进行完成之后,就要对办公自动化管理系统的程序进行测试。软件测试是软件开发过程中的一个重要环节。软件测试是为了发现程序中的错误而执行程序的过程;好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;成功的测试是发现了至今为止尚未发现的错误的测试。软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计出一批测试用例,并利用测试用例来运行程序,以发现程序错误的过程。测试阶段的主要任务是尽量发现程序错误,改正错误,直至程序的功能、性能满足用户需求。

7.2软件测试的步骤

1.单元测试:又称模块测试,是针对软件设计的最小单元程序模块进行测试的工作。其目的是发现模块内部的错误,修改这些错误使其代码能够正确运行。其中,多个功能独立的程序模块可并行进行测试。

2.集成测试:又称组装测试, 它的任务是按照一定的策略对单元测试的模块进行组装,并在组装过程中进行模块接口与系统功能测试。集成测试的策略主要有两种:一次性组装方式和增值式组装方式。

3.有效性测试:又称确认测试,目的是验证软件的有效性,即验证软件的

功能和性能及其他特性是否符合用户要求。软件的功能和性能要求参照软件需求说明书。

4.系统测试:系统测试的目的是为了测试软件安装到实际应用的系统中后,能否与系统的其余部分协调工作,以及对系统运行可能出现的各种情况的处理能力。

7.3软件测试的具体实现

1.运行程序,进入系统登陆界面,,输入用户名、密码和验证码,若输入有误系统会给出相应的提示信息,以此检测软件的安全可靠性

2.用管理员身份进入系统后台,测试信息发布功能模块,进行信息发布、删改信息,操作成功后在阅读相信信息。

3.用普通用户身份进入该系统前台,测试留言模块功能,说明以实现该项功能。

4.用管理员身份进入该系统后台,测试留言回复模块,说明以实现该项功能。

订餐信息中送餐地址不能为空

用户登录用户名或密码不正确

7.4软件测试结论

经过对各个模块的功能测试, 已经实现了各个功能, 达到了任务书中的各种要求, 该系统界面友好, 功能强大, 对用户来说是一款非常实用的企业网站信息系统。

7.5评价

软件基本达到设计要求,软件功能完整,用户界面良好,错误处理正确,且能正确提示错误种类。但是在测试中也发现软件的一些不足与缺陷,比如软件在用户第一次登陆时,也就是用户刚拿到软件时,必须用预先设定好的管理员账号登陆系统,等等一些缺陷,需要在软件进一步修改和维护时予以纠正。总的来说,软件通过测试。

结 论

本文简要介绍了典型B/S电子商务网上订餐系统的主要体系结构及功能模块, 重点讨论了系统开发工具、开发语言等关键技术以及系统的数据库建设,系统流程图和功能模块的代码分析。目前此系统基本可以完全的实现网上订餐的功能。但系统仍然有一些不尽人意,而这些问题主要集中在系统的安全上,虽然系统已经通过相关的控制语句对登陆用户身份进行验证,但是在当今网络信息安全中,仅仅对用户身份验证是不够的,还需要对传送数据进行加密,防止数据传输过程中被篡改等攻击进行防御。因此在今后的工作里, 这些功能的实现还需要更高的技术支持,也只有这样才能完善网上订餐系统,让所有的客户能在一个互相信任且安全的环境中享受购物的乐趣。

网上订餐系统无论是在开发过程中,还是建成后的日常维护过程中,都需要进行严格的检测,以保证订餐系统的服务质量。建议网上订餐系统应注意以下3点。

(1)把握好食物质量和宣传内容环节。提供的菜品必须是新鲜的优质产品而决非过期剩菜。产品宣传广告内容应健康真实,既要反映客观事物又要有欣赏价值。

(2)服务功能的检测:

①网上订餐系统不仅要把好进货关,而且由于网上订餐系统提供的是虚拟的电子商品,包含的信息量大,多分支、多链接、多媒体,所以网上订餐系统的服务检测就显得格外重要。对虚拟电子商品的审查,首先要进行内容正确性测试。如文字录入的错误、参照图像的错误等都会降低用户对商品的信任度。

②进行系统功能的测试。订餐系统所有功能是否能正确执行,有无死机或其他异常情况发生,交互手段是否能满足用户需求。

③对系统的执行效率进行测试。测试系统对大量数据的检索效率、数据的装载时间及对鼠标的反应速度等。

(3)用户身份确认及菜品的配送

随着网上订餐系统技术的日趋成熟、网上订餐的优势日趋明显,会有更多的人参与到网上订餐的浪潮中来,人类最终将迎接电子商务时代的来临。

参考文献

1 陈延文. 对ASP 的Request 和Response 两个内建对象的研究. 唐山:河北理

工学院学报, 2003年02期

2 张维明, 肖卫东, 邓苏, 代长华, 陈卫东, 汤大权. 应用软件生成环境ASP 的设

计与实现. 上海:国防科技, 1995年01期

3 张建章. 浅谈ASP 开发WEB 数据库应用技术. 合肥:计算机系统应用,1998

年09期

4 丁宝康. 数据库原理. 上海:经济科学出版社,2000

5 陆丽娜. 软件工程. 上海:经济科学出版社,2000

6 D.Livigston .CSS&DHTML FOR WEB 专业设计. 北京:清华大学出版社,

2000

致 谢

在本论文完成之际,首先要向我的导师邓老师致以诚挚的谢意。在论文的写作过程中,他们给了我许许多多的帮助和关怀。老师们学识渊博、治学严谨,待人平易近人,在老师的悉心指导中,我不仅学到了扎实的专业知识,也在怎样处人处事等方面收益很多;同时他们对工作的积极热情、认真负责、有条不紊、实事求是的态度,给我留下了深刻的印象,使我受益非浅。同时,我要感谢我们学院给我们授课的各位老师,正是由于他们的传道、授业、解惑,让我学到了专业知识,并从他们身上学到了如何求知治学、如何为人处事。我也要感谢我的母校山西煤炭管理干部学院,是她提供了良好的学习环境和生活环境,让我的大学生活丰富多姿,为我的人生留下精彩的一笔。另外,衷心感谢我的同窗同学们,在我毕业论文写作中,与他们的探讨交流使我受益颇多;同时,他们也给了我很多无私的帮助和支持,我在次深表谢意。

最后,向我的亲爱的家人和亲爱的朋友表示深深的谢意,他们给予我的爱、理解、关心和支持是我不断前进的动力。学无止境。明天,将是我终身学习另一天的开始。


相关文章

  • 本科计算机论文题目
  • 基于asp 语言的测试项目 学生信息管理系统的设计与实现 基于ASP.NET 的社区人口管理系统 基于ASP.NET 的课程教学网站设计 公司会议网站 C#高校工资管理系统 C#在线点歌系统 <数据库原理>精品课程网站设计 教师 ...查看


  • 计算机专业毕业论文题目_大全(1)
  • 目 录 ASP 类计算机专业毕业论文题目.................................................................................................... ...查看


  • 网络银行系统的设计与实现毕业论文
  • 毕业设计说明书 网络银行系统的设计与实现 网络银行系统的设计与实现 Internet Bank System Design And Implementationon 摘 要 网上银行是电子商务时代银行的必然选择,它利用计算机和互联网技术,为 ...查看


  • 软件工程开题报告
  • 题目 毕业设计(论文)开题报告 基于web 的网上订餐系统的设计与开发 目录 一.选题的依据及意义 .................. 错误!未定义书签. 二.国内外研究概况 ............................... ...查看


  • 网上购物系统论文
  • 课程设计 题 目: 网上购物系统 系别:专业年级:班组 级:次: 计算机科学与技术专升本1303班 指导教师: 2014年05月31日 摘要 网上购物系统是一个基于Internet,运用MyEclipse软件做的,并根据现有的网上购物系统的 ...查看


  • (完整版)基于安卓的网上订餐系统毕业设计
  • 摘 要 在科学技术高度发展的当今社会,网络信息化已经成为时代的潮 流.随着计算机技术的不断更新变化,特别是Android 操作系统的出现,使移动互联网业务更加蓬勃的发展.根据专家的调查和研究,发现传统的订餐模式已经不能适应市场的高速发展.因 ...查看


  • 酒店网上订餐系统分析说明书
  • <电子商务分析与设计> 课 程 设 计 题目:酒店在线订餐系统 系 别:商学系 专业年级: 07级电子商务2班 姓 蒋 欣[1**********] 谢顺彬[1**********] 林文强[1**********] 许智捷[1 ...查看


  • 手机销售网论文最新版
  • 本科毕业实习报告 题目:走向社会的第一步 --在新疆财经大学科研处的实习心得 学 号: 学生 姓 名: 学 院: 专 业: 年 级: 指导教师 姓名及职称: 完 成 日期: 摘 要 随着科学技术的不断发展,互联网络已经成为人们生活当中不可缺 ...查看


  • 网上订餐管理系统优秀论文
  • 毕业设计(论文) 题目: 基于Java EE网上订餐系统设计与实现 学 生 姓 名 李国卫 学 号 [1**********]3 班 级 信管092202H 所属院(系)计算机科学与技术系 指 导 教 师 杨帆 王晓婷 2013 年 5 月 ...查看


热门内容