网上书店售书系统软件设计说明书 (2)_第1页
网上书店售书系统软件设计说明书 (2)_第2页
网上书店售书系统软件设计说明书 (2)_第3页
网上书店售书系统软件设计说明书 (2)_第4页
网上书店售书系统软件设计说明书 (2)_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

网上购物系统软件设计说明书目录1介绍1目的1范围1定义、缩写词1内容概览12体系结构表示方法13系统要达到的目标和限制24用例视图2普通用户注册3普通用户登陆4普通用户修改密码5普通用户选购并结账8管理员添加图书8管理员删除图书10用户退出登录系统11管理员退出系统12管理员登陆系统13管理员修改密码14管理员注册155逻辑视图17总览17主要PACKAGE的介绍186过程视图20用户注册20用户选购并结账22管理员添加删除图书257部署视图268规模和性能299质量2910测试29101测试概要29102测试结果及发现301021注册模块测试301022登录模块测试301023购书,结账模块311024修改密码模块测试311025退出登录模块311026添加图书模块3211附录32软件设计说明书1介绍目的通过编写本文档,目的是对所开发项目网上书店售书系统,在概要设计的基础上进一步明确系统结构,详细地介绍系统的各个模块,为进行后面的实现和测试作准备。范围介绍了网上书店售书系统的注册模块、登录模块、选购图书、修改密码、管理员添加图书、退出登录、结账等几个模块。定义、缩写词SQL结构化查询语言数据库数据库是依照某种数据模型组织起来并存放二级存储器中的数据集合。MEMBER存储用户名和密码的数据库COMPUTER存储计算机类图书的数据库库MACHINE存储机械类的数据库ACCOUNTING存储会计类的数据库内容概览注册会员的注册登录会员的登录选购图书结账最基本的功能,会员可以买书修改密码会员修改密码退出登录会员买完书退出登录添加图书管理员的功能,向数据库添加图书删除图书管理员的功能,向数据库添加图书数据库实现数据的查询、添加、修改、删除的功能2体系结构表示方法UML提供5种视图,从不同的角度描述系统的内容,不同的人员关注不同的方面,本文档采用其中4种用例视图着重描述系统的功能。主要使用这个有用户,系统分析人员,设计人员和测试人员。逻辑视图展示了描述系统关键方面的重要用例实现场景使用交互图;部署视图描述系统的硬件拓扑关系。数据视图描述了数据流、持久性数据模式、对象与持久性数据之间的模式映射、对象到数据库、存储过程以及触发器的映射机制使用类图描述数据模型,活动图表示数据流。3系统要达到的目标和限制目标网上书店售书系统的目标是在INTERNET,数据库和先进开发平台的基础上,利用现有的软件,配置一定的硬件,开发出一个具有开放体系结构的、易维护的、易移植的、健壮性较强的具有良好人机交互界面的网上书店售书系统。从而为广大喜欢网上购书的用户提供一个方便快捷的网上购书平台。限制普通用户不允许往数据库里添加图书,系统管理员才允许。会员名必须注册过,才能够登录。用户没有登录可以选购图书,但是不允许结账。只有用户登陆后才允许修改密码。只有用户登录才允许退出登录4用例视图网上书店售书系统描述的主要用例有用户注册,用户登录,选购图书,结账,用户退出登录,管理员注册,管理员登录系统,添加图书,删除图书,管理员修改密码,管理员退出登录。系统用例图系统用例图见图41图41系统用例图普通用户注册用例简述用户输入用户名和密码,申请成为会员基本事件流1用户用户提出注册要求2系统显示注册页面3用户输入要注册的用户名和密码4系统验证注册信息是否符合要求,若符合要求,则将信息存入数据库5顾客显示注册成功7用例结束。活动图普通用户注册的活动图见图42图42普通用户注册的活动图普通用户登陆用例简述普通用户输入用户名和密码后可以进行图书的购买基本事件流1用户输入用户名和密码2系统验证登陆信息是否正确3用户显示登陆成功4用例结束。活动图普通用户登陆的活动图见图43图43普通用户登录的活动图普通用户修改密码用例简述普通用户对于已经遗忘或者被盗取的密码可以及时修改。基本事件流1用户输入原有的用户名和密码,2系统验证登录信息是否正确3系统显示注册的用户4用户输入旧密码和新密码5系统验证修改密码信息是否正确6系统显示修改的密码7用例结束活动图普通用户修改密码的活动图见图44图44普通用户修改密码的活动图普通用户选购并结账用例简述用户选取自己想要的图书后加入购物车中并结账基本事件流1用户输入用户名和密码2系统验证登录信息是否正确3用户选购图书后放入购物车,结账4用例结束。活动图普通用户选购并结账的活动图见图45图45普通用户选购并结账的活动图管理员添加图书用例简述管理员向数据库中添加图书基本事件流1管理员输入用户名和密码2系统验证登陆信息是否正确3系统验证是否为管理员4管理员输入表名,书名,价格5系统验证输入信息是否正确,如果正确则添加进入数据库6管理员添加成功,显示添加的图书的书名7用例结束。活动图管理员添加图书的活动图见图46图46添加图书的活动图管理员删除图书用例简述管理员可以删除数据库中脱销,缺货或者停产的图书基本事件流1管理员输入用户名和密码2系统验证登陆信息是否正确3系统验证是否为管理员4管理员输入表名,书名,价格5系统验证输入信息是否正确,如果正确则从数据库中删除图书的所有内容6管理员删除成功,显示删除的图书的书名7用例结束。活动图管理员删除图书的活动图见图47图47删除图书的活动图用户退出登录系统用例简述用户退出登陆系统基本事件流1用户在登陆界面输入用户名和密码2系统验证登陆信息是否正确3用户确认从系统中退出4结束用例。活动图用户退出登陆系统的活动图见图48图48用户退出登录系统的活动图管理员退出系统用例简述管理员退出系统。基本事件流1管理员在登陆界面输入用户名和密码2系统验证登陆信息是否正确3管理员确认从系统中退出4结束用例。活动图管理员退出系统的活动图见图49图49管理员退出系统的活动图管理员登陆系统用例简述管理员可以输入用户名和密码后进入系统进行管理操作基本事件流1管理员输入用户名和密码2系统验证登陆信息是否正确3管理员显示登陆成功4用例结束。活动图管理员登陆系统的活动图见图410图410管理员登录系统的活动图管理员修改密码用例简述管理员可以凭借原有的用户名和密码进行修改密码操作基本事件流1管理员输入原有的用户名和密码,2系统验证登录信息是否正确3系统显示注册的用户4管理员输入旧密码和新密码5系统验证修改密码信息是否正确6系统显示修改的密码7用例结束活动图管理员修改密码的活动图见图411图411管理员修改密码的活动图管理员注册用例简述管理员可以申请注册成为用户基本事件流1管理员用户提出注册要求2系统显示注册页面3管理员输入要注册的用户名和密码4系统验证注册信息是否符合要求,若符合要求,则将信息存入数据库5管理员显示注册成功7用例结束。活动图管理员注册系统的活动图见图412图412管理员注册的活动图5逻辑视图逻辑视图部分主要叙述了设计阶段的工作。总览图51的领域模型是网上书店售书系统的设计实体及其之间的关系;图51领域模型主要PACKAGE的介绍网上书店售书系统PACKAGE图见图52图52网上书店售书系统PACKAGE图WEBAPPWEBAPP包包含了ACTION、FORM包,它们属于显示层的代码,主要使用STRUTS框架。SERVICESERVICE包包含了业务实现的主要接口,每个接口有一个对应的SERVICEIMPL的实现,SERVICEIMPL类放在SERVICEIMPL包中,其中SERVICEIMPL的实现是通过调用DAO接口来实现的,它们属于业务层的代码,主要使用SPRING框架。DAODAO包包含了业务实现的主要接口,每个接口都有一个对应的HIBERNATE版本的DAOHIBERNATE的实现,DAOHIBERNATE类放在DAOHIBERNATE包中,通过DAOHIBERNATE对数据库进行访问,它们属于持久层的代码,主要使用HIBERNATE框架。MODELMODEL包包含了POLO类和HIBERNATE映射文件。ADMINADMIN包包含了属于管理员操作的WEBAPP、SERVICE、SERVICEIMPL、DAO、DAOHIBERNATE、MODEL等包,这些包的关系同上。USERUSER包包含了属于管理员操作的WEBAPP、SERVICE、SERVICEIMPL、DAO、DAOHIBERNATE、MODEL等包,这些包的关系同上。6过程视图过程视图部分叙述几个主要子系统的处理流程。用户注册用户注册的系统顺序图见图61图61用户注册的系统顺序图用户注册的VOPC类图见图62图62用户注册的VOPC类图用户注册的协作图见图63图63用户注册的协作图用户选购并结账用户选购并结账的系统顺序图见图64图64用户选购并结账的系统顺序图用户选购并结账的VOPC类图见图65图65用户选购并结账的VOPC类图用户选购并结账的协作图见图66图66用户选购并结账的协作图管理员添加删除图书管理员添加删除图书的系统顺序图见图67图67管理员添加删除图书的系统顺序图管理员添加删除图书的VOPC类图见图68图68管理员添加删除图书的VOPC类图管理员添加删除图书的协作图见图69图69管理员添加删除图书的协作图7部署视图部署视图描述了如何将具体软件制品分配到计算节点具有处理服务的某种事物上,表示了软件元素在物理架构上的部署,以及物理元素之间的通信。网上书店售书系统的部署视图见图71图71网上书店售书系统的部署视图GENERICPC个人PC机。BROWSER通用个人计算机上的网页浏览器,如IE60,FIREFOX等。APACHEAPACHE源于NCSAHTTPD服务器,经过多次修改,成为世界上最流行的WEB服务器软件之一。APACHE取自“APATCHYSERVER”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。APACHE的特点是简单、速度快、性能稳定,并可做代理服务器来使用。STRUTSSTRUTS是开源软件。使用STRUTS的目的是为了帮助我们减少在运用MVC设计模型来开发WEB应用的时间。如果我们想混合使用SERVLETS和JSP的优点来建立可扩展的应用,STRUTS是一个不错的选择。TOMCAT60TOMCAT60提供SERVLET容器。HIBERNATEHIBERNATE是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得JAVA程序员可以随心所欲的使用对象编程思维来操纵数据库。HIBERNATE可以应用在任何使用JDBC的场合,既可以在JAVA的客户端程序使用,也可以在SERVLET/JSP的WEB应用中使用,最具革命意义的是,HIBERNATE可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。MYSQLMYSQL是小型关系型数据库管理系统,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MYSQL作为网站数据库。数据视图网上书店售书系统数据在关系数据库中的组织。网上书店售书系统的数据视图见图81图81网上书店售书系统的数据视图8规模和性能满足的规模能够满足500人同时浏览网上书店,100人同时使用数据库进行图书购买活动满足的性能各项指标性能良好,能达到客户要求的等待时间9质量经测试证实的软件缺陷和限制是不允许注册带有汉字的会员名,软件性能的影响不是很大。另外,本程序的不足之处在于只是一个简单的网上书店售书系统,主要是模拟购书的情形,因此实际上并不是一个真正的售书系统,其次系统管理员同样也允许购买图书,这与实际不符合。10测试101测试概要测试项目测试内容注册(1)测试用户的注册账号是否允许有数字或字母与汉字的组合出现;(2)是否允许注册相同的用户名;(3)注册信息不完整时,系统对错误信息的处理是否正确登录(1)主要测试用户名和密码不匹配时,是否能成功登陆(2)信息填写不完整时,系统对错误信息的处理是否正确购书,结账(1)主要测试当一个客户登陆后,选购完书后进入结账窗口时,是否显示正确的购买的图书和应付款。(2)用户没有登录时,是否能够结账修改密码(1)主要测试用户在没有登录的情况下,是否允许修改密码(2)信息不完整时,系统对错误信息的处理是否正确退出登录(1)主要测试用户没有登录的情况下,按下退出登录,系统的处理是否正确(2)用户登录后,是否能正常退出登录添加图书(1)测试当普通用户登录时,是否能添加图书(2)当管理员输入添加的图书信息后是否能正确将图书添加到数据库中。(3)是否允许添加名字相同的图书到数据库中(4)填写信息不完整时,系统对错误信息的处理是否正确。102测试结果及发现1021注册模块测试检测模块检测项预计输入实际输入测试结果会员名是否允许有汉字的出会员名123天会员名123天会员名不允许有汉字的出现现密码654321密码654321是否允许注册已经注册过的会员名会员名ABC密码654321会员名ABC密码654321不允许注册已经注册过的账户注册模块注册信息不完整,系统对错误信息的处理是否正确会员名ABC密码会员名ABC密码系统对错误信息的处理是正确的1022登录模块测试检测模块检测项预计输入实际输入测试结果会员名和密码不匹配时,能否成功登陆会员名ABC密码123456(实际密码为654321)会员名123天密码123456会员名和密码不匹配时,不能登录登录模块填写信息不完整时,系统对错误信息的处理是否正确会员名ABC密码会员名ABC密码系统对错误信息的处理是正确的1023购书,结账模块检测模块检测项预计输入实际输入测试结果用户登陆后,选完书后是否能正确结账会员名ABC密码654321会员名ABC密码654321可以正确结账结账,购书模块用户没有登录时是否允许结账会员名密码会员名密码用户没有登录,不允许结账1024修改密码模块测试测试模块测试项预计输入实际输入测试结果用户在没有登录的情况下,是否允许修改密码会员名密码会员名密码不允许修改密码修改密码模块填写信息不完整,系统对错误信息的处理是否正确旧密码654321新密码旧密码654321新密码系统对错误信息的处理是正确的1025退出登录模块测试模块测试项预计输入实际输入测试结果用户在没有登录的情况下,按下退出登录,系统对错误信息的处理是否正确会员名密码会员名密码系统对错误信息德尔处理是正确的退出登录模块用户在登陆后,是否能正常退出登录会员名ABC密码654321会员名ABC密码654321可以正常退出登录1026添加图书模块测试模块测试项预计输入实际输入测试结果普通用户登录后,是否允许添加图书会员名ABC密码654321会员名ABC密码654321普通用户登录后,允许添加图书管理员登陆后,输入图书信息后,是否能正常添加图书到数据库中表名COMPUTER书名数据结构价钱25表名COMPUTER书名数据结构价钱25能够正常添加图书到数据库中是否允许添加相同名称的图书到数据库中表名COMPUTER书名数据结构价钱25表名COMPUTER书名数据结构价钱25不允许添加相同名称的图书到数据库中添加图书模块信息填写不完整时,系统对错误信息的处理是否正确表名COMPUTER书名数据结构价钱表名COMPUTER书名数据结构价钱系统对错误信息的处理是正确的11附录本系统实现了部分功能(注册,登录)(1)注册模块REGISTERJSP请您注册,会员名字必须由字母和数字组成输入名称输入密码REGISTERJAVAPACKAGEMYBEANDATAPUBLICCLASSREGISTERSTRINGLOGNAME“,PASSWORD“STRINGBACKNEWSPUBLICVOIDSETLOGNAMESTRINGNAMELOGNAMENAMEPUBLICSTRINGGETLOGNAMERETURNLOGNAMEPUBLICVOIDSETPASSWORDSTRINGPWPASSWORDPWPUBLICSTRINGGETPASSWORDRETURNPASSWORDPUBLICSTRINGGETBACKNEWSRETURNBACKNEWSPUBLICVOIDSETBACKNEWSSTRINGSBACKNEWSSHANDLEREGISTERJAVAPACKAGEMYSERVLETCONTROLIMPORTMYBEANDATAIMPORTJAVASQLIMPORTJAVAIOIMPORTJAVAXSERVLETIMPORTJAVAXSERVLETHTTPPUBLICCLASSHANDLEREGISTEREXTENDSHTTPSERVLETPUBLICVOIDINITSERVLETCONFIGCONFIGTHROWSSERVLETEXCEPTIONSUPERINITCONFIGTRYCLASSFORNAME“SUNJDBCODBCJDBCODBCDRIVER“CATCHEXCEPTIONEPUBLICSTRINGHANDLESTRINGSTRINGSTRYBYTEBBSGETBYTES“ISO88591“SNEWSTRINGBBCATCHEXCEPTIONEERETURNSPUBLICVOIDDOPOSTHTTPSERVLETREQUESTREQUEST,HTTPSERVLETRESPONSERESPONSETHROWSSERVLETEXCEPTION,IOEXCEPTIONCONNECTIONCONPREPAREDSTATEMENTSQLREGISTERREGNEWREGISTERREQUESTSETATTRIBUTE“REGISTER“,REGSTRINGLOGNAMEREQUESTGETPARAMETER“LOGNAME“TRIMSTRINGPASSWORDREQUESTGETPARAMETER“PASSWORD“TRIMSTRINGURI“JDBCODBCMYMOON“IFLOGNAMENULLLOGNAME“IFPASSWORDNULLPASSWORD“BOOLEANISLDTRUEFORINTI0IA|CA|C0ISLDFALSEBOOLEANBOOLOGNAMELENGTH0STRINGBACKNEWS“TRYCONDRIVERMANAGERGETCONNECTIONURI,“,“STRINGINSERTCONDITION“INSERTINTOMEMBERVALUES,“IFBOOSTATEMENTSQCONCREATESTATEMENTRESULTSETRSSQEXECUTEQUERY“SELECTFROMMEMBER“WHILERSNEXTIFRSGETSTRING1EQUALSLOGNAMEREQUESTDISPATCHERDISPATCHERREQUESTGETREQUESTDISPATCHER“1JSP“/转发DISPATCHERFORWARDREQUEST,RESPONSERETURNSQLCONPREPARESTATEMENTINSERTCONDITIONSQLSETSTRING1,HANDLESTRINGLOGNAMESQLSETSTRING2,HANDLESTRINGPASSWORDINTMSQLEXECUTEUPDATEIFM0BACKNEWS“注册成功“REGSETBACKNEWSBACKNEWSREGSETLOGNAMELOGNAMEREGSETPASSWORDHANDLESTRINGPASSWORDELSEBACKNEWS“信息填写不完整或名字中有非法字符“REGSETBACKNEWSBACKNEWSCONCLOSECATCHSQLEXCEPTIONEXPBACKNEWS“该会员名已被使用,请您更换名字“EXPREGSETBACKNEWSBACKNEWSREQUESTDISPATCHERDISPATCHERREQUESTGETREQUESTDISPATCHER“SHOWREGISTERMESSJSP“/转发DISPATCHERFORWARDREQUEST,RESPONSEPUBLICVOIDDOGETHTTPSERVLETREQUESTREQUEST,HTTPSERVLETRESPONSERESPONSETHROWSSERVLETEXCEPTION,IOEXCEPTIONDOPOSTREQUEST,RESPONSESHOWREGISTERMESSJSP注册的会员名称2登录模块LOGINJSP请您登录登录名称输入密码LOGINJAVAPACKAGEMYBEANDATAPUBLICCLASSLOGINSTRINGLOGNAME,PASSWORD,BACKNEWS“BOOLEANSUCCESSFALSEPUBLICVOIDSETLOGNAMESTRINGNAMELOGNAMENAMEPUBLICSTRINGGETLOGNAMERETURNLOGNAMEPUBLICVOIDSETPASSWORDSTRINGPWPASSWORDPWPUBLICSTRINGGETPASSWORDRETURNPASSWORDPUBLICSTRINGGETBACKNEWSRETURNBACKNEWSPUBLICVOIDSETBACKNEWSSTRINGSBACKNEWSSPUBLICVOIDSETSUCCESSBOOLEANBSUCCESSBPUBLICBOOLEANGETSUCCESSRETURNSUCCESSHANDLELOGINJAVAPACKAGEMYSERVLETCONTROLIMPORTMYBEANDATAIMPORTJAVASQLIMPORTJAVAIOIMPORTJAVAXSERVLETIMPORTJAVAXSERVLETHTTPPUBLICCLASSHANDLELOGINEXTENDSHTTPSERVLETPUBLICVOIDINITSERVLETCONFIGCONFIGTHROWSSERVLETEXCEPTIONSUPERINITCONFIGTRYCLASSFORNAME“SUNJDBCODBCJDBCODBCDRIVER“CATCHEXCEPTIONEPUBLICSTRINGHANDLESTRINGSTRINGSTRYBYTEBBSGETBYTES“ISO88591“SNEWSTRINGBBCATCHEXCEPTIONEERETURNSPUBLICVOIDDOPOSTHTTPSERVLETREQUESTREQUEST,HTTPSERVLETRESPONSERESPONSETHROWSSERVLETEXCEPTION,IOEXCEPTIONCONNECTIONCONPREPAREDSTATEMENTSQLLOGINLOGINBEANNULLSTRINGBACKNEWS“HTTPSESSIONSESSIONREQUESTGETSESSIONTRUETRYLOGINBEANLOGINSESSIONGETATTRIBUTE“LOGIN“IFLOGINBEANNULLLOGINBEANNEWLOGINSESSIONSETATTRIBUTE“LOGIN“,LOGINBEANCATCHEXCEPTIONEELOGINBEANNEWLOGINSESSIONSETATTRIBUTE“LOGIN“,LOGINBEANSTRINGLOGNAMEREQUESTGETPARAMETER“LOGNAME“TRIMSTRINGPASSWORDREQUESTGETPARAMETER“PASSWORD“TRIMBOOLEANOKLOGINBEANGETSUCCESSLOGNAMEHANDLESTRINGLOGNAMEP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论