第三讲 数据库需求分析一、需求分析(针对一个应用系统)1.1 需求分析的基本任务
哪两大基本任务?
应用需求、数据需求
基本任务:
(应用需求:有哪些应用;数据需求:涉及哪些数据)
1.2 需求分析的基本方法
哪两大基本方法?
1、数据流程图 2、面向对象分析方法UML(用例图/类图/时序图/…)
1.3 需求分析的结果
最终结果是什么?
一套形式化的规范文档!
1.4 需求分析的其他任务
需求分析还应包含哪些工作?
任务还应包括:
这些工作,往往才是应用系统真正可用的关键!
二、数据流程图2.1 基本要素
数据流程图有哪些基本要素,用途?
特别说明:表示方法可用多种多样,甚至增加新的要素,但最重要的是给出对要素的注释(含义和作用)。
2.2 数据流程图
数据流程图要描述什么?
数据流程图(也称数据流图,date flow diagram , DFD)
数据流程图抽象地描述应用系统的业务模型(形式化建模)包含如下一些方面:
2.4 分层的数据流程图
什么是分层数据流程图,作用?
复杂的应用系统需要采用分层数据流程图分层来描述。
自顶向下,由粗到细
分层的数据流图示例(电子商务网站)
1)顶层数据流程图
用户购买商品、下定单,企业采购商品、保存、供货
顶层图(输入输出图,仅一张):把整个系统视为一个加工,并标出系统从外部对象接收哪些数据流和发送哪些数据流到外部对象。
2)0层数据流程图
(2个输入数据流,3个输出数据流)
0层图(顶层加工细化,仅一张):对系统的顶层加工进行细化,标出这些加工与外部对象和与这些加工的公共保存文件间的数据流向。
3)分层数据流程图
画分层数据流图(循环进行):把上层加工看作是由下层多个子加工形成的子系统,就象从0层图画出1层图一样,画出该加工的分层数据流程图
4)特别注意事项
上下层之间的一致性(接口吻合)!!
2.5 数据字典
数据流图表达了数据、处理过程、及相互作用关系抽象的拓扑结构
对流程图中外部对象、数据流、保存文件和加工等要素的详细描述必需借助数据字典(Data Dictionary)对其逐一描述。
数据字典包含内容:
2.6 数据字典示例
汽车订票系统
案例3:PPT16-21
(网上下载:,仅供参考了解数据字典文件大致的书写内容和描述格式)
三、UML类图的作用3.1 UML
*什么是UML,有哪些常用的UML图?
UML类图描述了什么?
UML
主要包括:
3.2 UML的示例
1)用例图
2)类图
特别指出:
数据流程图(传统方法)中的保存
文件和UML类图(面向对象方法),
是数据库需求分析的两种重要数据来源,是数据库设计的基础。
3)顺序图
四、数据库需求分析4.1 基本任务
它与需求分析有何不同?
与需求分析的不同
数据库需求分析的核心任务?
数据库需求分析的核心任务
4.2 数据库需求分析的其他任务数据约束数据访问频率数据访问安全数据可靠性数据响应效率,等。后者是保证数据库真正可用的关键!4.3 数据库需求分析人员应具备的能力
1、沟通能力:挖掘客户需求;
2、演讲能力:与客户、开发人员、测试人员达成一致;
3、逻辑思维能力:分析客户散乱的需求,解决问题;
4、原型设计能力:熟悉客户体验,使用设计工具,了解
开发过程或现有产品;
5、Office能力:输出需求规格说明书(word或excel);
6、团队工作能力;
……
特别注释:未必一定要是数据库技术专家!
一个数据库技术专家未必一定是一个优秀的数据库需求分析人员!
DFD其他图示
某银行储蓄所存(取)款过程如下:
储户将填好的存(取)单及存折送交分类处理处.分类处理处按三种不同的情况分别处理.如果存折不符或存(取)单不合格,则将存折及存(取)单直接退还储户重新填写.如果是存款,则将存折及存款单送交存款处理处.存款处理处取出底帐,登记后,将存折退还给储户;如果是取款,则将存折及取款单送交取款处,该服务台取出底帐及现金,记账后将存折与现金退还给储户,从而完成存(取)款处理过程.试按以上过程画出数据流程图.
1.简述数据库需求分析的任务
2.简述数据流程图&数据字典使用要点