首页 百科知识 结构化分析的步骤

结构化分析的步骤

时间:2022-10-09 百科知识 版权反馈
【摘要】:第二步,软件分析人员在顶层数据流图的基础之上,结合目前对软件需求的理解,运用“自顶向下,逐层细化”的思想将顶层数据流图进行分解,得到系统的L1层数据流图,他们继续采用逆向的数据流图回溯方式来确认数据流图,主要对话如下:软件分析人员:“订货报表”由处理“产生报表”生成,该处理要读取一个暂存文件“订货信息”,从而汇总得到“订货报表”,这个业务流程可以吗?

3.2.3 结构化分析的步骤

若以正向需求分析方法为主,则结构化分析的主要步骤可归纳如下:

◇寻找软件系统的数据源点和数据终点,得到数据流图的外部实体。

◇根据系统需求,逐个分析出细化的数据处理。

◇分析联系数据处理的中间数据流和数据存储文件,完成本层次的数据流图设计。

◇对有“数据中心”特点的数据处理进行逐层细化,得出它的数据流图子图,重复此步,直到所有复杂处理均细化到最底层。

简而言之即16个字:“自外向内、自顶向下、逐层细化、完善求精。”当然,作为对正向需求分析方法的补充和强化,逆向的需求分析及需求回溯可作为一种非常有用的需求分析补充手段,对每层数据流图分别进行回溯,弄清所有数据的来源,纠正错误的需求,弥补遗漏的需求。

下面以仓库订货系统为例详细说明如何进行数据流图回溯,本书采用软件分析人员与用户“对话”的方式来描述回溯过程的执行,以深刻揭示逆向需求分析方法的本质。

img22

图3.7 仓库订货系统的顶层数据流图

第一步,软件分析人员设计出目标系统的顶层数据流图,依据顶层流图与用户进行对话:

软件分析人员:请问订货报表中包含了哪些数据项

用户:现有的纸质订货报表中主要包括:零件编号、零件名称、订货数量、目前价格、主要供应商和次要供应商等数据信息,它是采购员商品采购的重要依据。

软件分析人员:请问订货报表从何处来?

用户:目前采用手工生成订货报表的方式,每天生成一张报表。即在每天仓库收工之前2个小时,由仓库管理员盘点当前仓库的货品情况,若某种商品的库存量小于其预设的阈值,即形成该商品的订货信息,最后分类汇总在一张日订货报表中,同理也可生成周订货报表或月订货报表。

软件分析人员:哦,问题比较清楚了,若采用软件系统来管理仓库订货,该软件就应该自动打印生成每日的“订货报表”。而“订货报表”的每个数据项主要是读取系统的“库存清单”时获取的。

用户:不错。

第二步,软件分析人员在顶层数据流图的基础之上,结合目前对软件需求的理解,运用“自顶向下,逐层细化”的思想将顶层数据流图进行分解,得到系统的L1层数据流图,他们继续采用逆向的数据流图回溯方式来确认数据流图,主要对话如下:

img23

图3.8 仓库订货系统的L1层及其回溯过程

软件分析人员:“订货报表”由处理“产生报表”生成,该处理要读取一个暂存文件“订货信息”,从而汇总得到“订货报表”,这个业务流程可以吗?

用户:不错,现有的手工处理系统就是这样的业务流程!

软件分析人员:继续回溯。“订货信息”存储文件为“产生报表”处理提供数据,那么它必然包含了组成“订货报表”所需的所有数据项——零件编号、零件名称、订货数量、目前价格、主要供应商和次要供应商。

用户:是的。

软件分析人员:继续回溯。“订货信息”的数据项由处理“处理事务”提供,其中零件编号、零件名称、目前价格应该是“处理事务”读取“库存清单”获取,因为这些信息是一种静态数据,它们应该被存放在相对静态的数据存储文件中。而“订货数量”却是一个动态结果,应该通过计算生成,而这个数据的计算细节应该在下一层数据流图中体现,本层暂不关心。

用户:不错,目前的手工处理系统需要处理“出库”和“入库”两种事务,然后更新库存清单,若发现某种商品缺货之后,仓库管理员要立刻记录下来,以便汇总,形成“订货报表”。

软件分析人员:继续回溯。回溯到“库存清单”这个存储文件,请问它的数据组成是什么?

用户:库存清单包括零件编号、零件名称和目前价格三个数据项构成。

软件分析人员:回溯过程中发现问题了!那就是“主要供应商”和“次要供应商”的信息未找到其数据来源。

用户:目前的手工处理系统中还有一张“供应商信息”报表,仓库管理员在汇总生成最后的“订货报表”时会查询该“供应商信息”报表,将“主要供应商”和“次要供应商”信息一并填写进去。

软件分析人员:哦,问题很清楚了,在L1层图中遗漏了一个存储文件“供应商信息”,由它向处理“产生报表”提供供应商的基本信息。

用户:是的。

所以,软件分析人员修改经过回溯检查的新的L1层数据流图如下,此时的数据流图已经经过用户的确认。

img24

图3.9 修改后的仓库订货系统的L1层数据流图

上述问题的回溯是基于一个假设:在“库存清单”中未包含供应商信息,即假设软件分析人员遗漏了部分需求,导致数据流图的不完整。而L2层的回溯,请同学们作为课后作业独立完成,在此不再赘述。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