吉宁讲师观点 / 企业培训师观点 / 企业培训师观点:企业信息管理系统组件化信息资源分析与设计

企业培训师观点:企业信息管理系统组件化信息资源分析与设计

吉宁博士 2015年12月11日 企业培训师观点

现代企业信息管理系统,应以现代企业的运营特点和运营模式为依据,以现代IT技术为手段,对企业运营的全过程和全方位进行有效管理,作为核心的数据资源是决定企业信息管理系统适应企业信息管理发展和创新需要的关键。本文分析了面向企业信息管理系统的组件化信息资源的需求、设计及其应用,为面向Internet时代的现代企业信息管理系统提供了数据资源的解决方案,从而从长远的角度有助于企业的长远发展。

  企业信息管理系统对组件化数据库的需求

  企业信息管理系统需要不断地变化和发展,达到变化和发展目的的手段一般分为两种,一种是采用渐进的方式,通过对原有系统的升级、改造与整合,使系统能够适应发展的需要;另一种是革命性的,采用最先进的技术、最先进的管理模式,重新设计系统。

  当组织没有计算机信息系统或者原有的计算机信息系统已经完全不能适应需求时,需要进行彻底的变革,需要进行完全彻底的整体规划,采用最先进的技术对系统进行设计。然而,在大部分情况下,组织需要保护原有的投资,需要充分利用己有的各种资源,需要在原有企业信息管理系统运行中进行持续的改进,这时,企业信息管理系统的演化需要通过整合与扩展来完成。例如,企业信息管理系统向电子商务的整合与扩展就是按渐进方式实现自身的发展。

  (一)企业信息管理系统开发需求

  在组件方法的研究中,较多的研究是在开发过程、建模等方面,一直较少讨论组件与数据库关系、组件方法中的数据库设计问题。但数据库作为整个应用系统的一个重要组成部分,是任何一个完备的、完善的软件开发方法所必须具有的。传统的数据库设计是面向整个应用业务,在传统方法中将应用软件系统分为业务逻辑的开发和数据库设计两个平行方向,业务逻辑的任何模块都能无约束地访问数据库,如果业务逻辑是组件化的,则这种访问严重约束了组件的自治能力,而组件的自治能力要求直接与组件关联的一切都应该是组件的一部分。

  (二)企业信息管理系统整合与扩展的需求

  扩展与整合必须充分考虑对原有信息资源和原有投资的保护,以提升用户的投资效益。信息资源是组织的宝贵财富,也是信息系统价值的体现。随着时代的进步,信息设备的价值越来越小,但信息资源的价值却越来越高。保护信息资源既是信息系统升级与整合的一个理由,也是其实现过程中所必须达到的一个目标,保护信息资源不仅仅是将历史数据完整地迁移到新的系统中,而且还要确保这些历史数据适应新的应用。

  企业信息管理系统的整合包含了信息资源系统整合与应用软件整合,往往伴随有系统的重构,在这种情况下,支撑系统的环境往往没有变化,由于客户业务流程的变化等因素,需要系统功能和信息资源存储结构进行相应的调整,就产生系统整合的需求,这个过程中往往伴随有数据库结构的改变和应用软件程序的修改。

  企业信息管理系统的扩展是指系统内部没有需求的变化和支撑系统环境的变化,系统需要与外部系统进行数据交换或功能集成,与其他系统一起构成更大的系统,将这种过程称为系统扩展。企业的扩展性升级与整合是包括系统扩展和应用软件系统的整合,企业原有信息系统并非是按组件方法开发的,但可以实施组件化的包装,尽管包装了的原有信息系统仍不一定是组件。对原有信息系统需扩展的业务按组件方法开发成一个组件,并按组件方法将组件化包装的原有信息系统与扩展业务的组件合成为一个新的、更大的系统。组件化包装原有信息系统,就是根据扩展业务与原有信息系统的业务关联开发出基于原有信息系统的连接组件,原有信息系统作为该类组件的插座,通过该类组件实现原有信息系统实现与扩展业务系统的功能和数据的集成与整合。

  面向企业信息管理的组件数据完备性

  组件化应用软件的外部信息资源来源分为三类:个别数据、数据文件、数据库。本文只讨论数据库中的数据。组件的数据完备性含义:是指组件作为一种高度自治的软件,在独立发布和部署,以及协同性合成是建立在一个统一的数据上,它确定对数据全部操作需求,确定了数据的边界,边界中的数据完全满足组件对数据的要求。

  若仅是应用系统业务逻辑组件化,组件仍是直接连接数据库,组件的重用性、可替换性将大大降低,组件之间通过数据库的关联耦合增大。在某粒度层次上的组件建立数据库表单集合,要在两个方向上符合组件开发的要求,即这种粒度应保证组件对表单集的完整性、安全性、并发性、事务性的管理,另一方面又要保证组件的重用性和可替换性。该粒度组件应为面向业务的组件,因为系统的数据都是具有业务性的。比面向业务的组件更小粒度的组件,由于不是面向业务的,其数据不具有业务性,而无法明确数据边界,得以实现组件的数据完备。比面向业务的组件更大粒度的组件,则是基于数据库而回归传统。面向业务的组件是具有高度自治能力的组件,定义数据库是该组件的一部分,面向业务的组件贯穿于从需求分析、设计、实施、测试、部署整个开发生命周期,因此,面向业务的数据库设计具有业务上的整体性和一致性。

  面向业务的组件的内部组件和外部组件,通过该面向业务的组件中的数据库管理组件实现与数据库连接和操作。在设计阶段,按业务设计出数据库表单集,面向业务的组件合成应用系统时,面向业务的组件所对应的数据库表单集在运行时也相应合成一个单一物理的数据库。将符合上述要求的数据库表单集称为组件化表单集。
