表3 “合格信息”数据流定义
数据流编号 D02-2 数据流名称 合格信息 简述 符合要求的注册信息或正确的登录信息 数据流的来源 “注册/登录”处理逻辑 数据流的去向 “用户信息表”存储 数据流的组成 “合格信息”数据结构 表4 “不合格信息”数据流定义 数据流编号 D02-3 数据流名称 不合格信息 简述 不符合要求的注册信息或错误的登录信息 数据流的来源 “注册/登录”处理逻辑 数据流的去向 用户 数据流的组成 “不合格信息”数据结构 表5 “注册/登录”处理逻辑定义
处理逻辑编号 P02-1.1 处理逻辑名称 注册/登录 简述 审核用户填写的注册或登录信息 输入的数据流 用户信息 处理 审核注册表是否符合要求或登录信息是否正确 输出的数据流 合格的用户信息,去向是“用户信息表” 不合格的用户信息,去向是外部实体“用户”
表6 “注册信息修改”处理定义
处理逻辑编号 P02-1.2 处理逻辑名称 注册信息修改 简述 用户可以修改个人信息 输入的数据流 “用户信息表”存储 处理 修改用户注册信息 输出的数据流 “用户信息表”存储
表7 “注销”处理定义
处理逻辑编号 P02-1.3 处理逻辑名称 注销 简述 删除用户登录记录 输入的数据流 用户信息表 处理 使当前的会话无效
7
表8 数据存储定义
数据存储编号 数据存储名称 简述 数据存储组成 F01-1 用户信息表 存放用户的基本信息 userid+name+phone+street+state+ city+zipCode+email+cardNumber+ cardType+userLogCount+ userLastLogTime+ userType+password userid P02-1.1,P02-1.2,P02-1.3 关键字 相关联的处理
表9 外部实体定义
外部实体编号 外部实体名称 简述 输入的数据流 输出的数据流 S01-1 用户 浏览本系统的用户 不合格信息D02-2 用户信息 四、系统设计
根据系统分析阶段所获得的新系统的逻辑模型而建立新系统的物理模型,是管理信息系统的系统设计,系统设计是寻求解决办法、探索建立新系统的过程。系统分析阶段是解决管理信息系统“做什么”的问题;而系统设计阶段则是解决管理信息系统“怎么做”的问题。
(一)系统功能设计
该网络书店系统由前台操作和后台管理两部分构成。
1.书店前台
前台作为与用户直接交互的界面,在考虑功能的同时,也考虑了操作的简洁和方便性,目的是让大多数不太懂电脑操作的用户,也能轻松的享受电子商务给他们带来的便利。
(1)图书查询。网络书店与传统书店相比的一个优势是,当用户知道图书某部分信息时,用户可以使用“图书查询”功能快速找到需要的图书。“图书分类显示”功能以列表的方式分类显示图书,当用户找到感兴趣的类别后可以显示相关的图书信息。
(2)个人工具。只有成为网络书店的注册用户后,才能在网络书店中购买图书,因此需要提供“用户注册/登录”功能以及相关的“用户注册信息修改”功能。
(3)订单处理。当用户在网络书店中找到了所有需要的图书后,决定购买,可以选择“结帐”。管理员会定期处理用户下达的订单,并根据用户订单的信息向用户送书,用户可以随时“查看订单状态”。
(4)购物车操作。当用户找到需要的图书时,可以先“添加图书”到购物车,然后继续寻找其他的图书,购物车中存储当前用户打算购买的所有图书。用户也可以随时“查看购物车”。
8
前台操作
图书查询 个人工具 订单处理 购物车操作
图 图 最 特 注 注 注 结 查 取 添 查 删 书 书 新 价 册 册 销 帐 看 消 加 看 除 查 分 图 图 / 信 订 订 图 购 图 询 类 书 书 登 息 单 单 书 物 书 显 查 查 录 修 状 车 示 询 询 改 态 状 态
图5 前台功能模块图
2.后台管理
后台管理在考虑书店管理操作简便的同时,提供了强大的书店管理模式。它包括书籍管理、用户管理与订单管理等。
(1)书籍管理。管理员需要维护书店中的图书信息,同时与图书相关的图书分类信息也要管理员维护。
(2)用户管理。由于只有成为网络书店的注册用户后才能购买图书,管理员需要对用户信息进行管理,如删除一些无效用户等。
(3)订单管理。在用户下达订单后,管理员需要对用户订单进行“确认”,为用户准备订购的图书,并可以随时“查看订单”。
后台管理
书籍管理 用户管理 订单管理
增 删 增 删 查 登 查 删 查 订 删
加 除 加 除 看 录 看 除 看 单 除 新 图 图 图 更 用 用 订 信 订 的 书 书 书 改 户 户 单 息 单 图 分 图 信 确 书 类 书 息 认 分 类
图6 后台功能模块图
(二)代码设计
目前的计算机还无法识别客观世界中的任何一种具体的事物,它只能识别ASCⅡ字符集中的256个基本字符,因此,计算机管理信息系统设计的基本前提是把管理对象数字化或字符化,这就是代码设计。
1.linenum(订单项目编号)采用顺序码设计。顺序码是一种用连续数字代表项目名的编码。例如:
9
表10 订单详细信息表(节选)
linenum 1 2 3 itemid 7-5640-0204-2 7-5640-0210-7 7-5640-0239-5 2.productid(图书号)采用区间码设计。区间码把数据项分成若干组,每一区间代表一个组,码中数字的值和位置都代表一定意义。例如:
catid+XXXX+XXX 顺序号 出版年次 类别号
图7 图书号编码设计图
3.catid(类别号)采用助忆码设计。助忆码用文字、数字或文字数字结合起来描述,可以通过联想帮助记忆。例如:
表11 图书类别表(节选)
catid wx Kj ky name 文学 科技 考研 (三)数据库设计 1.概念结构设计
将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计。概念结构独立于具体的数据库管理系统,它描述的是从用户角度看到的数据库,反映了用户的实现环境,而与数据库将来怎样实现无关。 库存量 1 参照
n 1 n 1 1 图书详细信息 包括 说明 图书 图书分类 1 参照
1 m n 1 1 1 订单 订单详细信息 参照 说明 用户
1 1 参照
1 1 订单状态
图8 E-R图
10
2.逻辑结构设计
数据库设计主要是进行数据库的逻辑设计,即将概念数据模型转换成特定的数据库管理系统(DBMS)支持的数据模型。
表12 用户信息表(user_info表) 数据项 userid name phone street state city zipCode email cardNumber cardType userLogCount userLastLogTime userType password 数据项 orderid userid orderdate shipstreet shipcity shipstate shipzip totalprice creditcard cardtype 数据项 Orderid Linenum Timestamp status 数据项 orderid linenum itemid quantity untiprice
含义说明 用户名 真实姓名 用户电话 用户地址 省 用户所在城市 用户邮编 用户电子邮件 信用卡号 信用卡类型 用户登录次数 上次登录时间 用户类型 用户密码 含义说明 订单号 用户名 提交订单时间 运输地址 城市 省 邮编 总金额 信用卡号 信用卡类型 含义说明 订单号 项目编号 时间标识 状态 含义说明 订单号 项目编号 图书条码号 数量 特价 数据类型 nvarchar nvarchar nvarchar nvarchar nvarchar nvarchar nvarchar nvarchar nvarchar int int smalldatetime int nvarchar 数据类型 varchar varchar Datetime varchar varchar varchar varchar decimal varchar varchar 类型 Varchar Int Datetime varchar 类型 varchar int Varchar int decimal 长度 40 40 40 40 40 40 40 40 40 40 长度 30 80 80 80 80 20 10,2 80 80 长度 30 2 长度 30 10 10,2 允许空 否 否 否 否 否 否 是 否 否 否 是 否 否 允许空 否 否 否 否 否 否 否 否 否 否 允许空 否 否 否 否 是否空 否 否 否 否 否 11
表13 订单信息表(orders表) 表14 订单状态表(orderstatus表)
表15 订单详细信息(lineitem表)