浅谈CPC系统与ERP的集成
CPC系统与ERP系统的集成是目前企业信息化过程中出现的新难题,也是一个大问题,非三言两语就能说清。本文意在抛砖引玉,使更多业界专家共同讨论这个问题。 1.集成的必要性
随着企业信息化的不断发展,企业所用的软件系统也越来越多。尽管这些系统关注于不同的领域,但相互之间在功能上有相互交叉和连接的地方,因此必须考虑这些系统的集成的问题,否则,系统越多企业内部的“信息孤岛”也就会越多,这就违背了企业信息化的初衷。
在实施协同产品商务平台时,一个难点和重点就是CPC平台和其他管理软件的集成实施。目前几个主流的企业一级的管理软件包括:ERP系统、CRM系统、SCM系统和CPC系统。下图显示了这些系统之间的交叉领域:
从上图可以看到,对CPC平台来说,原则上和其他每一种企业管理系统都有交叉重叠的部分,因而也需要和它们进行集成。但从企业(尤其是我国)实施CPC的实际情况看来,CPC的实施还处于基础设施建设阶段,基本上定位于企业内部的研发管理支撑,向供应商和客户端的延伸的案例相当少见。集成实施更多的实体现在CPC和ERP之间以及CPC和项目管理工具之间的集成上。下文将主要介绍CPC与ERP的集成。 2.集成的基本概念
什么是集成?Wenston教授曾给出一个定义:集成是指将基于信息技术的资源及应用聚集成一个协同工作的整体,集成包括功能交互、信息共享以及数据通信三个方面的管理与控制。简单地说,集成包含两个层面:信息层面和应用层面。
基于CPC实现应用集成的三个层次:应用封装、接口交换和紧密集成。
应用封装的内容包括应用工具本身和由这些工具产生的文档。应用封装需要CPC系统能自动识别、存储并管理由应用工具产生的文件,另一方面在存储于CPC系统中的文件被激活时,可自动启动相应的工具。例如,一个二维的EDA工具被封装后,在CPC系统中就能够直接查找这个文档并直接开启这个文档。当对文档的操作(比如修改)完成后,CPC系统能自动更新该文档的版本号,如如该文档的修改需要经过审批的话,CPC系统将自动启动审批流程直至文档升级成功。
当然,应用封装只能满足文件整体共享的应用集成,也就是说,CPC只能管理整个文件但不能管理文件的内部属性。
接口交换是比应用封装更高层次的集成模式,它把应用系统与CPC系统之间需要共享的数据模型(例如BOM)抽取出来,定义到CPC的整体模型中去。这样,应用系统本身就和CPC拥有共同的数据模型,当然,它还可以拥有自己的私有数据模型。通过这种集成,应用系统本身成为CPC平台的一个组成部分。应用系统的操作界面将含有与CPC相关的功能菜单或按钮,同样,CPC中也可以含有与该应用系统相关的操作以支持数据的双向流通。
紧密集成是最难实现也是层次最高的集成。在这一层次中,应用系统成为CPC系统的有机组成部分,它们不仅共享数据,还可以共享操作服务。在这种模式下,CPC和应用系统相互可以调用对方的有关服务。要做好这样的集成,首先必须在系统之间建立互动的共享信息模型,使CPC系统或应用系统在数据变更时,另一方也能自动修改,其次,在应用系统中需要插入CPC相关的数据编辑或操作功能。 3.CPC系统与ERP系统的集成
要了解CPC和ERP的集成,首先需要了解CPC和ERP的关联性。首先需要明确,CPC关注的环节是整个产品的生命周期,在产品生命周期中,包含概念、设计、试制、大规模制造、售后服务、生命周期管理等阶段。ERP则关注于产品的制造过程,以制造为核心实现企业内部的资源:人、财、物的优化管理。从上面的描述中我们可以发现,CPC和ERP至少在以下方面存在交叉点:制造环节。另外,在前面的描述过程中也曾经提到,目前我国CPC的实施基本上是以研发环节作为实施的中心,尚未实现产品开发过程中的采购管理和客户参与产品设计,因此尽管CPC平台中也有采购管理和客户产品设计这样的模块,并且一旦实施了这样的模块就存在和ERP中相关模块的集成问题,在现实操作中探讨这个问题目前并没有太大的意义。
那么,在ERP的制造模块和CPC的各模块中公共的企业对象是什么呢?这就是BOM系统!在CPC系统中,产品信息是以BOM的形式存在的(CPC中的BOM具有更广泛的含义,和字面上的了解不尽相同,可以这么说,BOM体现了产品相关的一切信息)。需要指出的是,BOM在产品生命周期的不同阶段具有不同的特性。CPC系统一般也能够根据BOM的状态自动在不同的BOM视图中进行转变。ERP的制造模块中同样有BOM,和广义的BOM相对应,ERP系统中的BOM系统主要是MBOM(制造环节的物料清单)。
要完成CPC和ERP系统的集成首先需要解决BOM的转换逻辑,在转换逻辑确定以后需要根据产品本身的特性进行CPC和ERP的集成。由于CPC和ERP系统都是企业一级的管理软件,具有系统复杂的特点,因此,实现紧密集成比较困难(个别厂商由于相互之间的合作伙伴关系可能会提供紧密集成的工具,但不具备普遍性)。一般说来,集成的层次是接口交换层。通过接口转换工具的开发实现两种系统的集成。