1、 山 西 大 学 商 务 学 院软件工程课程设计报告题 目: 网络订餐系统的设计与实现 班 级: 12 嵌入式班 组 长: 王雪 组员姓名: 梁潇琳 申姣姣 吕晓婧 史耀花 说 明一、设计题目:网络订餐系统的设计与实现二、小组成员及任务分配情况姓名 学号 任务分配梁潇琳 2012331118 可行性分析文档、课程设计报告?部分申姣姣 2012331123 需求分析文档史耀花 2012331127 系统详细设计文档吕晓婧 2012331121 系统测试文档信息学院软件工程课程设计报告- I -目 录1. 开发目的和意义 .31.1 开发目的和意义 .31.2 完成情况 .32. 开发相关技术及方
2、法 .32.1 开发环境和开发工具 .32.2 相关技术及方法 .43. 系统分析 .43.1 可行性分析 .43.2 需求分析 .63.2.1 性能需求分析 .63.2.2 功能需求分析 .63.2.3 系统数据流图 .73.2.3 系统需求分析 .103.2.4 行为需求分析 .114. 系统设计 .124.1 总体设计 .124.2 系统模块的详细设计 .124.2.1 主界面设计 .124.2.2 模块设计 .124.3 系统模块的数据库设计 .144.3.1 数据库设计概述 .144.3.2 概念结构设计 .144.3.3 逻辑结构设计 .164.4 数据库设计 .175. 系统实现
3、 .195.1 用户注册登录模块实现 .195.2 订单处理模块实现 .195.3 点评模块实现 .196.系统测试 .206.1 测试的重要性 .20信息学院软件工程课程设计报告- II -6.2 测试的目标 .206.3 测试的方法 .206.4 测试内容 .216.4.1 用户注册登录模块测试 .216.4.2 订餐服务模块测试 .216.4.3 订单处理模块测试 .226.4.4 用户安全性测试 .226.5 测试结果 .227.实践总结 .237.1 小结 .237.2 实践感想 .23参考文献 .24附录 1:可行性分析文档 .25附录 2:需求分析文档 .27附录 3:系统设计文
4、档 .34附录 4:系统测试文档 .41信息学院软件工程课程设计报告- 3 -1. 开发目的和意义1.1 开发目的和意义随着网络技术的不断发展,人们对于网络有了越来越多的要求。Ebay、阿里巴巴、淘宝的出现,让电子商务重现曙光,Google、百度的出现,让人们通过网络检索信息,获得有效信息的途径更加丰富。当学生们忙碌了整个上午后,享用丰富的午餐成了基本的要求,而网上订餐系统正是为了帮助人们寻找和发现新的菜种,品尝不同风格和不同种类的菜品。因此,面向大学生的网上订餐系统的设计有着良好的现实意义,网上订餐业务在校园也有极大的发展空间和良好的发展前景。1.2 完成情况本项目实现了用户注册与登录、餐厅
5、管理、用户订餐、系统管理、评价等功能,已经进行到了了系统的设计以及测试阶段。信息学院软件工程课程设计报告- 4 -2. 开发环境及相关技术方法2.1 开发环境(1)硬件环境(2)软件环境JSP 技术是一种服务器端的 HTML 页面中嵌入 JAVA 代码的脚本语言,它比一般脚本语言的执行速度更快,由于 JSP 是基于 JAVA 语言的,所以它可以运行在 UNIX/LINUX 和WINDOWS 平台上,是一种难得的动态网页开发语言。 Java 的特点: (1)简单 Java 语言简单是指这门语言既易学又好用。简单并不代表干瘪, Java 是一门很丰富的语言。 (2)面向对象 基于对象的编程更符合人
6、们的思维模式,使人更容易编写程序。 (3)跨平台 Java 是基于虚拟机运行的程序,它可以实现一处编译多处运行。 (4)多线程 Java 实现了内置多线程支持。多线程允许同时完成多个任务。 (5)安全 Java 小应用程序被限制在只允许访问 Java 运行环境中 ,不允许访问计算机其他资源。Java 提供了强类型检查机制,使得程序在开发期间更安全。 (6)动态 Java 程序的基本组成单位就是类,有些类是自己编写的,有些类是从类库 引用的,而类又是运行时动态绑定的,这就使得 Java 可以在分布式环境中动态的维护程序和类。本系统选择 SQL Server 2008(Standard Query
7、 Language,SQL 结构化查询语言)作为数据管理系统。 SQL Server 2008 是有 Microsoft 开发和推广的关系数据库管理系统(DBMS) ,是一个全面的数据库平台,使用集成的商业智能 (BI)工具,提供了企业级的数据管理。2.2 相关技术及方法?系统采用?技术、?方法?,具体如下几个方面:(1)JAVA信息学院软件工程课程设计报告- 5 -?.(2) ?.(3)JAVA?.随着互联网技术的不断发展,基于浏览器/服务器(Browser/Server 简称 B/S)体系结构的应用程序得到了空前广泛的应用。但是服务器之间的通讯,尤其是在不同平台上运行的服务器之间的通讯仍然
8、不是一件容易的事情。因为大多数 Internet 应用程序都是以数据库为中心的,方便的访问多种数据源的能力也比以往任何时候都更加重要。 JSP 无疑可以轻松地实现这类功能,在动态内容的解决问题中,还存在其他的解决方法,但是开发人员要掌握这些技术很难。例如,Java Servlets 这样的技术就可以使得用 Java 语言编写交互式的应用程序的服务器端的代码变得更加简单。Java Servlets 就是一个基于 Java 技术的运行在服务器端的程序(与 Applet 不同,后者运行在浏览器端) 。开发人员编写出Servlet 程序,用来接收来自 Web 浏览器的 HTTP 请求,动态地生成响应,
9、然后发送包含HTML 或 XML 文档到浏览器。 但是使用这种方法,整个网页必须都在 Java Servlet 中制作。如果开发人员或者 Web 管理人员想要调整页面的显示,就不得不从新编辑并编译 Java Servlet 程序。采用这种方法,编写带有动态内容的页面需要有很熟练的应用程序开发技巧和经验。很显然,一个简单的创建动态页面的解决方案要能解决以下的问题: 1. 能够在任何 Web 或应用程序服务器上运行 2. 将应用程序逻辑和页面显示分离 3. 能够快速地开发和测试 4. 简化开发基于 Web 的交互式应用程序的过程 JavaServer Pages (JSP)满足这些要求,它整合了存
10、在的 Java 编程环境提供支持的技术和工具,产生了一种新的、开发基于 Web 应用程序的方法,这个方法给予使用基于组件应用的逻辑页面的设计者提供了强大的功能。 SQL Server 2008 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,可以构建和管理用于业务的高可用和高性能的数据应用程序。信息学院软件工程课程设计报告- 6 -3. 系统分析3.1 可行性分析随着互联网的日益普及,网上订餐也开始慢慢风靡于我们的生活。网上订餐业务的出现,能够帮助人们寻找和发现新的菜种,品尝不同风格和不同种类的菜品。当代大学生作为社会中的重要群体,饮食在他们生活中起着重要作用。因此,面向大学生的
11、网上订餐系统的设计有着良好的现实意义,网上订餐业务在校园也有极大的发展空间和良好的发展前景。网上订餐系统无论是在应用的深度还是广度上都是一个逐步发展的过程。开发一个局部系统时要充分考虑到局部系统和整个目标系统之前的相容性和完整性,以利于今后整个系统的建立。从订单处理流程上总体把握系统的设计,在具体的设计实现上围绕三个方面进行展开,即用户、管理者、系统维护者。?,具体如下几个方面:(1)技术可行性分析此次开发基于 C 语言作为开发语言,它具有语言简洁、语言自由、支持跨平台、与 XML相融合等多个特点。我们以 SQL Sever 技术作为后台支撑,它能够实现数据库镜像、在线恢复、在线检索操作、快速
12、恢复,安全性能高等多个功能。所以从现有的技术水平来说,完全能够建立一个以消费者服务和内部管理为目的的信息平台。?可行性。 经济可行性分析 该系统无需额外的设备购买和人员培训费,所以在经济上是可行的。而且该系统可以做到用户足不出户就能吃到美味的食物,同时增加餐馆的营业额的效果。通过以上的分析,开发网络订餐系统是完全可行的。 社会可行性信息学院软件工程课程设计报告- 7 -1 网络订餐系统作为一种全新的商务模式,但也存在一些潜在的问题。该系统为独立开发,在技术上没有使用任何现有的软件与方法,所以在法律方面不会存在侵犯专利权,侵犯版权等问题。2 随着计算机知识的普及和推广,越来越多的人掌握了计算机的
13、基本使用方法和技能。随着 Internet 的发展,用户对于网络、WINDOWS 等环境下的软件使用比较熟悉,对于新鲜事物,用户表现出极大的兴趣和热情。总之,本系统在?可行的。3.2 需求分析3.2.1 性能分析(1)操作简单,界面友好:完全空间式的页面布局,使得菜品、咨询等信息录入的工作更简单。另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。对常见类似的网站的管理的各个方面:基本信息录入、浏览、删除、修改、搜索等方面都大体实现,用户对菜品的预定以及支付方式。2、即时可见:对客户预定餐饮信息的处理(包括录入、删除)将立即在首页的对应栏目显示出来,达到“即时发布,即时见效”的功能。3、系
14、统运行应该快速、稳定、高效和可靠。4、在结构上具有很好的可扩展性,便于将来功能的扩展和维护。5、对数据的安全性、完整性要求:用户信息保密,只有管理员能任意修改。确保网上支付安全。菜品信息、用户信息必须保证其完整性。防止恶意删改。3.2.2 功能分析 (DFD 、用例图)首先对现有系统进行分析,现有系统是信息的重要来源。分析已有系统的功能和实现,从而确定新系统的设计目标和模型。由于条件有限,调研主要是在网上进行。即通过在网上已有的订餐网站注册成会员来了解其具备的功能。3.2.3 系统数据流图该系统的数据流程图分三层来描述,分别是顶层数据流图、一级分解、二级分解,具体数据流程图如下图所示:信息学院软件工程课程设计报告- 8 -1、 顶层数据流图?。系统的顶层数据流图如图?所示:2、第 0 层数据流图?3、第一层数据流图(1)用户管理数据流图系 统 管 理 员网 上 订 餐 系 统用 户订 餐 管 理 员用 户 用 户 管 理 系 统订 餐 管 理 系 统菜 品 管 理 系 统 系 统 管 理 员餐 厅 管 理 员订 餐 信 息会 员 信 息菜 品 信 息会 员 信 息订 单 信 息菜 品 信 息订 单 信 息