1 系统需求分析
1.1 系统基本功能描述
网上书店系统是依据网上书店能够在线出售图书和管理需求而进行设计的,目的是实现在线接受客户订单、书店信息管理的功能。
需要在线购买图书的客户能够通过网上书店系统查询所需要的图书是否有售并能够查询有售图书的基本信息(比如图书名称、作者、出版社等)。如果客户查询到所需并且有售的图书,能够在线下达订单,然后提交给数据库,并且客户能够查询自己的订单的处理情况。同时,客户应该能够维护自己的信息(比如修改自己的收货地址、联系方式等)。
网上书店系统应该至少拥有一个管理员。管理员能够维护在售图书的基本信息(比如图书信息的增加、删除、修改等),并且能够对图书进行分类管理。同时,管理员能够维护客户的信息,能够审核客户提交的订单以确认或删除订单。
1.2 系统数据流图
通过对系统需求进行分析,我们尅有确定系统中有两类用户:管理员和客户。 各类用户的具体描述如下: (1) 管理员
描述:管理员负责后台管理。包括维护(增加、删除、修改)图书信息,对 图书进行分类管理;维护客户信息(增加和删除客户账号);审核订单并确认合法订单或删除非法订单。 (2) 客户
描述:客户可以查询有售图书的基本信息;可以维护自己的信息;可以进行网上订书;可以查询订单的处理情况。
1.2.1 数据流分析
根据分析,我们可以得到系统的数据流图。 (1)网上书店系统顶层数据流图如图1-1所示。
1
1.2.2 数据字典
根据数据流程分析,对系统数据进行分析和汇总,建立系统数据字典。下面 列出部分数据字典内容。
1.2.2.1 数据项
(1)管理员
① {管理员编号,每位管理员在系统中的唯一编号也是管理员登陆的账号名,char(7)}
② {管理员姓名,char(10)}
③ {管理员登陆密码,char(10)} (2)客户
① {客户编号,每位客户在系统中的唯一编号,char(7)} ② {客户姓名,char(10)}
③ {地址编号,客户有多个地址时每个地址的编号,char(7)}
④ {地址,客户收货地址中某个具体地址,varchar(20)}
⑤ {联系方式,客户的电话号码,char(15)} ⑥ {账户余额,客户购书账户的余额,float(7)} ⑦ {登陆密码,char(10)}
(3)订单
① {订单号,唯一标识一张订单的编号,char(7)}
② {订单日期,生成订单的时间,datetime,取值为提交订单的时间} ③ {收货人姓名,查收图书的人的姓名,char(10),同客户姓名} ④ {收货人联系方式,收货人的电话号码,char(15),同联系方式}
⑤ {发货地址,图书送达的目的地,varchar(100),是客户收货地址中的一
个}
⑥ {管理员编号,审核该订单的管理员的编号,char(7),同管理员编号} (4)订单细则
① {细则号,唯一标识一个订单细则,char(7)}
② {图书编号,订单所包含的图书的编号,char(7),同图书信息中的图书
编号}
③ {订购数量,购买同本图书的数量,smallint,取值不大于此本图书的库
存余量}
④ {发货状况,已订购图书的发货情况,varchar(100)} (5)图书信息
① {图书编号,唯一标识一款图书的编号,char(7)} ② {图书名,图书的题名,varchar(20)} ③ {作者,图书的作者,char(10)}
④ {出版社,图书的出版方,varchar(20)} ⑤ {图书类别,图书的分类,varchar(20)}
⑥ {库存余量,当前书店此款图书的剩余量,smallint,当前库存量=上次
库存量-售出数量}
⑦ {图书价格,图书的售价,float(5),图书价格大于零}
2
1.2.2.2 数据结构
(1){图书信息,每本图书的具体信息,组成:{图书编号,图书名,作者,出版
社,图书类别,库存余量,图书价格} }
(2){管理员,管理员的基本信息,组成:{管理员编号,管理员姓名} }
(3){客户,客户的基本信息,组成:{客户编号,客户姓名,收货地址,账户余
额,联系方式} }
(4){收货地址,客户的收货地址,组成:{地址编号,地址} }
(5){订单,订单的信息,组成:{订单号,订单日期,订单细则,收货人姓名,
发货地址,管理员编号,收货人联系方式} }
(6){定单细则,订单的细节内容,组成:{细则号,图书编号,订购数量,发货
状况} }
3
2 系统设计
2.1 数据库设计
2.1.1 概念结构设计
1.系统涉及到的实体
(1)管理员{管理员编号,管理员姓名}
(2)客户{客户编号,客户姓名,收货地址,账户余额,联系方式}
(3)图书{图书编号,图书名,作者,出版社,图书类别,库存余量,图书
价格}
(4)订单{订单号,订单日期,订单细则,收货人姓名,发货地址,管理员
编号,收货人联系方式}
(5)订单细则{细则号,图书编号,订购数量,发货状况} (6)收货地址{地址编号,地址}
2. 系统E-R模型设计 A. 分E-R 模型设计
(1)每个客户可以拥有多个收货地址,这些地址只能被这个客户使用。
因此,客户与收货地址之间是一对多关系。E-R图如下:
(2) 一个客户可以下达多个定单,一个订单只能属于一个客户。因此,
客户与订单是一对多关系。E-R图如下:
4
(3)一份订单里可以包含若干个订单细则。因此,订单与订单细则之间是
一对多关系。E-R图如下:
(4) 一个管理员可以审核多份定单,但是一份订单只能被一个管理员审核。
因此,管理员与订单是一对多关系。E-R图如下:
(5) 一个订单细则可以包含多本图书,一本图书也可以包含在多份订单细
5