网上书店系统设计.docx
- 文档编号:10842840
- 上传时间:2023-02-23
- 格式:DOCX
- 页数:33
- 大小:198.05KB
网上书店系统设计.docx
《网上书店系统设计.docx》由会员分享,可在线阅读,更多相关《网上书店系统设计.docx(33页珍藏版)》请在冰豆网上搜索。
网上书店系统设计
《软件工程》报告
目录
网上书店系统设计1
1问题分析1
2可行性分析2
3需求分析3
3.1业务流程分析3
3.2数据流分析6
3.3数据字典9
4系统设计10
4.1数据库设计10
4.2系统模块设计19
5系统实现21
5.1实现概况21
5.2登录模块21
5.3管理员管理模块22
5.4客户应用模块23
网上书店系统设计
1问题分析
随着现代科学技术的进步,计算机被广泛应用,人类社会正逐走向信息化。
电子商务正在慢慢被人们所接受,并逐渐成为当今网络发展的一个热门行业。
电子商务就是利用计算机技术,网络技术等等来实现购买,销售和交换商品,服务信息的过程。
网上书店就是电子商务的一种,它是一种用于图书在线销售的快捷方便的购书平台,是基于Internet的网上售书程序。
网上书店系统是依据书店以及客户购书的需求而进行设计的。
用户可以通过网络登录书店,浏览图书信息,对自己感兴趣的书籍可以加入购物车,决定购买就下发订单进行购买。
而管理员可以处理订单信息,管理用户信息以及图书信息等等。
目的是为了实现客户登录与注册,客户信息管理,图书信息管理,购书管理与订单管理等功能。
网上书店系统要求包括如下功能:
客户登录与注册功能:
客户登录与注册自身信息,验证客户的信息是否合法以及验证客户是否为合法客户。
客户信息管理功能:
由管理员系统管理客户信息,添加删除新的客户等等。
图书信息管理功能:
主要实现对图书信息的管理和维护,进行有效的分类管理,如图书的添加,修改,查看与删除等。
在网上书店系统中,主要包括:
管理图书,添加图书,修改图书,查看图书。
购书与订单管理功能:
包括客户搜索图书信息,添加至购物车,由订单管理功能来实现最终的付款。
2可行性分析
随着计算机技术的发展,网上书店作为一种典型的电子商务形式,变得越来越流行。
在这次网上书店系统设计中是我们学到了许多。
依据书店以及客户购书的需求而进行设计。
其功能是实现客户登录与注册,客户信息管理,图书信息管理,购书管理与订单管理等功能。
现在具体的说一说开发的过程:
首先,这个系统涵盖了很多以前学的东西。
数据库的设计非常重要,在整个项目中非常重要的地位。
设计数据库,表的建立,存储过程,触发器的使用等等,总的来说这次数据库的设计要求较高
其次,对于网站前台开发,课程设计规定了语言,ASP.NET,在系统中,采用的4.0版本的VS开发工具加上微软SQL2008数据库,这些绝对是足以开发像网上书店这样的小型的电子商务网站了。
说一下架构,是三层架构,在设计中,在三层上又加了两个接口层和两个对象工厂,虽然方便了以后的维护,确实加大了开发难度。
登录页面,验证码采用的是简单的四则运算。
登录页面代码实现了防SQL注入式登录,密码采用了一个自写加密算法。
会员登录后既可以进行一系列的都买支付等。
收藏家设计放在本地的cookie中的,没有放在数据库中,原则上应该放在数据库中,考虑到个人开发,而且减轻数据库压力,就放在本地了。
后台管理员管理做的也还可以吧,图书列表采用的真分页技术,在数据库中读出分页后的数据,页面加载的速度提高了。
另外,分系统分析需求,系统设计和系统分析三部分。
在系统设计需求分析中,通过搜索网络资源,介绍了网上书店系统的重要性,“电子商务正在慢慢被人们所接受,并逐渐成为当今网络发展的一个热门行业。
电子商务就是利用计算机技术,网络技术等等来实现购买,销售和交换商品,服务信息的过程"。
设计业务流程分析图,通过Visio2003来画的,业务流程分析图是一种用尽可能简单的方法来描述业务处理过程的。
紧接着数据流分析,数据字典。
在系统设计方面,E-R模型也是个重点,实体图,E-R图。
3需求分析
通过对系统进行需求分析,我们可以确定系统中有两类客户:
管理员和客户。
各类客户的详细描述如下:
(1)管理员
描述:
管理员维护整个系统,负责后台管理。
包括图书的信息维护,可以很好地对图书信息进行增加,修改和删除操作,并且可以进行合理的查看与分类管理操作;客户的信息维护,可以对客户的各种信息进行集中地管理;订单的管理与维护,可以对订单进行集中合理的确认与删除操作;管理公告信息等等。
(2)客户
描述:
客户是整个系统的直接使用者。
客户可以查询图书的信息,搜索自己所需要的图书;可以维护自身的信息,进行网上订书购书,并且可以查询自身的订单处理情况。
可以参考下表:
3.1业务流程分析
(1)网上书店系统整体业务流程图如下所示:
图1-1系统整体业务流程图
(2)登录子系统主要是验证不同客户的不同身份所对应的客户权限,进行不同的操作。
对应的业务流程图如下:
图1-2登录子系统业务流程图
(3)管理子系统主要是括维护图书信息;维护客户的信息,进行集中地管理;管理与维护订单;管理公告信息等等。
对应的业务流程图如下:
图1-3管理子系统业务流程图
(4)客户子系统主要是包括客户进行浏览书籍,进行订购图书以及维护自身信息。
对应的业务流程图如下:
图1-4客户子系统业务流程图
3.2数据流分析
根据业务流分析,我们可以得到以下系统的数据流图:
(1)网上书店系统顶层数据流图:
图1-5系统顶层数据流图
(2)网上书店系统第一层层数据流图:
图1-6网上书店系统第一层层数据流图
(3)根据不同用户的权限,展开登录过程:
管理员登录数据流图:
图1-7管理员登录数据流图
(4)用户登录数据流图:
图1-8用户登录数据流图
(5)管理员管理数据流图
图1-9管理员管理数据流图
(6)客户订单数据流图
图1-10客户订单数据流图
3.3数据字典
根据数据流程分析,对系统数据进行分析与汇总,建立数据字典。
以下给出部分数据字典内容:
(1)管理员管理
系统名:
网上书店系统
条目名:
管理员管理
输入:
图书表,所在城市表,所在国家表,所在省表
输出:
图书分类表,用户信息表
描述:
管理员根据图书信息,客户信息,加以增加删除,进行分类图书与客户信息的维护,随后可以发布公告消息。
用户信息表包括用户编号,用户注册名,昵称,用户电子邮箱,密码,用户真实姓名,用户性别,用户出生日期,家庭地址以及相关订单信息等等。
在管理过程中,管理员应当确保图书的信息合理,客户信息的准确。
(2)客户购书
系统名:
网上书店系统
条目名:
客户购书
输入:
客户信息表,交付类型表,图书表
输出:
订单表,出货方式表,图书评论表
描述:
客户根据图书信息进行选择图书,随后实施购书活动。
订单表包括订单编号,所定图书编号,所定图书数量,订单代号,订单创建日期,订单状态编号,交付类型编号,出货方式编号信息等。
在购书过程中,客户可以选择性地对图书加以评论,选择合适的交付类型。
在客户提交订单之后,系统应当确保客户的订单合理,没有与客户信息及图书信息发生冲突。
如果有冲突,客户要及时向系统管理者反映。
4系统设计
4.1数据库设计
4.1.1概念结构设计
管理子系统
1系统中涉及到的实体
(1)管理员{密码,权限,用户名}
(2)图书信息{图书编号,图书名称,图书作者,种类编号,图书定价,图书数量,出版日期,点击情况,图书ISBN号,图书总字数,内容简介,作者简介,编者推荐,目录信息}
(3)客户信息{用户编号,用户注册名,昵称,用户电子邮箱,密码,用户真实姓名,用户性别,用户出生日期,家庭地址以及相关订单信息}
(4)订单信息{订单编号,所定图书编号,所定图书数量,订单代号,订单创建日期,订单状态编号,交付类型编号,出货方式编号}
2其实体及其属性和所属E-R图如下:
管理员及其属性
图书信息及其属性
客户信息及其属性
订单信息及其属性
图2-1管理子系统E-R图
客户购书子系统
1系统中涉及到的实体
(1)客户信息{订单编号,所定图书编号,所定图书数量,订单代号,订单创建日期,订单状态编号,交付类型编号,出货方式编号}
(2)图书信息{图书编号,图书名称,图书作者,种类编号,图书定价,图书数量,出版日期,点击情况,图书ISBN号,图书总字数,内容简介,作者简介,编者推荐,目录信息}
(3)订单信息{订单编号,所定图书编号,所定图书数量,订单代号,订单创建日期,订单状态编号,交付类型编号,出货方式编号}
(4)出货方式信息{所在国家,所在城市,所在省,用户编号,出货方式编号,详细收货地址,邮编,收货人姓名,收货人电话号码,详细发货地址}
2其实体及其属性和所属E-R图如下:
客户信息,图书信息,订单信息实体属性可参考管理子系统。
出货方式及其属性
图2-2客户购书子系统E-R图
合并上述E-R图,得到:
图2-3系统总的E-R图
4.1.2逻辑结构设计
根据以上的分析,将E-R模型转换成逻辑模型,涉及本系统的数据库。
根据需要,设计了18个数据表,2个视图。
如下所示:
●图书表用来存储系统的图书信息,如图书编号,图书名称,图书作者,种类编号,图书定价,图书数量,出版日期,点击情况,图书ISBN号,图书总字数,内容简介,作者简介,编者推荐,目录信息。
●图书评论表用来存储评论的信息,如评论编号,所评图书编号,用户编号,评论内容,等级,评论日期
●图书种类表用来存储图书类别的信息,包括类别编号,类别名称。
●登录类型表反映了用户登录的情况,有登录类型,名称以及相关的描述详细。
●用户表用来存储用户的数据,如用户编号,用户类型,用户密码,类型编号信息。
●促销表是用来反映相关促销活动的相关信息,促销信息编号,促销主题,链接地址,促销类型,促销日期。
●交付类型表反映了交付的信息,即交付类型编号和交付的类型。
●订单表用来存储订单的数据,有订单编号,所定图书编号,所定图书数量,订单代号,订单创建日期,订单状态编号,交付类型编号,出货方式编号信息。
●订单子表反映了订单的状态,有订单状态详细信息和相关备注信息。
●所在城市表介绍了用户所在城市的信息。
●所在国家表介绍了用户所在国家的信息。
●所在省表介绍了用户所在省的信息。
●出版社表介绍了图书出版单位的相关情况,出版社编号以及名称信息。
●关键字表为用户提供了搜索图书的关键字,关键字编号,搜索次数信息。
●出货方式表用来记录出货方式的相关信息,有出货方式和收货人的各种信息。
●用户信息表用来存储用户的相关信息,如用户编号,用户注册名,昵称,用户电子邮箱,密码,用户真实姓名,用户性别,用户出生日期,家庭地址以及相关订单信息等等。
●用户登录表是用来反映用户登录的情况。
以上是数据库中的基本表,在具体的查询过程中,如要全都从基本表中查询,则用起来相当不便,影响效率。
所以建立了视图来简化用户的操作:
(1)图书评论视图(vw_Bookcomment)包括图书编号,评论日期,评论内容,标题。
(2)图书种类及出版社视图(vw_books_category_Publishers)包括图书编号,,图书定价,图书数量,点击情况,出版社,出版日期,字数总计,内容简介,作者简介,编者推荐,目录信息。
根据以上的逻辑结构设计,对应的表结构如下所示:
1.书店促销信息表(Book_Ec_Info)《留作二次开发时使用》
书店促销信息表用来发布书店促销信息如,信息名称,发布日期,链接地址,,图书定价,备注信息。
表2-1Book_Ec_Info
字段
说明
类型(长度)
备注
BOOK_EC_INFO_ID
信息编号
int
主键,不为空
INFO_TITLE
促销名称
nvarchar(100)
不为空
INFO
信息内容
nvarchar(2000)
可以为空
PUBLICATION_DATE
发布日期
datetime
不为空
URL
链接地址
nvarchar(200)
可以为空
INFO_PIC
图片链接地址
nvarchar(100)
可以为空
REMARK
备注信息
nvarchar(100)
可以为空
2.图书表(Books)
图书表用来存储系统的图书信息,如图书编号,图书名称,图书作者,种类编号,图书定价,图书数量,出版日期,点击情况,图书ISBN号,图书总字数,内容简介,作者简介,编者推荐,目录信息。
表2-2Books
字段
说明
类型(长度)
备注
Id
图书编号
int
主键,不为空
Title
图书名称
nvarchar(200)
不为空
Author
图书作者
nvarchar(200)
不为空
CategoryId
种类编号
int
外键,不为空
UnitPrice
图书定价
money
不为空
Quantity
图书数量
int
不为空
Clicks
点击情况
int
不为空
PublisherId
出版社编号
int
不为空
PublishDate
出版日期
datetime
不为空
ISBN
图书ISBN号
nvarchar(50)
不为空
WordsCount
图书总字数
int
不为空
ContentDescription
内容简介
nvarchar(max)
可以为空
AurhorDescription
作者简介
nvarchar(max)
可以为空
EditorComment
编者推荐
nvarchar(max)
可以为空
TOC
目录
nvarchar(max)
可以为空
3.图书评论表(BookComments)
图书评论表用来存储评论的信息,如评论编号,所评图书编号,用户编号,评论内容,等级,评论日期。
表2-3BookComments
字段
说明
类型(长度)
备注
Id
评论编号
int
主键,不为空
BookId
所评图书编号
int
外键,不为空
UserId
用户编号
int
外键,不为空
Comment
评论内容
nvarchar(300)
不为空
Rating
等级
int
可以为空
Date
评论日期
datetime
不为空
4.图书种类表(Categories)
图书种类表用来存储图书类别的信息,包括类别编号,类别名称。
表2-4Categories
字段
说明
类型(长度)
备注
Id
种类编号
int
主键,不为空
Name
种类名称
nvarchar(200)
不为空
5.登录类型表(adminRoles)
登录类型表反映了用户登录的情况,有登录类型,名称以及相关的描述详细。
表2-5adminRoles
字段
说明
类型(长度)
备注
RoleId
登录类型编号
int
主键,不为空
RoleName
登录类型名称
narvarchar(30)
不为空
RoleDescription
登录类型描述
nchar(50)
不为空
6.用户表(adminUser)
用户表用来存储用户的数据,如用户编号,用户类型,用户密码,类型编号信息。
表2-6adminUser
字段
说明
类型(长度)
备注
Userid
用户编号
int
主键,不为空
UserName
用户类型
varchar(20)
不为空
UserPwd
用户密码
varchar(50)
不为空
RoleId
类型编号
int
外键,不为空
7.促销表(Cuxiao_Info)
促销表是用来反映相关促销活动的相关信息,促销信息编号,促销主题,链接地址,促销类型,促销日期。
表2-7Cuxiao_Info
字段
说明
类型(长度)
备注
Info_ID
促销信息编号
int
主键,不为空
Info_title
促销主题
narvarchar(50)
不为空
URL
链接地址
narvarchar(200)
可以为空
Info_type
促销类型
int
不为空
PubDate
促销日期
datetime
可以为空
8.交付类型表(Delievery_Type)
交付类型表反映了交付的信息,即交付类型编号和交付的类型。
表2-8Delievery_Type
字段
说明
类型(长度)
备注
Id
交付类型编号
int
主键,不为空
Name
交付类型
char(40)
不为空
9.订单表(rders)
订单表用来存储订单的数据,有订单编号,所定图书编号,所定图书数量,订单代号,订单创建日期,订单状态编号,交付类型编号,出货方式编号信息。
表2-9rders
字段
说明
类型(长度)
备注
Order_Id
订单编号
int
主键,不为空
bookid
所定图书编号
int
外键,不为空
Quantity
所定图书数量
int
不为空
Order_Code
订单代号
nvarchar(50)
不为空
Order_Date
订单创建日期
datetime
不为空
Order_State_ID
订单状态编号
int
外键,不为空
User_Id
用户编号
int
外键,不为空
Delivery_Type_Id
交付类型编号
int
外键,不为空
Ship_Id
出货方式编号
int
外键,不为空
10.订单子表(OrderStates)
订单子表反映了订单的状态,有订单状态详细信息和相关备注信息。
表2-10OrderStates
字段
说明
类型(长度)
备注
OrderStateId
订单状态编号
int
主键,不为空
OrderState
订单状态
nvarchar(20)
不为空
OrderStateInfo
订单状态详细信息
nvarchar(40)
可以为空
Remark
订单备注信息
nvarchar(20)
可以为空
11.所在城市表(City)
所在城市表介绍了用户所在城市的信息。
表2-11City
字段
说明
类型(长度)
备注
CITY_ID
所在城市编号
int
主键,不为空
PROVINCE_ID
所在省编号
int
外键,不为空
CITY_NAME
所在城市名称
nvarchar(20)
不为空
12.所在国家表(County)
所在国家表介绍了用户所在国家的信息。
表2-12County
字段
说明
类型(长度)
备注
COUNTY_ID
所在国家编号
int
主键,不为空
CITY_ID
所在城市编号
int
外键,不为空
COUNTY_NAME
所在国家名称
nvarchar(20)
不为空
13.所在省表(Province)
所在省表介绍了用户所在省的信息。
表2-13Province
字段
说明
类型(长度)
备注
PROVINCE_ID
所在省编号
int
主键,不为空
PROVINCE_NAME
所在省名称
nvarchar(30)
不为空
14.出版社表(Publishers)
出版社表介绍了图书出版单位的相关情况,出版社编号以及名称信息。
表2-14Publishers
字段
说明
类型(长度)
备注
Id
出版社编号
int
主键,不为空
Name
出版社名称
nvarchar(200)
不为空
15.关键字表(SearchKeywords)
关键字表为用户提供了搜索图书的关键字,关键字编号,搜索次数信息。
表2-15SearchKeywords
字段
说明
类型(长度)
备注
Id
关键字编号
int
主键,不为空
Keyword
关键字
nvarchar(50)
不为空
SearchCount
搜索次数
int
不为空
16.出货方式表(Shipment)
出货方式表用来记录出货方式的相关信息,有出货方式和收货人的各种信息。
表2-16Shipment
字段
说明
类型(长度)
备注
SHIPMENT_ID
出货方式编号
int
主键,不为空
USER_ID
用户编号
int
外键,不为空
PROVINCE
所在省
nvarchar(50)
不为空
CITY
所在城市
nvarchar(50)
不为空
COUNTY
所在国家
nvarchar(50)
不为空
POSTCODE
邮编
char(6)
不为空
DETAIL_ADDRESS
详细收货地址
nvarchar(50)
不为空
RECEIVER_NAME
收货人姓名
nvarchar(50)
不为空
RECEIVER_TEL
收货人电话号码
nvarchar(20)
可以为空
RECEIVER_MOBILE_PHONE
收货人手机号码
nvarchar(20)
可以为空
IS_DEFAULT_SHIPMENT_ADDRESS
详细发货地址
bit
不为空
17.用户信息表(Users)
用户信息表用来存储用户的相关信息,如用户编号,用户注册名,昵称,用户电子邮箱,密码,用户真实姓名,用户性别,用户出生日期,家庭地址以及相关订单信息等等。
表2-17Users
字段
说明
类型(长度)
备注
User_Id
用户编号
int
主键,不为空
User_Login_Name
用户注册名
nvarchar(50)
不为空
Nick_Name
用户昵称
nvarchar(50)
不为空
用户电子邮箱
nvarchar(50)
不为空
Password
密码
nvarchar(50)
不为空
RealName
用户真实姓名
nvarchar(50)
可以为空
Sex
用户性别
char
(2)
不为空
Brithday
用户出生日期
datetime
可以为空
Job
用户职业
nvarchar(20)
可以为空
Provice
用户所在省
nvarchar(20)
可以为空
City
用户所在城市
nvarchar(20)
可以为空
County
用户所在国家
nvarchar(20)
可以为空
Detial_Address
用户详细住址
nvarchar(50)
可以为空
Postcode
用户住址邮编
char(6)
可以为空
Mobile_Phone
电话号码
nvarchar(20)
可以为空
User_Level_Id
用户等级
int
可以为空
Default_Shipment_Address_Id
详细发货地址
int
可以为空
Account_Balance
付款金额
money
可以为空
Last_Order_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网上 书店 系统 设计