麻国毅
(华东电力集团公司信息中心 ,上海 200002)
摘 要 管理信息系统是以数据为主的信息系统,因此建立稳定的数据基础是MIS建设的最本质的任务,企业的信息化就是改造企业混乱无序的数据环境,逐步建立高档次数据环境的过程。
关键词 信息工程 管理信息系统 数据环境
The Environment of Management Information system
Ma Guoyi
(Information Center of East China Power Administration,Shanghai 200002)
Abstract: Management information system is a system main concerning data. So setting up stable data foundation is the most essential task of MIS construction. The main target of informization in an enterprise is to change data environment from chaos to high level stable one gradually.
Keyword: Information Engineering MIS Data Environment
目前,国内大多企事业单位都使用计算机参与企业的管理,而且应用水平也从单项应用 ─ 财务、工资、档案等领域逐渐向管理信息系统(MIS)过渡,进而实现企业的信息化。但是由于单项应用和MIS在原理、方法上的不同,导致从事MIS建设的不少,但真正能建设成MIS的不多,究其原因有多方面,但从技术角度来讲,忽视数据环境的建设是一个带有共性的现象,也是MIS建设不尽人意的重要原因。
1数据环境基本概念
现代管理信息系统是一个覆盖全企业的或主要业务领域的辅助管理的人机系统,它的最重要的特征是系统特征和数据特征。系统特征强调MIS是一个集成化的信息系统,不但要物理集成 ─ 各种信息设备、通信网络设备和系统软件组成的系统,更重要的是信息集成,使信息继人、财、物、设备之后成为企业的又一主要资源。而信息集成的基础就是数据集成,这就是数据特征。美国学者詹姆斯.马丁(James Martin)创立的信息工程就明确提出数据环境(Data Environment)的概念[1],他认为只要企业的性质和目标不变,它的数据就是稳定的,任何业务活动都离不开对这些数据的存取,而对这些数据的加工处理过程是多变的。企业的计算机应用有四类数据环境,企业的信息化就是改造企业混乱无序的数据环境,逐步建立高档次数据环境的过程。四类数据环境是:
(1)文件系统:没有使用数据库管理系统(DBMS),每一项应用都独立设计自己的数据文件结构,数据包含在功能中、大量的冗余和不一致,数据难于交流和共享。
(2) 应用数据库:使用了DBMS,但数据没有统一管理,各种应用各行其是,随着应用项目的增加,数据库的数目急剧增加,结果导致数据大量冗余。由于使用了DBMS,对数据的描述和操作更为方便,因此加剧了数据的混乱。
(3)主题数据库:使用了DBMS,对数据进行统一管理,数据的组织面向企业的业务主题,因而数据的结构是稳定的,数据的独立性就好,是真正意义上的数据库。
(4) 信息检索系统:适应一些无编程或少编程的优秀查询语言,对主题数据库进行萃取和深加工,是适应高层查询和决策支持系统(DSS)的数据环境。
对一个MIS来讲,它的数据环境应该尽量建设成三类和四类环境,少用或不用一类、二类环境。
2主题数据库
建立一个企业的主题数据库,需要进行全面的数据分析和数据建模工作,要求改变企业的数据管理方式和传统的分析方法,因而要得到高层领导的参与和自始至终的强有力的支持;依靠系统分析人员和有丰富业务经历的业务人员的严谨细致工作才能完成。
建立一个企业的主题数据库,必须强化基础管理工作,其中最重要的是进行全面的数据管理和建立信息分类编码标准体系。
2.1数据管理
在需求调查阶段,收集了大量的原始资料,包括报表、帐册和单据等,这些原始资料中经过分析,将所涉及的内容归纳成数据项,这些数据项将要构成企业的数据模型,由此可见这些数据项是构成企业“信息大厦”的“建筑材料”。然而,大多数企业对这些最基本的“建筑材料”缺乏统一管理或管理不力,结果导致信息系统数据冗余、不一致和信息混乱。因此要想建立一个企业的主题数据库,必须从“源头”抓起,从强化数据项的管理做起。数据管理是对全企业的数据规划、设计与使用维护的全面管理,涉及一系列标准、规范、规程和策略的制订与执行。其中有关数据的标识、分类和命名方法的标准是最重要的基础标准。
由于数据管理是面向全企业的,因此必须消除数据项的同名异义、同义异名等冗余现象,使数据项成为能唯一确定,被最终用户所理解的最小信息单元,类似物理世界中的化学元素,称为数据元素。数据元素具有是什么的逻辑特征,也具有何处、何时、如何使用和由谁使用的物理特征。识别数据元素是应基于逻辑特征,使数据元素与物理的处理特征分离,增加数据的独立性。数据元素的管理有命名、定义和标识三个方面。
(1) 数据元素的命名
数据元素命名时,应遵循一定的词法规则,这样不同的人对同一客观存在的数据元素也有了一致的命名,尽最大限度地消除同名异义和同义异名。命名的词法规则是每个数据元素应该由下述成分组成:
类别词是数据元素名称中一个最重要的名词,用来识别和描述一个数据元素的一般用途,基本词是类别词最重要的修饰。例如:
付卖主款帐户号码
类别词:号码
基本词:卖主
修饰词:帐户
修饰词:付(款)
(2) 数据元素的定义
用简洁明了的、无二义性的语言描述,对数据元素做最全面的说明。专业术语要规范用语,使用已颁布的标准术语。
(3) 数据元素的标识
人机共用的符号串,规定符号串的长度,取数据元素名称的英文缩写,或者取中文拼音字母声母等原则。
2.2 信息分类编码[2]
信息分类编码是管理信息系统又一项极其重要的工作,是自动化处理信息的基础,离开信息分类编码现代化管理是一句空话。一般来说,总是先对信息进行分类,所谓分类就是把具有共同属性或特征的信息归并在一起,把不具有这种共同属性或特征的信息区别开了的过程。而编码就是根据分类的结果把信息用一种人机共识的符号体系表示出来的过程。实际上编码就是文字信息进行字符化处理,使之成为量化信息。
信息分类编码应该尽量采用已有标准,按照国际、国家、行业、部、企业的顺序原则。建立企业的信息分类编码标准体系大致可分以下三个阶段:
编码对象的识别
重点考察以下几种性质的信息:
(1) 通用信息:如单位名称、设备名称等;
(2) 一定范围内事物或概念的共同点:如事故原因、会计科目等;
(3) 需要频繁交换的信息:如上报的报表等;
(4) 能提高数据独立性、提高工作效率的信息:如工资项目等。
代码结构设计
代码的意义要极小化,代码的使用要极大化,一事一码。按照信息分类方法、信息内容和使用状况等设计代码结构,要遵循代码的唯一性、可扩性、稳定性等原则。
编制代码对照表
根据编码规则,显式编出代码对照表。由于代码的系统特征,在核定的权限范围,做到统一设计、统一编制、统一发布和统一维护。
2.3数据内容的组织[3]
即如何组织实体和实体的属性,要面向企业的业务主题组织数据。所谓业务主题就是企业为支持既定的目标而必需的业务领域,具有一定的“稳定性”和行业共性,而不是面向应用项目。例如,采购行为存在每一个企业中,在组织数据时,我们应建立物资实体,供应厂商实体 ,采购活动是这二个实体之间的联系;而不是建立独立的面向采购活动的采购实体。在定义了实体以后,再定义实体之间的联系,画出实体图,消除冗余联系。根据实体之间联系的强弱,将实体分成实体组和实体大组,实体大组就是一个主题数据库。这样规划出的主题数据库还要和高层业务人员概括与构思提出的业务主题相结合,加以调整。
当然主题数据库的识别还可以使用其他方法,例如,参照企业资源生命周期模型,结合本企业的具体情况,识别在规划 ─ 获取 ─ 保管 ─ 处置各个周期业务活动所使用的数据,然后将这些数据分组成为相关的主题数据库。各种方法得到的主题数据库相互参照比较,使之更加趋于合理。
每个主题数据库是一些实体的集合,并且要反映实体之间的关系。上层实体和下层实体是一对多的关系,下层实体受上层实体的约束。我们可以将一个主题想象为一个“多面体”,顶层实体描述这个“多面体”的基本情况,是静态的、单值数据;下层实体则反映这个“多面体”的某一侧面的情况,是动态的、多值数据。比如,职工主题数据库:
职工基本情况 E1(职工代码,职工姓名,出生日期,…)
工作调动 E11(职工代码,部门代码,调入日期,…)
家庭成员 E12(职工代码,称谓代码,成员姓名…)
外语水平 E13(职工代码,语种代码,外语等级,…)
……
实体的性质用属性来表示,属性就是数据元素,应该满足规范理论的约束。
3数据库设计
遵循规范理论,根据数据依赖的类型和性质,使设计出模式满足规范理论的约束,保证设计质量,不会出现操作异常,保证数据独立性。
3.1数据独立性
数据设计时就要考虑数据和应用分离。由于实际应用的复杂性,对一些特殊情况要做特殊处理,需要设计者有丰富的数据处理经验。原则上讲数据的变化只能是数据内容的变化,这些变化也只能通过对数据库的增、删和改等操作来实现,数据库的结构应该稳定的。但实际应用时可能碰到对数据库结构的改动,这是不容许的。例如:工资管理中的工资表,如果按照实际的工资结构来设计基表的话,工资项目的增减就成为数据库结构的变动,因此,这是一个不好的设计(尽管是一个主题数据库,尽管满足规范理论的约束!)。数据的独立性很差,工资项目有了变化(这是不可避免的!),不但要修改数据库的结构,而且还要修改应用程序。如果我们将工资项目用代码表示,这样就把结构的变化转化为数据内容的变化。
工资项目代码用三位字符,其中100 ─ 499代表应发项目,如:100基本工资,101岗位工资……;500 ─ 999代表应扣项目,如:500房租,501事假……。基于这样的数据结构设计的工资发放程序就和工资项目的变化无关,而且是通用程序,工资项目代码由各使用单位按照编码规则自行编制。当有新的工资项目增加时,只须增加一个代码,无须修改数据库结构和程序。
3.2指标代码管理
指标是一种特殊的数据,是企业全局或某一侧面运行状况的量化,各行各业大量地使用指标,是领导了解企业运作全貌的必备数据。对指标的管理首先在概念上遇到了困难,在数据库设计时,我们定义实体,这个实体的性质用属性表示。对指标这个特殊的实体无法定义出这样的实体,因而实际应用时往往一张报表就是一个实体,是和应用相关的,因而这样的设计也不是一个好的设计。考虑到各种指标的共性,我们可以建立一套指标代码管理体系,其结构如下:
ZB X X XX X
这套指标代码体系是层次结构,上层对下层1对多关系。代码长度七位,各位定义如下:(自左至右)
一、二位,指标代码导引,用二位字母表示;
三位,指标体系;
四位,指标集;
六位,顺序号;
七位,特征码,代表指标的适用范围,是层次结构,0表示最高层次,适用范围最大,1,2,…….依次表示下一层次,9为只在本单位使用,不和外界交换信息。一个实例是:
0:部 1:大区 2:省、市 3:地区 4:县 9:本单位
为了适应有些统计指标多口径的现象,还可以增加统计口径代码,一个实例增加了区域口径代码,技术口径代码。这2个口径代码可以组合使用来定义一个指标,因此编制代码时应避免冲突。为了增加口径代码的灵活性,也可以增加特征码,定义应和指标代码中的特征码相同。采用了这套代码体系后,指标管理的表结构如下:
基于这个思想,可以编制一个通用程序来管理全域的各种指标,这个域就是特征码0规定的域。有了特征码后,下级单位不但可以使用上级规定的代码,也可以自行定义适合本单位使用的代码,不会和上级管理的代码发生冲突。通用程序基本功能应包括指标代码的管理,指标值的输入、查询、修改和输出。
为了使通用程序功能强大、灵活,还需要创建几张控制表。代码对照表,计有指标代码对照表、口径代码对照表和单位名称代码对照表等;指标值性质表,包括有指标的定义、量纲、值域约束、统计特征,如,可否进行代数运算、计算公式等、管理特征,如指标的发布日期、失效日期、所有者等。
此外,这套体系还可以进行报表管理。当用于报表管理时,指标代码的导引部分可用TA,TB,....等。一个指标体系就是一套报表,一个指标集就是一张报表。利用通用程序的代码管理功能将报表的各项编成代码,再利用通用程序的输入功能输入报表的值,利用输出功能打印报表。
4 运行和维护
即使我们建立了本企业的主题数据库,如果管理不力,也不能贯彻第三类数据环境,极有可能蜕化为第二类数据环境,甚至成为更差的一类环境,因此必须强化对数据环境的管理。首先应有组织保证,数据管理应成为信息中心一个独立的部门/岗位,不能隶属于应用开发部门/岗位。因为数据管理的目标是规划、制定文档、管理和控制全企业的信息资源,着眼于全企业的整体效益;而应用开发面向单项应用,着眼于个体,况且数据环境是应用开发的基础,因此必须有一个独立的部门/岗位来负责数据管理,和应用开发各司其责,相辅相成。
数据管理要根据管理信息系统的系统特性、数据稳定性原理、结合本企业的具体情况,制订数据管理的政策、规章制度,做好信息分类和编码,并严格执行。应用开发应采用“数据启动”,纳入统一的数据环境,改变由程序员管理数据的陋习。要尽力提高广大业务人员应用计算机的水平,不能停留在点鼠标、敲键盘,事事离不开程序的状态,使业务人员变成为只会使用所谓的“傻瓜软件”的计算机“傻瓜”。在规划设计正确、数据充沛、运行良好的数据环境下,鼓励业务人员联机使用,借助一些高效的工具,解决自己业务活动中的数据需要,特别使一些随机的、临时性的数据处理工作,应能自理。
总之,企业信息化是永无止境的,随着技术的进步、管理水平的提高,会对信息化建设提出更高的要求,而信息化的基础就是数据。因此我们必须重视数据,强化管理,为企业的“信息大厦”打下稳定的基础。
主要参考文献
高复先,吴曙光等编译:《信息工程与总体数据规划》人民交通出版社,1998年,9月版
赵艳华主编:《信息分类编码标准化》中国标准出版社
麻国毅:《管理信息系统的建设》电子与信息化,1998年1—2期