网上书店系统的需求分析和概要设计摘要随着互联网络的发展,网上书店越来越受人们所关注。通过网上书店,人们可以足不出户就选购自己所需的图书。网上书店是根据公司的实际需求、应用动态网页技术开发而成。该系统主要由前台信息发布网站和后台管理维护系统两部分构成;在支持整个网站的运作功能的基础上,能帮助用户对前台网站进行日常管理和信息发布;并且占用系统资源少、信息量大、站点维护方便、便于扩充和更新、易于继承和保护历史数据。该系统可以克服传统图书销售中地域、广告宣传、人力资源不足等限制,能很好地适应销售需求。本文介绍了网上书店系统的需求分析和概要设计。AbstractWiththedevelopmentoftheInternet,onlinebookshopsmoreconcernforpeople.Throughtheonlinebookshop,peoplecanstayathometobuythebookstheyneed.Onlinebookshopisbasedontheactualneedsofthecompany,usingdynamicwebtechnologywasdeveloped.Thesystemofinformationissuedbythefrontandbackofficemanagementandmaintenancesystemssiteoftwoparts;insupportoftheoperationalfunctionsoftheentiresite,basedonthereceptionsitetohelpusersofthedailymanagementandinformationdissemination;andwithlesssystemresources,theamountofinformationlarge,sitemaintenanceconvenient,easytoexpandandupdate,easytoinheritandtheprotectionofhistoricaldataandsoon.Thesystemcanovercomethetraditionalbooksalesintheregion,advertising,humanresources,lackofrestrictions,canwellmeetthedemandforonlinesales.Thisarticledescribesthedemandanalysisandpreliminarydesignofonlinebookshopsystem.一、概述1.课题简介(1)网上书店系统随着网络的飞速发展,网上购物已成为越来越多人首选的购物方式。商家可以通过电子商务平台销售自己的图书,消费者可以通过该系统订购自己要买的图书。消费者通过网上书店系统的用户界面,可以浏览图书、搜索图书、查看图书的详细信息。在浏览图书的过程中,如果消费者对某本书感兴趣,则可以将其添加到购物车。消费者随时可以查看购物车中的情况,并及时更新。购物活动完成后,消费者如需购买,必须结账生成订单。消费者可以注册会员,修改个人信息,在购买图书的过程中可以查询帮助。系统管理员从后台管理程序入口登录,如果验证通过,则具有管理员权限,可以进入后台管理系统,管理图书信息、管理订单、管理用户、管理留言等。(2)模块分工网上书店系统共分成4个模块,分别为前台的客户管理模块,订单管理模块,后台的后台管理模块和图书及留言管理模块。开发小组总共4人,一人负责一个模块,我负责的模块是前台的订单管理模块。订单管理模块主要是用户浏览搜索图书,加入购物车,查看购物车商品,生成订单,用户留言,用户帮助等。2.开发环境及开发工具介绍(1)开发环境:windows7系统(2)开发工具:MyEclipse开发平台,Tomcat服务器,MySQL数据库,Dreamweaver软件。○1MyEclipse简介MyEclipse,是在eclipse的基础上加上自己的插件开发而成的功能强大的企业级集成开发环境,主要用于Java、JavaEE以及移动应用的开发。MyEclipse的功能非常强大,支持十分广泛,尤其是对各种开源产品的支持。利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它包括了完备的编码、调试、测试和发布功能,完全支持JavaServlet,SQL,JDBC,JSP,CSS,AJAX,HTML,Javascript,Struts,Spring,Hibernate,JSF等。可以说MyEclipse几乎囊括了目前所有主流开源产品的专属eclipse开发工具。本系统采用的开发环境为MyEclipse2013。MyEclipse2013支持HTML5、JQuery和主流的Javascript库。随着MyEclipse2013支持Html5,用户可以添加音频、视频和API元素到项目,从而为移动设备创建复杂的Web应用程序。用户甚至还可以通过HTML5可视化设计器设计令人难以置信的用户界面。同时,随着MyEclipse2013支持JQuery,用户可以通过插件提升性能,并添加动画效果到设计中。○2MySQL数据库简介MySQL是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle公司。MySQL是一个快速、多线程、多用户的SQL数据库服务器,其出现虽然只有短短的数年时间,但凭借着“开放源代码”,支持正规的SQL查询语言和采用多种数据类型,能对数据进行各种详细的查询等特点,它从众多的数据库中脱颖而出。MySQL目前被广泛地应用在Internet上的中小型网站中。正因为其速度快、体积小、总体拥有成本低,尤其是开放源码这一特点,所以许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为数据库。(3)使用框架:Struts2+Spring+Hibernate○1Struts2简介Struts2是Struts的下一代产品。是在struts和WebWork的基础上进行合并之后的全新的Struts2框架。是MVC设计模式一个优秀的实现。Struts2定义了Controller(控制器),通过配置文件(struts-config.xml)隔离了Model(模型)和View(视图),以Action对用户请求做了封装,使代码更清晰易读。Struts2还提供了自动将请求的数据填充到对象中以及页面标签等简单编码工具。Struts2以WebWork为核心,采用拦截器机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离,所以Struts2可以理解为WebWork的更新产品。○2Spring简介Spring是一个开源框架,它由RodJohnson创建,来解决企业应用开发的复杂性。Spring的用途不仅限于服务器端的开发,从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架。轻量,从大小与开销两方面而言Spring都是轻量的。控制反转,Spring通过一种称作控制反转(IoC)的技术促进了松耦合。面向切面,Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性的开发。容器,Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,用户可以配置每个bean如何被创建——基于一个可配置原型(prototype),bean可以创建一个单独的实例或者每次需要时都生成一个新的实例——以及它们是如何相互关联的。框架,Spring可以将简单的组件配置、组合成为复杂的应用。Spring的这些特征使用户能够编写更干净、更可管理、并且更易于测试的代码。有了Spring,用户不必再为单实例模式类、属性文件解析等这些底层的需求编写代码,可以更专注于上层的应用。○3Hibernate简介Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,不仅可以在Java的客户端程序使用,而且可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。(4)设计模式:系统采用MVC的设计模式实现。○1MVC简介MVC全名是ModelViewController,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范。其中模型层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现;视图层用于与用户的交互,通常用JSP实现;控制器层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。MVC是一个设计模式,它强制性的将应用程序的输入、处理和输出分开。MVC使应用程序被分成三个核心部件:模型、视图、控制器,它们各自处理自己的任务。模型组件:负责业务逻辑,包含应用程序的核心功能,封装了应用程序的状态。有时它包含的唯一功能就是状态,它对视图或控制器一无所知。视图组件:负责表示业务范围的视图,提供模型的表示,它是应用程序的外观。视图可以访问模型的读方法,但不能访问写方法。此外,它对控制器一无所知。当更改模型时,视图应得到通知。控制器组件:控制器对用户的输入作出反应。它创建并设置模型。二、需求分析1.系统功能分析网上书店系统主要分前台和后台,前台的用户是浏览网站的游客,他们可以注册成为会员,可以登录网站,在登陆成功之后,可以修改个人资料,可以浏览图书、搜索图书,可以将喜爱的商品加入购物车,可以修改购物车中的商品,可以结算,可以留言,可以查询帮助;后台的用户主要是网站管理员,管理员主要是对系统的数据进行维护,如管理图书信息,管理用户信息,管理订单信息,也可以修改个人信息等。详细内容如下:功能一:用户注册功能,该功能的优先级较高,要想正常使用本网站,就要首先进行注册,需要填写用户名、密码、确认密码、电话号码、邮箱等问题。功能二:用户登录功能,该功能的优先级较高,用户使用已经注册过的用户名和密码进行登录,经过系统确认正确后,即可进入下一步操作。功能三:修改个人资料功能,用户在注册成功之后,还想修改自己的个人信息,如电话号码,可以在登陆成功之后,进入个人信息页面进行修改。功能四:浏览搜索图书功能,用户通过输入要找的图书的关键字进行查询,然后从若干本书中进行浏览,挑选出自己想要的图书。功能五:购物车功能,在浏览网页和查找书籍的过程中,如果选中某一本书,就可以随时将它添加到自己的购物车中,前提条件是这必须要在登录之后才能完成的操作。而且,用户可以进入购物车中,对其中的商品进行修改、删除,还可以将购物车中的商品提交付款。功能六:留言功能,用户购买并收到图书之后,对图书的好坏可以通过留言来提出。功能七:帮助栏功能,用户在登陆时忘记了自己的密码,可以通过找回密码功能找回。功能八:管理员对网站的用户进行管理功能,该功能是指管理员可以管理客户注册信息、管理图书信息,同时,还可以将一些使用不规范的用户或者长期不用的用户进行删除。功能九:管理员对订单进行管理功能,该功能指管理员可以根据用户的需要修改订单信息,对于下单之后没有结算失效的订单,管理员可以删除它。功能十:管理员个人信息管理功能,管理员可以修改自己的个人信息。功能十一:管理员对图书进行分类管理功能,该功能包括添加图书、修改图书、删除图书、添加图书类型、修改图书类型、删除图书类型。功能十二:留言回复功能,对于用户的留言,由管理员去回复。2.系统数据分析根据系统的功能分析,可以知道网上书店系统中,有很多数据需要管理,系统需要管理