软件开发案例分析大作业Word格式.docx
《软件开发案例分析大作业Word格式.docx》由会员分享,可在线阅读,更多相关《软件开发案例分析大作业Word格式.docx(21页珍藏版)》请在冰豆网上搜索。
使用该系统,用户可以让所有上网浏览的客户看到你在网络上所登录的产品信息,并可以查看、购买商品和下定单,缩短与小客户的距离,直接获得效益。
随着社会的日益发展和进步,信息日益增过,图书的种类和作品也成爆炸似式的增长,而随着网购简单,快捷便利的服务方式的流行,越来越多的人选择通过网购来进行图书的购买。
1.2目标
(1)用户注册后,登陆到在线图书商城系统中,可以进入购物流程(或在结帐之前注册并登陆系统),还可以进行信息修改,会员充值和购物车管理等操作。
(2)游客可以浏览在线图书商城的所有图书商品和商城系统信息。
(3)客户一次可以购买多种商品,当确认购买之后,将产生一张订单。
(4)订单生成后,由后台管理员进行审核和处理,最终发货。
(5)系统管理员可以进行图书商品的添加与删除,会员的添加与删除,送货方式的添加与删除等操作,同时网站自动更新管理员进行的所有修改操作。
2需求分析
2.1需求理解
本在线图书商城系统是基于B/S架构的,本网站系统的开发主要是方便用户购买商品,减少供应商店面费用。
本系统共有三类用户:
普通用户是指没有登陆权限(主要指网络用户,即游客),以非登录的方式访问系统网站。
此类用户主要有浏览系统信息、查看图书商品信息,注册成为会员,把网站设为首页,添加到收藏夹,联系开发人,查看支付方式,售后服务,配送方式,交易条款,保密协议等操作。
浏览的内容包括:
图书商品信息、图书分类信息、精品推荐展区、热销图书展区和特价图书展区。
商城会员:
这类用户拥有普通用户的所有权限;
普通用户可以注册成为会员,并根据会员ID和密码登陆系统,登陆之后可以对更改自己的相关信息。
会员登陆后还可以将图书商品添加到购物车,修改购物车中的商品数,或是删除某些不想要的商品。
如果会员发现商城卡内余额不足还可以进行充值。
系统管理员:
系统管理员主要负责管理着系统后台信息;
主要有订单管理,商品管理,会员管理,物流管理和系统管理。
订单管理有未确认订单和已确认订单管理,未付款订单和已付款订单管理,未发货和已发货订单管理,未归档和已归档订单管理。
商品管理主要有图书添加和图书管理,图书类别添加和图书类别管理。
会员管理主要有添加管理员和管理管理员,管理会员。
物流系统主要有支付方式添加和管理,配送方式添加和管理,配送地点添加和管理。
系统管理主要是备份管理和上传管理。
需求模块图如下:
2.2用例图及用例分析
用例分析说明:
会员用户用例可以包括游客的查看商品信息用例。
管理员的订单管理用例可以包括未确认订单和已确认订单管理,未付款订单和已付款订单管理,未发货和已发货订单管理,未归档和已归档订单管理。
2.3ER图
在线图书商城系统前台会员购物部分的ER图:
2.4数据流图
会员购物模块数据流图如下:
订单处理功能级数据流图如下:
管理员后台管理模块数据流图如下:
会员前台管理模块数据流图如下:
3概要设计
3.1架构设计
目前,Web项目较为流行的开发模式是三层逻辑体系结构,本系统的开发采用三层B/S体系结构,MVC的设计思想。
MVC是三个单词的缩写,分别为:
模型(Model),视图(View)和控制(Controller)。
MVC模式的目的就是实现Web系统的职能分工。
Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。
View层用于与用户的交互,通常用JSP来实现。
Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作。
有的说法也称做业务层,表现层和数据访问/集成层。
在这里用Asp.Net实现整个在线图书商城系统。
系统层次架构及核心类的类图如下:
3.1.1Model层
此层体现系统的业务逻辑,起到了业务委托的作用,屏蔽了View层,有利于重用业务模型。
它是Controller层和View层的桥梁,使得View层不需要直接对数据库进行操作,这有利于数据访问层的固化。
Model层核心类Business_Model的类图如下:
3.1.2View层
此层主要是一些功能显示和提醒,起到了与用户交流的作用。
例如图书商品信息模块显示了图书商品的详细信息。
View层主要是Asp.Net构建网站的界面部分代码,基本都是界面类,这里不列出类图。
3.1.3Controller层
此层负责进行数据访问及系统间交互操作。
数据访问组件负责与关系型数据库打交道,进行具体的增删改查操作。
本系统的Controller层有Data_Controller项目和DataMixClasses项目组成。
其中Data_Controller项目主要负责对数据库的操作,DataMixClasses项目则是数据库表生成类的集合。
Controller层Data_Controller项目的核心类SqlConnection的类图如下:
Controller层DataMixClasses项目的核心类的类图如下:
3.2数据库设计
数据库表结构如下:
3.2.1系统管理员表
系统管理员表:
管理系统管理员账号和密码的表。
主要属性有:
用户名和密码。
系统管理员根据用户名密码登陆后台系统。
表名:
b_Admin
字段名
数据类型
长度
主外键
字段说明
备注
AdminID
varchar
16
主键
管理员ID
非空
Password
无
管理员密码
3.2.2图书商品类别表
图书商品类别表:
商品类别显示表。
ClassID,CategoryUrl。
主要管理图书种类及其图标。
b_Class
ClassID
50
图书种类ID
CategoryUrl
标识图标Url
3.2.3图书信息表
图书信息表:
图书信息表主要负责存储图书名称,图书类别,图书简介,出版社,图书图片,图书价格,相关标识等信息。
GoodsID,ClassID,GoodsIntroduce,GoodsBrand,GoodsUrl,MarketPrice,MemberPrice,Isrefinement,IsHot,AddDate,IsDiscount。
主要记录图书的各种信息
b_GoodsInfo
GoodsID
图书名称
外键
图书类别
GoodsIntroduce
Text
250
图书简介
GoodsBrand
出版社
GoodsUrl
图书图片地址
MarketPrice
float
图书市场价格
MemberPrice
图书会员价格
Isrefinement
bool
1
是否精品推荐
IsHot
是否热销图书
AddDate
datetime
32
上传日期
IsDiscount
是否特价图书
3.2.4会员信息表
会员信息表:
主要用来存储会员的一些基本信息,如会员ID,会员性别,会员密码,会员真实名字,会员联系方式,会员账户余额,上一次登陆时间。
MemberID,Sex,Password,TrueName,Phonecode,Emails,City,Address,PostCode,AdvancePayment,LoadDate。
b_Members
字段说明
MemberID
会员ID
Sex
bit
会员性别
会员密码
TrueName
会员真实名字
Phonecode
电话号码
Emails
Email
City
所在城市
Address
200
地址
PostCode
10
邮编号码
AdvancePayment
现有存款
LoadDate
上次登录时间
3.2.5订单信息表
订单信息表:
订单信息表主要用来存储会员每次订单信息。
OrderID,OrderDate,GoodsFee,TotalPrice,ShipFee,ShipType,PayType,MemberID,ReceiverName,ReceiverPhone,IsConfirm,IsPayment,IsConsignment,IsPigeonhole,ReceiverPostCode,ReceiverAddress,ReceiverEmails。
b_OrderInfo
OrderID
订单ID
OrderDate
Datetime
订单提交日期
GoodsFee
图书总费用
TotalPrice
货物总费用
ShipFee
送货费
ShipType
送货方式
PayType
支付方式
外