




已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
II 目目 录录 摘要 1 关键字 1 引言 1 一 研究的背景及意义 1 二 订餐系统现状与发展 2 三 结构安排 3 1 相关技术介绍 4 1 1 Net 平台简介 4 1 1 1 Net 概述 4 1 1 2 ASP Net 的优势 6 1 2 SQL Server 2008 简介 7 1 2 1 SQL Server 2008 概述 7 1 2 2 SQL Server 2008 的优势 7 1 3 系统体系结构 8 2 系统分析与设计 9 2 1 可行性分析 9 2 2 系统设计目标 10 2 3 系统功能分析 11 2 3 1 系统功能实现 11 2 3 2 系统需求分析 12 3 数据库设计 17 3 1 数据库需求分析 17 3 2 系统概要设计 17 3 2 1 系统概要设计概述 17 3 2 2 订餐系统 E R 图 18 3 3 逻辑设计 20 3 3 1 逻辑设计概述 20 3 3 2 数据表的设计 20 3 4 物理设计 22 4 网上订餐系统的实现 23 III 4 1 功能模块介绍 23 4 1 1 登陆 注册 23 4 1 2 菜单信息浏览 24 4 1 3 订餐服务 25 4 1 4 用户反馈及评分 26 4 1 5 订单处理 27 4 1 6 后台信息管理 27 4 2 核心功能实现 29 4 2 1 用户自定义控件说明 29 4 2 2 信息显示 30 4 2 3 推荐指数 30 4 2 4 分页显示算法 31 4 2 5 购物车 32 5 网上订餐系统测试 33 5 1 测试目标 33 5 2 测试方法 34 5 3 主模块测试 35 5 3 1 登录 注册模块 35 5 3 2 订餐服务模块 35 5 3 3 订单处理模块 35 5 3 4 菜单管理模块 35 5 4 测试总结 37 6 结论 37 6 1 总结 37 6 2 展望 38 参考文献 38 AbstractsAbstracts 39 KeyKey WordsWords 39 致谢 39 网上订餐系统 摘要 随着人们生活水平的提高 对饮食的要求已不仅是解决温饱 很多人在进行紧张工 作之余选择享受美食 得到美的精神享受和放松 传统的就餐方式往往会出现人们到餐厅就餐 排 队或没有位置的现象 因此 开发出图文并茂 信息能够及时更新与查看的网上订餐的系统就成为 了解决上述问题的主要途径 网上订餐是近年来随着网络技术的发展而产生的一种新型的就餐方式 它与传统就餐方式相比 网上订餐拥有很多优势 这样的订餐方式效果很好 既让顾客觉得方便 快捷 又对每个订单的信 息保管妥善 处理及时 实现了高度智能化管理 网络订餐方式将成为餐饮业销售的新模式与新的 增长点 本文通过对网上订餐进行需求分析 开发出一个基于互联网的B S模式的网上订餐系统 实现 了在线信息浏览 在线订餐与在线订单处理及信息更新和删除等功能 系统的数据库方面 使用关 系数据库管理系统Microsoft SQL Sever2008 使系统安全性能更高 同时采用当前正在流行的 ASP Net平台编程 使用户界面更加完美 关键字 网上订餐 互联网 Net 订单管理 信息浏览 引言引言 一 研究的背景及意义 俗话说 民以食为天 随着人们生活质量的提高 对饮食的要求已不仅是解决 温饱需求 很多人在进行紧张工作之余会选择享受美食来享受生活 进而进行放松 餐饮业是一种个性化 多样化的服务产业 随着网络技术的发展和普及 将餐饮服务 与个性化 多样化服务的电子商务相结合 1 形成了方便 快捷 个性化的网上订餐系 统 通过网上订餐系统 顾客不必亲临现场 便可以为自己 家人 朋友聚会等置办一 份既营养又实惠的美食 其最大的优势是 图文并茂 信息能够及时在线更新与查看 并有效地解决了传统就餐过程出现的排队 拥挤 信息变更不能及时等现象 这样既 节省了时间 又为广大用户提供更多选择 订餐系统基于 ASP Net 平台和 SQL Server2008 数据库开发 实现了网上订餐系统 信息的动态管理 对每个订单的信息保管妥善并且及时处理 实现了高度的智能化 该系统基于 B S Browser Server 浏览器 客户端 模式实现 这种结构使得数据只有结 果集合在浏览器中显示 数据的处理在服务器进行 用户不用安装客户端 而且由于 通过服务器端统一管理数据 易于保证数据的一致性 二 订餐系统现状与发展 国外 在外国 在多年前许多知名品牌就开始了网上订餐服务 如今提供网上订餐服务的 商家数目正在急剧膨胀 人们只需一部电脑和一张信用卡 就可全天订座 即便并非 名流或常客也不是厨师的朋友照样能与他们平起平坐地享受这种便捷的订餐方式 因 此 网上订餐的方式已经被国外的许多家庭所认可 国内 目前我国使用的订餐方式大都还停留在电话订餐的层次上 毋容置疑 电话订餐 方便 随时打一个电话就可以预定餐品 但是这种方式还是存在着一些问题 比如这 种订餐方式的效率低 并且对信息的保存与更改都需要人工记录 容易遗漏和出错 因此 网上订餐服务在逐渐新起 据了解 在济南 青岛 临沂等地 消费者对订餐 服务的需求是很大的 尤其是临沂商城 由于这里有位居全国第二位的专业批发市场 群体 许多客商因整天忙于生意而无暇去饭店就餐 因而他们热衷于网上订餐 济南 有一午餐网很受消费者的欢迎 由于网站为消费者提供免费的订餐服务 并通过让消 费者享受多种优惠的服务 吸引了众多网上订餐者 2 总体来说 我国的网上订餐业务 还处于形成期 成长空间很大 发展趋势 人们通过上网 预定需要的餐品 这样不仅节约了时间 而且为饭店的订餐管理 工作提供了方便 最重要的是 这样的订餐方式效果很好 对每个订单的信息保管妥 善并且处理及时 实现了高度智能化管理 因此将来网上订餐服务有望发展成一种非 常受欢迎的订餐方式 将成为餐饮业销售的新模式和新的增长点 2 三 结构安排 本文通过对网上订餐系统进行需求分析 开发出一个基于互联网的B S模式的网上 订餐系统 数据库方面 使用关系数据库管理系统Microsoft SQL sever2008 系统安全 性能更高 同时采用当前正在流行的ASP Net平台编程 使用户界面更完美 系统使用面向对象的软件开发思想 按照软件工程的基本步骤进行了系统分析 设计和实现 系统分为前台和后台两部分 其中前台主要是用户进行菜单和相关资讯 的浏览 以及订餐 信息反馈和评分等 主要是面向顾客的 后台是对前台数据的维 护 设计和订单管理的 主要是面向管理人员 管理人员又分为系统管理人员和订餐 管理人员 系统管理人员负责维护和管理网站信息 订餐管理人员负责查看当前形成 的新订单与订单明细 并且处理订单 1 1 相关技术介绍相关技术介绍 1 1 Net 平台简介 1 1 1 Net 概述 订餐系统是基于 Net 平台 利用 ASP Net 技术开发的 Net开发平台是从微软Windows DNA Distributed Network Architecture 衍生而 来的 随着三层 多层企业信息系统结构的发展与下一代分布式计算模型Web服务的诞 生 企业应用中关于平台 框架 语言的竞争也越来越激烈 2000年6月微软公司宣布 其 Net战略 并开始对 Net这一全新的概念进行宣传 对其相关产品进行研发 一直以 来 Net给人的感觉比较抽象和笼统 无法给出明确的定义 也许引用微软首席执行官 的说法更容易让人理解 Microsoft Net代表一个集合 一个环境 可以作为平台支 持下一代Internet的可编程结构 诚然 Net是一个开发和运行软件的全新平台 便 于开发基于Web的应用 其拥有大量的运行库服务以支持用多种编程语言编写的组件 具有跨语言 跨平台的互操作能力 Net使高度分布式Internet环境下的应用程序开发 得到了简化 为XML Web服务与其他应用程序提供了一个高效的安全的开发环境 并全 面支持XML 框架结构在 NET中的地位非常重要 因此下面进行详细地阐述 Net Framework 是整个 Net平台的基础结构 它由基类库 如ADO Net和ASP Net 和通用语言运行库 CLR Common Language Runtime 组成 如图1 1所示 VBC C JScript 通用语言规范 Common Language Specification ASP netWindows应用 ADO Net 基础类库 通用语言运行库 Common Language Runtime 图1 1 Net平台结构图 从图中可以了解到 Net开发框架的主要组成部分 首先整个开发框架的基础是通用 语言运行库 CLR 及基础类库 BCL 在开发技术方面 Net提供了全新的数据库访问技 术ADO Net 以及Web开发平台ASP Net和Windows编程技术Win Forms 开发语言方面 Net提供了对VB VC C Jscript J 等多种语言支持 5 在本系统开发中使用的 Visual Studio Net 2008则是全面支持 Net的开发工具 1 1 2 ASP Net 的优势 ASP Net是一种用于创建内容丰富的动态网站 Web应用程序和XML Web服务的新编 程模型 同以往的编程模型相比 这种新编程模型提供了基于组件的架构与开发范例 6 ASP Net提供了下面一些超越以前WEB技术的新特性 7 1 优良性能 ASP Net在服务器上运行的是经过编译的CLR代码 同以前的技术相 比 ASP Net能充分利用Binding 绑定 及时编译 本地优化 缓冲服务来提高程序的 性能 2 大量工具箱支持 在Visual Studio的开发环境中 ASP Net具有丰富的工具箱 和设计器 如所见即所得的编辑方式 支持拖放的服务器控件 以及动态的配置管理 此外还有许多第三方控件 3 强大功能和良好机动性 因为ASP Net是建立在CLR基础上的 所以整个平台的 功能与适用性更加适合网络应用程序的开发 ASP Net可以使用很多种程序语言来编写 此外 CLR的协同工作能力保证以前开发的基于COM的程序 在移植到ASP Net后 依然 可以正常使用 4 崭新配置管理方式 ASP Net是一种基于文本格式 等级式的配置系统 一个 ASP Net应用程序只需将必要的程序拷贝到服务器上就可以使用了 对于正在运行中的 己编译的代码 也同样可以对其配置进行更改 而不需要重启服务器 5 可移植性与良好适用性 当ASP Net的一条线程出现异常情况后 一个新的进程 会在它的地方重新建立 继续担负原进程所处理的任务 这就使应用程序能不中断地 处理客户的请求 6 超强扩展性 ASP Net崭新的结构体系允许开发者开发自己的插件 且ASP Net 下任何一个组件都能够被用户自己开发的组件扩展或替代 1 2 SQL Server 2008 简介 1 2 1 SQL Server 2008 概述 本系统选择 SQL Server 2008 Standard Query Language SQL 结构化查 询语言 作为数据管理系统 SQL Server 2008 是有 Microsoft 开发和推广的关系数据库管理系统 DBMS 是 一个全面的数据库平台 使用集成的商业智能 BI 工具 提供了企业级的数据管理 SQL Server 2008 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能 可以构建和管理用于业务的高可用和高性能的数据应用程序 8 1 2 2 SQL Server 2008 的优势 SQL Server 2008具有很高的性能 处理能力 在企业级支持 商业智能应用 管理开发效率等方面有较强的能力 它提供的集成的数据管理和分析平台 可以帮助 组织更可靠的管理来自关键业务的信息 更有效的运行复杂的商业应用 而通过其中 集成的报告和数据分析工具 企业可从信息中获得更出色的商业表现力和洞察力 相 对于以前的版本 SQL Server 2008拥有以下的 重要新特性 1 支持XML数据类型 XQuery查询 2 CLR编写数据库对象 3 UDT SQL Server 2008里面支持自定义数据类型 4 Service Broker 提供了一个足够稳定可靠而又高效的异步消息排队队列 5 ADO Net 2 0 6 T SQL增强 除了一些功能更强的SQL函数 还增加了包括支持异常处理等一 些新的内容 7 数据库镜像 Mirroring 一个针对企业关键应用非常关注可用性而设计的 热备方案 可以大大提高SQL Server的高可用性 能在数据库发生故障几秒钟内切换 负载到备用系统上 8 全文索引增强 9 管理 监控 开发工具的集成和增强 10 BI的增强和存储引擎的改进 1 3 系统体系结构 本网上订餐系统采用了 B S 架构的设计体系 B S 结构相对于传统的 C S 结构 这 种结构使得数据只有结果集合在浏览器中显示 数据的处理在服务器进行 用户不用 安装客户端 而且由于通过服务器端统一管理数据 大大简化了 WEB 应用的开发难度 易于保证数据的一致性 9 B S模式的三层分层模型 第一层表示层 数据表示层为用户接口部分 是用户与系统之间交互信息的界面 它的主要功能是检查用户输入的数据 显示系统输出的数据 它的任务是由Web浏览器 向网络上某一Web服务器提出服务请求 Web服务器对用户身份进行验证后用HTTP协议 把所需文件资料传送给客户端 客户机接受传来的文件资料并把它显示在Web浏览器上 第二层事务逻辑层 事务逻辑层也称功能层 是应用的主体 位于Web服务器端 它包括应用中全部的业务处理程序 除了输入输出在表示层 数据库在数据层以外 全部的统计 汇总 分析 打印功能存放在功能层 它的任务是接受用户的请求 首 先需要执行相应的扩展应用程序与数据库进行连接 通过SQL等方式向数据库服务器提 出数据处理申请 数据库服务器将数据处理的结果提交给Web服务器 再由Web服务器 传送回客户端 第三层数据库层 数据库层包括数据库管理系统和数据库 数据库管理系统负责 管理其数据库 为应用程序提供支持 位于数据库服务器端 任务是接受Web服务器对 数据库操作的请求 实现对数据库查询 修改 更新等功能 把运行结果提交给Web服 务器 2 2 系统系统分析与设计分析与设计 订餐系统无论是在应用的深度还是广度上都是一个逐步发展的过程 开发一个局 部系统时要充分考虑到局部系统和整个目标系统之前的相容性和完整性 以利于今后 整个系统的建立 从订单处理流程上总体把握系统的设计 在具体的设计实现上围绕 三个方面进行展开 即用户 管理者 系统维护者 2 1 可行性分析 随着经济的快速发展 B2C 电子商务越来越受到人们的关注 10 订餐类网站 已 如雨后春笋般的出现在了个大城市 特别是在公司 企业内部 团体订餐已经成为趋 势 同时 随着全国人民的物质 精神和文化生活的高度提高 人们已经不再仅仅停 留在吃饱的程度 而是不但要吃饱 还要吃好 并且越来越挑刺 正因为如此网上订 餐业务的出现 正迎合了这些人的口味 他们不但省去了自己做饭的麻烦 而且也能 寻找和发现新的菜种 品尝不同风格和不同种类的菜品 网上订餐业务在中国有着极 大的发展空间和良好的发展前景 当代大学生与白领工作人士作为社会中的重要群体 他们对饮食的要求都在不断提高 饮食在他们生活中起着重要作用 因此 面向大学 生与都市白领人士的网上订餐系统的设计有着良好的现实意义 综上分析 决定利用 ASP Net 和 SQL Server 设计网上订餐系统 ASP Net 可以创 建与运用动态 交互的 WEB 服务器应用程序 SQL Server 2008 是一个杰出的数据库 平台 具有功能强大 安全可靠等特点 可用于大型联机事务处理 数据仓库及电子 商务等 11 2 2 系统设计目标 在需求分析的基础上 提出了如下的系统设计目标 1 系统安全性 系统应控制不同用户的使用权限 用户不能越权操作 系统应该确保数据的安全 性 同时 用户要求系统具有高度的可靠性 数据的准确性 系统的可恢复性 2 可维护性 客户会在系统使用过程中不断对系统提出新要求 扩展系统功能 这就要求系统 的可升级性必须良好 以满足客户长期实用的要求 并且在用户有新要求的时候可以 快速扩展功能 3 用户操作 系统设计应该人性化 操作简单方便 达到人机友好的目的 4 运行速度 系统响应时间是衡量系统性能好坏的重要参考 系统要求响应时间短 更新处理 迅速 数据转换与传送时间短 后台服务器响应迅速等等 由于系统使用者的特殊性 系统必须高效地响应并且在安全的前提下高效的响应 5 界面 用户界面应该做到清晰简单一目了然 易于操作 2 3 系统功能分析 2 3 1 系统功能实现 本系统主要是实现网上浏览菜单 订餐 产生订单等功能的系统 需要实现菜品 信息的动态提示 购物车管理 客户信息注册 登录管理 订单处理 信息反馈等模 块 需要完成的主要任务如下 当客户进入网上订餐时 应该在主页面中分类显示最 新的菜品信息 以供客户选择所需菜品 同时提供按菜品名称 快速查询所需菜品信 息的功能 当客户选择预定某个菜品时 应该能够将对应菜品信息 如 价格 数量 记录到对应的购物车中 此时客户可以选择选择其他菜品或是查看自己的购物车 最 后 在购物车中填写相应的送餐信息 提交订餐订单后 自动清除以生成订单的购物 车中的信息 餐厅服务人员根据订单信息 查看详细订单明细并根据实际情况处理订 餐 分析网上订餐系统 制订整个系统框架如下 网上订餐系统 前台 后台 首 页 菜 单 展 示 网 站 公 告 我 的 购 物 车 我 的 订 单 在 线 留 言 订 单 管 理 友 情 链 接 管 理 菜 单 信 息 管 理 公 告 信 息 管 理 用 户 信 息 管 理 留 言 信 息 管 理 图 2 1 系统整体框架图 2 3 2 系统需求分析 用于需求建模的方法有很多种 最常用的包括数据流图 DFD 实体关系图 ERD 和UML三种方式 UML 统一建模语言 是一种定义良好 易于表达 功能强大且普遍 适用的建模语言 它溶入了软件工程领域的新思想 新方法和新技术 它的作用域不 限于支持面向对象的分析与设计 还支持从需求分析开始的软件开发的全过程 12 本 系统使用UML中的用例图 活动图 状态图来对需求建模 用例图通过描述 系统 和 活动者 之间的交互活动来描述系统的行为 通过分 解系统目标 用例图描述活动者为了实现这些目标而执行的所有步骤 此方法最主要 的优点 在于它是用户导向的 用户可以根据自己所对应的用例来不断细化自己的需 求 此外 使用用例还可以方便地得到系统功能的测试用例 1 角色分析 分析的第一步是定义用例 以描述系统的外部功能需求 用例分析包括阅读和分 析需求说明 此时需要与系统的潜在用户进行讨论 根据上述需求 通过分析 网上 订餐角色分为两大类 用户和系统管理员 2 用例分析 在确认角色的基础上 确认用例 网上订餐系统中的用例有 用户管理 订单管 理 登录系统 菜品信息管理等等 本系统的用户用例图如图2 2所示 进行的操作包括订餐服务 信息浏览 订单管 理等 图2 2 订餐用户使用例图 管理员分为两类 一类是系统管理员用例图如图2 3所示 管理员进行的操作 后 台操作 包括用户管理 信息的浏览 添加 删除 修改等等 图2 3 系统管理员使用例图 除了用用例图描述系统需求以外 以下用活动图对系统的主要例进行说明 更具 体地描述该用例与角色的交互 1 用户登录 图2 5 用户登录 用户登录实现为本网站注册用户提供身份确认的功能 保证合法用户的应有权益 而且是否登录也将决定用户能否订餐 用户登录的前置条件是在登录前 用户必须完 成 注册 2 订餐服务 图2 6 订餐服务 在订餐服务用例中 每个用户都有个购物车 用户可以将自己选定的菜品及其数 量放入到购物车中 并且随时可以查看自己预定的菜品的数量和总价格 本用例开始 前用户必须登录到系统中 如果用例成功 顾客可以浏览自己购物车中的信息并决定 是购买还是删除 3 查看历史订单 图2 7 查看历史订单 注册用户可以查看自己的历史订单 在历史订单中 可以浏览曾经订购过的菜品 对于已经送餐后的菜品 可以进行评分和信息反馈 不能重复评论 某个菜品在这里 的评分会影响其在整个网站中的推荐指数 4 订单处理 图2 8 订单处理 处理订单的过程是订餐管理人员参与的 当前台有新的订单生成时 会自动在后 台的现有订单列表中显示出来 订餐管理人员可以点击查看未处理的订单 根据实际 情况进行处理 或者删除不需要的订单记录 3 3 数据库设计数据库设计 数据库设计一般分为六个阶段 之前已经完成需求分析 现在需要进行概念设计 逻辑设计和物理设计 本章将叙述这三个阶段的设计思路和设计过程 3 1 数据库需求分析 用户的需求具体体现在各种信息的提供 保存 更新和查询 这就要求数据库结 构能充分满足各种信息的输入和输出 收集基本数据 数据结构以及数据处理流程 组成一份详细的数据字典 为具体设计铺垫 13 通过系统功能分析 针对网上订餐需求 总结为 1 分为一般用户和管理员用户 只有用户身份才能进行前台订餐 只有管理员身 份才能进行后台管理 2 订单分成单张订单详情和总订单表 一张订单中含有多个订单明细 3 每一道菜品都从属于一种类型 4 一个用户可以订购多个菜品 5 一个用户对应多张订单表 3 2 系统概要设计 3 2 1 系统概要设计概述 概要设计是将用户的需求分析得到的结果抽象为信息世界的结构 即概念模型 概念结构独立于数据库的逻辑结构 独立于支持数据库的数据库管理系统 它是现实 世界到信息世界的中介 反映了实体与实体的联系 便于用各种数据模型进行转换 3 2 2 订餐系统 E R 图 E R图为实体 联系图 提供了表示实体型 属性和联系的方法 用来描述现实世 界的概念模型 14 构成E R图的基本要素是实体型 属性和联系 其表示方法为 实体 型 用矩形表示 矩形框内写明实体名 属性 用椭圆形表示 并用无向边将其与相 应的实体连接起来 多值属性由双线连接 主属性名称下加下划线 联系 用菱形表 示 菱形框内写明联系名 并用无向边分别与有关实体连接起来 同时在无向边旁标 上联系的类型 系统E R图如图3 1所示 订单条目菜品 留言版 管理员 菜单分类 订单用户 预定 包含M1 M N 生成M1 包含 M 1 包含1M 留言M1 回复 M 1 图 3 1 订餐系统 E R 图 以下是主要数据表的 E R 图 图 3 2 用户 E R 图 图 3 3 订单条目 E R 图 图 3 4 订单 E R 图 图3 5 菜单E R图 3 3 逻辑设计 3 3 1 逻辑设计概述 数据库的逻辑设计是概念模型向逻辑模型的转化 一般步骤是先将概念结构转化 为关系模型 然后将转化来的关系模型向特定 DBMS 支持下的数据模型转换 最后对数 据模型进行优化 3 3 2 数据表的设计 数据库的主要表详细结构如下 表 3 1 订单条目表 FieldTypeNullKeyComment IDIntNoYes标识递增 订单 IDIntNoNo外键 对应于订单中的 订单 ID 菜名Nchar 10 NoNo默认值是 待送餐 数量IntNoNo 单价FloatYesNo 评分IntYesNo默认为 0 分 Back订单YesNo顾客订餐的信息反馈 表 3 2 订单表 FieldTypeNullKeyComment 订单 IDIntNoYes标识递增 用户 IDIntNoNo外键 对应于用户表中的 用户 ID 订单状态Nchar 10 NoNo默认值是 待送餐 送餐地址Nvarchar 50 NoNo 备注Nvarchar MAX YesNo 订餐姓名Nvarchar 50 NoNo 订餐时间DatetimeYesNo 金额总价FloatYesNo 表 3 3 菜单表 FieldTypeNullKeyComment cIDIntNoYes标识递增 菜名Nvarchar 50 NoNo 价格FloatNoNo 菜介绍Nvarchar MAX YesNo ScidIntYesNo菜系 id 菜图片Nvarchar MAX YesNo存储的是图片的路径 推荐Nvarchar 50 YesNo 表 3 4 菜分类表 FieldTypeNullKeyComment ScidIntNoYes标识递增 种类Nvarchar 50 NoNo菜系名 系列介绍Nvarchar MAX YesNo 表 3 5 用户表 FieldTypeNullKeyComment 用户 IDIntNoYes标识递增 uNameNvarchar 50 NoNo登录名 uPwdNvarchar 50 NoNo登录密码 真实姓名Nchar 10 NoNo 性别Nchar 10 NoNo菜系 id 联系电话Nvarchar 50 YesNo 爱好Nvarchar MAX YesNo 喜欢口味Nvarchar MAX YesNo QQNvarchar 50 YesNo emailNvarchar 50 YesNo StateNvarchar 50 NoNo ID 是否有效 默认值是 未审核 身份证号Nvarchar 50 NoNo 表 3 6 养生之道表 FieldTypeNullKeyComment 介绍 IDIntNoYes标识递增 标题Nvarchar 50 NoNo 内容TextYesNo 发布时间DatetimeYesNo默认值是当前浏览器的时间 ViewCountIntYesNo浏览次数 3 4 物理设计 l 数据库存储结构 数据库的存储结构要综合考虑存取时间 存储空间利用率和维护代价三方面的因 素 15 根据逻辑设计的结果 将实体映射为表 将关系映射为外键约束 将属性映射为 列 主键唯一表示符映射为主键约束 唯一表示符映射为键约束 由于SQL Server 2005的聚簇功能很强 可以使用不同的技术和多种模式存储多维数据集的数据和聚合 2 数据存放位置 采用磁盘阵列存放系统的数据 日常数据放在数据库服务器硬盘上 并进行定期 备份 备份数据放在磁盘阵列的另外一个硬盘上 为了加快存取速度 将表数存放在 一个磁盘上 而索引文件放在另外一个磁盘上 3 系统配置 通常情况下 系统的配置包括 同时使用数据库的用户数 同时打开数据库对象 数 使用的缓冲区长度 个数 时间片的大小 数据库的大小 装填因子 锁的数目 等 他们对系统的性能有着显著的影响 因此在实际设计时根据需要进行了初步的设 计 4 4 网上订餐系统的实现网上订餐系统的实现 4 1 功能模块介绍 4 1 1 登陆 注册 如图 4 1 是网上订餐系统的首页 图 4 1 网站首页 在首页中显示了网站中大部分的信息 通过首页可以跳转的网站中其他的页面 进行相关的操作 登陆模块也是在首页中显示出来的 在登陆系统之前需要注册 如图 4 2 所示 注册的信息由游客填写 提交注册信息 后 需要通过后台管理员对注册信息进行审核 给予审批后 才能登陆系统 图 4 2 用户注册页面 网是订餐服务只有登陆以后才能进行 这样确保了订餐服务的有效性 避免预定 后 不履行订单的恶意行为 4 1 2 菜单信息浏览 在首页中 可以直接浏览到部分的菜单信息 信息包括了 图片 菜名 价格等 在该网页上也可以查看菜品的详细信息 如图 4 3 所示 另外 在主页上还根据不同的 菜系进行分块展示 同时也可以点击每个分块上的 more 字样查看相关的全部信息 列表 例如 点击查看 凉拌系列 的显示结果如图 4 4 所示 图 4 3 菜品详细介绍 图 4 4 凉拌 系列信息页面 在网站的首页中可以根据用户输入的文字对菜名进行模糊搜索 搜索功能使用户 在选择自己需要的菜品时更加便捷和高效 图 4 5 搜索 4 1 3 订餐服务 当用户进行订餐时 系统为用户生成了一个虚拟的购物车 在用户浏览详细的菜 单信息时 如图 4 6 所示 可以选择数量 然后将此菜品放入购物车中 图 4 6 订购菜品数量 在订餐过程中 用户可以查看自己购物车中选购的菜品和金额 根据自己的需要 可以删除购物车中的菜品 还可以选择继续订餐 在查看购物车时填入相关送餐信息 点击 提交订单 完成了整个订餐流程 图 4 7 查看购物车 4 1 4 用户反馈及评分 用户可以点击主页中 我的订单 查看自己当前订单和历史订单 如图 4 8 所示 图 4 8 我的订单 页面 订单中的每一项都可以点击 评分 如图 4 9 所示 图 4 9 评分 页面 对于已经评分的餐品 不能重复评分 对于还未送达的餐品 需等到管理员处理 订单后才能评分 4 1 5 订单处理 后台对订单的处理主要是查看和修改订单状态 订单的处理涉及两张数据表 订 单表和订单条目表 在查看订单列表时 绑定的数据是订单表中的数据 当查看订单 详情时 在网页中传递 订单 ID 作为参数来获取对应的详情列表 在管理员处理订 单后 订单表的 订单状态 改为 已处理 由于订单列表是写在控件 UpdatePanel 里的 所以在前台用户提交订单成功后 会自动对数据库执行查询 使后台的订单显 示列表中会自动在首行显示出新订单 并且订单状态默认为 待送餐 该页面中的当 前时间是通过设置一个时间间隔为 1000ms 的 Timer 的控件 在 Timer 控件的事件中获 取当前浏览器的时间 达到动态显现得效果 图 4 10 订单列表 管理员可以查看订单详情 根据实际情况处理修改订单状态 4 1 6 后台信息管理 后台管理员需要登录后才能进入后台管理 后台首页如图 4 11 所示 图 4 11 后台管理首页 通过登陆验证 保证了数据的安全性和保密性 管理员对信息的管理是分别针对 数据库中的每一张表进行的 在浏览每张表的信息时带有搜索功能 使得工作效率提 高 对于每张表的信息可以添加 删除和修改 但留言表中的信息不能修改 只能回 复和删除 由于篇幅有限 以下只给出菜单表的管理截图 图 4 12 是后台管理系统的 首页和菜单信息列表 图 4 13 是具体的某个菜的编辑或添加页面 图 4 12 菜单信息列表 图 4 13 编辑菜单信息 4 2 核心功能实现 4 2 1 用户自定义控件说明 1 listInfo ascx 该控件是用于在首页中显示不同菜系的介绍信息的 在控件中定义了一个 Scid 属 性 在每次引用控件时 通过设置 Scid 的值来确定控件该显示那个菜系的信息 2 Nav ascx 该控件作为导航在页面中引用的 控件的样式和超链接都已经设置好 在需要导 航的页面直接引用即可 3 PagingBar ascx 该控件是分页显示控件 在控件中定义了三个属性 CurrentPage 表示当前显示 的是第几页 默认值是 1 PageSize 表示一页显示几条数据 默认值为 10 RecordCount 是显示信息的总条数 一般是从数据库绑定出的数据总条数来设定其值 的 4 scoer ascx 该控件用于显示菜单信息中的推荐指数 控件中定义了一个 s 属性 通过设定 s 的值 便可以显示出相应的推荐指数 4 2 2 信息显示 菜单信息 养生咨询 留言版等信息的显示是通过绑定数据库中相应表单中数据 得到的 当查看其中一项的具体信息时 是通过网页间传递的参数确定的 一般情况 下 传递的参数是数据表中的主键值 这样使得信息有确定性 在菜单表的显示中 网页间传递的参数是数据库中菜单表的主键 cID 先显示之前 通 Request QueryString cID 获得主键值后 再从数据库中绑定出相信菜名 价格 和介绍信息 并在页面中显示出来 养生咨询 留言板等的信息显示也是这个原理 只是绑定数据的控件不同 得到的显示效果不尽相同 4 2 3 推荐指数 推荐指数是菜单显示信息中的一个是非常重要意义的信息 其在一定程度上说明 菜品的受欢迎程度 可以在顾客选购餐品时提供一个参考建议 上面的内容中已经提 到推荐指数的现实是通过设置 scoer ascx 控件的 s 属性 s 属性的值是根据每个订餐 用户用餐后对菜品的评分动态生成和改变的 该信息没有专门存储于数据库中 图 4 14 是获取 s 的值的程序流程图 获获取取c cI ID D值值 c cI ID D值值在在 订订单单条条目目 表表中中存存在在 是否 设设定定s s的的值值为为 0 0 查查询询出出 订订单单条条目目 中中该该c cI ID D值值的的所所有有除除 0 0 以以外外的的评评分分 根根据据查查询询出出来来的的 分分数数计计算算平平均均分分 将将平平均均分分赋赋值值给给 s s 显显示示推推荐荐指指数数 显显示示推推荐荐指指数数 图 4 14 推荐指数显示 4 2 4 分页显示算法 由于网页的布局有限 数据库中的大量信息无法再一张网页上全部显示出来 运 用分页显示的技术使得信息按照需要分页显示出来 并且显示效果更加清晰 对于分页显示 在上述内容提到了分页控件 PagingBar ascx 在需要显示的页面 引用这个控件 就可以进行分页显示 以下是分页显示实现的算法 设置分页控件 用到变量 第几页 每页多少条数据 数据条数 int currentPage 当前在第几页 int pageSize 10 一页显示的记录数 10 int RecordCount 数据条数 总共的页数 RecordCount pageSize 取得待显示页码 获取网页中传递的 p 参数 默认当前显示页 既 p 1 用 urlParameter 保存网页中传递处 p 以外的其他参数 设置超链接按钮 if 当前不是第一页 设置第一页的链接地址与上一页的链接地址 if 当前不是最后一页 设置下一页和未页的链接地址 4 2 5 购物车 购物车模拟了现实生活中购物的情景 在用户进行订餐时 系统会为用户自动生 成一个虚拟的购物车 用户可以往购物车里添加菜品 也可以查看购物车 删除其中 不需要的菜品 最后在购物车中填写好订单信息 就可以成功的提交订单 1 将选定的菜品添加到购物车的流程如下 建立一个购物车类型的数据为car car中可 以保存当前预定的菜名 数量 单价 总金额 调用BuildSession car 使car中的增加一 行数据 并且用Session car 保存 用户预定菜品 是否首次预定 是 否 图 4 15 购物车的实现 2 查看购物车的实现 遍历car每一行中的 总价 全部累加得到目前金额的总开销 查看购物车 Session car null 否 提示 购物车中没有物品 在购物车页面中定义一个GridView 控件用于绑定数据 通过Session car 可以获得car的数据 将其绑定在GridView控件上 是 图 4 16 查看购物车 3 删除数据 购物车列表中的每一行数据后都有 删除 按钮 点击后删除相应 的一行数据 此时 Session car 的值应该相应的改变 并重新绑定显示 4 向数据库填充数据 当用户提交订单时 需要将购物车中数据填入数据库中 进行保存 遍历 car 中的每一行数据 使之一行一行的插入到数据库中 以上是 购物车 工作的全部流程 在每次订单提交后 car 中的数据将全部清除 5 5 网上订餐系统测试网上订餐系统测试 5 1 测试目标 软件测试的目的决定了测试方法 如果测试的目的是为了尽可能多地找出错误 那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置进行测试 如果测试目的是为了给最终用户提供具有一定可信度的质量评价 那么测试就应该直 接针对在实际应用中会经常用到的假设进行测试 软件测试是为了发现错误而执行程 序的过程 一个好的测试用例是在于它能发现至今未发现的错误 一个成功的测试是 发现了至今未发现的错误的测试 测试并不仅仅是为了要找出错误 通过分析错误产 生的原因和错误的分布特征 可以帮助项目管理者发现当前所采用的软件过程的缺陷 以便改进 同时 这种分析也能帮助我们设计出有针对性地检测方法 改善测试的有 效性 其次 没有发现错误的测试也是有价值的 完整的测试是评定测试质量的一种 方法 详细而严谨的可靠性增长模型可以证明这一点 16 5 2 测试方法 软件测试是用来发现系统和用户需求不符合的过程 测试方法分为 白盒测 试和黑盒测试 白盒测试是对软件过程性细节做出细致的检查 这样的方法是把测试对象看做是 一个打开的盒子 它允许测试人员利用程序内部的逻辑结构以及有关的信息 设计或 者选择测试用例 对程序所有的逻辑路径进行测试 通过在不同的节点来检查程序的 状态 确定实际状态是否与预期达成一致 因此 白盒测试又称为结构测试或者是逻 辑测试 白盒测试主要是想对程序模块进行如下检查 1 对程序模块的所有独立的执行路径至少测试一遍 2 对所有的逻辑判定 取 真 或者取 假 的两种情况至少能测一遍 3 在循环的边界和运行的界限内执行循环体 4 测试内部数据结构的有效性 本次系统测试主要是选择黑盒测试 软件的黑盒测试意味着测试要在软件的接口 处进行测试 这样的方法是把测试对象看成一个黑盒子 测试人员完全不考虑程序内 部的逻辑结构和内部属性 只是根据程序的需求规格说明书 检查程序的功能是否符 合它的功能说明 因此黑盒测试又叫功能测试或者数据驱动测试 黑盒测试主要是为 了发现以下几类错误 1 是否有不正确或遗漏的功能 2 在接口上 输入是否正确的接受 能否输出正确的结果 3 是否有数据结构错误或外部信息 例如数据文件 访问错误 4 性能上是否能够满足要求 5 是否有初始化或者终止性错误 5 3 主模块测试 5 3 1 登录 注册模块 测试项目测试用例测试结果操作流程 用户登录 用户名 zj 正确密码 123 输入密码 123 登陆成功 在网站首页的登陆框上 登陆 用户登录 用户名 zj 正确密码 123 输入密码 123 错误提示 登陆失败 或是 尚未通过审核 在网站首页的登陆框上 登陆 用户注册输入相关注册信息注册成功 等待审核 在网站首页的登陆框上 点击 注册 5 3 2 订餐服务模块 测试项目测试用例测试结果操作流程 菜系查询点击查询 麻辣系列 显示所有麻辣菜系的点击主页上的 麻辣系列 菜系 搜索查询在搜索框中输入 麻辣 显示菜名中包含 麻辣 的所有菜 在主页上的搜索框中输入关键字 点击查询 搜索查询在搜索框中输入 zj 没有信息输出 在主页上的搜索框中输入关键字 点击查询 预定菜品没有登陆 点击 订购 提示信息 请先登陆 在详细介绍菜品页面点击 订购 预定菜品登陆后 点击 订购 提示 已放入购物车 登陆系统后在详细介绍菜品页面 点击 订购 提交订单点击 提交订单 提示 订单提交成功 服务人员会尽快送餐 查看购物车页面 填写相关的送 餐信息 点击 提交订单 5 3 3 订单处理模块 测试项目测试用例测试结果操作流程 登陆后台 用户名 admin 正确密码 输入密码 转入后台管理首页进入后台登陆界面 查看订单列表点击订单管理中 订单列表 转入订单列表页面 在后台管理首页中 点 击订单管理中 订单列 表 查看订单详情点击 查看详情 转入订单详情页面 在订单列表页对应得一 行中点击 查看详情 处理订单点击 处理订单 订单表中的订单状态改 变为 已送餐 在订单详情中点击 处 理订单 5 3 4 菜单管理模块 测试项目测试用例测试结果操作流程 添加菜单信息输入相关信息添加成功 在菜单列表中 在后台管理首页点击菜单管 理中的 信息添加 删除菜单信息点击 删除 提示 删除成功 在菜单列表的相关操作中点 击 删除 编辑现有菜单信息点击 编辑 编辑成功 转回列表页面 在菜单列表的相关操作中点 击 编辑 5 4 测试总结 此次测试采用黑盒测试方法 做了许多测试用例 但限于篇幅只写出了几个典型 的测试用例 在测试的整个过程中 每个模块的功能都比较成功 但也发现了一些问 题 如在数据库等多方面没有数据的时候出现异常等 发现后及时做了修改 目前系 统还存在很多值得改进的地方 将会在今后使用和维护中不断完善此网上订餐系统 6 6 结论结论 6 1 总结 本文主要分析和设计了网上订餐系统 从用户的需求入手 通过用例图反应出该 系统的功能模块 并且通过活动图来详细分析了各个功能模块的活动流程 数据模型 方面 结合实体关系图确定不同的表单 以便更好的设计数据库 在详细设计阶段 首 先编写了一个数据库操作类 SqlServer类 以后进行数据库操作时直接调用即可 简化了编码的工作量 确定每个功能模块中的页面数 以及页面的调用关系 重点在 信息浏览页面 购物车和订单管理的设计与实现 在编写代码的过程中 遇见了很多 问题 例如 信息的显示 数据的连级删除等 最后 通过查阅书籍和多次修改 测 试后解决了这些问题 最后 对整个系统进行了功能测试 系统运行正常 基本达到 了设计的效果 并且在一些重要功能上有自己的创新点 就整体功能而言 系统还是存在一些缺陷 例如 没有网上支付功能 后台的订 单管理也是针对较小的数据来实现的 在现实生活中 网上购物的人数越来越多 管 理员应该能够批量的操作订单 用户的密码保护功能不够健全等 今后还会就以上问 题深入研究 以便使此订餐系统更加完善 6 2 展望 目前已有不少订餐网站在网络中盛行 并被人们所接纳 网上订餐系统已成为如 今电子商务中的一个重要应用领域 它使得订餐者与餐厅之间能进行互动 足不出户 订购自己低矮的菜品 餐厅也可以在网络上查看订单 根据自己的营销策略定价 进 行宣传 大影响 增加销量 无论从平台的建设 系统的开发 功能的完善还是系统 的维护上 都还需要进行进一步的研究与开发 参考文献 1 杨千里 王育民 电子商务技术与应用 M 北京 电子工业出版社 1999 2 卞文志 网上订餐将成为餐饮业利润第二落点 J 烹调知识 2007 4 26 27 3 李勇平 ASP NET 2 0 C 基础教程 M 北京 清华大学出版社 2008 4 Chris Ullman John Kauffman 等著 ASP NET 1 1 入门经典 Visual C NET 2003 编程篇 M 北京 清华大学出版社 2004 5 马照亭等 ASP Web 编程实例教程 M 北京 北京希望电子出版社 2002 6 刘亚姝 许小荣 张玉梅等 ASP 动态网站开发技术与实践 M 北京 电子工业出版社 2007 7 孙三才 许熏尹 精通 c 与 ASE NET 程序设计 M 北京 中国青年出版社 2001 8 8 SQL Server 2005 发展优势所在 DB DB OL 2008 10 06 9 张伟 蒋德华 基于 B S 架构的网站设计研究 J 软件导刊 2008 07 09 7 5 109 110 10 张玉孔 B2C 型中小企业电子购物系统的设计 J 商场现代化 2006 11X 119 119 11 顼宇峰 ASP SQL Server 典型网站建设案例 M 北京 清华大学出版社 2006 12 冀振燕著 UML 系统分析设计与应用案例 M 北京 人们邮电出版社 2003 13 蒋瀚洋 李月军 庞娅娟 SQL Server 2005 数据库管理与开发教程 M 北京 人民邮电出版社 2009
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 平台稳性操作员理论知识考核试卷及答案
- 麻纤维开松参数调整工艺考核试卷及答案
- 农药制剂制剂抗性研究工艺考核试卷及答案
- 纺织染色工5S管理考核试卷及答案
- 木地板表面装饰工转正考核试卷及答案
- 职普融通、产教融合创新人才培养模式探索与实践
- 信息技术招教试题及答案
- 心脏解剖结构与传导系统知识测试卷
- 银行总行遴选面试题及答案
- 银行主管 试题及答案
- 2025年智能制造评估师考试试题及答案
- 铜川住房公积金管理办法
- 冷库工程培训课件模板
- 医院防疫员考试试题及答案
- 腹部血管超声诊断
- 成品油市场管理办法培训
- 2025至2030中国管理咨询行业产业运行态势及投资规划深度研究报告
- 【课件】绝对值(课件)数学人教版2024七年级上册
- 适当性管理讲课件
- 电厂设备主人管理制度
- 酱油制作小作坊管理制度
评论
0/150
提交评论