自1990年以来,我国已完成了数十个CIMS应用工程项目,取得了明显的社会经济效益。
但是,企业不同,实施CIMS工程的规模、系统组成、体系结构、实现途径及运行模式等差异很大。因此,企业实施CIMS必须针对自己的实际,设计CIMS工程系统。由于CIMS工程的复杂性,设计开发工作量很大,很少有企业能完全按既定计划取得预期效益。欧洲人统计,他们实施CIMS工程的企业只有25%能达到预期目的。在国内,立项的 CIMS应用工程多数拖期,设计开发效率很低,见效慢,收益低。导致这种状况的重要原因之一是CIMS工程太复杂,且在设计开发过程中又缺少一套先进的设计方法和工具。
1 CIMS应用工程开发过程的问题分析
对CIMS这种大型复杂系统,应该采用生命周期法进行系统设计和实施[1]。按生命周期法,CIMS开发过程主要分为以下几个阶段:①可行性论证;②初步设计;③详细设计;④实施;⑤运行和维护。
1.1 在CIMS总体设计中存在的问题
在CIMS设计过程中,系统需求分析、初步设计和详细设计阶段均产生大量的文档资料。目前,在CIMS开发过程中存在较严重的问题是:
(1)CIMS分析和设计两个阶段工作脱节,形成“分析一堆纸,设计又一堆纸”的现象,分析成果未得到很好的利用,甚至是完全丢弃,设计阶段工作又从头开始。这不仅造成CIMS前期工作成果的极大浪费,更为严重的是,由于设计脱离分析结果,设计结果偏离实际需要,从而导致CIMS实施结果和预期目标之间的偏离。
(2)CIMS的一些规范要求过于烦琐,有的甚至是不必要的。为了应付评审,在设计过程中,有的敷衍了事,结果更助长了这种脱节。
(3)由于所用的设计方法本身存在弱点并缺少有效的工具支持,很难保证设计质量,工作效率低下,造成拖期。
1.2 CIMS应用工程的设计方法存在问题分析
我国863/CIMS应用工程在总结经验的基础上,已提出了一整套工程实施规范,并建议用IDEF0方法进行功能建模,用 IDEF1X进行信息建模,也初步开发出了相应的工具软件[2]。应该说,这些在我国CIMS 应用示范工程中已发挥了重要作用。
IDEF0和IDEF1X都是作为标准而使用的方法,IDEF0是一种基于功能分解的单元建模技术,描述了系统的功能活动及其联系;IDEF1X描述信息及其联系,用来产生一个描述该环境中信息、结构与语义的信息模型,作为数据库设计的依据。IDEF1X的构件是实体、联系和属性。但是,由于IDEF0和IDEF1X自身存在的缺点,同时使用这两种不同的模型,可导致CIMS分析阶段和设计阶段过程脱节等诸多问题:
(1)IDEF0方法缺乏从分析向设计过渡的完善的机制,通常用IDEF0方法得到的分析结果不能很方便地过渡到实施,容易造成分析阶段创建的文档在实施阶段被抛弃,造成人力、物力资源的严重浪费;
(2)由于未建立IDEF0和IDEF1X之间的联系,使得IDEF0的分析结果不能在IDEF1X中得到很好地利用,分析设计人员用IDEF1X建立信息模型时只能凭经验和想象力进行,而抛弃了IDEF0的分析结果。同样造成了前期分析阶段工作的浪费,以及建模和实际需要的偏离;
(3)由于未建立IDEF0和IDEF1X之间的联系,使开发支持IDEF0和IDEF1X集成的CASE工具异常困难,因而需要分别建立功能模型和信息模型,而很少考虑它们之间的相互支持(或不支持),从而容易形成脱节和多余的数据接口;
(4)IDEF0本身缺少从全局上对功能分解机制的宏观控制,使得在进行功能分解过程中随机地加上了各种限制条件。为了适应建模技术的要求,可能得到多于实际业务需求的建模结构;
(5)IDEF1X是基于分步方法建模的:①建立ER图;②定义主键和外键;③向模型中添加非键属性。其目的是建立一个标准化的数据模型,结果使定义实体属性的工作一直推迟到建模的最后阶段,不仅推迟了对数据模型的属性的注意,还导致了模型的随机性和不稳定性。
(6)IDEF0和IDEF1X都不能很好地描述系统的动态特性,导致CIMS分析和设计结果的片面性。
针对以上问题,我们提出了一个集成的解决方案——I2DEF。
2 用集成方法解决在CIMS分析和设计中存在的问题
2.1 解决上述问题的基本思路
若解决上述问题,必须采取以下原则:
(1)找出IDEF0和IDEF1X之间的必然的联系,将二者有机地结合为一个整体,并使二者表示方法一致,使分析阶段顺利地过渡到设计阶段,以消除分析结果的浪费;
(2)在建立IDEF0和IDEF1X之间联系的基础上,开发一个实用性的CASE工具;
(3)基于系统树和功能树思想,建立一个系统/功能分解树,以实现对IDEF0功能分解过程的宏观控制;
(4)用IDEF0的分析结果得出IDEF1X的实体,以解决IDEF1X由于建模顺序问题带来的实体、实体间关系和实体属性、键值的确定问题;
(5)在模型中加入可以反映系统随时间变化的动态模型部分,实现动态建模。
2.2 I2DEF方法简介
鉴于以上原则,我们提出了一套新的面向大型复杂系统分析设计的集成化IDEF方案,称之为I2DEF(Integrated IDEF)。该方法以OMT(Object-Oriented Modeling Technology)方法的三种模型为框架,充分吸收OMT、OOSE、OOA/OOD(Object-oriented Analysis/Design)、UML(Unified Modeling Language)等方法的优点,将IDEF0、IDEF1X、IDEF3(动态模型)和IDEF4(面向对象模型)方法有机地集成,使这几种方法既能发挥其各自的优点,又紧密地结合在一起,共同为系统建模服务。
该方法定义了三种模型:结构模型(包括系统树、功能树和IDEF1X的全部内容);动态模型(包括状态转移图、活动周期图和IDEF3的全部内容以及IDEF0的部分内容);功能模型(包括数据流图和IDEF0图的内容)是传统IDEF0图的一个高级表现形式(见图1)。