《LW梁爱南贺志雄.doc》由会员分享,可在线阅读,更多相关《LW梁爱南贺志雄.doc(54页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、(2011届)本科生毕业设计(论文)网上订餐管理系统的设计与实现学 院、系: 计算机与通信学院 专 业: 计算机科学与技术 学 生 姓 名: 贺志雄 班 级:073 班 学号 指导教师姓名: 梁爱南 职称 讲师 最终评定成绩 2011年 6 月 湖南工业大学本科生毕业设计(论文)网上订餐管理系统的设计与实现院 (系):计算机与通信学院专 业:计算机科学与技术学 号:学生姓名:贺志雄指导教师:梁爱南 讲师 2011 年 6 月摘 要论文简单地介绍了网上订餐管理系统的设计与实现的开发背景、主要技术以及业务流程,针对该系统进行市场需求的分析、功能的描述、数据库的设计,详细地描述了整个系统的设计思路及
2、其开发过程。全文按照软件开发的生命周期,分为可行性研究、需求分析、总体设计、详细设计等阶段,应用数据流程图、E-R图、数据库表等工具清晰的展示了设计过程。系统是基于MVC三层模式,利用JSP+JavaBean+SQL Server2005开发系统,实现了应用程序逻辑和页面显示分离。论文所实现的网上订餐管理系统的设计与实现从符合操作简便、界面友好、灵活、安全的要求出发,完成网上订餐管理系统的设计与实现的全过程。该系统试运行良好,可提供科学可靠的管理功能,系统前台能实现用户留言、在线聊天、用户订餐、菜品查询等功能,系统后台能实现用户管理、销售统计、订单管理、菜品管理留言板管理等功能。系统后台能及时
3、对前台的各项功能模块进行统一管理和做出及时且正确的决策,达到了预期的目标。关键词:网上订餐管理系统,JSP,JavaBean,SQL Sever2005ABSTRACTPaper briefly describes the online ordering system design and implementation of management development background, the main technology and business processes, market demand for the system analysis, functional descrip
4、tion, database design, detailed description of the whole system design and its development process. Full accordance with the software development life cycle, is divided into the feasibility study, requirement analysis, design, detailed design stage, the application data flow diagram, ER diagram, dat
5、abase tables and other tools to clear the display of the design process. Three-tier system is based on MVC pattern, using JSP + JavaBean + SQL Server2005 development system to achieve the application logic and page display separation.Online Ordering achieved paper management system design and implem
6、entation from the simple, user friendly, flexible, safety requirements, the completion of online ordering management system design and implementation of the entire process. A good test run of the system, providing scientific and reliable management functions, the system front to achieve the user a m
7、essage, online chat, user ordering, dishes query and other functions, the system can realize the background user management, sales statistics, order management, dishes Management message board Management. System back in time on the front of the function modules of unified management and to make time
8、ly and accurate decision-making, to achieve the desired objectives. Keywords: Online Ordering System, JSP, JavaBean, SQL sever2005目 录第1章 概 述11.1课题的背景及意义11.2课题分析11.3国内外发展状况21.3.1国内方面21.3.2国外方面2第2章 系统实现主要技术32.1技术方案选取32.1.1开发语言32.1.2开发模式选择42.2相关语言及开发工具介绍52.2.1 JSP技术简介52.2.2 MyEclipse简介62.2.3 Tomcat简介62
9、.2.4 Microsoft SQL Server 2005简介7第3章 系统概述83.1运行环境83.1.1软件运行环境83.2系统的可行性研究83.2.1技术可行性83.2.2社会可行性93.2.3经济可行性93.3系统需求分析93.3.1用户需求分析93.3.2性能需求分析103.3.3产品质量需求分析103.3.4系统设计目标分析113.4系统体系结构分析113.4.1 B/S结构与C/S结构113.4.2 B/S与C/S的优越性12第4章 系统总体设计144.1系统设计144.1.1逻辑结构分析144.1.2功能模块划分144.1.3系统流程概述154.1.4数据流图分析184.1.
10、5系统用例194.2数据库设计204.2.1数据库的需求分析204.2.2数据库表设计204.2.3 E-R模型224.3 MVC模式254.3.1视图层254.3.2模型层264.3.3模型层26第5章 系统详细设计与实现285.1前台开发285.1.1首页设计285.1.2用户登录295.1.3用户注册295.1.4用户订餐305.1.5购物车315.1.6订单315.1.7在线聊天325.1.8在线留言335.2后台开发335.2.1管理员登录335.2.2管理员功能345.2.3商品显示345.2.4添加商品355.2.5销售统计365.2.6管理用户375.2.7订单管理375.3部
11、分核心代码385.3.1 乱码处理方法385.3.2 时间格式处理方法385.3.3 数据库配置信息395.3.4购物车395.3.5分页40第6章 系统测试与维护426.1系统测试426.1.1 系统测试的目的426.1.2 系统测试的方法426.1.3 网上订餐管理系统的测试426.2系统维护43结 论44参考文献45致 谢46第1章 概 述1.1课题的背景及意义随着Internet的普及,越来越多的企业建立了自己的WWW网站,企业通过网站可以展示产品,发布最新动态信息,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。其中网上订餐系统是电子商务网站的一种,随着信息化时代的到来
12、,人们对生活质量的追求不断提高,由于人们工作,学习的关系,常常无法正常吃饭,随着网络的普及,网上订餐业务在中国开始盛行,人们也通过网络订餐的方式获得自己需要的食物。这样既节省了时间,也可以为广大用户提供更多的口味。该系统使用JSP(Java语言)和SQL Server2005数据库开发, 实现了网上订餐系统的动态管理,使得网上订餐的管理更加及时、高效,提高了工作效率。该管理系统具有一般网上订餐系统的功能,从大的方面来讲主要包括餐饮管理,预定管理,用户管理等几个大的功能模块。系统基于B/S(Browser/Server,浏览器/客户端)模式实现,在 Myeclipse8.5平台开发实现,主要实现
13、对网上订餐的使用、需求、以及用户订餐的动态管理等。随着Internet/Intranet技术的兴起,将原本在单机或本地局域网上运行的数据库系统移植到因特网中,即开发基于B/S模式的新一代MIS(Management Information System,管理信息系统)系统,正成为技术发展的趋势。为了保证系统性能的高效性、可扩展性,以及达到数据共享和网络化管理的目的,本系统采用B/S体系结构进行设计开发。1.2课题分析该系统分为前台和后台两个部分,前台部分主要是浏览者和普通用户进行资讯的浏览,以及订餐,订座管理等,主要是面向用户的。而后台主要是管理人员对前台数据的维护和设置,主要是面向管理人员的
14、。网上订餐系统无论是在应用的深度还是广度都是一个逐步发展的过程。在开发一个局部系统时要充分考虑到局部系统和整个目标系统之间的相容性和完整性,以利于今后整个系统的建立。该系统从总体上把握系统的设计,在具体的设计实现上我们围绕着三个方面的需求展开,即管理者、系统使用者、系统维护者。对于本系统的不同使用者,其功能与业务逻辑是不尽相同的。对于普通用户而言,系统主要像用户展示一个美观的界面,用户在可以浏览各类资讯,查询餐饮信息,订餐,订座等。而管理员则需要在后台维护这些数据。本系统的主要功能应是用户的订餐了,用户可以查询菜品信息,当发现自己满意的以后,可以将这些菜品添加到自己的购物车,此时用户虽然选择了
15、要预定的商品,但是还不具备法律效用,当用户通过一定方式(此方式不属编程范围)得到预定许可后,管理员在后台可以审核是否批准该用户的订餐请求,当管理员同意了该用户的订餐请求,即可将该用户所预定的发送给客户,此时客户在客户端可以看到自己购物车的状态(此时是已经通过审核),如果管理员没有批准或没有处理等,该客户都可以在前台看见相关信息。1.3国内外发展状况1.3.1国内方面从国内研究现状来看,在安全性和信息更新化方面存在有一定的不足,各现有系统资料单独建立,共享性差;在以管理者为主体的方式中,信息取舍依赖管理者对于信息的认知与喜好,较不容易掌握用户真正的需求,也因此无法完全满足用户的需求。因此,网上订
16、餐系统应充分依托校园网和公司集中区域,实现订餐信息的集中管理、分散操作、信息共享,使传统的订餐朝数字化、智能化、综合化的方向发展,并为进一步实现完善的网上订餐打下良好的基础,从技术角度,也会不断更新,优化出适合网上订餐系统的框架,以便后续开发。1.3.2国外方面对比于我国现在使用的订餐方式还停留在电话订餐的层面上,不容置疑,电话订餐方便,随时打一个电话就可以预定餐品。但是这种方式也存在着一些问题,这些问题或多或少的影响着饭店的运营,因此,进行网上订餐更是新型订餐方法,而在国外人们通过上网,对餐品进行预订的现象比比皆是,这样不仅节约了时间,也为饭店的订餐管理工作提供了方便。在国外,网上订餐往往是
17、通过网络开设一家“网上餐饮超市”,再引入专业物流配送公司,为传统供应商提供广泛的配送服务,消费者只要点中网上美食店提供的任一菜点,由配送公司专门配送,但这种模式不仅需要配送公司有强大的实力,同时也要有广泛的客户群支持,进而网上订餐系统得到广泛应用,并且得到了普遍认可。第2章 系统实现主要技术2.1技术方案选取系统技术方案选取主要有:开发语言、开发模式选择。2.1.1开发语言随着互联网技术的不断发展,基于浏览器/服务器(Browser/Server 简称B/S)体系结构的应用程序得到了空前广泛的应用。但是服务器之间的通讯,尤其是在不同平台上运行的服务器之间的通讯仍然不是一件容易的事情。因为大多数
18、Internet应用程序都是以数据库为中心的,方便的访问多种数据源的能力也比以往任何时候都更加重要。JSP无疑可以轻松地实现这类功能,JSP技术是一种服务器端的HTML页面中嵌入JAVA代码的脚本语言,它比一般脚本语言的执行速度更快,由于JSP是基于JAVA语言的,所以它可以运行在UNIX/LINUX和WINDOWS平台上,是一种难得的动态网页开发语言。在动态内容的解决问题中,还存在其他的解决方法,但是开发人员要掌握这些技术很难。例如,Java Servlets这样的技术就可以使得用Java语言编写交互式的应用程序的服务器端的代码变得更加简单。Java Servlets就是一个基于Java技术
19、的运行在服务器端的程序(与Applet不同,后者运行在浏览器端)。开发人员编写出Servlet程序,用来接收来自Web浏览器的HTTP请求,动态地生成响应,然后发送包含HTML或XML文档到浏览器。但是使用这种方法,整个网页必须都在Java Servlet中制作。如果开发人员或者Web管理人员想要调整页面的显示,就不得不从新编辑并编译Java Serve程序。采用这种方法,编写带有动态内容的页面需要有很熟练的应用程序开发技巧和经验。很显然,一个简单的创建动态页面的解决方案要能解决以下的问题: 1. 能够在任何Web或应用程序服务器上运行2. 将应用程序逻辑和页面显示分离3. 能够快速地开发和测
20、试4. 简化开发基于Web的交互式应用程序的过程Java Server Pages (JSP)满足这些要求,它整合了存在的Java编程环境提供支持的技术和工具,产生了一种新的、开发基于Web应用程序的方法,这个方法给予使用基于组件应用的逻辑页面的设计者提供了强大的功能。2.1.2开发模式选择JSP有两中开发模式JSP+JavaBean和JSP+Servlet+JavaBean1,在模式一中,JSP页面独自响应请求并将处理结果返回客户。所有的数据通过Bean来处理JSP实现页面的表现。模式一技术实现了页面的表现和页面的商业逻辑相分离。大量使用模式一形式,常常会导致页面被嵌入大量的脚本语言或JAV
21、A代码。当需要处理的商业逻辑很复杂时,这种情况会变得非常糟糕。大量的代码会使整个页面变得常复杂。对于前端界面设计人员来说,这简直不可想象。这种情况在大项目中最为常见,这也造成了代码的开发和维护出现困难,造成了不必要的资源浪费,在任何项目中,这样的模式总会导致多多少少的定义不清的响应和项目管理的困难。 综上所述,模式一不能满足大型项目的需要,但是可以较好的满足小型应用,在简单的应用中可以考虑模式一。模式二JSP+Servlet+JavaBean中 ,Servlets技术是一种采用JAVA技术来实现CGI功能的一种技术。Servlets技术是运行在WEB服务器上,用来生成WEB页面。Servlet
22、s技术非常实用于服务器端的处理和编程,并且Servlet会长期驻留在他们所处的位置。 但是在实际的项目开发过程中,页面设计者可以方便地使用普通HTML工具来开发JSP页面,Servlet却更适合于后端开发者使用,开发Servlet需要的是JAVA集成开发环境,也就是说Servlet技术更需要编程人员。 模式二技术结合了JSP和Servlet技术充分体现了两者的技术优点。在此模式中通过JSP来表现页面。通过Servlet来完成大量的事务处理。 Servlet充当一个控制者的角色,并负责向客户发送请求。Servlet创建JSP所需要的Bean和对象,然后根据用户的请求行为,决定将哪个JSP页面发送
23、给客户。 从开发的观点,模式二具有更清晰的页面表现,清楚的开发者角色划分,可以充分利用开发小组的界面设计人员,这些优势在大型项目开发中表现的尤为突出,使用这一模式,可以充分发挥每个开发者各自的特长,界面设计人员可以充分发挥自己的表现力,设计出优美的界面表现形式,设计人员可以充分发挥自己的商务处理思维,来实现项目中的业务处理。在大型项目中,模式二更被采用。但是,本系统开发只是一个小型的JSP应用,同时由于Servlet难于掌握,所以在本课题中采用了模式一开发,既JSP+JavaBean。2.2相关语言及开发工具介绍2.2.1 JSP技术简介在开发JSP规范的过程中,Sun 公司与许许多多主要的W
24、eb服务器、应用服务器和开发工具供应商,还有各种各样富有经验的开发团体进行合作。最后找到了一种平衡了应用和页面开发的具有可移植性和易用性的开发方法,JSP技术特征在多个方面加速了动态Web页面的开发:1. 将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面2。使用JSP标识或者小脚本来生成页面上的动态内容,这些内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格。生成内容的逻辑部分被封装在JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在Beans中,那么其他人,如Web管理人员和
25、页面设计者,在编辑和使用JSP页面的时候,将不会影响到内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成客户端请求的内容,例如,通过访问JavaBeans组件,使用JDBC技术访问数据库或者其他文件,并且将结果以HTML(或者XML)页面的形式发送回浏览器。这将有助于作者保护自己的代码,并且又保证任何基于HTML的Web浏览器的完全可用性.2. 强调可重用的组件绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeans TM组件)来执行应用程序所要求的更为复杂的处理问题。开发人员能够共享和交换执行普通操作的组件,或者发布这些组件使
26、更多的使用者或者客户团体能够使用。3. 采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。Java Server Page技术封装了许多功能,这些功能是容易使用的、同时与JSP相关的XML标识中进行动态内容的生成时需要的。通过开发定制化标识库,JSP技术是可扩展的。今后,第三方开发人员和其他人员可以将常用的功能创建到自己的标识库。这使得Web页面开发人员能够象使用熟悉的工具一样来使用标识来执行特定功能的构件来工作。JSP技术很容易整合到多种应用体系结构中,以便使用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用中。作为采用Java技术家族的一部分,以及Java 2(企
27、业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用开发。由于JSP页面的内置脚本语言是基于Java编程语言的,并且所有的JSP页面都能被编译成为Java Servlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的厂家将对JSP的支持添加到他们的产品中,我们可以选择不同的服务器和工具,因为更改工具或服务器并不影响当前的应用。当与Java 2平台,企业版(J2EE)6和Enterprise JavaBean技术整合时,JSP页面提了供企业级的扩展性能,这
28、对于在虚拟企业中部署基于Web的应用是必需的。2.2.2 MyEclipse简介Eclipse最初是IBM的一个软件产品3,前期投入了4000万美金。2001年11月,IBM宣布将其捐给开放源码组织Eclipse.org。目前Eclipse的市场占有率已经超过了Borland公司的JBuilder,成为Java开发平台中的主流。Eclipse的设计思想是:一切皆为插件。它自身的核心是非常小的,其它所有的功能都以插件的形式附加到该核心上。Eclipse中三个最吸引人的地方:一是它创新性的图形API,即SWT/JFace,在此之前,我曾经用过Java 的AWT/SWING来开发Windows应用程
29、序,AWT/SWING其界面客观地讲不够美观,而且界面响应速度比较慢;而SWT/JFace则大大改善了Java在这方面的能力。二是它的插件机制。三是利用它的插件机制开发的众多功能强大的插件。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE4集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML、Struts、JSF、CSS、JavaScript、SQL、Hi
30、bernate。2.2.3 Tomcat简介大多数人都喜欢将Apache Tomcat当作JSP应用服务器使用。有人可能会说,它之所以受欢迎是因为这个服务器是免费和开放源代码的,但是真正的原因远不止这些。Apache Tomcat能够受欢迎,不仅是工作性能非常好,还有没有初始的开发成本开销等有力的竞争因素,但这不是决定因素。Tomcat 结构非常合理,更由于Tomcat 是Apache 组织的产品,这个组织有着雄厚的技术更新力量,并且Tomcat6.0 很好的支持了JSP2.0 规范,因此有着很好的发展前景。Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakart
31、a项目中的一个核心项目,由Apache,Sun和其它一些公司以及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总能在Tomcat中得到体现5。Tomcat被JavaWorld杂志的编辑选为2010年度最具创新的java产品,可见其在业界内的地位。Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:也处理Html页面,但是与Apache相比,它的处理静态Html的能力就不如Apache。JDK 是SUN 公司的JAVA应用程序和组件的开发环境,是编译、测试工具,也是提供JAVA程序的JAVA虚拟机平台,是调试和运行JSP 所不可缺少的工具
32、。2.2.4 Microsoft SQL Server 2005简介SQL Server 2005是一个分布式的关系型数据库管理系统,具有客户/服务器体系结构。Microsoft SQL Server 2005是一个应用广泛的数据库管理系统,具有许多显著特点6,例如,用户喜欢的易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性能价格比等。SQL Server 2005系统中,数据库的管理采取了先进的动态管理机制,数据库的大小可以随着数据量的变化而缩小或者扩大。另外,用户数据都是非常重要的和保密的,这些数据存储在Microsoft SQL
33、 Server 2005系统中有绝对的安全性保障7,有完善的用户帐户策略和许可机制,只有经过授权的用户才能访问系统,并且执行相应的操作和访问允许访问的数据。未经授权的用户既不能执行相应的操作,也不能访问数据库中的相应数据。SQL Server 2005系统具有强大的网上功能,可以在Internet上发布数据库中的数据。在Microsoft SQL Server 2005系统中,允许用户简单的使用一些向导和工具把数据库的数据发布到网络上,并且可以根据需要来调度修改已经发布的数据。第3章 系统概述3.1运行环境3.1.1软件运行环境操作系统:Windows XP操作系统数据库:Microsoft
34、SQL Server 2005网络通信协议:TCP/IP支持软件:tomcat,MyEclipse3.2系统的可行性研究可行性,是指在当前情况下,设计开发这个系统是否有必要,是否具备必要的条件,它不仅包括必要性,还包括合理性8。系统的可行性分析,是针对设计一个系统,它的设计是否存在内外部的必要条件,包括技术上、资金上、经济上、人力资源以及组织管理上的必要条件,同时还要分析在目前条件下是否有必要设计这样一个系统。随着B2B(企业与企业之间的电子商务)的兴起,电子商务已经成为一个很热门的话题。而网上订餐作为B2C(企业与消费者之间的电子商务)的一种主要商务形式,也取得了巨大的成功。3.2.1技术可
35、行性1. 硬件、软件要求不高,目前市场上的一般计算机软硬件资源均能满足系统开发要求。其中运用的主要软件有 MyEclipse8.5 等,数据库采用Microsoft SQL Server 2005。2. JSP技术该技术功能强大,扩展性强,Sun 公司提供大量的第三方控件,并结合 css,JavaScript等脚本语言,以上技术足以完成本系统的开发和设计。3. 维护操作工作方便,后台操作快截明了,操作人员可以在短时间内完全掌握维护技术。本系统自主网上订餐管理,系统具有强大的商品管理、购物车、订单统计、会员管理等功能,同时拥有灵活多变的商品管理、新闻管理等功能,功能强劲的后台管理界面,通过IE浏
36、览器即可管理整个网站。提供了促销广告和店标自定义功能,操作简单。3.2.2社会可行性1. 网络订餐将传统的商务流程电子化、数字化,一方面以电子流代替了实物流,可以大量减少人力、物力,降低了成本;另一方面突破了时间和空间的限制,使得交易活动可以在任何时间、任何地点进行,从而大大提高了效率。2. 网络订餐所具有的开放性和全球性的特点,为企业创造了更多的贸易机会。3. 网络订餐使餐饮业以较低的成本进入电子化市场,使得中小企业有可能拥有和大企业一样的信息资源,提高了中小企业的竞争能力。4. 网络订餐重新定义了传统的流通模式,减少了中间环节,使得生产者和消费者的直接交易成为可能,从而在一定程度上改变了整
37、个社会经济运行的方式。5. 网络订餐一方面破除了时空的壁垒,另一方面又提供了丰富的信息资源,为各种社会经济要素的重新组合提供了更多的可能,这将影响到社会的经济布局和结构。3.2.3经济可行性1. 资金可得性由于系统开发并不复杂,操作起来也比较简单,只需一些基本的编辑软件,另外具备网络中心的一些资源优势,因此开发费用较低。2. 经济合理性由于通过网络进行商务活动,信息成本低,足不出户,可节省交通费,且减少了中介费用,因此整个商务活动成本大大降低。3.3系统需求分析需求分析主要是了解用户的有哪些需求,只有了解了需求分析才能进行系统的开发,否则就会事倍功半,达不到我们预期的效果,因此需求分析是至关重
38、要的9,本系统主要是用户的购餐需求以及管理的需求。3.3.1用户需求分析作为一个网上订餐系统。当用户进入系统欢迎界面的时候应该能够浏览网上食品相关信息,其中包括食品的图片、价格等相关描述,并可以注册成普通会员。普通会员能够订餐、查询自己的购物车,给系统留言和在线的其他会员进行网上聊天。1. 食品展示:用户可点击网站内的餐品展示列表查看餐品的简单信息。2. 食品查找:用户若要查找购买某一餐品,可通过餐品查找进行搜索,方便用户在多种不同种类的餐品中快速方便的查找到需要的食品。3. 查看详细介绍:对相应食品的信息进行详细的说明,为用户进行选择提供相应的信息。4. 购物车:用户选定需要购买的餐品后添加
39、到购物车中生成订单。3.3.2性能需求分析该系统在性能功能上应达到如下需求:1. 操作简单、界面友好: 2. 即时可见:对客户预定餐饮信息的处理将立即在主页的对应栏目显示出来,达到“即时发布、即时见效”的功能;3. 系统运行应该快速、稳定、高效和可靠;4. 在结构上应具有很好的可扩展性,便于将来的功能扩展和维护。3.3.3产品质量需求分析表3.1 产品质量需求分析主要质量属性详细要求正确性按照需求正确执行任务,完成各个模块的相应要求。健壮性具有较高的容错能力和恢复能力。可靠性故障发生率每运行1000小时低于3次性能,效率软件的输出结果更新周期应该与系统的信息更新周期相同。在网络情况良好的情况下
40、,3秒内可响应用户请求。易用性易理解性:软件研制过程中形成的所有文档语言简练、前后一致、易于理解以及语句无歧义。安全性防止软件受到意外或蓄意的存取、使用、修改、毁坏或泄密的软件属性其数据应能集中存放于总部的数据库服务器,客户端不保存任何业务数据和数据库连接信息,也不应进行什么数据同步.可扩展性能方便的进行二次开发,满足对功能的扩充或提高并能提高相应的安全控制。兼容性不易与其他软件起冲突。可移植性可方便移植到其他系统环境中正常运行。3.3.4系统设计目标分析本系统设计的目标是实现一个功能较为强大的网络订餐系统,该系统能够实现用户的注册,简便的商品查看,购物车式的商品选购,用户订单查询等功能,在系
41、统的后台,管理员可以处理用户订单并配送获取,并可以对商品信息等实现集中管理。这是一个网上在线订餐系统(B2C)。系统需要提供的主要功能如下:1. 普通用户能浏览系统、给系统留言并能注册成会员2. 会员能网上订餐、给系统留言并能和在线的其他会员进行网上聊天3. 管理员能对商品进行增删改查管理4. 管理员能对各种商品进行销售统计5. 管理员能管理(增删改查)普通会员6. 管理员能对会员的订单进行管理3.4系统体系结构分析3.4.1 B/S结构与C/S结构客户/服务器(CLIENT/SERVER)结构,是将一个系统分解为前台的客户应用程序和后台的服务器部分,通过网络连接应用程序和服务器。这种结构的核
42、心是客户应用程序向服务器发送服务请求,服务器完成后端处理。服务器是一台管理数据资源并执行数据库引擎功能(加数据存储、操作和保护)的计算机,处理结构由服务器发回客户应用程序,由客户应用程序对处理结构进行显示。这种结构的优点是只有处理后的数据在网络中传递,大大减轻了网络的负担,而且由于通过服务器端统一管理数据,易于保证数据的一致性。B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3层结构。B/S结
43、构利用不断成熟和普及的浏览器技术实现原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。这种结构更成为当今应用软件的首选体系结构,.net也是在这样一种背景下被提出来的架构,JAVA技术已经是很成熟的应用了。3.4.2 B/S与C/S的优越性C/S(Client/Server,客户端/服务器)是建立在局域网的基础上的,B/S是建立在广域网的基础上的。传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件,没能提供用户真正期望的开放环境;B/S结构则不同,它的前端是以TCP
44、/IP协议为基础的,企业内的WWW服务器可以接受安装有Web浏览程序的Internet终端的访问,作为最终用户,只要通过Web浏览器,各种处理任务都可以调用系统资源来完成,这样大大简化了客户端,减轻了系统维护与升级的成本和工作量,降低了用户的总体拥有成本。总的来说,两者有如下差别:1. 硬件环境不同C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务。B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例如电话上网, 租用设备, 信息自己管理, 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行。2. 对安全要求不同 C/S 一般
45、面向相对固定的用户群, 对信息安全的控制能力很强。 一般高度机密的信息系统采用C/S 结构适宜, 可以通过B/S发布部分可公开信息。B/S 建立在广域网之上, 对安全的控制能力相对弱, 面向是不可知的用户群。3. 对程序架构不同 C/S 程序可以更加注重流程, 可以对权限多层次校验, 对系统运行速度可以较少考虑。B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上。4. 软件重用不同C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好。B/S 对的多重结构,要求构件相对独立的功能。 能够相对较好的重用10。就如买来的餐桌可以再利用,而不是做在
46、墙上的石头桌子。5. 系统维护不同 系统维护是软件生存周期中,开销大,相当重要C/S 程序由于整体性,必须整体考察,处理出现的问题以及系统升级难, 可能是再做一个全新的系统。B/S 构件组成方面构件个别的更换,实现系统的无缝升级。 系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。 6. 处理问题不同 C/S 程序可以处理用户面固定,并且在相同区域, 安全要求高的需求,与操作系统相关, 应该都是相同的系统。B/S 建立在广域网上, 面向不同的用户群,分散地域, 这是C/S无法作到的,与操作系统平台关系最小。 7. 用户接口不同 C/S 多是建立在Window平台上,表现方法有限,对程序员普遍要求较高。B/S 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流, 并且大部分难度减低,降低开发成本。8. 信息流不同 C/S 程序一般是典型的中央集权的机械式处理,交互性相对低。B/S 信息流向可变化。9. 成本降低,选择更多软件系统的改进和升级越来越频繁,B/S架构的产品明显体现的更方便的特性。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行,如果是异地只需要把服务器连接上网即可立即进行维护和升级,这对