基于分布式对象技术实现动态ERP(或DEM)系统

 【摘要】本文讨论了动态ERP及动态企业模型的概念、功能需求及其实施模式,提出了基于分布式对象计算技术实现企业资源计划的技术路线并描述了实现的框架和主要步骤。

 【关键词】MRPII ERP DEM 分布式对象技术(DOT)

 从MRPII到动态企业模型制造业企业计算机辅助信息管理系统的目标是对企业的各项资源进行全面规划和优化控制,为企业提供信息,以支持企业生产经营活动的运行和决策。制造业企业计算机辅助信息管理系统主要经历了制造资源计划(MRPII)、企业资源计划(ERP)和已经出现并将迅速发展的动态企业模型(DEM)几个阶段。

 MRPII的管理思想和处理逻辑的雏形早在40年代就已提出,但直到五、六十年代计算机技术发展到一定水平时,MRPII的处理逻辑和方法用计算机系统这一工具才得到实现。之后随着计算机技术及整个信息处理技术的发展,MRPII系统经历了单向应用、开环MRP、闭环MRP直到MRPII等各个发展阶段。

 进入90年代以后,MRPII所管理的企业信息进一步扩大,另一方面也受到计算机软硬件技术发展的极大影响,从而发展到所谓的ERP系统。ERP在管理方面的主要特征是为企业提供全方位解决方案和支持混合制造模式。另外还具有这样一些IT方面的特征:跨平台,使用大型关系数据库,采用4GL、Client/Server结构和GUI等。

 ERP系统无疑使许多企业的生产经营管理发生了全新的变化。成功地实施了ERP(MRPII)的企业从中获得了显著的效益。但是现有ERP系统所存在的问题同样不容忽视。这主要表现在以下几个方面:第一,系统复杂庞大,导致维护难度大;第二,系统实施工作量大,用户化修改任务繁重;第三,系统易用性较差,缺乏工作流程自动化功能,对使用人员的能动性要求很高。另外,现代企业在利用MRPII(或ERP)进行管理的同时,对办公自动化(OA)的需求也越来越迫切,这样,自成体系的MRPII系统与企业办公自动化系统的沟通与结合也成为一个越来越突出的问题;第四,也是尤其重要的一点,是现有ERP(MRPII)系统的灵活性差。一个ERP系统要经历现场调查、需求分析、提出系统建议方案、进行系统功能裁剪以及相当大的程序修改工作之后,才能成为一个适合特定企业业务模型的应用系统。这对那些业务经营模式一成不变的企业是可以满足其需要的。但事实上,许多现代企业为了适应市场、组织结构以及技术的不断变化,被迫重新评估和调整其业务处理结构。这就是所谓的业务流程重整或再造(BPR-Business Process Reengineering)。这种流程再造的需求随着时代的发展和市场竞争的日益激烈越来越显得重要。对现有ERP系统而言,每进行一次BPR都意味着重新修改或设计程序。实现模式重整的周期之长、速度之慢导致实际上的不可用,因为如果不能迅速灵活地改变业务模型,企业就不能准确把握商机做出及时应变。这对企业来说显然是可怕的。

 上述问题导致了动态企业模型(DEM-Dynamic Enterprise Model)这一新概念的提出。动态企业模型包含并超越了ERP和MRPII。它试图把企业业务处理过程同企业管理应用软件(MRPII/ERP)、办公自动化(OA)、国际互连网集成起来。动态企业模型还应具有以下特征:

 把制造业各种生产类型(离散、流程、项目)和各种制造环境 (按库存生产、按定单装配按定单制造、按定单设计)的生产经营过程集成起来;支持并扩大企业的供应链,超过企业的边界,扩大到任何国内、国际的贸易伙伴;通过专用工具把企业的业务工作流程在标准企业参考模型基础上,进行业务流程的映射,灵活地组合成适应企业的管理信息系统,打破"企业必须适应软件"的传统模式。

 动态企业模型(DEM)的功能需求及实施模式DEM的功能范围相当广泛,而其核心在于对业务流程再造(BPR)的支持。DEM对BPR的支持应满足以下几点要求:

 速度要求:通过使用预定义的业务模型及先进的工具把BPR的实现周期尽可能缩短;

 灵活性要求:要以节省时间和费用的配置过程满足组织机构及业务流程的各种变化,提供可定制的业务流程模型,使企业能比较容易地定义和生成系统以实现业务策略,应能方便地定义工作流;

 集成性要求:与现有ERP或MRPII系统紧密集成,同时要为与办公自动化及其它企业应用提供集成的可能。在多数情况下这是一种异构环境(Heterogeneous Environment)下的集成。

 动态企业模型或动态ERP系统应该是业务流程驱动的。它面向流程(process),建立在优化业务活动(business actions)的基础上,具有适应业务改变而相应改变业务模型的能力。动态企业模型包含一个不断改变的业务模型(新的、再结构化的、分时间段的);它能完整地重新生成和连接基本业务模型。这些模型包含应用生产流程和改进的工艺;动态企业模型使得ERP软件的系统管理、业务分析以及系统实施的注意力均可放在提高功能、优化活动和流程上,而不再放在具体的软件细节和繁杂的结构化数据上。

 DEM应具备以下几大功能模块。这些模块的使用过程也就形成了DEM的实施模式:

 业务功能模型(Business Function Model)

 这是流程选择和重新设置的起点。它包含一个过去的最优实施经验和各种业务模式的知识库,为企业管理人员和有关顾问在定义系统实现的规模及方式阶段提供指导性支持,用户在这里选择自己需要的功能模型。对于知识库中没有的特殊化需求应单独提出并定义。这是系统实施的第一步。

 业务流程模型(Business Process Model)

 这是描述业务功能如何被实现的流程定义(Process Definition)。主要提供一个预定义流程库。这些流程定义向用户展示MRPII(ERP)用什么流程实现业务中的什么功能。另外还包括一些为生成企业最终用户环境所需的流程。对于特殊化需求经单独设计之后加入流程库。

 业务组织模型(Business Organization Model)

 这是用分块、业务单元及部门等概念来描述企业的组织机构;区分组织中的各种角色;描述部门之间的关系。

 ERP配置模型(ERP Configuration Model)

 企业管理层和各个关键最终用户对业务功能模型进行评估后,将注意力集中在业务流程上,把在业务功能模型中所做的选择映射到业务流程的选择和配置;设置ERP的有关参数;为流程、子流程、活动和人员指定角色;最后自动进行系统组织,生成用户界面。

 基于分布式对象技术实现动态ERP(DEM)系统

 应该说ERP系统只是对MRPII系统的丰富。事实上直到今天,我们所见到的被称为ERP的系统与MRPII系统相比并没有多大的差别,称它们为MRPII系统也无太大妨碍。然而动态企业模型或动态ERP系统对于现有ERP和MRPII系统来说却是一次变革。要实现这个动态化必须触动现有系统的整个框架,需要对现有系统进行深层次的改造,还应改变现行的软件开发模式。

 笔者认为,ERP系统的动态化问题在本质上是一个系统集成的问题。现有的ERP或MRPII系统为什么难以动起来?这是因为它们是在子系统的层次上被组织或集成起来的,换句话说,现有系统的功能划分是在子系统这样一个粒度相当大的层次。这就限制了其灵活性和动态性只能是在子系统这个水平。事实上,现有ERP或MRPII系统的全部功能一般被划分为一、二十个子系统,也就是形成了一、二十个功能包。而企业业务流程是由企业中不同角色的一系列活动(Actions)所组成的。动态企业模型要实现业务流程再造,就要求在活动这个功能层次上对系统进行组织或集成。这显然是一种小粒度的功能划分。正是这种功能划分粒度上的矛盾使得现有系统的体系结构成为实现动态化的障碍。因此,要实现动态ERP,必须找到一种软件集成技术,它能够把各种小粒度的软件功能单元灵活地组织为有机的整体,而那些软件单元一般是运行在复杂的网络环境中。分布式对象技术正是这样一种先进的软件集成技术。

 在过去的15年里,企业信息系统的设计、开发和维护经历了很多变化。最初是独立庞大的主机系统(Monolithic Main frame Systems)。每个这种系统都包含了自己所有的表示逻辑(Presentation Logic)、业务逻辑(Business Logic)和数据访问逻辑(Data Access Logic)。它们不能与其它系统共享数据,因此必须存储其数据的一个私有拷贝。因为不同的系统需要访问某些相同的数据,因此就必须在多个系统上存储冗余的副本。

 这种孤立而庞大的应用模式效率低下且价格昂贵,于是不久就让位于关系型数据库技术和客户/服务器模式。由于网络、个人机、图形用户界面以及关系数据库等技术的共同发展,客户/服务器计算模式通过将集中化的、庞大的系统分割成能够较容易开发和维护的部件(Components)从而简化了复杂应用的开发和维护。应用程序被分割成客户端程序和服务器端程序。前者实现应用程序的表示逻辑并且包含部分业务逻辑。后者以存储过程的形式包含部分业务逻辑。数据访问逻辑根据实现策略的不同要么由客户端处理要么由服务器端处理。客户/服务器模式已成为占有主导地位的结构以及大多数现代企业系统的基础。但是这种模式同时也带来很多问题。主要表现在:

 客户机需要越来越多的软硬件。高端服务器成本在稳步下降,与此同时拥有PC客户机的费用却在不断地提高;客户机管理越来越困难。管理几十、几百台客户机上的不同版本的软件包需要巨大的资源;一旦开发完成,客户机软件在扩展应用系统功能方面提供的可重用性差;应用系统的功能在网络环境中的迁移和重新组织很困难。

【作者】李红英 蒋明炜 来源:中国知识管理网