
V 1.0
| 修改编号 | 修改日期 | 修改后版本 | 修改人 | 修改位置 | 修改内容概述 |
| 001 | 2009-1-16 | 1.0 | 曹再生 | 全部 | 初始发布版本 |
评 审 日 期: 2009年1月18日
目 录
1.导言 1
1.1 目的 1
1.2 范围 1
1.3 缩写说明 1
1.4 术语定义 1
1.5 参考资料 2
2.系统分析 2
2.1 系统功能描述 2
2.2 系统用例设计 2
3.用例分析 4
3.1 前台服务端“登录验证”用例分析 4
3.2前台服务端“商品搜索”用例分析 5
3.3前台服务端“购物车、订单处理”用例分析 6
3.4前台服务端“用户注册管理”用例分析 7
3.5 后台管理端“登录验证”用例分析 7
3.6 后台管理端“商品分类管理”用例分析 8
3.7 后台管理端“商品资料管理”用例分析 9
3.8 后台管理端“订单管理”用例分析 10
3.9 后台管理端“用户管理”用例分析 11
4. 概念数据模型 12
5. 系统类图 13
5.1 系统总览 13
5.2 表示层和业务层详细类图 14
5.3 数据层接口描述 16
6. 系统活动图 16
7. 系统部署图 17
1.导言
1.1目的
该文档的目的是描述网上商城系统项目的概要设计,其主要内容包括:
●系统功能简介
●系统结构设计
●系统接口设计
●数据设计
●模块设计
●界面设计
本文档的预期的读者是:
●开发人员
●项目管理人员
●测试人员
1.2范围
该文档定义了系统的结构和单元接口,但未确定单元的实现方法,这部分内容将在详细设计/实现中确定。
1.3缩写说明
UML
Unified Modeling Language(统一建模语言)的缩写,是一种标准的建模语言。
MVC
Model-View-Control(模式-视图-控制)的缩写,表示一个三层的结构体系。
1.4术语定义
会员
登录系统,浏览和购买商品的买方人员,分为注册会员和未注册会员。
管理员
管理网上商城系统,管理会员信息和售卖商品的卖方人员。
1.5参考资料
[1] 郭荷清.《现代软件工程》.华南理工大学出版社
[2] 刘敏莺,杨丽,文学义.《Rational Rose 2003 基本教程》.冶金工业出版社
[3] 张桂元,贾燕枫.《Eclipse开发入门与项目实践》.人民邮电出版社
2.系统分析
2.1 系统功能描述
作为卖方与买方之间沟通交流的桥梁,网上商城系统为买方提供了用户注册登录、产品关键字查询、最新产品分类检索、购物车管理等功能,方便了买方的在线购物;系统为卖方提供了产品信息管理(包括产品分类信息和基本信息)、订单管理、用户信息管理等功能——这样一种快速、便捷的营销模式,使得销售的渠道更加多样化。
2.2 系统用例设计
经分析,可以确定整个系统的主用例图将包括两个角色(用户和管理员),及对应两个用例,系统主用例图如图1:
图1:系统的主Use Case图
其中,前台服务端子系统的用例图如图2:
图2:前台服务端用例图
后台管理端子系统的用例图如图3:
图5:后台管理端用例图
3.用例分析
3.1 前台服务端“登录验证”用例分析
(1)本用例描述:
1.用户访问网上商城首页,界面左侧显示用户名、密码两个输入框,
1.1用户输入用户名、密码,
1.2系统查询该用户相关信息,
1.2.1若用户名及密码非法,则返回步骤1,并提示错误信息;
1.2.2若用户名及密码合法,则用户进入系统。
(2)本用例顺序图:
(3)本用例协作图:
3.2前台服务端“商品搜索”用例分析
(1)本用例顺序图:
(2)本用例协作图:
3.3前台服务端“购物车、订单处理”用例分析
(1)本用例顺序图:
(2)本用例协作图:
3.4前台服务端“用户注册管理”用例分析
(1)本用例顺序图:
(2)本用例协作图:
3.5 后台管理端“登录验证”用例分析
(1)本用例描述:
1.用户访问管理员登录页面,界面显示用户名、密码两个输入框,
1.1用户输入用户名、密码,
1.2系统查询该管理员账号信息,
1.2.1若用户名及密码非法,则返回步骤1,并提示错误信息;
1.2.2若用户名及密码合法,则进入管理员用户操作界面
(2)本用例顺序图:
(3)本用例协作图:
3.6 后台管理端“商品分类管理”用例分析
(1)本用例顺序图:
(2)本用例协作图:
3.7 后台管理端“商品资料管理”用例分析
(1)本用例顺序图:
(2)本用例协作图:
3.8 后台管理端“订单管理”用例分析
(1)本用例顺序图:
(2)本用例协作图:
3.9 后台管理端“用户管理”用例分析
(1)本用例顺序图:
(2)本用例协作图:
4. 概念数据模型
我们从用例分析阶段的各顺序图、协作图,可以归纳得出系统的概念数据模型,如下图:
图:概念数据模型
5. 系统类图
5.1 系统总览
本系统采用三层结构,分为表示层、业务层、数据层。
其中数据持久层封装了对数据库的操作;将表示层和业务层按MVC模式再一次划分,将所有的类按其作用分成3个包,分别是“用户界面”类包(View)、“业务逻辑”类包(Control)、“数据模型”类包(Model)。
“用户界面”类负责系统与用户的交互,获得用户的操作信息,发送给相应的“业务逻辑”类处理,“业务逻辑”类根据处理结果,生成返回信息,同时控制“数据模型”类与实际的数据库管理系统进行交互。调用关系如下:
5.2 表示层和业务层详细类图
5.2.1 前台“用户界面”类包的详细类图 (表示层)
5.2.2 前台“数据模型”类包中实体类Model的详细类图(业务层)
(1)adminuser类:管理员账号类。
属性id——管理员账号唯一编号;
属性username——管理员账号登录用户名;
属性password——管理员账号登录密码。
(2)sort类:商品类型类。
属性id——商品类型唯一编号;
属性name——商品类型名。
(3)product类:商品类。
属性id——商品唯一编号;
属性sortid——商品所属类型唯一编号;
属性name——商品名;
属性price——商品进货价。
(4)shopcart类:订单条目类。
属性id——订单条目唯一编号;
属性orderid——该订单条目所属的订单唯一编号;
属性productid——该订单条目所对应的商品唯一编号。
(5)orders类:订单类。
属性id——订单唯一编号,用于系统识别;
属性orderno——订单号码,用于人工识别;
属性userid——该订单所属的会员唯一编号。
(6)member类:会员账号类。
属性id——会员账号唯一编号;
属性username——会员账号登录用户名;
属性password——会员账号登录密码。
5.2.3 前台“业务逻辑”类包的详细类图(业务层)
围绕每个数据实体类,均有若干个业务逻辑类进行操作,具体实现参加详细设计和代码实现。
5.2.4 后台各类包的详细类图:略
5.3 数据层接口描述
我们将对数据库的所有相关操作封装于数据库层。其中,HibernateUtil类用于获取数据库连接,DbOperate类包含各种方法用于执行对数据库的访问。
6. 系统活动图
系统活动图设计如下:
7. 系统部署图
基于MVC思想,将系统部署设计如下:
