资源描述
文档编号:
密级:内部
在线购物商城(Easy_Buy)需求规格说明书
二零一三年三月
项目需求规约说明书V1.0 II
需求规格说明书
关于本文档
项目名称
在线购物商城(Easy_Buy)项目
主 题
需求规格说明书
说 明
适用对象
修 订 历 史
版 本
章 节
类 型
日 期
作 者
说 明
1.0
C
说明:类型-创建(C)、修改(U)、删除(D)、增加(A);
评 审 记 录
角 色
签 名
日 期
说 明
目 录
1 前言 1
1.1 编写目的 1
1.2 术语和缩略语 1
2 软件概述 1
2.1 项目背景 1
2.2 功能架构 2
3 用户模型分析 3
4 系统功能需求分析 5
4.1 系统功能设计 5
4.1.1 概要分析 5
4.1.2 详细分析 6
5.1.2.1前台购物系统 6
5 其他非功能需求 9
5.1 一般性性能需求 9
5.14灵活性 9
5.2 一般性安全性需求 9
5.3 用户文档需求 10
6 数据库层 10
6.1 全局E-R图 10
6.2 局部E-R图 11
6.3 数据表结构设计 13
6.4 Customers 13
6.5 Orders 13
6.4表示逻辑层 15
6.5业务逻辑层 16
6.6 系统类图设计 17
7测试报告 17
7.1数据和数据库完整性测试 17
7.2 功能测试 18
1 前言
1.1 编写目的
在完成了针对网上购物市场的前期调查,同时与多位用户进行了全面深入的探讨和分析的基础上,提出了这份需求规格说明书。
此需求规格说明书对网上购物系统做了全面细致的用户需求分析,明确所要开发的软件应具有的功能、性能与界面,使系统分析人员与软件开发人员能清楚的了解用户的需求,并在此基础上进一步提出概要设计说明书和完成后续设计与开发工作。
本说明书的预期读者为客户、系统设计人员和编码人员;为开发人员、维护人员、客户之间提供共同的协议而创立基础,指导软件功能的实现。本软件需求说明书全面、概括性地描述了网上购物系统所要完成的工作,使软件开发人员和用户对本系统中的业务流程及功能达成共识。通过本需求说明书可以全面了解网上购物系统所要完成的任务和所能达到的功能。
1.2 术语和缩略语
词汇名称
词汇含义
备注
简单购物网站(Easy_Buy)
实现购物功能的简单电子商城网站
2 软件概述
2.1 项目背景
随着Internet的发展,通过网络提供各种服务,已成为当今的时尚,尤其为年轻人所青睐。但是众所周知,由于年轻人对网络的熟悉度更高,相应地对网站的要求也就越高。为了更好的方便年轻人网上购物,为网上购物提供更便捷的服务,我们决定专门为年轻人开发一个便捷简单的网上购物系统—简单购物网站(Easy_Buy)。
2.2 功能架构
网上购物系统
用户购物模块
管理员信息管理模块
新用户注册
用户登录
商品浏览
商品查询
购物车
生成订单
订单查询
添加商品
删除商品
查询购得商品
管理员登录
用户信息管理
商品信息管理
商品类别管理
用户订单管理
查看用户信息
删除用户信息
查看用户订单
设置发货状态
删除用户订单
3 用户模型分析
物理模型(系统的流程图)
处理流程图:
顾客
网站首页
搜索商品
退出
浏览该商品
浏览其他商品
缺货登记
查看购物
放入购物车
继续购买
取消订单
下订单
确认订单
订单送商家
银货两讫
支付
送货上门
交易完成
售后服务
评论商品
用户
注册/登录
选购商品
放入购物车
数据流程图
订货人
信息
订单确认
付款方式
送货方式
注册/登录
放入购物车
选购商品
用户
4 系统功能需求分析
4.1 系统功能设计
Easy_Buy是一个在线销售系统,是一个B-C模式的电子商务系统,由前台的B/S模式购物系统和后台的C/S模式的管理系统两部分组成。该电子商务系统可以实现会员注册、浏览商品、查看商品详细信息、选购商品、取消订单和查看订单等功能。
4.1.1 概要分析
Easy_Buy是一个B-C模式的电子商城,该电子商务系统要求能够实现前台用户购物和后台管理两大部分功能。系统需求描述如下:
5.1.1.1前台购物系统功能
(1)用户注册/登录:匿名会员只能在系统中查看商品信息,不能进行商品的订购。匿名会员通过注册的方式,输入相关基本信息成为系统的注册会员,注册会员登录系统后进行商品的查看和购物操作。
(2)浏览/查看商品详细信息、搜索(按编号和自定义)、选购商品:注册会员可以通过商品列表了解商品的基本信息,再通过商品详细资料页面了解商品的详细情况,同时,可以根据自己需要进行根据商品编号、商品名称、商品类别和热销度等条件进行商品的查询。
(3)将商品放入购物车:会员在浏览商品过程中,可以将自己需要的商品放入购物篮中,用户最终购买的商品从购物篮中选取。
(4)删除/修改购物车中的商品:会员在选购商品后,在付款前,对购物篮中商品进行最后的选取,可以从中删除不要的商品,也可以修改所选择的商品的数量。
(5)查看购物篮/订单:会员在购物过程中任何时候都可以查看购物篮中自己所选取的商品,以了解所选择商品信息;用户在确认购买后,可以在本系统中查询订单情况,以了解付款信息和商品配送情况。
(6)改变个人设置:注册会员可以修改自己帐号密码及其他个人信息。
(7)注销:注册会员在购物过程中或购物结束后,可以注销自己的帐号,以保证帐号的安全。
5.1.1.2后台管理系统
(1)管理用户:系统管理员可以根据需要添加、修改或删除后台管理系统中的用户,也可以修改密码等基本信息。
(2)维护商品库:具有商品管理权限的管理员可以添加商品信息(主要在进货后)、修改已有商品信息(如产品价格调整)以及删除商品信息(不再销售某种商品)。
(3)处理订单:订单由会员在前台购物过程中生成,后台管理员可以对订单异动情况进行修养处理工作,同时,根据订单情况通知配送人员进行商品流通配送。
(4)维护会员信息:系统注册会员的基本信息由前台注册得到,后台管理员对系统注册会员的信息进行维护(如会员帐户密码丢失等)。
(5)其他管理功能:包括系统备份、系统恢复和日志管理等。
4.1.2 详细分析
5.1.2.1前台购物系统
1. 会员注册
提供注册功能,用户填写必要资料和可选资料后成为本购物网站的会员,只有注册会员才可以进行购物操作,非注册会员只能查看商品资料。
2. 会员登录
注册会员输入注册用户名和密码可以登录本网站进行购物。
3. 显示商品列表
显示本网站所提供的商品资料条目。
4. 显示商品详细信息
通过点击某一商品条目可以查看该商品的详细资料。
5. 查看购物篮
购物者可以通过本功能查看已选取的商品资料。
6. 查看订单
用户确认购买后,可以通过该功能查看购物订单信息。
7. 修改会员资料
注册会员可以修改本人的相关资料。
开始
进入主页
确认选购
浏览商品
放入购物篮
收银台
生成订单
购物完成
已登录
是
是
是
已注册
注册
登录
否
否
否
图 前台购物流程图
4.1.2.2 后台管理系统
Easy_Buy后台管理系统集网上客户订单接收、采购、销售、调拨、库存各环节的资金流、物流管理于一身,是一个适用于商业批发、零售业务的电子商务网站管理系统。它对 B2C 前台购物网站进行全面的管理和运作。该系统主要模块包括:
1. 商品管理
添加、删除和修改网站商品信息。
2. 订单管理
对购物者在前台购物时产生的订单进行管理,包括接收、配送等功能。
3. 会员管理
对注册会员信息进行相关操作。
4. 用户管理
对后台管理用户及其权限进行添加、修改和删除等操作。
5. 库存管理
对网站商品库存情况进行相关操作。
6. 系统管理
对系统相关数据进行备份、恢复等操作。
客户订单处理流程如图2-2所示:
5 其他非功能需求
5.1 一般性性能需求
5.11精度需求
数据精确,无误差
5.12 时间特性
系统响应时间:小于2s
更新处理时间:保证数据更新周期小于一周
数据转换:及时传输时间:数据传输当在一个工作日内完成
5.13 负载需求
我们需要根据购物商店的历史营业数据进行性能和负载需求分析。当然,来自一些权威网络数据统计机构的参考数据也是我们制定性能需求的重要参考。
5.14灵活性
当需求发生某些变化时,网上购物系统软件操作方式、数据结构、运行环境基本不会发生变化,变化只是将对应的数据库文件内的记录改变,或将过滤条件改变即可。
5.2 一般性安全性需求
安全性需求通常分为四类:
用户认证需求:阐述系统表示用户和用户认证的方法。
授权:如果认证成功,根据用户的级别,允许其执行不同的系统功能。
数据完整性和隐私需求: 确保数据完整,不会影响系统安全。
事务完整性和审计需求:确保用户无法清除自己的在系统中的活动。记录活动相关的数据,使得系统管理员可以发现所有可能的危险行为。
授权需求
功能访问授权限制:只要登录该网站,就可以查看全部商品
数据访问授权限制:用户只能够察看和更新该用户自己的账户信息。
数据完整性和隐私:密码须加密存储。
5.3 用户文档需求
需要提交的用户文档,包括产品用户手册。按照项目管理末班中对用户手册的要求进行编写。
6 数据库层
数据访问层负责对业务层提供数据操作,也就是它负责和底层的数据库打交道。业务层或者通用层中所有的对象都通过数据访问层的对象访问数据库。数据访问层中的类是按业务对象来组织的,每个业务对象中包含的数据可能存在不同的几种数据表中,它由数据访问类统一组织成一个概念中的对象,它相当于是一个面向对象的数据库层,负责映射面向对象与关系数据库间的关系。对数据库的所有操作均由存储过程完成,数据层只是在前台调用后台的存储过程。
Orders
Products
Suppliers
Categories
Customers
purchase
gggg
OerderDetails
Classify
SupplyProducts
n
m
n
m
n
1
n
1
ProductID
SupplierID
OrderDetailID
OrderID
ProductID
Quantity
Price
图3-1 Easy_Buy系统全局E-R图
6.1 全局E-R图
6.2 局部E-R图
(1)Customers
Question
Phone
PostalCode
Answer
Address
Email
Customers
Sex
RegisterDate
Password
RealName
UserName
customIDers
Customers E-R图
(2)Orders
Orders
OrderID
PayMethod
OrderDate
Status
ConsigneeAddress
TotalMoney
DeliveryDate
ConsigneeName
Deliverymethod
Postage
ConsigneePostalCodets
CustomerID
Orders E-R图
Products
(3)Products
ModifyData
CategoryID
ModifyMan
SupplierPrice
SupplierID
Description
SaleNumber
Picture
MarketPrice
ProductName
Price
StockNumber
ProductID
Products E-R图
Categories
CategoryName
Picture
Suppliers
Remark
Username
Postalcode
Address
Phone
Type
Login_Time
SupplierID
CategoriesID
(4)Suppliers
suppliers E-R图
(5) Categories
E-R图
(6)OrderDetails
OerderDetails
ProductID
name
Quanlity
OrderID
OrderDetailID
pirce
OrderDetails E-R图
(7)Administrator
Administrator
Password
AdministratorID
AdministratorName
Privilege
Administrator E-R图
6.3 数据表结构设计
表序号
1
表名
6.4 Customers
含义
存储客户的基本信息,如姓名,性别等
序号
属性名称
含义
数据类型
长度
说明
约束
1
CustomerID
客户编号
char
10
not null
主键
2
UserName
客户姓名
varchar
50
not null
3
RealName
实际姓名
varchar
50
not null
4
Password
密码
varchar
50
not null
5
Sex
性别
char
2
not null
6
Question
提示问题
varchar
50
not null
7
Answer
答案
varchar
50
not null
8
Email
电子邮件
varchar
50
not null
9
Address
住址
varchar
100
not null
10
PostalCode
邮编
varchar
20
not null
11
Phone
电话
varchar
20
null
12
Fax
传真
varchar
20
null
13
RegisterDate
注册日期
datetime
8
not null
表序号
2
表名
6.5 Orders
含义
存储订单的基本内容,,如等
序号
属性名称
含义
数据类型
长度
说明
约束
1
OrderID
订货编号
char
10
not null
主键
2
CustomerID
客户编号
char
10
not null
3
OrderDate
订货日期
datetime
8
null
4
PayMethod
付款方式
varchar
500
null
5
Postage
邮资
decimal
9
null
6
TotalMoney
总金额
money
8
null
7
DeliveryDate
交付日期
datetime
8
null
8
DeliveryMethod
交付方式
varchar
100
null
9
ConsigneeName
收货人名称
varchar
100
null
10
ConsigneeAddress
收货人地址
varchar
100
null
11
ConsigneePostalCode
收货人邮编
varchar
20
null
12
Status
状态
varchar
50
null
表序号
3
表名
OrderDetails
含义
存储订单的详细信息,如等
序号
属性名称
含义
数据类型
长度
说明
约束
1
OrderDetailID
详细订单编号
char
10
not null
主键
2
Name
订单名称
varchar
50
null
3
OrderID
订货编号
char
10
not null
4
ProductID
产品编号
char
10
not null
5
Price
价格
money
8
null
6
Quantity
数量
float
8
null
表序号
4
表名
Products
含义
存储产品的基本信息,如等
序号
属性名称
含义
数据类型
长度
说明
约束
1
ProductID
产品编号
char
10
not null
主键
2
ProductName
产品名称
varchar
50
null
3
CategoryID
类别编号
char
10
not null
4
MarketPrice
市场价格
decimal
9
null
5
Picture
图片
image
16
null
表序号
5
表名
SupplyProducts
含义
存储产品的供应信息,如产品编号,供应商编号等
序号
属性名称
含义
数据类型
长度
说明
约束
1
ProductID
产品编号
char
10
not null
主键
2
SupplierID
供应商编号
char
10
not null
主键
3
SupplierPrice
供应价格
money
8
null
4
Price
价格
money
8
null
5
StockNumber
进货数量
int
4
null
6
SaleNumber
售出数量
int
4
null
7
Description
产品描述
varchar
500
null
8
ModiyMan
修改人
varchar
50
null
9
ModifyDate
修改日期
datetime
8
null
表序号
6
表名
Suppliers
含义
存储供应商的基本信息,如名称,住址等
序号
属性名称
含义
数据类型
长度
说明
约束
1
SupplierID
供应商编号
char
10
not null
主键
2
UserName
供应商名称
varchar
100
null
3
Address
地址
varchar
100
null
4
Phone
电话
varchar
100
null
5
Type
供货方式
varchar
50
null
6
LoginTime
登录时间
datetime
8
null
7
PostalCode
邮编
varchar
20
null
8
Remark
注释
varchar
100
null
表序号
7
表名
Categories
含义
存储商品种类的信息,如产品编号,种类编号等
序号
属性名称
含义
数据类型
长度
说明
约束
1
CategoryID
类别编号
char
10
not null
主键
2
CategoryName
类别名称
varchar
50
null
3
Picture
图片
image
50
null
表序号
8
表名
Administrator
含义
存储客户的基本信息,如姓名,性别等
序号
属性名称
含义
数据类型
长度
说明
约束
1
AdministratorID
管理员编号
char
10
not null
主键
2
AdministratorName
管理员姓名
varchar
50
not null
3
Password
密码
varchar
50
null
4
Privilege
权限
varchar
20
not null
6.4表示逻辑层
Web层相当于是用户界面层,直接与用户交互的web窗体,包括前台购物和系统管理两部分:
1. 前台购物
(1) index.jsp:默认页,显示系统商品信息。
(2) login.jsp:登录页。
(3) loginFailure.jsp:登录失败页。
(4) register.jsp:注册及修改用户信息页。
(5) processRegister.jsp:处理用户注册页。
(6) registerOk.jsp:注册成功页。
(7) productList.jsp:商品列表页。
(8) productDetails.jsp:商品详细资料页。
(9) categories.jsp:用于分类显示商品的页面,它由两部分组成,上半部分显示当天推荐的该分类的商品信息,下半部分显示该分类的详细信息。
(10) errorPage.jsp:一个静态页面,用来显示错误信息。
(11) searchPoducts.jsp:用来显示商品信息和显示搜索结果页面,支持分页。
(12) shoppingCart.jsp:购物车页,用于确认选购商品生成订单可以删除购物篮中所选购物条目。
(13) checkout.jsp:确认购买页面,填写收货人的详细地址和联系方式,填入信用卡的信息,列出购买的清单及总的费用信息。
(14) order.jsp:显示用户的订单信息,以供用户打印该订单。
2. 系统管理
(1) admin_index.jsp :系统管理主页面。
(2) admin_login.jsp:管理员登录页。
(3) admin_product.jsp:商品管理页。
(4) admin_order.jsp:订单管理页。
(5) admin_user.jsp:用户管理页。
(6) admin_system.jsp:系统管理页。
6.5业务逻辑层
业务逻辑层的功能是对业务对象是否符合业务逻辑的验证,无需验证的对象则无需写其业务层。
(1) RegisterBean.class:提供注册功能。
(2) SearchBean.class:提供商品搜索功能。
(3) ValidateEJB.class:用户合法性校验。
(4) productEjb.class:商品列表Ejb
(5) productBean.class:商品列表Bean。
(6) ItemBean.class:商品条目Bean
(7) PoolBean.class:数据库连接。
6.6 系统类图设计
图4-1 Easy_Buy实体类图
7测试报告
7.1数据和数据库完整性测试
测试目标
确保数据库访问方法和进程正常运行,数据不会遭到损坏。
方法
·调用各个数据库访问方法和进程,并在其中填充有效的和无效 的数据或对数据的请求。
·检查数据库,确保数据已按预期的方式填充,并且所有数据库事件都按正常方式出现;或者检查所返回的数据,确保为正当的理由检索到了正确的数据
完成标准
所有的数据库访问方法和进程都按照设计的方式运行,数据没有遭到损坏。
需考虑的特殊事项
· 测试可能需要 DBMS 开发环境或驱动程序以便在数据库中直接 输入或修改数据。
· 进程应该以手工方式调用。
·应使用小型或最小的数据库(其中的记录数很有限)来使所有无法接受的事件具有更大的可见性。
7.2 功能测试
测试目标:
确保测试对象的功能正常,其中包括导航、数据输入、处理和检索等。
方法:
利用有效的和无效的数据来执行各个用例、用例流或功能,以核实:
· 在使用有效数据时得到预期的结果。
· 在使用无效数据时显示相应的错误消息或警告消息。
·各业务规则都得到了正确的应用。
完成标准:
·所计划的测试已全部执行。
·所发现的缺陷已全部解决。
需考虑的特殊事项:
确定或说明那些将对功能测试的实施和执行造成影响的事项或因素(内部的或外部的)
登录/查询功能测试截图
注册功能测试截图
购物车功能才测试截图
找回密码功能测试截图
找回密码第一步
找回密码第二步
找回密码第三步
表7-3 用户界面测试
测试目标:
核实以下内容:
·通过浏览测试对象可正确反映业务的功能和需求,这种浏览包括 窗口与窗口之间、字段与字段之间的浏览,以及各种访问方法 (Tab 健、鼠标移动和快捷键)的使用
·窗口的对象和特征(例如:菜单、大小、位置、状态和 中心)都符合标准。
方法:
为每个窗口创建或修改测试,以核实各个应用程序窗口和对象都可正确地进行浏览,并处于正常的对象状态。
完成标准:
证实各个窗口都与基准版本保持一致,或符合可接受标准
需考虑的特殊事项
并不是所有定制或第三方对象的特征都可访问。
商品详细信息界面
购卖成功界面
购物结束界面
- 24 -
展开阅读全文