信息系统建模方法
周中元
(本文转载自软件工程专家网www.21cmm.com,不代表gigix观点)
大型信息系统通常十分复杂,很难直接对它进行分析设计,人们经常借助模型来设计分析系统。模型是现实世界中的某些事物的一种抽象表示。抽象的含义是抽取事物的本质特性,忽略事物的其他次要因素。因此,模型既反映事物的原型,又不等于该原型。模型是理解、分析、开发或改造事物原型的一种常用手段。例如,建造大楼前常先做大楼的模型,以便在大楼动工前就能使人们对未来的大楼有一个十分清晰的感性认识,显然,大楼模型还可以用来改进大楼的设计方案。
在信息系统中,模型是开发过程中的一个不可缺少的工具。信息系统包括数据处理、事务管理和决策支持。实质上,信息系统可以看成是由一系列有序的模型构成的,这些有序模型通常为:功能模型、信息模型、数据模型、控制模型和决策模型,所谓有序是指这些模型上分别在系统的不同开发阶段、不同开发层次上建立的。
信息建模方法介绍
模型的表示形式可以是数学公式、缩小的物理装置、图表文字说明,也可以是专用的形式化语言。模型建立的思路有两种:自顶向下、逐步求精和自底向上、综合集成。
模型的目标即模型研究的目的,知识是指现实系统的知识和模型构造知识,数据是指系统的原始信息,这三方面构成了建模过程的输入。模型构造是具体的建模技术的运用过程。可信性分析是指分析所建模型能否满足系统目标。
信息系统模型的表现形式与普通系统模型是有区别的。描述信息系统模型最常见的方法是形式化描述和图示化描述。形式化描述方法非常精确、严谨,易于系统以后的实现,但难以掌握和理解,模型可读性差,往往只有专业人员才会使用,因而难于推广。图示化方法直观、自然,易于描述系统的层次结构、功能组成,且简单易学,通常还有工具软件支持,因而成为信息系统的主要描述工具,但这种方法的精确性和严谨性不够。
信息系统的建模方法可以分为:面向过程的建模、面向数据的建模、面向信息的建模、面向决策的建模和面向对象的建模五种。
面向过程的建模方法是把过程看作系统模型的基本部分,数据是随着过程而产生的。最有影响的面向过程的设计方法是Yourdon设计法。
面向数据的建模方法把模型的输入输出看成是最为重要的,因此,首先定义的是数据结构,而过程模块是从数据结构中导出的,即功能跟随数据。最有影响的面向数据的设计方法是Jackson设计法。
面向信息的建模方法与面向数据建模方法的区别就是信息和数据的区别。信息和数据都是信息系统中最基本的术语,数据是指记载下来的事实,是客观实体属性的值,而信息是构成一定含义的一组数据。面向信息建模方法是从整个系统的逻辑数据模型开始的,通过一个全局信息需求视图来说明系统中所有基本数据实体及其相互关系,然后,在此基础上逐步构造整个模型,信息模型记录系统运作所需的信息实体,如:人员,地点,事物,观念等,为分析现行系统提供信息的图形化表示。数据建模的目的是设计和实现满足系统信息需求的数据库结构,即数据建模支持系统设计。
决策支持系统由数据库、模型库和各自的管理系统组成。决策支持系统模型需要反映的问题是系统的决策制订原则和机理、系统的组织机构和人员配置。通过对决策系统的建模,企业的领导可以对企业有一个细致的了解,从而发现其中问题。如组织结构臃肿,职权划分不清,权力范围不合理等,据此进行相应的改革。比较成熟的决策支持系统建模方法有Petri网和GRAI法。
面向对象的分析方法是利用面向对象的信息建模概念,如实体、关系、属性等,同时运用封装、继承、多态等机制来构造模拟现实系统的方法。传统的结构化设计方法的基本点是面向过程,系统被分解成若干个过程。而面向对象的方法是采用构造模型的观点,在系统的开发过程中,各个步骤的共同的目标是建造一个问题域的模型。在面向对象的设计中,初始元素是对象,然后将具有共同特征的对象归纳成类,组织类之间的等级关系,构造类库。在应用时,在类库中选择相应的类。
IDEF方法族介绍
IDEF的含义是集成计算机辅助制造(IntegratedComputer-AidedManufacturing,ICAM)DEFinition。最初的IDEF方法是在美国空军ICAM项目建立的,最初开发3种方法:功能建模(IDEF0)、信息建模(IDEF1)、动态建模(IDEF2),后来,随着信息系统的相继开发,又开发出了下列IDEF族方法:数据建模(IDEF1X)、过程描述获取方法(IDEF3)、面向对象的设计(OO设计)方法(IDEF4)、使用C++语言的OO设计方法(IDEF4C++)、实体描述获取方法(IDEF5)、设计理论(rationale)获取方法(IDEF6)、人-系统交互设计方法(IDEF8)、业务约束发现方法(IDEF9)、网络设计方法(IDEF14)等。根据用途,可以把IDEF族方法分成两类:
第一类IDEF方法的作用是沟通系统集成人员之间的信息交流。主要有:IDEF0、IDEF1、IDEF3、IDEF5。IDEF0通过对功能的分解、功能之间关系的分类(如按照输入、输出、控制和机制分类)来描述系统功能。IDEF1用来描述企业运作过程中的重要信息。IDEF3支持系统用户视图的结构化描述。IDEF5用来采集事实和获取知识。
第二类IDEF方法的重点是系统开发过程中的设计部分。目前有两种IDEF设计方法:IDEF1X和IDEF4。IDEF1X可以辅助语义数据模型的设计。IDEF4可以产生面向对象实现方法所需的高质量的设计产品。
下面简单介绍几种主要IDEF族方法。
IDEF1信息建模方法
IDEF1方法的作用是在需求分析时对所建系统的信息资源进行分析和交流。IDEF1通常用来:(1)确定组织中当前管理的是什么信息,(2)对需求分析过程中发现的问题确定哪些是由于缺乏合适的信息引起的,(3)指定在TO-BE实施中,哪些信息需要管理。
从IDEF1的角度看信息系统,它不但包括自动化系统的成分,也包括非自动化的成分,如人员,文件柜,电话等等。与数据库设计方法不同,IDEF1是分析以下问题的一种方法:
企业信息的采集、存储和管理;
信息的管理规则;
企业内信息之间的逻辑关系;
缺乏良好的信息管理导致的问题。
IDEF1使用简单的图形约定来表达复杂的规则集合。这些规则有助于建模者区分(1)现实世界的对象,(2)现实世界对象之间的物理或抽象的联系,(3)现实世界对象的信息管理,(4)用来表示信息的需求、应用和管理的数据结构。IDEF1的目标之一就是为信息分析提供一个结构化的、规程化的方法。IDEF1可以减少建模过程中的不完整性、不精确性、不一致性和不准确性。
IDEF1是描述企业信息需求的一个有效方法。IDEF1建模奠定了数据库设计基础,给出了信息结构定义,提供了反映基本信息需求的需求说明。IDEF1使用规程化的、结构化的技术以找出一个组织所使用的信息和业务规则。IDEF1要求信息用户积极参与,使用户认真思考信息如何使用和管理。最后,信息模型在企业的整个生命周期均有用的。
IDEF3过程描述获取方法
IDEF3为收集和记录过程提供了一种机制。IDEF3以自然的方式记录状态和事件之间的优先和因果关系,办法是为表达一个系统、过程或组织如何工作的知识提供一种结构化的方法。IDEF3可以:
记录在调研过程中产生的原始数据;
确定信息资源在企业的主要业务流程中的作用;
记录决策过程,特别是关于制造、工程和维修的产
品定义数据的决策过程;
管理数据配置和更改控制策略定义;
进行系统设计和分析;
提供模拟模型。
IDEF3描述现有系统或建议系统的行为方面内容。IDEF3作为描述系统直觉知识的工具,获取的过程知识是结构化的。IDEF3还记录了所有时间性的信息,包括与企业处理过程相关的优先和因果关系。IDEF3描述的结果是为分析和设计模型提供一个结构化的知识库。与构造预测性的数据模型的模拟语言(如SIMAN,SLAM,GPSS,WITNESS)不同,IDEF3构造一个结构化的描述。这些描述获取关于系统实际运作什么或将要做什么,同时提供该系统的不同用户的视图表示。
IDEF3有两种描述方式:过程流和对象状态转变网络。IDEF3过程流描述过程以及过程之间的关系网络,描述"如何做"的知识,如描述一个部位在制造过程中发生的情况。这些过程间的关系是在整个业务流程中产生的,描述的目的是说明事物是如何运作的。
IDEF4面向对象设计方法
在美国空军Armstrong实验室倡导下开发的IDEF4方法可以应用于使用面向对象技术的应用中。IDEF4是由专业的面向对象的设计人员和编程人员开发的,选择IDEF4方法的最重要的原因是它把面向对象的设计看作是大系统开发框架的一部分,而不是把面向对象的设计和分析相隔离。IDEF4强调在面向对象的设计过程中的图形化语法,使用图形化语法和图示有助于对重要的设计事件进行集中和交流。
IDEF4与其他对象设计方法有明显的区别,最主要的是它支持"最小委托(leastcommitment)"策略,支持在类继承、对象组成、功能分解和多态方面的设计评估。
IDEF4把面向对象的设计活动划分成离散的、可管理的大块。每个子活动由一个强调设计决策的图形化语法支持。IDEF4方法很容易让设计者在设计类继承、类组成、功能分解和多态之间作平衡。IDEF4更是一个图形化的语法,它为运用和发展面向对象的设计提供了一个一致的框架,而这一设计最终是由类不变数据清单和方法集约定描述的。
一个IDEF4模型由两个子模型组成:类子模型和方法子模型。两个子模型通过一个调度映射连接。这两个结构描述设计模型中的所有信息。
类子模型由下列类型的图示组成:(1)定义类继承关系的继承图示;(2)定义类组合的类型图示;(3)定义方法调用规约的规约图示;(4)描述对象例示流程的例示图示,这些例示流程有助于设计者对设计进行核查。
方法子模型由下列两个图示类组成:(1)按照行为相似性区分方法类型的方法分类学图示和(2)为功能分解,说明方法的客户和提供者的客户图示。
IDEF5实体论(Ontology)描述获取方法
实体论历史上起源于形而上学这一哲学分支,主要研究客观世界的本质。传统的实体论研究目的是将客观世界进行分割以发现其基本组成成分。自然科学提供了关于实体论研究的一个极好范例。例如,原子物理学将现实世界的物质作了最基本的分类(如质子、电子、中子),生物科学将地球上各种生物进行分类描述。
IDEF5方法是一种具有扎实的理论和实践基础的方法,用于实现实体的建立、修改和维护。该方法所提供的标准化的过程,直观自然的表现能力,高质量的结果,有助于降低开发的成本。
实体分析由三个过程来实现,即用于描述某领域特定对象和过程的词汇集,开发该词汇集中基本术语的定义,刻画术语间的逻辑联系。
实体由三部分组成,它们是某一领域使用的术语集、术语使用规则、推论。在每个领域有很多自然现象,人们用对象(概念的或物理的)、状态和联系加以区别,不同的语言对这些现象有不同的表达方式。在实体论中,"关系"是对客观世界中的联系进行确定的描述,"术语"是对客观世界对象或状态进行确定的描述。
在构造实体时,试图将这些描述进行归类,建立某特定领域的表达模型(比如数据字典)。构造一个实体需要以下三步工作:(1)将术语分类,(2)寻找术语的约束关系,(3)建立模型,该模型能将给定的描述语句变成"恰当"的表达。所谓"恰当"具有两方面的含义,首先,在通常情况下输入一种描述语句可能会产生大量的输出语句,而实体模型只生成在上下文中有用的子集;其次,生成的描述语句表达实际的情况。我们称该模型包含被认可的推理。也可以说模型刻画了对象的行为和该领域的联系。由此看来,实体与数据字典非常相似,所不同的是实体同时包括了语法和领域的行为模型。