企业信息管理系统的组件化数据库设计与应用

  (一)企业信息管理系统的组件化数据库设计

  要解决和实现组件化的数据库设计,就是要实现组件化表单集。在设计阶段,以面向业务组件来设计组件化表单集,组件可以是对象也可以是函数集合,若面向业务组件为函数集合,则将具有功能性的面向业务组件与组件化表单集分别进行设计;若面向业务组件为对象集合,则按照对象模型与关系型数据库的映射来设计组件化表单集,而对象模型到关系型数据库的映射主要困难是对象继承关系的转换,这种继承关系的转换有三种方式来实现。分别独立地设计对象模型和关系模型,还能更大地提升系统的性能和伸缩性。

  组件化表单集要在两个层面上规范化,在单个组件化表单集内规范化;在组件化表单集之间规范化。由于是以单个组件化表单集内规范化为基础,在组件化表单集之间存在着数据重复性较高的冗余问题,这是组件化表单集设计所付出的代价,应严格控制,组件化表单集之间的表单重复应用不同名称加以区别。

  作为应用系统需要有数据库的支撑,并且作为解决具有数据库支撑的组件化应用系统方法是:一方面对数据库组件化设计;另一方面对面向业务组件划分层次,在资源层上建立一个数据库管理组件为整个业务提供数据库的数据服务接口,它是一个面向业务组件中唯一与数据库连接的组件。在数据库管理组件中嵌入SQL访问,实现数据库到面向业务组件的映射,数据库管理组件隐蔽了面向业务组件中的其它组件对数据库的访问,它负责数据的存取,并提供了数据的存取接口。

  数据库管理组件实现了数据存取与数据使用分离,具有较高的重用性。在组件化的数据库设计方法中,对具有一对多关系的实体转换成关系模型的表时,与传统方法一样可生成两个表,这两个表根据对应实体所属的业务归属于相应的组件化表单集。对具有多对多关系的实体转换成关系模型的表时,生成三个表即两个实体对应表和一个实体之间的多对多关系对应表,两个实体对应表根据对应实体所属的业务归属于相应的组件化表单集,若这两个实体属于同一个业务,则实体之间的多对多关系对应表也归属于该业务的组件化表单集;若这两个实体属于不同的业务,则实体之间的多对多关系对应表归属于协作组件的组件化表单集。

  (二)企业信息管理系统的组件化数据完整性管理

  在组件方法中,组件要具有高度的自治,就需由组件去管理数据库数据完整性,而不是由DBMS去管理数据库数据完整性。对关系型的数据库,组件要实现参照完整性,则一个面向业务组件中的组件所使用的数据库中的数据是跨组件化表单集的,那么该组件可通过自己的面向业务组件中的数据库管理组件进行连接,要注意的是表单外码的连接不能采用DBMS的连接,这里的表单外码只是逻缉意义上的而非物理的,数据库管理组件通过表单外码检索出外部组件化表单集中的数据。

  由于表单外码作为数据库管理组件的接口中的一部分,使用上具有更大的灵活性。由于使用组件化表单集之间数据时,表单外码的连接不能采用DBMS的连接,而只能采用数据库管理组件进行连接,确保了面向业务组件的数据完备和数据库的组件化,而且保证了系统的完整性和一致性。数据库的触发器主要作用就是能够实现由主码和外码所不能保证的、复杂的参照完整性和数据的一致性。组件化的数据库设计时,数据库的触发器可嵌入到数据库管理组件中,考虑到面向业务组件的组件化表单集可能是分布的、由不同的DBMS管理的,不同的数据库它的触发器也不同,若仍将数据库的触发器嵌入到数据库管理组件中,则组件的可重用性、可替换性将大大降低,在这种情况下,应避免使用数据库的触发器。

About 吉宁博士

真正的实战派企业培训师,长期致力于人力资本、公司行为、市场营销、企业战略及领导力发展等组织实践与研究,数十年来参与及主持过的管理咨询项目累计逾千次;受邀主讲过的各类企业培训课程累计逾万次。