概要设计说明书.docx
《概要设计说明书.docx》由会员分享,可在线阅读,更多相关《概要设计说明书.docx(19页珍藏版)》请在冰豆网上搜索。
概要设计说明书
案卷号
ML-060311
日期
2004-4-11
<网上书店>
概要设计说明书
作者:
刘俊铖、马俊
完成日期:
2004年4月15日
签收人:
马俊
签收日期:
2004年4月16日
修改情况记录:
版本号
修改批准人
修改人
安装日期
签收人
目录
1引言1
1.1编写目的1
1.2范围1
1.3定义1
1.4参考资料2
2总体设计2
2.1需求规定2
2.2运行环境3
2.3基本设计概念和处理流程3
2.4结构4
2.5功能需求与程序的关系8
2.6人工处理过程9
2.7尚未解决的问题9
3接口设计10
3.1用户接口10
3.2外部接口10
3.3内部接口10
4运行设计10
4.1运行模块组合10
4.2运行控制10
4.3运行时间11
5系统数据结构设计11
5.1逻辑结构设计要点11
5.2物理结构设计要点11
6系统出错处理设计12
6.1出错信息12
6.2补救措施12
6.3系统维护设计12
7阶段小结12
1引言
1.1编写目的
服务于书店的网络化运营,管理用户购买以及其它服务、管理各类图书信息以及图书销售中的各个环节,最终用户为使用本网上书店的各类用户以及网上书店的系统管理人员和维护人员。
1.2范围
说明:
a.待开发的软件系统的名称:
XXXX网上书店
b.任务提出者:
刘俊铖、马俊
开发者:
马俊、张倩、刘俊铖、张瑞鑫、唐志军、冯庆丰
用户:
欲使自己书店网络化运营的各类书店。
使用本软件的单位:
待定
1.3定义
UML:
UnifiedModelingLanguage,统一建模语言。
类图(classdiagram):
表述系统中各个对象的类型及其间存在的各种静态关系。
静态关系包括关联和子类型两种。
交互图(interactivediagram):
是表述各组对象如何依某种行为进行协作的模型。
包括顺序图和协作图。
可修改性:
容许对系统进行修改而不增加原系统的复杂性。
有效性:
软件系统能有效地利用计算机的时间资源与空间资源的能力。
可靠性:
能够防止因概念、设计和结构等方面的不完善造成的软件系统失效,具有挽回因操作不当造成软件系统失效的能力。
可理解性:
系统具有清晰的结构,能直接反映用户的需求。
可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植与可用。
可维护性:
软件产品交付用户使用以后,能够对它进行修改,以便改正潜伏的错误,改进性能和其他属性,使软件产品适应环境的变化。
可重用性:
概念或功能相互独立的一个或一组相关模块定义为一个软部件。
软部件可以在多种场合应用的程度称为部件的可重用性。
可适应性:
软件在不同的系统约束条件下,使用户需求得到满足的难易程度。
可移植性:
软件从一个计算机系统或环境搬到另一个计算机系统或环境的难易程度。
可追踪性:
根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行逆向追踪的能力。
可互操作性:
多个软件元素相互通信并协同完成任务的能力。
1.4参考资料
【中】谭庆平《软件工程》高等教育出版社2002年7月
【美】MartinFowler《UML精粹》清华大学出版社2000年4月
【美】WendyBoggs《UML与RationalRose从入门到精通》电子工业出版社
【中】杨钰等《JSP网络开发技术》人民邮电出版社
2总体设计
2.1需求规定
软件项目的大致功能要求如下:
1.新用户输入个人信息进行注册,输入信息包括;
2.注册用户可以输入登录名和密码进行登录,也可以在登录后的主页中注销;
3.来宾用户按分类浏览图书;
4.来宾用户按精品推荐浏览图书;
5.来宾用户按畅销排行浏览图书;
6.来宾用户浏览新书推荐;
7.来宾用户输入查询条件(包括查询类型和查询关键字)查询图书;
8.登录用户具有所有来宾用户所有的功能;
9.登录用户定购图书;
10.登录用户查看订单;
11.登录用户查看个人信息;
12.登录用户修改个人信息;
13.书店管理员处理订单(包括取消订单和结帐),其中结帐时需要输入用户寄过来的付款,管理员可以通过用户登录名查询特定用户然后进行处理;
14.书店管理员录入新的图书,输入信息包括图书名、图书编号、出版社、出版日期、作者、单价和内容简介;
15.书店管理员维护图书信息(包括修改图书信息和删除图书);
16.书店管理员查看和注册用户信息;
17.书店管理员修改登录密码;
详细说明参见《需求分析说明书》。
2.2运行环境
该软件运行于MicrosoftWindows平台上的网络中,客户端要有浏览器,服务端要配置服务器并安装有DBMS(如Access等)。
2.3基本设计概念和处理流程
基本概念
Web应用程序的总体构架是一个客户机/服务器系统,浏览器向服务器请求"Web页",每一页都是内容和以HTML表达的格式指令的组合。
一些页包括客户端脚本,它们由浏览器解释。
这些脚本为显示的页定义了其他动态行为,而且它们经常与浏览器、页内容和页中包含的其他控件(Applet、ActiveX控件和插件)交互。
用户查看页中的内容,并与其交互。
有时,用户在页的字段元素中输入信息,以表单的形式提交给服务器处理。
用户还可以通过超链接导航到系统的其他页,与系统进行交互。
基本流程
用户服务的流程:
来宾用户通过浏览器访问网上书店,用户以表单的形式向服务端发送服务请求,服务端根据用户权限提供相应服务;若用户提出超出权限的服务,服务端返回相应的错误报告信息。
注册用户可以将用户名和密码以表单形式提交给服务端,服务端查询数据库,若有该用户则返回登录后的主页继续提供服务;若没有则返回错误报告。
登录后用户可以以各种方式浏览图书也可以查看图书的详细信息,对于自己比较满意的书,可以放入购物车,最后提交订单给服务端,服务端接收到订单后写入数据库;此后用户可以通过邮局汇款给书店,书店管理员通过管理端处理订单,并通过邮局将书寄给用户。
用户注销后回到登录界面。
书店管理员验证过用户名和密码后进入管理端界面,以表单形式提交各种管理请求,服务端相应后返回相应的服务页面。
管理员推出后返回登录页面。
2.4结构
根据开发小组的讨论,将整个网上书店分为两部分:
客户服务和书店管理。
客户服务根据用户类型(注册用户(即会员)和非注册用户)提供相应权限的服务。
书店管理部分提供书店管理员完成书店管理维护的相应功能。
整体结构
整个网上书店的总体结构图如下(详图请参见网上书店的UML类图):
具体各个模块包括的页面列表如下:
模块名
静态页面
服务处理页面
功能
浏览器端模块
Register.htm(用户注册页面)
index.jsp
未登录时的用户主页
registerInfo.htm(注册信息页面)
main.jsp
登录后的用户主页
loginErr.htm(登录错误页面)
chkUser.jsp
用户登录验证
regOk.htm(注册成功页面)
commendList.jsp
精品书推荐处理
regFailed.htm(注册失败页面)
checkOrder.jsp
检查订单页面
Help.htm(帮助信息页面)
detailView.jsp
图书详细信息查看
Lookup.jsp
查询处理
Modify.jsp
购物车修改处理
modUser.jsp
处理用户信息修改
newList.jsp
新书列表处理
newOrder.jsp
新订单处理
orderView.jsp
订单查看处理
Register.jsp
注册信息处理
searchResult.jsp
搜索结果
sortList.jsp
图书分类处理
submitOrder.jsp
订单提交处理
submitResult.jsp
订单提交结果处理
topList.jsp
畅销书排行处理
userPannel.jsp
用户信息面板
userView.jsp
用户信息查看
管理端模块
addBook.htm(添加图书信息页)
Login.jsp
管理员登录验证
Main.jsp
登录后系统主界面
addBookS.jsp
图书添加处理
DealBook.jsp
图书处理
delBook.jsp
图书删除处理
maintianBookS.jsp
图书信息修改处理
maintainBook.jsp
图书信息修改结果
dealOrder.jsp
订单处理
orderDel.jsp
订单删除处理
orderLook.jsp
订单查看处理
orderPay.jsp
订单支付处理
Research.jsp
查询处理
userView.jsp
注册用户查看处理
updatePwd.jsp
管理员密码更改
Logout.jsp
管理员退出系统处理
总体关系如下:
模块内结构
客户服务模块:
用户:
Costumer:
浏览网上书店的用户
操作:
1、注册
2、登录
3、查询、修改个人信息
4、定购图书
5、查看订单、取消订单
6、浏览图书信息、查询图书
7、获得帮助
管理服务模块:
用户:
Administrator:
网上书店管理人员
操作:
1、添加、删除图书信息
2、更新、维护图书信息
3、销售情况统计
4、处理订单
根据实现的功能和不同类型用户的操作,我们将整个网上书店划分为如下几个页面:
2.5功能需求与程序的关系
注:
各功能需求的详细说明详见《需求分析说明书》
1、未注册者
Index.jsp
Search.jsp
newList.jsp
Register.jsp
Help.htm
topList.jsp
功能需求1
√
功能需求2
√
功能需求3
√
√
功能需求4
√
√
功能需求5
√
功能需求6
√
√
功能需求7
√
功能需求8
√
功能需求9
√
功能需求10
√
2、已注册者(书店会员)
main
search
newList
shopCart
uP
topList
order
feedBack
exit
功能需求1
√
功能需求2
√
功能需求3
√
√
功能需求4
√
功能需求5
√
功能需求6
√
√
√
√
√
功能需求7
√
√
√
功能需求8
√
√
√
功能需求9
√
√
√
注:
uP是userPannel(用户面板)的缩写
3、书店管理员
login
main
Search
dealBook
dealOrder.
userView
updatePwd
logout
功能需求1
√
√
功能需求2
√
√
功能需求3
√
√
功能需求4
√
√
功能需求5
√
√
功能需求6
√
√
功能需求7
√
√
功能需求8
√
2.6人工处理过程
客户服务端人工处理过程有:
用户登录时用户名和用户密码输入
用户注册时个人详细信息的输入
查询图书是查询条件的选择和输入
修改订单信息时定购图书册数的输入
用户选择各种服务时请求的提交
管理服务端人工处理过程有:
管理员登录时用户名和用户密码输入
管理员查询订单时查询条件的选择和输入
处理订单时用户实到汇款的输入
管理员修改密码时的输入
管理员选择各种服务时请求的提交
2.7尚未解决的问题
通过电子帐户付款的实现方式;
一些较重要的信息的加密解密。
3接口设计
3.1用户接口
用户主要是通过操作浏览器来完成网上书店的购书过程,一些表单信息需要用户填写,然后提交给服务器去处理,然后服务器将处理结果返回给客户端,客户可根据处理结果决定下一步的操作步骤。
3.2外部接口
本系统通过jdbc-odbc桥接口操作SQLSEVER的数据库
3.3内部接口
《详细接口可参看UML图》。
4运行设计
4.1运行模块组合
根据用户类型的不同,系统决定访问者可以访问的页面以及使用的功能。
4.2运行控制
如果访问者未登录,则只能访问主页、畅销书排行、搜索图书、新书列表、注册、帮助页面,不能购书、查看个人信息和查看订单。
如果用户已经登录,除未登录用户能使用的功能外,还可以购书,进入自己的书店帐户、查看自己的订单、取消自己的订单、查看和修改自己的个人信息等功能。
如果是管理员,则可以访问增加图书、删除图书、修改图书信息、处理订单和修改管理员密码等页面,并根据相应的页面使用相应的功能。
要成功使用管理员的功能,必须在管理员登陆页面正确输入用户名和密码,不匹配者不能使用上述功能。
4.3运行时间
打开网页的时延视网络速度而定,网络通畅时不得超过2秒,任何情况下不得超过5秒;
查询图书要根据数据库的大小而定,但最多不得超过10秒
提交信息续写入数据库时,不得超过5秒
5系统数据结构设计
5.1逻辑结构设计要点
各个页面内的具体数据变量详见UML图,下面说明较复杂的类:
用户处理分页信息的myPage类
成员变量:
pageID:
int//页面号
pageCount:
int//分页页码
pageSize:
int//页的大小
recordCount:
int//记录数的数量
购物车类shop
成员变量:
publicStringbookName//购买的图书名称
publicStringbookID//购买的图书编号
publicdoublebookPrice//购买的图书单价
publicintbookNum//购买的图书数量
session对象中保存的信息包括:
userID:
String//购书用户的ID
userName:
String//购书用户的姓名
5.2物理结构设计要点
数据库表可存储在任意位置,只要在注册数据源时选择目的数据库即可。
6系统出错处理设计
6.1出错信息
Ø用户登陆时,如果输入的用户名和密码不和数据库中的相匹配,则系统自动跳入loginErr.htm页面,输出错误信息。
Ø用户注册时,如果注册使用的用户名已经被使用过,则不能注册,系统自动跳入registerErr.htm页面,输出错误信息
Ø管理员登录时,如果输入的用户名和密码不和数据库中的匹配,则不能进入管理界面。
Ø需要操作数据库时,如果操作失败,或者发生异常,则输出相应错误信息。
Ø如果用户在表单中输入的数据不符合预定的要求,则弹出错误信息。
Ø如果数据库损坏,不能正常操作,则弹出出错信息。
6.2补救措施
a.后备技术:
定期备份数据库文件,一旦数据库发生异常,立即用备份的数据库覆盖原来的数据库文件。
b.安全技术:
为保护注册用户的合法权益,对用户的一些信息进行安全处理,对一些消息进行加密处理,使用session以及Application禁止各类用户的非法访问未授权网页。
c.恢复及再启动技术:
定期对数据库和服务器进行更新和检查,并定期备份重要文件。
6.3系统维护设计
系统具有可扩展性,有时间可以方便加入代扩展的功能,修改现有的功能。
7阶段小结
通过对系统的概要设计,我们已经完全为网上书店打起了一个大致的框架,建立了一个基本的模型,并且对各个模块之间的关系及接口和各个功能之间的相互联系进行了分析,为后面的详细设计和编码打下了基础,同时,我们的数据库已经基本建立完成,下面我们将具体分析各个功能模块的具体实现并开始编码工作。