ERP模式:应做到非常好的实践的应需而变
【 信息化】 传统的软件工程方法已经成为ERP软件推进的一个严重障碍。崭新的软件工程方法Business Logic for ERP(简称BL),如晴天霹雳,撕开了ERP软件历史崭新的一幕!
经过实践,100多家的使用案例,已经证明了BL方法比传统软件工程方法构建ERP效率提升10倍以上!
BL一定成为未来ERP应用的利器!
问题的提出
当前ERP已经成为实现企业信息化的重要工具,然而ERP实施一直被认为是高风险,高投入,周期长的一项工程,这些特点严重制约了企业信息化进程。
总结起来,目前我国企业实施ERP主要模式可以概括为以下四种类型
商品化软件直接应用
即购买商品化软件套件,由供应商对客户进行简单的安装,培训和少量的(甚至没有)客户化过程后便投入使用。 这种模式特点是软件价格低,实施费用少,实施周期短,然而这种模式最多只能满足80%的客户需求,这也是商品化软件的一个重要特征。如财务软件中的总账模块等。对于ERP这种覆盖面广,实现全面信息化的系统来说这种模式无法达到预期的非常好的要求。
商品化软件实施
这是目前主流ERP厂商所采用的模式,其方法是在已有的ERP软件套件的基础上通过大量的参数设置,基础数据的设置来适应企业的个性化需求。相对于上一种模式来说成本相对较高,能够实现一定程度的客户化定制。然而客户化定制程度受到原有商品化软件的限制,只能在一定程度和范围进行。因此这些ERP厂商往往强调其软件包含国内或国际成百上千家大企业的成熟管理经验即所谓“非常好的实践”,其目的是要求企业改变去适应软件功能,我们仔细考虑一下就不难得出这样的结论:如果一个软件承载了这么多企业的管理经验,那么软件会是多么庞大,其中对于我们有用的占多少,其结果是我们买来一座山,有用的却是一块石头,另外我们中国人熟知的一个最简单道理“因地制宜,实事求是”,每个企业都有自己的特点,别人好的东西,对我们并不一定适用,借鉴的是适应企业自身情况的管理经验,不是照搬照抄软件承载的每个管理细节。 如果生搬硬套无异于“削足适履”。同时,企业多年经营成功的背后,积累了属于自己的、独到的经营模式。而这个模式一般来说是“个性”的。
因此这种模式只适合于有能力投入大量资金,且对自己的管理模式无太多特殊性要求,希望照搬照抄同行经验的企业。
模块化定制
即通常所说的软件二次开发模式的定制化实施,采用这种模式,会将原软件源程序级别上重用,经过部分程序模块的开发重新编译打包系统。
此模式是一些行业解决方案提供商,以及一些小ERP厂商采用的方法,他们经过多次行业软件的实施,积累的可以重用的软件模块,针对客户的个性化需求会在原有软件基础上改造。这种模式的优势是可以实现更大程度的定制,缺点是只有软件开发厂商才能进行模块化定制,很难同咨询机构和实施伙伴合作,无法实现快速推进软件的市场化。
源程序开发完全定制
这种模式是我们软件工程里面所见到的通常软件开发模式,系统实施要完全通过软件需求分析、软件设计、程序设计、系统测试和系统实施等诸多软件工程环节才能够给最终用户实施,定制的基本单位是源程序代码级别。 可先而至,这种模式虽然能够完全定制,但是系统开发周期和实施成本不是一般的企业所能承受的,因此多适用于需求特殊的个别应用系统,对于一般意义上的ERP系统要成功实施基本是不可能的。
上述几种方式是目前企业实施ERP通常所采用的模式,各有利弊,主要区别是实施成本,周期和适应企业管理需求上。
企业系统是一个动态的系统,如果一个ERP实施如果需要经过若干年时间,企业系统早已发生变化,ERP系统即使上线,获得的只是适应系统实施之初所确定的需求。企业在发展,ERP系统上线只是一个开始,随着企业的发展管理变革,ERP也必须调整。承载了企业管理模式的ERP系统如果不能随着企业发展而发展(即应需而变)最终将会成为制约企业发展的一个障碍,就像我们看到的很多动物那样必须经过蜕皮或者脱壳才能重生。
企业在保留自身积累的管理经验的同时,应借鉴外来先进的管理思想和方法(即非常好的实践),然而绝不能是简单地理解为自我否定,照搬照抄,否则与邯郸学步无异。
何为非常好的实践的应需而变?
所谓“应需而变、协同管理”的ERP实施模式是“在保留企业自身积累的管理经验基础上,借鉴同类型企业优良管理思想和方法,结合企业自身实际情况进行ERP定制化实施,系统实施后,ERP能够随着企业的发展而变化,始终与企业需求保持同步的一种实施模式。
从管理方面而言,管理是艺术, 受到地区、文化、人、行业、规模等诸多方面因素影响,不可能要求两个企业管理模式完全相同,不可能要求某个企业的管理模式一成不变,通过ERP套用抄袭别人的管理模式,必将丧失管理者的主动性和创造性。
从技术角度上来讲ERP软件开发即简单也复杂 ,简单是因为技术普通,不尖端、人员不缺乏(软件蓝领) ,复杂是因为内容涉及广泛,系统规模庞大、个性化需求、需求变化快,应对管理需求所付出的成本代价高。
要实现非常好的实践的应需而变,需要一种全新的ERP实施模式,必须革命性地提高ERP系统实施的效率。软件工程领域的发展已经为我们提供这样的可能,那就是“模型驱动的相关理论和技术”包括模型驱动的体系结构(MDA,Model Driven Architecture)、模型驱动的系统开发(MDD,Model Driven Development),以及模型驱动的系统实施(MDI,Model Driven Implementation)等。
基于模型驱动ERP实施方法实现“应需而变·协同管理”
企业管理模型完全与技术实现无关,直接用于描述企业系统,能够对企业组织结构,企业流程、信息和数据格式、资源对象的每个细节进行建模,能够快速低成本地创建,修改、以不断保持同企业系统的适应性。 通过企业模型直接自动生成ERP系统,是实现快速定制化实施ERP,满足非常好的实践应需而变的唯一途径。
模型驱动的软件构建模式处于软件工程发展的第三个阶段,如下图所示。
图1 软件系统开发方法发展的三阶段
第一阶段采用与机器指令直接对应的汇编语言构造系统,生产力极低,代价极高;第二阶采用高级程序语言(如,c,c++,java)等工具大大提高了系统开发的效率,然而还是用计算机的语言来描述各个应用领域的概念;第三阶段采用模型作为开发工具,模型用特定应用领域(如在ERP中是企业管理需求)的语言来描述软件系统的方式,实现软件工程领域的又一大革命,大大提高了软件构建效率,降低了软件实施成本。
如果把汇编语言阶段比喻成用泥土作为材料来建筑,那么程序语言阶段可以理解为用砖瓦或者框架结构来建筑,模型驱动可以比喻成为类似虚拟城市一样,用图纸直接构建城市。
模型驱动方法进行ERP系统实施,不是“无中生有”,也不是“限量变化”,是“有中求变”。
所谓无中生有,是指没有软件情况下从源程序级别开发;所谓限量变化就是在商品化软件基础上二次开发。 这两种情况的问题我们前面已经做过了详尽的分析。 有中求变就是拥有一个平台+方法,可以适应企业管理、业务的任何变化!
所谓模型驱动的ERP实施方法是用模型语言描述生成符合企业需求的领域模型后,由软件平台自动编译或解释执行,生成目标软件系统。因为构造和修改模型的成本代价小,而且可以根据需要随时进行,所以ERP系统的优化调整也可以非常低成本高效率地进行。 图2是一种比较理想的模式,ERP模型运行平台在启动时动态加载企业模型,实时生成可供使用的ERP软件。
图 2 模型驱动的ERP实施原理
上图中模型作为数据保存,ERP模型运行平台软件启动后,从存储介质中把模型数据读出,生成可以实际操作的软件系统。
此种模式中软件已经存在即ERP模型运行平台,但是软件中没有任何企业的任何管理逻辑,他仅仅是一个模型解释工具,同具体的企业模型结合后才能够生成实际的系统。 因此我们不能说是无种生有(因为软件已经存在),但也不能说是有种求变(软件里面没有管理定式,能够完全根据具体的企业需求定制)。
用Business Logic (BL)管理软件构建平台实现“非常好的实践应需而变”的ERP实施模式。
Business Logic(以下简称BL)管理软件构建平台是能够将企业需求快速转化为ERP等各类管理软件的工具,它同时也是描述企业模型的建模软件。应用ERP系统构建平台实施ERP系统,是企业模型的设计和描述过程,系统构建者可以很少,甚至不需要考虑软件设计或程序设计因素,将主要精力完全集中于企业流程的设计和优化上。
图 3是BL系统的结构示意图。
系统运行平台能够理解企业模型,并动态地从模型库中读取企业模型的部分内容形成软件功能,供用户使用。它包括:应用服务器平台和用户界面平台两个部分,应用服务器平台用于处理除用户界面以外的任何业务逻辑;用户界面平台包括与用户操作界面相关的抽象功能,它的操作用户是业务处理人员和管理、决策人员。
企业建模平台是能够图形化设计、构造企业模型的软件,企业建模平台能够以图形化的方式,结合抽象ERP系统功能,描述ERP系统的企业模型部分。它的用户是ERP系统实施人员,或具有一定企业建模知识的用户。
系统管理平台的用户是负责维护系统正常运行,负责系统安全管理,数据管理和网络管理的计算机维护人员。
BLML(Business Logic Modeling Language) 是BL企业模型的实际承载工具。 BLML类似于HTML独立于技术平台,独立于实现,不会因为技术进步而过时。
采用XML形式形成结构化的数据格式,能够被BL运行平台实现运行时解释执行,真正实现动态企业建模。
图4 企业建模平台
应用BL平台构建ERP系统真正能够在企业需求和ERP系统软件间建立“快速通行的捷径”,达成了非常好的实践应需而变的系统实施模式。
目前BL平台已经有7年的应用历史,在纺织、物流、化工、医药、图书馆管理等方面取得了很多成功应用的经验。