4.3.2 结构化分析方法
结构化分析技术是20世纪70年代中期由E.Yourdon等人倡导的一种面向数据流的分析方法,结构化分析就是用数据流图、数据字典、结构化语言、判定表、判定树等工具,来建立一种新的称为结构化说明书的目标文档,其中结构化说明书就是需求规格说明书。
结构化分析(SA)方法是一种传统的需求建模方法,基本思想是按照由抽象到具体、逐层分解的方法,确定软件系统内部的数据流、变换的关系。如果一个系统很复杂,可将该系统分解成若干子系统,并分别以1、2、3等标识子系统,如果子系统仍然很复杂(例如子系统3),可再将其分解为3.1、3.2等若干个子系统,如此继续下去,直到子系统足够简单和易于理解为止。
1.结构化分析方法的特点
在结构化分析方法中,表达问题尽可能使用图形符号的方式,即使非计算机专业人员也易于理解。设计数据流图时只考虑系统必须完成的基本功能,不需要考虑如何具体地实现这些功能。
2.适用范围
SA方法适用于大型管理信息系统的需求分析,主要利用数据处理分析系统功能。
3.使用原型法进行需求分析的流程
SA方法的分析步骤如下:
(1)理解和分析当前的现实环境,以获得当前系统的具体模型。
(2)建立当前系统的逻辑模型。
(3)建立目标系统的逻辑模型。
(4)进一步完善目标系统的逻辑模型。
4.SA描述方法
用SA方法描述系统逻辑模型的方法有数据流图、数据字典、补充材料等。
(1)数据流图(DFD):一个软件系统的逻辑模型应能表示当某些数据输入到该系统,经过系统内部一系列处理(变换或加工)后产生某些逻辑结果的过程。DFD是描述系统内部处理流程、表达软件系统需求模型的一种图形工具,即描述系统中数据流程的图形工具。DFD有4个基本元素:
●源点和终点:源点和终点用于表示数据的来源和最终去向,通常用方框表示。
●数据流:由一组数据项组成的数据,通常用带标识的有向弧表示。
●加工:对数据进行的操作或变换称为加工,加工通常用圆圈、椭圆等表示。
●文件:存放数据的逻辑单位,在图形符号中还要给出文件名,文件的命名最好与文件中存放的内容相对应,文件名可等同于数据流名。
(2)分层的DFD:一套分层的数据流图由顶层、底层和中间层组成。
●顶层:用于注明系统的边界,即系统的输入/输出,整个系统只有一张。
●中间层:描述加工的分解,其组成部分可进一步分解。
●底层:由一些不能再分解的加工组成,称为基本加工,是指含义明确、功能单一的加工。
(3)数据词典:DFD虽然描述了数据在系统中的流向和加工的分解,但不能体现数据流和加工的具体含义。数据词典就是用于描述数据的具体含义和加工的说明,由数据词典和加工就可构成软件系统的逻辑模型。
数据词典是由DFD中所有元素的严格定义组成,为DFD中出现的每个元素提供详细的说明,即DFD中出现的每个数据流名、文件名和加工名,都在数据词典中有一个条目定义相应的含义,当需要查看DFD中某个元素的含义时,可借助于数据词典。数据词典中的条目类型如下:
●数据流条目:用于定义数据流。
●文件条目:用于定义文件,除说明组成文件的所有数据项外,还说明文件的组成方式。
●加工条目:用于说明加工,描述加工的处理逻辑或“做什么”。
(4)其他补充材料:定义各种输入/输出表格的形式,记录与修改文档相关的信息。
5.实体关联图
实体关联图亦称E-R图,用于描述系统的数据关系,使用实体关联图建立概念性的数据模型,是面向问题的、按照用户的观点对数据建立的模型,与软件系统中的实现方法无关。实体关联图主要由实体、属性、实体间的关联3个基本成分组成。
(1)实体:数据项(属性)的集合,通常用矩形框表示。
(2)属性:实体的性质,通常用椭圆或圆角矩形框表示。
(3)关联:实体之间相互连接的方式,用菱形框表示,用直线连接有关联的实体。关联确定了实体间逻辑上和数量上的联系,关联有如下3种类型:
●一对一关联(1∶1)。
●一对多关联(1∶N)。
●多对多关联(M∶N)。
在实体与关联之间的连线上用一个数字和文字表示是何种关联类型,关联也可有属性,E-R图使用简单的图形符号表达系统分析员对问题域的理解,不仅接近人的思维方式,而且具有较好的易理解性,可作为软件开发人员与用户的交流工具。E-R模型可以与数据词典相结合对属性进行详细定义,可通过实体间的关联关系发现遗漏和冗余的数据项等。