第四章 电子商务系统的分析
DESCRIPTION
第四章 电子商务系统的分析. 本章学习目标. 通过本章学习,掌握电子商务系统分析的基本过程;了解结构化分析方法,掌握面向对象分析的思路,及其基本分析方法和主要工具 ; 能正确利用图符绘制业务流程图、数据流程图 ; 基本掌握 UML 的需求分析思路和方法 ; 初步了解系统分析建模工具 , 并能进行操作 ; 能结合应用实际 , 撰写系统分析报告. 第一节 电子商务系统分析的任务. 一、系统调查 系统调查就是对所要开发的电子商务系统进行详细的业务调查,深入了解用户需求。这一阶段主要的任务是了解企业商务活动中都有哪些基本的商务环节,特点是什么,开展电子商务活动目的是什么。. - PowerPoint PPT PresentationTRANSCRIPT
第四章 电子商务系统的分析
本章学习目标
通过本章学习,掌握电子商务系统分析的基本过程;了解结构化分析方法,掌握面向对象分析的思路,及其基本分析方法和主要工具 ; 能正确利用图符绘制业务流程图、数据流程图 ;基本掌握 UML 的需求分析思路和方法 ; 初步了解系统分析建模工具 , 并能进行操作 ; 能结合应用实际 , 撰写系统分析报告 .
第一节 电子商务系统分析的任务
一、系统调查 系统调查就是对所要开发的电子商务系统进行
详细的业务调查,深入了解用户需求。这一阶段主要的任务是了解企业商务活动中都有哪些基本的商务环节,特点是什么,开展电子商务活动目的是什么。
表 4-1 某网站用户对网站性能需求的调查
表 4-1 某网站用户对网站性能需求的调查
用 户数量
使用周期(天)
每次使用时间(分)
总时间
(分)
每次点击次数
总点击次数
每次事务操作
总事务操作
医院 300 5 30 1800 8 480 3 180.00
零售商 1200 3 20 8000 5 2000 2 800.00
批发商 800 3 30 8000 9 2400 4 1066.67
厂家 4000 4 20 20000 10 10000 5 5000.00
总计 6300 15 100 37800 32 14880 14 7046.67
每分钟平均
75.6 29.76 14.09
二、企业现行商务活动分析 这一阶段任务的内容主要是了解企业商务运作
过程中都有哪些基本的商务环节,其基本特点是什么?
三、电子商务系统需求分析 由于电子商务系统有其自身的特点,它包含
一些基本需求,如企业信息门户网站、商务智能、电子商务支付系统、电子商务安全系统、物流配送体系等 .
四、分析系统的数据要求 通过调查分析了解系统的数据要求。一般系统
有两个方面的特征:属性特征和行为特征。 五、系统分析说明书 对上述调查和分析的结果采用图表描述的逻辑
模型进行适当的文字说明,就组成了系统分析说明书。
第二节 系统分析方法简介
系统分析的所有方法都是为实现系统分析的目标服务的。信息系统的分析方法,无论是面向数据流的结构化方法、还是面向对象的分析方法,其目标都是为了从不同层次、不同角度描述清楚企业的业务流程、数据流程和业务模型。
一、结构化分析 结构化分析关注数据通过业务和软件过程的流
程,又称为以过程为中心的。它可用下列等式表示:
数据流方法 = 数据(和控制)流十数据(和控制)转移十数据(和控
制)存储十终结符十过程小说明十数据字典
二、信息工程方法 信息工程法又称为信息建模方法,它关注系统
中存储的数据结构,而不是过程。它可用下列等式表示:
信息工程方法 = 对象十属性十关系十超类/子类十联合对象
三、功能分解方法 功能分解方法将问题域映射到系统所需要完
成的功能上,利用一些步骤和子步骤划分功能。即利用功能分解控制系统的复杂性,它可用下列等式表示:
功能分解方法 = 功能十子功能十功能界面
四、面向对象方法 面向对象方法不把信息系统看作数据和过程,
而是一组封装了数据和过程的对象。面向对象方法建立在信息模型和面向对象程序设计语言( OOPL )两个概念的基础上,其基本的思想是通过系统中最稳定(即那些对变化不敏感的部分)的方面(即对象)来刻划系统。
第三节 系统分析的主要工具
一、数据流程图 二、数据字典 基于数据流图对组成系统的各部分的含义并没有给
予必要的说明,为此,我们需要使用一种新的工具,对数据流图中的每一数据流、基本加工、文件及数据项等下一个“严格的定义”,所有这些定义条目按照一定次序汇集成册,以供系统开发的方方面面人员共同遵守使用,这就是数据字典。
数据词典的编写
建立数据词典的工作量很大,也相当烦琐。但这是一项必不可少的工作。数据词典在系统开发中具有十分重要的意义,不仅在系统分析阶段,而且在整个研制过程中以及今后系统运行中都要使用它。
数据词典可以用人工方式建立:事先印好表格,填好后按一定顺序排列,就是一本词典。也可以建立在计算机内,数据词典实际上是关于数据的数据库,这样使用、维护都比较方便。
数据词典中有六类条目:数据元素、数据结构、数据流、数据存储、处理、外部实体。
三、决策树
例如某销售公司关于折扣率的规定涉及三个条件:购货额、最近三个月无欠款、贸易时间超过 10年。这个规定用决策树可表示如下:
折扣率
无欠款 15%
≥购物款 5万元 ≥交易时间 10年 10%
扣款政策 有欠缺
≤购物款 5万元 交易时间<10年 5%
0%
图 4-2 决策树示例
课堂练习题
设产品出库量的计算方法是:当库存量大于等于提货量时,以提货量作为出库量;当库存量小于提货量而大于等于提货量的 5%时,以实际库存量作为出库量;当库存量小于提货量的5%时,出库量为 0 (即提货不成功)。请表示出库量计算的判定树。
四、决策表
表 4-1 某销售公司的折扣策略
条件组合
条件和行动
1 2 3 4 5 6 7 8
≥购物款 5万元 Y Y Y Y N N N N
最近三个月无欠款 Y Y N N Y Y N N
条
件 ≥交易时间 10年 Y N Y N Y N Y N
折扣率为 15% X X
折扣率为 10% X
折扣率为 5% X
行
动 折扣率为 0% X X X X
五、结构化语言
结构化语言是一种界于自然语言与计算机程序设计语言之间地一种语言,它根据结构化程序上级的思想,只使用 3种基本的结构:顺序结构、分支结构和循环结构,并且用极少词汇来描述这 3种结构。
1.祈使语句 2.判断语句 3.循环语句
示例
( 1 )年交易额在 5万或 5万以下,则不给予折扣;
( 2 )对于年交易额在 5万以上时:
如果无欠款,则给予 15% 的折扣;
如果有欠款,而且与本公司的交易关系在 20年以上,则折扣
为 10% ;
如果有欠款,而且与本公司交易关系在 20年以下,则折扣为
5% 。
订货折扣政策如下:
结构语句表示法
IF 购货金额在 5 万以上
THEN IF 最近 3 月无欠款
THEN 折扣率为 15%
ELSE IF 与公司交易 20 年以上
THEN 折扣率为 10%
ELSE 折扣率为 5%
ELSE 无折扣
第四节 业务流程分析
业务流程分析是在组织结构和业务功能分析的基础上将其细化,利用调查所得的资料将业务处理过程中的每个步骤,用一个完整的图形将其连接起来。在业务流程分析的过程中掌握业务的内容、作用及信息的输入、输出,数据存储和信息的处理方法及过程,并通过分析,发现问题,找出不足,对业务处理过程加以优化。
1.业务流程图的基本符号
业务处理单位 业务处理功能描述 表格/报表制作
收集/统计数据 数据/文件存档 信息传递过程
2.业务流程图的绘制
( 1 )系统环境的初步调查。 ( 2 )系统的可行性研究。 ( 3 )现行系统详细调查
课堂练习题
已知产品入库管理的过程是:从生产车间将制造出来的产品连同填写好的入库单一起送至仓库,仓库检验员首先进行产品质量与入库单检验,不合格的产品和入库单退回车间,而合格的产品由保管员进行产品入库处理,同时登记入库流水账。请根据入库管理的过程画出它的业务流图。
第五节 数据流程分析
数据流图( Data Flow Dingram , DFD )作为刻画数据流及其处理转换的工具,通过一些图形符号表述数据源、数据流向、处理转换等。
一 . 数据流图符
外部实体 处理过程
学生成绩表 订单
数据存储 数据流
图 4-5 四种数据流图符
教师 录入数据
二、数据流图绘制过程
1.数据流程图的构成 2.数据流程图的绘制方法 ( 1 )由外向内。 ( 2 )由项向下。 ( 3 )由左向右,合理布局。 ( 4 )合理命名及编号。 ( 5 )数据守恒。 ( 6 )父子平衡(一致)。
三、数据流图分析实例
图 4- 7 概括地描述了系统顶层的轮廓、范围,标出了最主要的外部实体和数据流。
图 4- 6 学籍管理系统的 1 层 DFD
图 4-9 P2“ 成绩管理”的展开
图 4-10 P2.3“ 成绩分析”的展开
课堂练习题
某银行储蓄所存(取)款过程如下: 储户将填好的存(取)单及存折送交分类处理处。
分类处理安三种不同情况分别处理。如果存折不符或存(取)单不合格,则将存折及存(取)单直接退还储户重新填写;如果是存款,则将存折及存款单送交存款处处理。存款处理处取出底帐登记后,将存折退还给储户;如果是取款,则将存折及取款单送交取款处理处,该服务台取出底帐及现金,记账后将存折与现金退给储户。从而完成存(取)款处理过程。试按此画出数据流程图。
第六节 基于UML的需求分析方法
一 .UML的产生 二、 UML的基本概念和特点 UML与程序设计语言是有区别的。 UML 的主要特点可归纳为以下几点: ( 1 )统一的标准。 UML已被 OMG接受为标准的建模语言,越
来越多的开发人员开始使用 UML 进行软件开发,越来越多的开发厂商开始支持 UML 。
( 2 )面向对象。 UML 是支持面向对象软件开发的建模语言。 ( 3 )可视化、表示能力强大。 ( 4 )独立于过程。 UML 不依赖于特定的软件开发过程,这也是
UML 能被众多软件开发人员接受的一个原因。 ( 5 )概念明确,建模表示法简洁,图形结构清晰,容易掌握和
使用。
三、UML的主要内容 UML 的定义包括语义和表示法两部。 UML提供了五
类 9种模型图: 第一类,用例图。用于静态建模。 第二类,静态图。包括类图、对象图、包图。用于静态建模。
第三类,行为图。包括状态图、活动图。用于动态建模。
第四类,交互图。包括顺序图、协作图。用于动态建模。
第五类,实现图。包括构件图、配置图。用于静态建模。
UML 中几种图之间的关系
需求
用例图
顺序图 合作图
类图(复杂的)
状态图
类图(简单的)
活动图
四、用例图
1.用例的定义 定义 1 :用例是对一个活动者( actor )使用
系统的一项功能时所进行的交互过程的一个文字描述序列。
定义 2 :用例是系统、子系统或类和外部的参与者( actor )交互的动作序列的说明,包括可选的动作序列和会出现异常的动作序列。
在 UML中,用例用一个椭圆表示,用例名往往用动宾结构或主谓结构命名(如果用英文命名,则往往是动宾结构)。 “在电子商务处理程序中, 填写订单” “是一个用例, ”处理业务也是一个用例,如图 4-12所示。
填写订单 处理业务
图 4-12 用例的例子
用例模型的组成元素
参与者(I con形式) 参与者(Label 形式) 用例
图 4-13用例图组成图标
<<Actor>>
Actor1
4.用例建模
图 4-15 销售管理系统的用例图
签定供销合同
促销方式
客户分析
销售情况统计
五、类图和对象图
1.类图的组成元素 在 UML 的类图中,在类图中,类用矩形来表
示,矩形又分为 3 个部分,分别是类名、类的属性和操作。其中,最上面是类名,中间是类的属性、属性的类型及其值,最下面是操作、操作的参数表和返回类型。
类名
属性
操作
Shape
Origin:Point
Size:Double
Count:int
move( )
resize( )
display( )
2.类的属性及描述 类的属性用来描述类所代表的事物的特性,
这些特性是所有的对象所共有的。此外,属性值也可以用来描述对象的状态。在 UML 中,属性的语法如下:
[ 可见性]属性名 [ :类型] [= 初始值 ][{ 特性 }]
3. 类的操作 操作( operation )用于修改、检索类的属
性或执行某些动作,操作通常也称为功能。类的操作是对该类的对象实例所做事务的抽象,相当于一个服务的实现 。在 UML 中,类操作的语法如下:
[ 可见性 ] 操作名 [ (参数列表) ][ :返回类型 ][{ 特性 }]
4.类之间的关系 一般说来,类之间的关系有:关联、依赖、聚集、组合、泛化等,下面将对这些关系进行详细说明。
( 1 )关联。关联( association )是模型元素间的一种语义联系,它是对具有共同的结构特性、行为特性、关系和语义的链( link )的描述。在类图中,关联用一条把类连接在一起的实线表示。
图 4-17类之间的关联关系 图 4-18类之间的单向关联关系
A B A B
( 2 )依赖关系。在 UML 中,依赖( dependency )用一个客体(使用服务依赖者)指向主体(提供服务的被依赖者)的虚箭头表示。
Schedul e类依赖于 Course类。
图 4-19 依赖关系
Schedule
Add(c: Course)
remove(c: Course)
Course
( 3 )泛化关系。泛化关系是一种一般事物和抽象事物间的分类关系,它表示父类与子类之间的继承关系,如果从面向对象程序设计语言的角度来说,类与类之间的泛化关系就是平常所说的类与类之间的继承关系。
UML 中用一头为空心三角形的连线表示泛化关系。在前面提到用例泛化表示中也提及该表示方法。多个泛化关系可以用箭头线组成的树型来表示,每一个分支指向一个子类。
( 4 )聚集和组合关系。聚集是一种特殊形式的关联。聚集表示类之间整体与部分的关系。组合关系是聚集关系中的一种特殊情况,是更强形式的聚集,它表示的也是类之间的整体与部分的关系,但组合关系中的整体与部分具有同样的生存期。
图 4-20聚集关系 图 4-21组合关系
学校
部门
采用了抑制属性和操作的类表示形式
接收地址
送货单
正文
5.对象图
对象是指与所涉及的应用问题有关联的事物,是对该事物的抽象描述。对象图所使用的符号与类图几乎完全相同,他们之间的不同点在于对象图只是类推实例,而不是实际的类,也就是说,一个对象图是某个类图的实例。
李敏:学生 张山:教师
性别;女 性别:女
出生年月:1982.9.20 出生年月:1960.5.8
专业:MIS 学历:硕士
班级:90021 职称:教授
授课:MIS
图 4-22 对象图示例
六、状态图
状态图的符号集包括四个基本元素:初始状态、转移、状态和终点。
在 UML 中,表示状态的矩形可分为 3 部分,分别是状态的名称(可以匿名)、内部转换和嵌套状态图 。
图 4-23 状态的图形符号
名称
内部转换
嵌套状态图
图 4-24 是一个项目申报书对象的状态图,它有四个状态:项目申请中、待审核、待批准、已批准。
提交
条件为假 审核
条件为假
条件为真
批准
条件为真
图 4-24 状态图示例
申报中
Do/修改
待审核
Do/批示
待批准
Do/批示
已批准
立项
条件
审核条件
七、活动图
1.活动图的构成元素 ( 1 )初始状态 ( 2 )终结状态
图 4-25 初始状态的符号 图 4-26 终结状态的符号
( 3 )活动 ( 4 )状态 ( 5 )转换
图 4-27活动的符号 图 4-28 转换的符号
支付
( 6 )分叉和汇合 如果要表示系统或对
象中的并发行为,则可以使用分叉( fork )和汇合( join )这两种建模元素。
分叉
汇合
图 4-29 分叉和汇合
购物流程
商品订单 信誉证书
客户购物结算单
( 7 )并发与同步 并发将多个可以同时执行的活动流分开,每个
并发可以有一个输入活动流和两个以上的输出活动流,每个活动流都是独立的。同步代表两个或多个并发控制流一同发生,当所有的活动流都达到同步点后,控制才能继续往下运行。每个同步可以有两个以上的输入活动流和一个输出活动流。并发与同步用一条加粗的线段表示。
2.泳道
在 UML 中,泳道用垂直的实线绘出,直线分隔的区域就是泳道。图 4- 30 带泳道的活动图
用户 系统界面 贷款 账户
取消 确认
填写申请表 申请贷款
更新显示信息
获得申请细节
确认
划入账户
贷款
返回余额
八、构件图
图 4-31 构件图
产品查询
<<DLL>>
nateng.dll
<<DLL>>
Dbacs.dll
产品查询
九、顺序图
图 4-32 表示了借书人借书用例的系统工作过程顺序图。
图 4-32 顺序图示例
十、协作图
1.协作图的概念 协作图用于描述相互合作的对象间的交互关系
和链接关系。 2. 协作图中的多对象 对象这个概念前面已多次提到,这里主要强调多对象和主动对象的概念。在协作图中,多对象指的是由多个对象组成的对象集合,一般这些对象是属于同一个类的。当需要把消息同时发给多个对象而不是单个对象的时候,就要使用多对象这个概念。
图 4-33 多对象 图 4-34 主动对象
:MOVE TeacherName:
ClassName
3. 建立协作图的步骤与示例 下面给出的步骤只是指导性的原则: ( l )确定交互过程的上下文( context )。 ( 2 )识别参与交互过程的对象。 ( 3 )如果需要,为每个对象设置初始特性。 ( 4 )确定对象之间的链( link ),以及沿着链的消息。 ( 5 )从引发这个交互过程的初始消息开始,将随后的每个消
息附到相应的链上。 ( 6 )如果需要表示消息的嵌套,则用 Dewey 十进制数表示
法。 ( 7 )如果需要说明时间约束,则在消息旁边加上约束说明。 ( 8 )如果需要,可以为每个消息附上前置条件和后置条件。
客户提货时的协作图示例
1:提货单 3:提货单正确
5:出库凭证 2:核对提货单
:客户 :库房管理员
4:发货记录
图 4-35 客户提货时的协作图示例
The Bill of Lading:
Bill of Lading
The Inventory:
Inventory
十一、基于UML与 EJB的分析实例
第七节 系统分析建模工具及其操作介绍 一、建模工具简介 在信息系统分析建模工
具中,目前常用的有微软的 Visio 和 Rational公司的 Rose 。
1. Visio 2. Rational Rose
二、 Visio 建模的基本操作
1.流程图绘制 图 4-37 Visio起始界面
图 4- 38 绘制业务流程图界面
2. 绘制数据流程图
进入如图 4- 39 所示的绘制数据流程图界面。
图 4- 40 绘制数据流程图界面
图 4-42 绘制学籍管理系统数据流图顶层的过程
3. UML 建模过程
图 4-44 UML 的绘图界面
图 4-45 绘制用例图的过程
第八节 系统分析报告的结构与内容
一、分析报告的结构 系统分析会产生大量的图表,为了使系统分析
报告清楚,便于不同人员查看、参考,系统分析报告一般分为正文和附录两部分。
正文主要阐述系统分析各工作环节的工作任务、内容、一般的原则和方法。
附录给出新系统逻辑模型的表述,包括各种表格、图等。
二、系统分析报告的主要内容
1.前言 前言是系统分析工作的大致描述,其中包括本次系统
分析的主要任务、设计依据、术语约定等。 2.现行系统概况 对详细调查做简单的描述,可以包括企业发展概况、
企业物理概况、生产经营概况、组织机构设置、企业流程调查情况、信息载体调查情况。
3.系统需求分析
4.数据模型设计 包括数据模型设计的原则、考虑的要点、公共
数据类的设计说明以及其他说明。 5.编码模型设计 阐述编码模型设计所采用的标准和原则、各编码对象以及编码原则、特殊编码,以及有关编码工作中需要注意的事项等。
6.子系统划分 7.新系统功能模型设计 8.其他 9.附录。
思考题
1.系统调查的目的是什么? 2.简述现行系统调查的主要内容。 3.电子商务系统需求分析包含哪些内容? 4.比较信息工程方法和功能分解方法的区别。 5. 什么叫数据词典 ? 它的内容包括哪些 ? 6.决策树有何作用 ? 7.决策表有何作用 ? 简述决策表的构成 . 8.业务功能用什么图表示?以自己熟悉的部
门为例画出其组织结构图。
9.业务流程分析的目的和内容是什么? 10.数据流程图有何作用?它与业务流程图的联系与区别在哪些方面?
11.简述数据流图的局限性。 12.某商场对每一批购入的商品根据“入库单”登记在“购入流水账”中,对每一批销售的商品根据“出库单”登记在“销售流水账”中。商品每天入库或出库后,要根据“购入流水账”和“销售流水账”,修改“库存台账”。商场每月将根据“库存台账”制作各种报表。请绘制该商场供销存管理的数据流图。
13.什么是统一建模语言?它有哪些优点?
14. UML 的作用是什么?它与程序设计语言有何区别? 15. UML提供了哪几种模型图?哪些用于静态建模,哪些用于动态建模?
16.什么是用例建模,它的组成元素有哪些? 17.什么是参与者,它有哪些类型,如何描述参与者? 18.什么是用例,它有哪些特征,如何确定用例,用例之间有什
么关系? 19.什么是类图,它的组成元素有哪些? 20.类的属性用来描述什么?写出其描述语法,并说明其含义。 21.类之间有哪些关系? 22.什么是对象图?它所使用的符号有哪些? 23.什么是状态图?它所使用的符号有哪些? 24.什么是活动图?它的构成元素有哪些?
25.如和表示分叉和汇合? 26.构件图有何作用?构件图中的构件和类
图中的类有何区别? 27.顺序图有何作用? 28.什么是协作图?它的建模元素有哪些? 29.简要说明协作图中多对象的概念。 30.协作图与顺序图有何区别与联系?