概要设计说明书
1引言 2
1.1编写目的 2
1.2背景 2
1.3定义 2
1.4参考资料 2
2总体设计 2
2.1需求规定 2
2.2运行环境 2
2.3基本设计概念和处理流程 3
2.4结构 3
2.5功能器求与程序的关系 3
2.6人工处理过程 3
2.7尚未问决的问题 3
3接口设计 3
3.1用户接口 3
3.2外部接口 3
3.3内部接口 4
4运行设计 4
4.1运行模块组合 4
4.2运行控制 4
4.3运行时间 4
5系统数据结构设计 4
5.1逻辑结构设计要点 4
5.2物理结构设计要点 4
5.3数据结构与程序的关系 4
6系统出错处理设计 5
6.1出错信息 5
6.2补救措施 5
6.3系统维护设计 5
概要设计说明书
1引言
1.1编写目的
A、编写目的:让设计人员有一个明确的设计目的,方便代码的编写及功能的实现。
B、预期读者:代码编写人员,项目负责人,测试人员。
1.2背景
A、开发的系统名称:网上手机销售系统(ssco)。
B、任务提出者:赵定远老师
开发者:智峰软件开发小组
用户:网店经营者和网购用户
运行计算站:暂无
1.3定义
SSCO(网上手机销售系统)
1.4参考资料
列出有关的参考文件,如:
a.本项目的经核准的计划任务书或合同,上级机关的批文;
b.属于本项目的其他已发表文件;
c.本文件中各处引用的文件、资料,包括所要用到的软件开发标准。列出这些文件的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。
2总体设计
2.1需求规定
2.1.1 系统功能:
1)客户注册、登录及个人信息管理,包括头像修改,密码修改,联系方式更改等。
2)客户对手机产品浏览、查询、选购,包括针对特定品牌型号手机的搜索,手机检索,手机详细信息的查看、对比,加入购物车购买等。
3)客户如有疑问,在网站客户人员服务时候内可以在线咨询,对于注册、登录会员可以在客服时间外通过留言提问。
4)登录会员可以在留言手机产品的过程中对手机进行评价,也可以进入个人主页对自己感兴趣的手机话题进行发帖,管理员可以将热门帖子在网站首页进行展示等。
5)客服人员在线为顾客答疑,对顾客留言进行回复等。
6)业务员对顾客提交订单进行处理、标识,发送货物。
7)管理员对注册会员、网站员工帐号进行管理;对手机信息进行指定、输入、修改、删除,包括手机品牌、型号、上市时间、详细配置、价格、库存量等管理;以及对网站其他信息进行管理维护等。
2.1.2 系统性能
1)响应时间要求:页面交互时的响应时间必须在客服接受的范围内。
2)可靠性要求:系统运行时必须安全和稳定。
3)灵活性要求:系统各模块功能界面友好、操作简单快捷。
2.1.3 系统的主要输入项:
用户注册信息、登录名、登录密码、验证码、帖子信息、输入问题、输入回答、输入手机评论、输入订单信息、添加用户、输入手机信息、输入手机新闻、输入促销活动信息等
2.1.4 系统的主要输出项:
用户信息、热帖列表、问题列表、回答列表、手机评论列表、订单列表、用户列表、手机列表、活动展示等
2.2运行环境
1)硬件环境:运行本系统要求计算机的处理器在奔腾III以上,内存在256MB以上。
2)软件环境:由于本系统主要由JSP技术实现,所以其支持所有支持Java的操作系统;本系统的数据库服务器采用小型、快速、成本低而又支持多线程、多用户的MySQL数据库。本系统开发平台 Myeclipse+MySQL。
2.3基本设计概念和处理流程
本系统的基本设计概念和处理流程如下:
1)客户打开网站首页;
2)客户注册或登录;进入网站首页的客户也可以暂时不进行注册或登录,直接跳转到3);
3)客户查看手机信息,挑选心仪手机;
4)系统对客户是否登录进行检查;
5)登录客户可以将心仪手机加入购物车;对未登陆客户系统提示客户登陆并跳转到登录页面;
6)客户可以继续选购手机,跳转到3);客户也可以删除购物车内物品或选择结账;
7)客户对订单信息进行复查与修改;
8)客户支付订单金额,提交订单;
9)业务员工对订单进行处理、标识,并负责货物的发送;
10)客户收到商品,双方完成交易。
备注:此外,顾客在选购手机的过程中如有疑问,在网站客服服务时候内可以在线咨询;客服服务时间外,可以留言。登录客户,也可以进入个人主页对自己感兴趣的手机话题进行查看、回复,或自己发帖等。
2.4结构
前台设计说明:顾客打开网站首页就可以看到网站当前的各种促销活动、手机新闻、手机行情、手机热门帖子信息。进入网站的顾客可以选择登录或注册,或直接进行商品浏览,查看手机的详细信息,顾客看到心仪的手机,可以将其加入购物车,未登录顾客必须先进行登陆。登录客户可以选择继续选购手机,加入购物车,或进入购物车,查看当前所选手机,对手机进行处理,或删除或选择结账进入订单信息的确认、付款、提交订单。顾客在选购手机的过程中,如有任何疑问可以选择在线咨询和给店家留言。登录客户还可以,进入个人主页,进行个人信息的更改,对个人感兴趣的手机话题进行发帖等操作。
后台设计说明:本系统后台登陆人员分3类:客服员工、业务员工和管理员。客服员工登陆系统的主要任务是在线与顾客互动,回答顾客的问题和处理留言,包括对顾客留言进行回复、删除留言等。业务员工的主要任务是,处理顾客的订单,对订单进行处理标识、发送货物、回执单入库操作等。管理员具有系统的最高权限,负责系统信息的更改和维护。
2.5功能器求与程序的关系
本条用一张如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:
程序1 | 程序2 | …… | 程序n | |
功能需求1 | √ | |||
功能需求2 | √ | |||
…… | ||||
功能需求n | √ | √ | ||
手机产品信息的输入;订单处理、货物发送;回执单入库存储操作;客服;网站信息维护等。
2.7尚未问决的问题
客户购物结账时,手机验证环节。
3接口设计
3.1用户接口
说明将向用户提供的命令和它们的语法结构,以及软件的回答信息。
用户接口主要包括图形接口,命令接口,程序接口。本系统主要运用图形接口,使用CSS、html或javaScript语言构建网页,使网页上的文字图片清晰易懂,用户操作方便使用简单,以及系统的推广。
根据浏览网站的人群,网站分为前、后台两个部分,前台为客户提供了系统的导航,站内手机搜索,注册登录,客服答疑等功能模块。网站后台主要是为网站内部员工及管理员提供服务,以便于客户员工在线对顾客答疑、回复顾客留言,业务员工处理订单、发送货物、产品回执单入库操作,管理员对网站信息进行管理和维护等。
3.2外部接口
说明本系统同外界的所有接口的安排包括软件与硬件之间的接口、本系统与各支持软件之间的接口关系。
硬件接口:Pentium III CPU及以上,内存256MB以上的计算机。
软件接口:支持JAVA的所有操作系统。MySQL 数据库。
3.3内部接口
说明本系统之内的各个系统元素之间的接口的安排。
本系统主要分为:首页、注册登录、站内手机搜索、商品浏览、购物车、客服、管理,7大模块。
首页:为进入网站顾客提供站内促销活动、手机新闻、手机行情、手机热帖等信息。
注册登陆:验证顾客身份,进行相应权限。
站内手机搜索:方便顾客对某品牌某型号手机的快速查找。
商品浏览:为顾客提供站内所有手机的信息。
购物车:通过身份验证的顾客可以购买商品。
客服:针对顾客的问题进行答疑。
管理:管理员对网站信息、会员信息进行管理也维护。
4运行设计
4.1运行模块组合
说明对系统施加不同的外界运行控制时所引起的各种不同的运行模块组合,说明每种运行所历经的内部模块和支持软件。
不同的用户登陆此系统获得的系统功能是不同的:
1)普通顾客:能够注册登录,查看首页信息,商品浏览,站内手机搜索,在线咨询。
2)登录会员:查看首页信息,商品浏览,站内手机搜索,在线咨询,店家留言,购买心仪手机,个人信息更改,发表手机帖子等。
3)登录客服员工:在线答疑,回复留言等。
4)登录业务员工:处理订单,发送货物,商品回执单入库等。
5)登录管理员:网站信息管理、更改、维护等。
4.2运行控制
说明每一种外界的运行控制的方式方法和操作步骤。
不同用户通过身份验证后进入系统相应操作界面,具有相应的操作权限。管理员可以对系统进行会员用户的删除,员工用户的添加、删除、修改;对商品信息进行查询、添加、修改、删除;对网站首页信息进行管理和维护等。
4.3运行时间
说明每种运行模块组合将占用各种资源的时间。
本系统各运行模块将本着尽量少占用系统资源、尽快释放占用系统资源的原则进行设计,使得系统运行时候在可以接受的范围内。
5系统数据结构设计
5.1逻辑结构设计要点
5.1.1实体-关系模型
本系统是采用MySQL来作为数据库服务器。并依据前面提到的数据库设计理论,严格依照第三范式的思想进行了本系统数据库的设计。根据对整个在线个购买手机业务的流程分析,本系统设计的数据库sysstore中包括的实体有:手机,订单,留言,用户等。本系统的实体-关系模型如图5-1所示。
图3-2 手机销售系统E-R图
5.1.2 数据库表设计
根据对数据库整体结构的分析,为完成系统个功能的需求,故在数据库中建立了下面几个具体的表。
手机表:用来存储手机的信息,其中c_id字段为外键,来自公司表。考虑到手机信息记录数目将很庞大,所以将主键c_id设置为标识列。标识列即为由用户创建,由系统管理,每增加一条记录,则其自动增加,用户不可对其进行操作,在过程中若有记录被删除,其不进行缩进,仍保留原有值,并一直自增。
字段名 | 说 明 | 类 型 | 长 度 | 可否为空 | 主键 |
c_id | 手机编号 | 字符型 | 10 | 否 | 是 |
c_name | 手机型号 | 字符型 | 50 | 否 | |
c_cname | 公司名称 | 字符型 | 10 | 否 | |
c_ type | 手机类型 | 字符型 | 50 | 否 | |
c_standards | 手机制式 | 字符型 | 50 | 否 | |
c_frequencyband | 手机频段 | 字符型 | 50 | 否 | |
c_system | 手机系统 | 字符型 | 50 | 否 | |
c_price | 手机价格 | 浮点型 | 10 | 否 | |
c_shape | 手机外形 | 字符型 | 50 | 否 | |
c_storage | 手机库存 | 整型 | 4 | 否 | |
c_color | 手机可选颜色 | 字符型 | 50 | 是 | |
c_size | 手机尺寸 | 字符型 | 50 | 是 | |
c_weight | 手机重量 | 整型 | 4 | 是 | |
c_screen | 主屏参数 | 字符型 | 50 | 是 | |
c_screen_color | 主屏色彩 | 字符型 | 50 | 是 | |
c_screen_size | 主屏尺寸 | 字符型 | 50 | 是 | |
c_screen_type | 主屏材质 | 字符型 | 50 | 是 | |
c_touch | 触摸屏 | 字符型 | 50 | 是 | |
c_cpu | CPU | 字符型 | 50 | 是 | |
c_memory | 内存大小 | 字符型 | 50 | 是 | |
c_battery | 电池容量 | 字符型 | 50 | 否 | |
c_gravity_sensor | 重力感应 | 字符型 | 50 | 否 | |
c_distance_sensor | 距离感应 | 字符型 | 50 | 否 | |
c_bluetooth | 蓝牙 | 字符型 | 50 | 否 | |
c_wifi | WiFi(WLAN) | 字符型 | 50 | 否 | |
c_gps | GPS | 字符型 | 50 | 否 | |
c_camera | 摄像头 | 字符型 | 50 | 是 | |
c_music | 音频格式 | 字符型 | 50 | 否 | |
c_video | 视频格式 | 字符型 | 50 | 是 | |
c_calltime | 通话时间 | 字符型 | 50 | 是 | |
c_livetime | 待机时间 | 字符型 | 50 | 是 | |
c_cometime | 上市时间 | 日期型 | 10 | 是 | |
c _equipment | 标准配置 | 字符型 | 100 | 是 | |
c_describe | 其他描述 | 文本型 | 16 | 是 | |
c_picture | 手机图片 | 字符型 | 100 | 是 | |
c_regtime | 登记时间 | 日期型 | 10 | 是 | |
C_手机评论 | ( 用户名+评论内容+留言日期) |
字段名 | 说 明 | 类 型 | 长 度 | 可否为空 | 主键 |
u_ide | (0,1,2,3)0表示 会员,1表示客服员工;2表示业务员工;3表示管理员 | Integer | 1 | 否 | |
u_id | 会员帐号 | 字符型 | 20 | 否 | 是 |
u_password | 会员登录密码 | 字符型 | 20 | 否 | |
u_name | 会员真实姓名 | 字符型 | 20 | 否 | |
u_sex | 会员性别 | 字符型 | 2 | 是 | |
u_address | 会员详细地址 | 字符型 | 150 | 是 | |
u_cellphone | 会员联系手机 | 字符型 | 20 | 是 | |
u_post | 会员所在地邮编 | 字符型 | 10 | 是 | |
m_email | 会员电子邮箱帐号 | 字符型 | 50 | 是 | |
u_regtime | 会员注册日期 | 日期型 | 10 | 是 | |
u_records | 会员消费记录 | 字符型 | 500 | 是 | |
u_money | 会员累计消费金额 | 浮点型 | 10 | 是 | |
u_consump | 会员消费积分 | 整型 | 10 | 否 |
表3-3 订单表(orders)
字段名 | 说 明 | 类 型 | 长 度 | 可否为空 | 主键 |
o_id | 订单编号 | 整型 | 4 | 否 | 是 |
m_id | 下单会员帐号 | 字符型 | 20 | 否 | |
o_address | 发货详细地址 | 字符型 | 150 | 是 | |
o_cellphone | 联系手机 | 字符型 | 20 | 是 | |
o_telephone | 联系固定电话 | 字符型 | 20 | 是 | |
o_time | 下单时间 | 日期型 | 8 | 否 | |
o_price | 订单总金额 | 浮点型 | 8 | 否 | |
o_note | 订单备注 | 文本型 | 16 | 是 | |
o_isdeal | 订单是否被处理标识 | 字符型 | 1 | 否 | |
c_id | 手机编号 | 整型 | 4 | 否 | |
o_amount | 购买数量 | 整型 | 4 | 否 | |
o_transctionstatus | 交易状态(待处理、发货中、已发货、交易成功) | 字符型 | 8 | 否 | |
o_successtime | 成功交易时间 | 字符型 | 20 | 是 | |
O_paytype | 付款方式 | 字符型 | 10 | 否 |
字段名 | 说 明 | 类 型 | 长 度 | 可否为空 | 主键 |
q_id | 留言编号 | 整型 | 4 | 否 | 是 |
u_id | 用户ID | 整型 | 4 | 否 | |
q_content | 留言详细内容 | 字符型 | 200 | 否 |
字段名 | 说 明 | 类 型 | 长 度 | 可否为空 | 主键 |
a_id | 回复编号 | 整型 | 4 | 否 | 是 |
q_id | 留言编号 | 整型 | 4 | 否 | |
u_id | 用户ID | 整型 | 4 | 否 | |
a_content | 回复详细内容 | 字符型 | 200 | 否 |
字段名 | 说明 | 类型 | 长度 | 可否为空 | 主键 |
P_id | 热门手机编号 | 字符型 | 6 | 否 | 是 |
C_id | 手机编号 | 字符型 | 10 | 否 | |
C_count | 浏览次数 | 整型 | 10 | 否 |
字段名 | 说明 | 类型 | 长度 | 可否为空 | 主键 |
S_id | 手机销售编号 | 字符型 | 6 | 否 | 是 |
C_id | 手机编号 | 字符型 | 10 | 否 | |
C_sellcount | 销售总数 | 整型 | 10 | 否 |
本系统的物理结构设计要点主要有以下几点:
A.本系统所使用的数据存储要求为数据库,利用sql语言创建相应的数据库和表,各个数据选项都要从数据库中存取,存取单位是表格,存储区域在系统的硬盘内。
B.系统使用ssh里面封装堵塞jdbc,通过面向对象方法来访问数据库。
C.系统数据要满足保密性,每位用户都设定了权限,只有满足权限的用户才能使用某项数据,需要在用户输入用户名时对其权限进行判断。
5.3数据结构与程序的关系
说明各个数据结构与访问这些数据结构的形式:
6系统出错处理设计
系统出错最严重的就是系统没有保证用户的用户名、密码和资金的安全性,为了从根本上解决这个问题,首先在编写前台和后台代码时就要注意编写的严密性,不能让不怀好意的人利用保留的攻击手段侵入系统,盗用、毁坏用户的信息,造成用户的损失。
6.1出错信息
由于输入信息不符合规范(如:商品数量为负数等),称之为软错误;
由于硬件方面的错误(如:网络传输超时、硬件出错等),称之为软错误;
对于一些关键的操作(如:删除操作),应该提供提示确认机制;
对于数据、测试文档,都是要提供相应的保密措施设置;
错误类型 | 子项 | 错误原因 |
数据库错误 | 连接 | 连接超时 |
连接断开 | ||
数据库本身 | 数据库代码错误 | |
数据库溢出 | ||
TCP连接错误 | 连接 | 连接超时 |
连接断开 | ||
其他TCP错误 | Socket自身错误 | |
系统部分自定义错误 | 权限错误 | 管理员权限设置故障 |
输入错误 | 用户ID错误/为空 | |
用户密码错误/为空 | ||
验证码错误/为空 | ||
查找错误 | 为查找到符合要求的记录 | |
链接错误 | 内部连接错误 | 网页链接错误 |
文件/图片链接错误 | ||
外部链接错误 | 页面休整或者其他错误无法打开 | |
友情连接网址维护或其他错误无法打开 |
故障出现后可能采取的变通措施,主要包括:
1.对于软错误,需要在添加/修改操作中及时对输入数据进行验证,分析错误的类型,并且给出相应的错误提示语句,传送到客户端的浏览器上;
2.对于硬错误,错误类型不较少而且比较明确,所以可以在可能出错的地方中输出相应的出错语句,并将程序重置,最后返回输入阶段;
3.后备技术说明准备采用的后备技术,当原始数据丢失时启用的副本的建立和启动的技术,例如周期性的把磁盘信息记录在案;
4.恢复及在启动技术说明将使用的恢复再启动技术,是软件从故障点恢复执行或是软件从头开始重新开始运行的方法
6.3系统维护设计
此项主要是对服务器上的数据库以及相关文件进行维护,数据库维护:我们使用数据库的维护功能机制,比如:定期备份数据库,定期检测数据库的一致性,定期查看操作日志等;文件方面:对于下架商品等,定期删除相关文件,减少数据量.