网上购物系统设计.docx
《网上购物系统设计.docx》由会员分享,可在线阅读,更多相关《网上购物系统设计.docx(15页珍藏版)》请在冰豆网上搜索。
网上购物系统设计
《软件课程设计》
------项目设计书
项目名称:
《网络购物综合平台》
年、班级:
2012级软工二班
小组成员:
朱勇
张振宇
2014/8/16
1、需求分析:
1.1开发背景:
随着科学和网络的飞速发展,信息技术逐渐融入社会各个阶层,改变着人们的日常出行、行为习惯、工作态度和生活方式,不断为人们的生活增添新的靓丽色彩。
在计算机硬件配置不断更新换代的时候,互联网的飞速发展也是一股同样不亚于其他任何领域的新生力量不断崛起,到如今,有点知识、地位的人,面前都会放上一台电脑或是一部智能手机,而在网络如此便捷的今天,网上购物也逐渐成为一种潮流在人群中如雨后春笋般迅速生长与传播,以一种骇人的速度发展壮大……
如此热闹的互联网,岂又缺少英雄豪杰,各方才俊大显神通,作为在校大学生,了解并体验信息网络潮流不仅是一种感受吸收,更是不错的训练机会,选择网上购物系统,不仅贴合当今信息时代的潮流,更是对未来大数据时代来临的前瞻。
1.2功能需求:
(1)、实现基本的查询、交易功能;
(2)、采用注册用户会员制,游客仅有查询信息功能;
(3)、用户登录使用验证码密码相结合;
(4)、注册会员拥有产品、商铺评论、打分功能;
(5)、各系统信息由管理员统一管理,具有最高权限;
(6)、
1.3系统定义:
本系统是一个基于SSH构架,辅以网页设计、Javascript等技术的模拟实现简易网络购物体系流程的小型实验项目。
通过分布式设计思路以及密码权限的约定实现面向对象的稳定性。
项目内部本身多采用接口式设计,充分发挥JavaEE企业级项目的封装性及内部可拓展性。
2、系统总体设计:
2.1系统构架:
Struts2、Spring、Hibernate+Ajax+extJS或JQuery(可选);
2.2系统流程:
2.2.1管理员:
2.2.2用户:
2.3系统结构:
2.3.1结构图:
3、数据库设计与构架:
3.1E-R结构图(图中只列出了键属性):
3.2数据库表设计:
3.2.1概要:
(1)、管理员:
Manager(Manager_id,Manager_name,Manager_mail,Manager_tel,Manager_password)
(2)、注册用户:
User(User_id,User_name,User_mail,User_tel,User_password,User_Vlevel,User_marks,User_leftmoney,User_headphoto)
(3)、店长/老板:
Boss(Boss_id,Boss_name,Boss_mail,Boss_tel,Boss_password,Shop_id,Boss_truename,Boss_adress)
(4)、店:
Shop(Shop_id,Shop_name,Shop_level,Shop_type,Shop_adress,Shop_introduce)
(5)、商品/货物:
Cargo(Cargo_id,Cargo_name,Shop_id,Cargo_type,Cargo_num,Cargo_price,Cargo_logo,Cargo_introduce,Cargo_mark)
(6)、银行:
Bank(Bank_id,Bank_name)
(7)、银行账户:
BAccount(Bank_id,account,password,funds)
(8)、送货信息:
SendMessage(Send_id,Send_adress,Send_post,Send_toname)
(9)、订单:
Order(Order_id,FromDate,Deadline,AmountPay,Order_status,PayWay,Send_id)
(10)、交易记录:
Trecord(Record_id,Cargo_id,Shop_id,Cargo_num,Trans_date,Trans_amount)
(11)、评论列表:
Comment(Comment_id,Comments_text)
3.2.2详细设计:
(1)、管理员:
名称
数据类型
长度
备注
Manager_id
int
<10000
不可为空
Manager_name
String
20
Manager_mail
String
20
Manager_tel
String
20
Manager_password
String
15
(2)、注册用户:
名称
数据类型
长度
备注
User_id
int
>10000
不可为空
User_name
String
20
User_mail
String
20
User_tel
String
20
User_password
String
15
User_Vlevel
int
<10
User_marks
int
>0
User_leftmoney
double
>=0
User_headphoto
Varchar(200)
(3)、店长/老板:
名称
数据类型
长度
备注
Boss_id
int
>10000
不可为空
Boss_name
String
20
Boss_mail
String
20
Boss_tel
String
20
Boss_password
String
15
Shop_id
int
>10000
不可为空
(4)、店:
名称
数据类型
长度
备注
Shop_id
int
>10000
不可为空
Shop_name
String
20
Shop_level
char
2
Shop_type
String
20
Shop_adress
String
30
Shop_introduce
text
(5)、商品/货物:
名称
数据类型
长度
备注
Cargo_id
int
>10000
不可为空
Cargo_name
String
20
Shop_id
int
>10000
不可为空
Cargo_type
String
20
Cargo_num
int
>0
Cargo_price
double
>0
Cargo_logo
Varchar(200)
Cargo_introduce
text
Cargo_mark
int
>0
(6)、银行:
名称
数据类型
长度
备注
Bank_id
int
>10000
不可为空
Bank_name
String
20
Bank_record
int
>0
(7)、银行账户:
名称
数据类型
长度
备注
Bank_id
int
>10000
不可为空
account
int
>10000
不可为空
password
String
15
funds
double
>0
(8)、送货信息:
名称
数据类型
长度
备注
Send_id
int
>10000
不可为空
Send_adress
String
30
Send_post
String
10
Send_toname
String
20
(9)、订单:
名称
数据类型
长度
备注
Order_id
int
>10000
不可为空
FromDate
Date
10
Deadline
Date
10
AmountPay
double
>0
Order_status
bool
1
PayWay
int
1,2
Send_id
int
>10000
不可为空
(10)、交易记录:
名称
数据类型
长度
备注
Record_id
int
>10000
不可为空
Cargo_id
int
>10000
不可为空
Shop_id
int
>10000
不可为空
Cargo_num
int
>0
Trans_date
Date
10
Trans_amount
double
>0
(11)、评论列表:
名称
数据类型
长度
备注
Comment_id
int
>10000
不可为空
Comment_text
text
4、模块功能分配介绍:
4.1用户信息管理:
(1)、管理员可以更改所有用户的资料;
(2)、管理员负责用户账户的注册及注销;
(3)、用户可以修改自己账户的除ID以外的所有信息;
(4)、用户可以查看当下自己账户的交易记录及订单信息;
(5)、用户设VIP等级,积分制度,可申请开店,由管理员负责;
(6)、
4.2商品信息管理:
(1)、管理员可以管理所有商品的资料;
(2)、店主可以管理店内所有商品资料;
(3)、管理员负责添加、删除商店信息,店主管理商店信息;
(4)、商品及商店分类,提供搜索便利;
(5)、
4.3交易信息管理:
(1)、管理员管理所有交易记录;
(2)、用户可以查看当下自己账户的交易记录及订单信息;
(3)、用户可选择支付方式及银行;
(4)、店主可查看店内交易记录;
(5)、支持选择时间段查看交易记录;
(6)、银行支付采用账号密码即时验证;
(7)、
4.4论坛信息管理:
(1)、用户可选择发表评论和商店评级;
(2)、提供好评推荐制度;
(3)、管理员支持查看、删除评论;
(4)、
4.5系统安全管理:
(1)、登陆和支付采取账号密码和验证码相结合;
(2)、设置用户权限;
(3)、管理员拥有最高权限,可检查和修改所有数据库信息;
(4)、管理员在线管理;
(5)、购物支付采用即时验证;
(6)、
5、详细处理及流程介绍:
5.1内部设计(命名未定——按照命名约定):
5.1.1数据库连接与操作:
建立相应包将所有连接相关的类与方法封装起来,实现面向对象,采用Hibernate技术实现;
5.1.2数据库表与对象:
对应JavaBean对相应表,并建立相应包封装;
5.1.3外部操作:
建立相应的操作类,以命名规则命名,并放入相应功能命名的包内(与对象命名无关);
5.1.4异常与错误:
用一个对应名称的包封装起来,内部添加对于各种异常与错误操作的页面与提示;
5.1.5其他文件:
按照文件类型建立相应包,再对号入座,各自包内再根据需要进行详细划分;
5.1.6
5.2内部流程及处理:
5.2.1管理员:
1)、基本操作流程:
2)、细节说明:
(1)、图中讲述了基本流程;
(2)、图中重复区块代表同一内容,为防止混乱而重复;
(3)、任何页面均有返回动能,图中特别突出出错后的返回;
(4)、详细页面设计内容会更为丰富,此图中只突出管理员权限。
3)、主要页面介绍:
(1)、初始页面:
因参考淘宝、京东页面,所以风格有些类似,不过毕竟不可能那么丰富,因此也是暂定为三个板块:
热门商品展示区域、分类及搜索区域、注册登录区域。
(2)、登陆界面:
此界面包括分类登陆选择区,账号填写区、密码填写区、验证码填写区、链接区。
(3)、系统管理员界面:
此界面包括:
基础信息展示板块、管理员功能操作区。
(4)、查询、增删改信息处理界面:
内容展示板块、搜索版块。
(5)、用户信息处理界面(管理员):
对应用户信息查询、增删改信息处理界面;
(6)、商品信息处理界面(管理员):
对应商品信息查询、增删改信息处理界面;
(7)、交易记录界面:
内容展示区、功能处理板块(删除)。
(8)、错误处理界面:
信息提示区、错误展示区、链接区。
5.2.2用户:
1)、基本操作流程:
2)、细节说明:
(1)、图中存在约束关系,未明确标出;
(2)、图中用户为注册用户(未注册用户则先注册,但依然拥有查询信息的功能,不过要交易则需注册登录)
(3)、支付方式的不同会影响相应页面流程;
(4)、用户评论相应商品时会验证其是否购买产品,放置恶意评论;
3)、主要页面介绍:
(1)、注册页面:
包括:
用户基本信息填写区、密码填写区、密码确认区、链接区、功能操作区。
(2)、商店店铺界面:
商品分类区、商品介绍区、商品推荐区、商店介绍区、功能操作区、评论区。
(3)、交易处理界面:
订单信息填写区、功能链接区。
(4)、支付界面:
账户信息填写区、功能链接区。
(5)、用户个人信息界面:
用户信息显示区、用户功能操作区、链接区。
(6)、用户信息处理界面(用户):
功能处理区(权限)、链接区。
(7)、评论处理界面:
评论信息填写区、功能确认区。
5.2.3店主:
1)、基本操作流程:
2)、细节说明:
(1)、店主的操作修改只针对于店内信息;
(2)、店主不能自己删除用户评论,可向管理员申请删除恶意评论;
3)、主要页面介绍:
(1)、店铺信息界面(店主):
店铺基本信息展示区、功能操作区。
(2)、店铺信息修改界面:
店铺信息修改区(权限)、功能链接区。
(3)、店铺评论界面:
搜索区、链接区。
(4)、店铺交易记录界面:
交易信息展示区、功能操作区、链接区。
(5)、商品信息管理界面(店主):
商品信息展示区、功能操作区、搜索区、链接区。
5.3命名约定(英文):
5.3.1数据库表:
表名_字段类型;
5.3.2对象JavaBean类:
表名+Bean;
5.3.3对象操作类:
对象名+动作名;
5.3.4二级操作间用:
”_”隔开;
5.3.5包名一般作为第一级名称;
5.3.6功能操作函数:
操作对象名+操作名;
5.3.7遵循首字母大写优先原则。
6、后记:
6.1开发平台:
代码编程:
Myeclipse+Tomcat
页面设计:
Dreamweaver
数据库设计:
MySQL
其他:
…
6.2说明:
部分细节在本设计书中未清楚说明,到时视情况添加。