1
 软件工程
1.5.3.1 3.3.1 结构化分析模型

3.3.1 结构化分析模型

软件的结构化分析模型通常是由一组模型组成的,其中包括数据模型、功能模型和行为模型。目前有两种主要的建立分析模型的方法:一种方法是结构化分析模型,这是传统的建模方法,将在本节进行描述;另一种方法是面向对象分析模型,将在后面章节进行详细介绍。

结构化分析模型的组成结构如图3-1所示,可以看出模型的核心是数据字典(Data Dictionary,DD),这是系统所涉及的各种数据对象的总和。从数据字典出发主要通过3个模型来构建结构化分析模型(见图3-1)。

img15

图3-1 结构化分析模型的组成结构

(1)实体联系图(Entity Relation Diagram,ER图):用于描述数据对象间的关系、构建软件的数据模型,在实体关系中出现的每个数据对象的属性均可用数据对象进行说明描述。

(2)数据流图(Data Flow Diagram,DFD):其主要作用是指明系统中数据是如何流动和变换的,以及描述数据流是如何进行变换的。在DFD中出现的每个功能都会写在加工说明(Process Specification,PSPEC)中,它们是构成系统的功能模型。

(3)状态转换图(Status Transfer Diagram,STD):用于指明系统在外部事件的作用下将如何动作,表明系统的各种状态及各种状态间的变迁。所有软件控制方面的附加信息包含在控制说明(Control Specification,CSPEC)中,它们构成系统的行为模型。

早期的结构化分析模型只包括DD、DFD和PSPEC,主要描述软件的数据模型与功能模型。一方面,随着软件开发技术的不断发展,软件系统要去满足用户更多、更复杂的数据信息要求,在数据建模时,人们将数据库设计方面的ER图用于结构化分析,以描述包含较复杂的数据对象和信息模型。另一方面,随着计算机实时系统应用的不断拓展,在分析建模过程中,由实时发生的事件来触发控制的数据加工,无法用传统的DFD来表示。因此在功能模型之外还扩充了行为模型,用控制流程图(Control Flow Diagram,CFD)、CSPEC和STD等工具来描述。