结构化分析(Structured Analysis; SA)
目录 |
结构化分析是指20世纪70年代末,由Demarco等人提出的,是面向数据流进行需求分析的方法,旨在减少分析活动中的错误,建立满足用户需求的系统逻辑模型。结构化分析的要点是:根据软件内部数据传递、变换的关系,采用自顶向下,逐层分解的方法,经过一系列分解和抽象,建立系统的逻辑模型。结构化体现在将软件系统抽象为一系列的逻辑加工单元,各单元之间以数据流发生关联。
结构化分析方法给出了一系列帮助系统分析人员产生功能规约的原理与技术。它一般利用图形表达用户需求,使用数据流图、数据字典及描述加工逻辑的结构化语言、判定表和判定树等工具来建立一种结构化的目标文档和需求规约说明书。
1、数据流图
描述系统由哪几部分组成,各部分之间有什么联系。
2、数据字典
定义了数据流图中每一个图形元素。
3、结构化语言、判定表、判定树
详细描述数据流图中不能被再分解的每一个加工。
结构化分析方法是通过对用户的调查,以软件的需求为线索,获取当前系统的具体模型;去掉具体模型中非本质因素,抽象出当前系统的逻辑模型;并将分析的结果用图形表示,方法简单,易于掌握和使用,是一种行之有效的方法。但它也具有一定的局限性,主要表现在:
(1)结构化分析方法要求对系统有完整确切的需求定义,这是非常困难的。
(2)结构化分析方法需要书写大量的文档,随着分析的深入,这些文档需要及时进行更新,即使在工具的辅助下,仍有一定的难度。
(3)结构化分析方法描述的模型仅仅是书面的,因此该方法的人机界面表达能力差,很难使从中及时地获得用户的反馈信息。