1
 软件工程
1.9.1.5 7.1.5 建立功能模型

7.1.5 建立功能模型

功能模型描述了系统内的“功能”性质,说明系统发生了什么,因此更直接地反映了用户对目标系统的需求。功能模型表示系统内的计算过程中如何根据输入值推导出输出值,而无须考虑其计算值的次序。功能模型不仅说明了在对象模型中操作的意义和在动态模型中的动作,而且说明了在对象模型中的约束。

功能模型由一组数据流图组成。在面向对象分析方法中为动态模型的每个状态画数据流图,可以清楚地说明与状态有关的处理过程。在建立系统对象模型和动态模型的基础上,分析其处理过程,将数据和处理结合在一起而不是分离开来。这就是面向对象分析的独特之处。数据流图的处理对应于状态图中的活动或动作,数据流对应于对象图中的对象或属性。

1.建立功能模型的步骤

建立功能模型的步骤是:确定输入/输出值,画数据流图。

(1)确定输入/输出值。

数据流图中的输入/输出值是系统与外部之间进行交互的事件的参数。

(2)画数据流图。

前面已经介绍了数据流图的画法,本节结合小型教务管理系统中的成绩管理部分再复习一遍有关数据流图的概念和画法。成绩管理数据流图如图7-9所示。

img126

图7-9 成绩管理数据流图

2.数据流图的基本元素

数据流图主要有四个基本元素,即数据流、数据处理、数据存储和外部实体。

1)数据流

数据流表示在计算和数据处理中的中间数据值,常用箭头表示数据流,箭头方向表示数据流向,数据流名称标在数据流线上。数据流由一组数据项组成,在数据流图中只有其名称,所以应尽量准确地给数据流命名。

2)数据处理

数据处理是对数据进行处理的单元,是在对象类上操作方法的实现。数据处理常用包含其名称的椭圆表示,一般用于完成对数据的计算或数据值的转换。

3)数据存储

数据存储由若干数据元素组成,用于表示处于静止状态的数据,如数据库文件。数据存储可用一段平行线或一个右边开口的方框和一个箭头表示,输入箭头表示要写入文件,即要修改现有文件的内容;输出箭头则表示从存储文件中检索并读出数据。

4)外部实体

系统之外的实体称为外部实体,可以是人、物或其他软件系统。对系统提供数据流的外部实体称为数据源点,接收系统输出数据流的外部实体称为数据终点。源点和终点可以是同一个外部实体。外部实体的实际结构必须在对象模型中描述,同时具有修改描述和允许访问操作。

功能模型中所有的数据流图往往形成一个层次结构。在这个层次结构中,一个数据流图中的过程可以由下一层的数据流图做进一步的说明。一般来讲,高层的过程代表作用在组合对象上的操作,而低层的过程则代表作用于一个简单对象上的操作。