第一章网上购书信息管理系统
1.1用户需求的分析
1.1.1任务描述
依据电子商务的特点与基本流程以及用户需求调查报告,通过理解需求阶段的目标,给业务上下文和系统功能建模,在完整的用例模型中记录系统需求,完成需求模型报告,最后依据需求模型报告进行产品需求规格说明书的撰写。
1.1.2任务分析
需求分析人员要按“初始、细化、构造与移交四步走”的路线,通过“以目标为基础、以用例为中心的三次迭代式需求分析”的过程来完成对用户需求的分析。
(1)第一次迭代(初始):学会进行项目目标分解、进行项目目标可研分析,构造提交项目目标模型,形成项目大纲。
(2)第二次迭代(细化):学会进行用例图建模,进行客户需求分析,构造提供软件功能模型,形成客户需求文档。
需求验证(移交):学会从需求类型与属性角度评估需求的质量,移交产品需求说明书
1.2网上购书业务流程
(1)用例模型
用例模型是系统既定功能及系统环境的模型,它可以作为客户和开发人员之间的契约。用例是贯穿整个系统开发的一条主线。一个用例模型包括了系统的所有用例,它是系统所有可能用途的总和。
蓝星网上购书信息管理系统用例一览表如表1-1所示:
(2)
业务对象模型
目标
角色
F G 1:目录管理
F G 2:图书管理
F G 3:购物车管理
F G 4:订单管理
F G 5:支付管理
F G 6:会员管理
管理员
F G 1:U C 1:目录
创建
F G 1:U C 2:目录编辑
F G 1:U C 3:目录
F G 2:U C 1:图书入库
F G 2:U C 2:图书出库
F G 2:U C 3:图书
F G 4:U C 3:订单状态编辑
F G 4:U C 4:订单信息查看
F G 6:U C 1:会员注册
F G 6:U C 2:会员撤销
会员
F G 1:U C 4:目录查看
F G 2:U C 5:图书概要信息查看
F G 2:U C 5:图书详细信息查看
F G 3:U C 1:购物车图书添加
F G 3:U C 2:购物车图书计价
F G 3:U C
F G 4:U C 1:订单生成
F G 4:U C 2:个人订单信息查看
F G 5:U C 1:信用卡支付
F G 6:U C 3:个人资料修改
F G 6:U C 4:会员登陆
游客
F G 1:U C 4:目录查看
F G 2:U C 5:图书概要信息查看
F G 6:U C 1:会员注册
银行账户处理
F G 5:U C 2:转账
1.2.1撰写需求规格说明书
《产品需求规格说明书》的重点是阐述“做什么”,而不是阐述“怎么做”。《产品需求规格说明书》应当正确、清楚、无二义性、一致、完备、可实现以及可验证。
“正确”是《产品需求规格说明书》最重要的属性。真正的困难是开发者和用户自己都不明白用户究竟“想要什么”和“不要什么”。为确保需求是正确的,开发方和用户必须对《需求规格说明书》进行确认;清楚的需求让人易读易懂,不在于文档的厚度;
“无二义性”是指每个需求只有唯一的含义。如果一个人说的话,不同的人可能有不同的理解,那么这句话就有二义性。如果需求存在二义性,将会导致人们误解需求而开发出偏离需求的产品。为了使需求无二义性,人们在写《产品需求规格说明书》时措词应当准确,切勿模棱两可。
“一致”(C o n s i s t e n t)是指《产品需求规格说明书》中各个需求之间不会发生矛盾。矛盾常常潜伏在需求文档的上下文中。“完备”(C o mp l e t e)是指《产品需求规格说明书》中没有遗漏一些必要的需求。人们往往倾向于关注系统的特色功能,而忽视了其它一些不起眼的但却是必需的功能。
“可实现”意味着在技术上是可行的,并且满足时间、费用、质量等约束。经过双方确认的《产品需求规格说明书》相当于商业合同,如果开发方不能够实现《产品需求规格说明书》中的内容,那就是违约,可能会被罚款
的。《产品需求规格说明书》中的各项需求对用户方而言应当都是可验证的(Ve r i f i a b l e)。如果需求是不可验证的,那么用户就无法验收软件,可能会发生商业纠纷。
二章系统设计
软件构架是指一个系统的基础组织,具体体现在系统的组成构件,构件之间、构件和环境之间的关系,以及指导其设计和演化的原则上。
2.1任务描述
设计蓝星网上购书信息管理系统构架
2.2任务分析
R U P的整个分析与设计过程如下图所示,其中A r c h i t e c t即为软件架构师角色,从下图中可见系统架构从分析到设计的全部活动。
图1-8系统架构分析与设计活动
2.3安全策略
网上书店的实施,其关键是要保证整个商务过程中系统的安全性。
实现网上书店的关键是要保证商务活动过程中系统的安全性,即保证基于互连网的电子交易过程与传统交易的方式一样安全可靠。
1.密码技术
采用M D5加密。
2.访问控制
采用授权策略和机制。保护可以从以下几个方面加以考虑:物理隔离、时间隔离、密码隔离。
3.防火墙技术
采用分组过滤防火墙技术。
2.3.1并发策略
1.对于业务数据低级并发控制由数据库事务和线程监视器自动管理,对业务服务的每一次使用都封装在一个事务中,以正确传送给数据库管理系统。
2.会员不可以重复登录,只能登录一次
3.在脱线状态下更新数据库数据,在凌晨使更新真正生效
三章子系统设计
3.1任务描述
完成蓝星网上购书信息管理系统子系统设计,包括类的设计、用例具体实现、用户界面设计以及数据库设计。
3.2任务分析
通过子系统设计将形成一个可用的、完整的解决方案,并且能够比较容易地将方案转换成程序代码。该任务在.N E T标准三层系统架构的基础上,将考虑所有的实现技术问题,对分析阶段的模型进行扩展和细化,并对分析阶段定义的类进一步扩充,定义新的类来处理技术方面的问题,最终形成最后的解决方案。
(一)遵循类的设计原则:
开闭原则:对扩展开放而对变更封闭;
依赖倒置原则:依赖抽象类而非具体类;
L i s k o v替换原则:子类应当能完全替代其基类;
单一职责原则:一个类只应当承担单一和集中的职责,这样引发类进行变更的原因只有一个;
接口分离原则:为客户提供多个物定的接口好过一个多种用途集于一身的接口,即客户不被强制依赖于其不需要的操作;
组合复用原则:尽可能地使用对象的多态组合而非继承来实现复用
所知最少原则:一个类的操作实现中,只应调用下列对象的操作:它自己、作为参数传入的对象、它创建的对象、它包含的对象。
(二)实现系统用例
实现系统用例的方式通常显示出用例如何通过一系列协作类进行实现,这是系统内部行为的模型,它可以用两个U M L 工件来描述:实现类图和顺序图。
(四)数据库设计
面向对象的数据库设计是从对象模型出发的,属于实体主导型设计,数据库设计(模式)是否支持应用系统的对象模型,这是判断是否是面向对象数据库系统的基本出发点。由于应用系统设计在前,数据库设计随后,所以应用系统对象模型向数据库模式的映射是面向对象数据库设计的关键。
3.3类的列表
C a r t M a n a g e r:
字段名称类型说明
包类名说明
We b
D e f a u l t前台首面页面类
B o o k B r i e f前台图书概要页面
I t e m前台图书详情页面
S h o p p i n g C a r t前台购物车页面类
C h e c k O u t前台订单页面类
U s e r P r o f i l e前台个人设置页面
S e a r c h前台图书检索页面
R e g i s t e r前台会员注册页面
a d m i n D e f a u l t后台首页页面类
C a t e g o r y后台目录管理页面
B o o k后台图书管理页面
O r d e r订单管理页面类
L o g i n后台登录页面类
表1-13类的列表
3.3.1用例具体实现示例--购物车图书添加(放入图书到购物车):
图1-14购物车图书添加序列图
3.3.3数据库设计
如在任务分析中所述,面向对象的数据库设计是从对象模型出发的,属于实体主导型设计,我们由如下图所示之业务实体出发完成向数据库概念模型的映射。
A S P.N E T自动生成的数据表:
四
章 网站母版页及设计 4.1 任务分析
网站W E B 对应表示层,主要应包含网页页面、用户控件等,类库B L L 中包含所有业务逻辑层中的类,类库D A L 中包含所有数据访问层中的类,类库M o d e l 中则包含所有业务实体类,类库C O M M O N 包含公共类。各项目中详细内容可参见第四节子系统设计中的类的列表。如果一个类库中的类要调用另一个类库中的类,则要在该类库中添加对另一个类库的引用。
在设计母版页时则要注意,母版页是一个页面模板,包含的是页面的公共部分,因此,在创建母版页之前,必须判断哪些内容是页面的公共部分,比较常见的公共部分通常有片头、页脚、功能侧栏等。
单独的母版页只是一个页面模板,它不能在浏览器中被打开,只有将其应用到具体的某个内容页上,在浏览器中访问该内容页,其才能发挥作用。 站点地图的扩展名为.s i t e ma p ,是A S P 2.0及A S P 3.5提供的为站点导航控件--如本项目中使用的S i t e M a p P a t h 控件提供站点的层次结构信息的标准X M L 文件。
4.1.1 在解决方案中依次创建网站及类库B L L 、 D A L 、类库M o d e l 、类库C o m mo n ,解决方案创建完成如下图所示:
表名
说明
a s p n e t _A p p l i c a t i o n s 应用程序的基本信息:程序名、程序描述a s p n e t _M e m
b e r s h i p 用户的详细信息:用户名、邮箱等 a s p n e t _P a t h s
应用程序路径信息
a s p n e t _P e r s o n a l i z a t i o n A l l U s e r 存储所有用户的个性化信息 a s p n e t _P e r s o n a l i z a t i o n P e r U s e r 存储特定用户的个性化信息 a s p n e t _P r o f i l e 个性化配置的内容 a s p n e t _R o l e s
角色表
a s p n e t _S c h e m a V e r s i o n s 各部分的版本信息 a s p n e t _U s e r s
用户表
a s p n e t _U s e r s I n R o l e s 用户与角色的关系表 a s p n e t _W e
b E v e n t _E v e n t s
存储事件日志信息
图1-33完整的解决方案
4.1.2在类库M o d e l中创建业务实体类
1.图书目录实体类C a t e g o r y I n f o
2.图书概要实体类B o o k B r i e f I n f o
3.图书详情实体类I t e m I n f o
4.购物车实体类C a r t I n f o
5.订单类O r d e r s I n f o
6.订单明细类L i n e I t e m I n f o
7.地址类A d d r e s s I n f o
4.2在类库C o m m o n中创建公共类数据库连接类D a t a B a s e
主要方法:
///
///对数据库进行增删改方法
///
///
S q l C o m m a n d对象的命令类型
///
S q l C o m ma n d对象的文本
///
S q l C o m m a n d对象的参数
///
p u b l i c v o i d E x c u t e N o n Q u e r y(C o m ma n d Ty p e c t,s t r i n g c m d T x t, S q l P a r a m e t e r[]c md P a r m s)//对数据库进行增删改方法
{
S q l C o m m a n d c m d=n e w S q l C o m m a n d();
t h i s.P r e p a r e c o m m a n d(c md,c t,c m d T x t,c m d P a r m s);
c md.E x e c u t e N o n Q u e r y();
c md.P a r a m e t e r s.C l e a r();
t h i s.C l o s e();
}…
///
///读取数据
///
///
S q l C o m m a n d对象的命令类型
///
S q l C o m ma n d对象的文本
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新幼儿教育第1章 网上购书信息管理系统全文阅读和word下载服务。
相关推荐: