文档介绍:第三章 需求分析
需求分析概述
结构化分析方法
加工逻辑的分析与表达
原型技术
需求验证与评审
第1页,共89页。
意义:
软件需求的深入理解是软件方法:
结构化分析方法的实质是着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为主要工具,建立系统的逻辑模型。
结构化分析的步骤如下:
①通过对用户的调查,以软件的需求为线索,获得当前系统的具体模型:
②去掉具体模型中非本质因素,抽象出当前系统的逻辑模型:
③根据计算机的特点分析当前系统与目标系统的差别,建立目标系统的逻辑模型
④完善目标系统并补充细节,写出目标系统的软件需求规格说明;
⑤评审直到确认完全符合用户对软件的需求。
第20页,共89页。
3 数据流图的绘制
数据流图(Data Flow Diagram,简称DFD)描绘系统的逻辑模型,是结构化系统分析的主要工具。数据流图(DFD)是描述软件系统中数据处理过程的一种有力的图形工具。
第21页,共89页。
画数据流图步骤
1、首先画系统的输入输出,即先画顶层数据流图。顶层流图只包含一个加工,用以表示被开发的系统,然后考虑该系统有哪些输入数据,这些输入数据从哪里来;有哪些输出数据,输出到哪里去。
2、画系统内部,即画下层数据流图。一般将层号从0开始编号,采用自顶向下,由外向内的原则。
第22页,共89页。
注意事项
1、命名。不论数据流、数据存储还是加工,合适的命名使人们易于理解其含义。
2、一般不画物质流。数据流反映能用计算机处理的数据,并不是实物,因此对目标系统的数据流图一般不要画物质流
3、父图与子图的平衡。子图的输入输出数据流同父图相应加工的输入输出数据必须一致,此即父图与子图的平衡。
第23页,共89页。
3、局部数据存储。当某层数据流图中的数据存储不是由图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。
4、提高数据流图的易理解性。注意合理分解,要把一个加工分解成几个功能相对独立的子加工,这样可以减少加工之间输入、输出数据流的数目,增加数据流图的可理解性。
第24页,共89页。
描述银行取款过程的数据流图
第25页,共89页。
数据流图的层次结构
为了表达数据处理过程的数据加工情况,需要采用层次结构的数据流图。按照系统的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系,能清楚地表达和容易理解整个系统
第26页,共89页。
分层的数据流图
第27页,共89页。
在多层数据流图中,顶层流图仅包含一个加工,它代表被开发系统。它的输入流是该系统的输入数据,输出流是系统所输出数据
底层流图是指其加工不需再做分解的数据流图,它处在最底层
中间层流图则表示对其上层父图的细化。它的每一加工可能继续细化,形成子图。
第28页,共89页。
结构化分析方法步骤示例 商店业务处理系统
第29页,共89页。
这个数据流图只是一个高层的系统逻辑模型,它反映了目标系统要实现的功能
数据流图绘制步骤
首先确定系统的输入和输出
根据商店业务,画出顶层数据流图,以反映最主要业务处理流程
第30页,共89页。
经过分析,商店业务处理的主要功能应当有销售、采购、会计三大项。主要数据流输入的源点和输出终点是顾客和供应商。
然后从输入端开始,根据商店业务工作流程,画出数据流流经的各加工框,逐步画到输出端,得到第一层数据流图
第31页,共89页。
第一层数据流图
第32页,共89页。
加细每一个加工框 销售细化
第33页,共89页。
采购细化
第34页,共89页。
检查和修改数据流图的原则
数据流图上所有图形符号只限于前述四种基本图形元素
数据流图的主图必须包括前述四种基本元素,缺一不可
数据流图的主图上的数据流必须封闭在外部实体之间
每个加工至少有一个输入数据流和一个输出数据流
第35页,共89页。
在数据流图中,需按层给加工框编号。编号表明该加工所处层次及上下层的亲子关系
规定任何一个数据流子图必须与它上一层的一个加工对应,两者的输入数据流和输出数据流必须一致。此即父图与子图的平衡
可以在数据流图中加入物质流,帮助用户理解数据流图
第36页,共89页。
图上每个元素都必须有名字
数据流图中不可夹带控制流
初画时可以忽略琐碎的细节,以集中精力于主要数据流
第37页,共89页。
4 数据词典
数据字典(Data Dictionary)是关于数据的信息的集合,通过数据字典对数据流程图中的各个元素作精确的定义与说明。它是数据流图的补充工具。
数据词典与数据流