今天抽时间仔细阅读了郭老师对于ERP的观点,应该说大部分的内容和我的思考是共通的。不过,对于部分的观点,我希望进一步探讨一下。
数据化是信息化的高阶吗?
从目前的主流观点,大家都把数据化和信息化对立起来,目前的主流观点都是要做数据化,认为信息化已经完成历史使命了。对此,笔者有点不同的看法。
在讨论这个问题前,我们应该先明确什么是信息。香农说,信息是不确定度。怎么去理解这一句话?如果说每天报纸上出现的东西是一样的,那么看过一遍报纸之后,之后每一期的报纸对我来说是没有提供信息的。只有看报纸之前,报纸上的内容是不确定的,那么这才包含着信息。我们读报的过程就是获得信息的过程,伴随着报纸上每个字符的不确定度被知道,报纸的信息量减少,我们自己的信息增加。所以信息是从包含各种消息的集合中选取一条而产生的。
因此,信息化就是通过各种方法,来尽可能获取信息,减少这种不确定性的过程。对于企业管理,信息化说白了就是用现代网络、电脑、软件等技术来管理企业。
从这个角度来看,数据化是通过数字手段,收集尽可能多的数据,提炼信息,减少不确定性。从这个角度看,数字化就是信息化,二者是一体的。
我试着借用能力成熟度模型能力的阶段来解释这个过程。在此,我以设备维护为例:
成熟度等级1:初始级(Initial)。处于这个最低级的组织,基本上没有健全的软件工程管理制度。每件事情都以特殊的方法来做。如果一个特定的工程碰巧由一个有能力的管理员和一个优秀的软件开发组来做,则这个工程可能是成功的。然而通常的情况是,由于缺乏健全的总体管理和详细计划,时间和费用经常超支。结果,大多数的行动只是应付危机,而非事先计划好的任务。处于成熟度等级1的组织,由于软件过程完全取决于当前的人员配备,所以具有不可预测性,人员变化了,过程也跟着变化。结果,要精确地预测产品的开发时间和费用之类重要的项目,是不可能的。对于我们的设备维护,就是设备出了问题紧急维修,头痛医头,脚痛医脚。
成熟度等级2:可重复级(Repeatable)。在这一级,有些基本的软件项目的管理行为、设计和管理技术是基于相似产品中的经验,故称为“可重复”。在这一级采取了一定措施,这些措施是实现一个完备过程所必不可缺少的第一步。典型的措施包括仔细地跟踪费用和进度。不像在第一级那样,在危机状态下方行动,管理人员在问题出现时便可发现,并立即采取修正行动,以防它们变成危机。关键的一点是,如没有这些措施,要在问题变得无法收拾前发现它们是不可能的。在一个项目中采取的措施也可用来为未来的项目拟定实现的期限和和费用计划。对于设备维护,就是有系统维护日志,可能通过工单系统建立了系统维护体系。
成熟度等级3:已定义级(Defined)。在第3级,已为软件生产的过程编制了完整的文档。软件过程的管理方面和技术方面都明确地做了定义,并按需要不断地改进过程,而且采用评审的办法来保证软件的质量。在这一级,可引用CASE环境来进一步提高质量和产生率。而在第—级过程中,“高技术”只会使这一危机驱动的过程更混乱。对于设备维护,就是制定了设备保养计划,定期保养。同时有标准作业流程,指导日常操作维护,也许实施了设备管理系统。
成熟度等级4:已管理级(Managed)。一个处于第4级的公司对每个项目都设定质量和生产目标。这两个量将被不断地测量,当偏离目标太多时,就采取行动来修正。利用统计质量控制,管理部门能区分出随机偏离和有深刻含义的质量或生产目标的偏离(统计质量控制措施的一个简单例子是每千行代码的错误率。相应的目标就是随时间推移减少这个量)。在这个阶段,设备的参数被记录和追踪,也许通过物联网对设备进行了实时监控,并进行了大数据分析,在发现问题趋势时及时干预,甚至是才有人工智能进行预测,提前干预。
从上面的例子,大部分用户所说的信息化指的是
成熟度等级2或3,数字化指的是成熟度等级4或更高阶段。因为在前面的阶段,对于系统的管理更多是基于人工的观察,是定性的判断而不是定量的观察。但如果从信息管理的角度,都是信息化,只是信息化所承载的信息是定性信息还是定量信息,处于信息化的不同等级而已。
企业信息化的底盘是什么
对于企业管理而言,需要信息透明地在给业务智能和管理层级直接自由地流动。对于企业信息化而言,关键在于打造一个信息在公司自由分享的平台,保证信息及时,准确,自由,透明和按需地分享,支撑所有的业务系统和职能。这是底盘的作用所在。
企业为服务特定的业务应用,存在各种各样的系统。从业务来看,存在计划系统,仓储管理系统,供应商管理系统,电子商务系统,销售管理等等,从执行层面,存在现场执行的Scada,生产执行的MES,计划协调的APS,管理监控的BI,林林总总,不一而足。但每个系统都有其特定的业务目的,不能对公司运营全方面进行覆盖。
郭老师提出了一个意见,把信息底盘的作用落实到一个全通用管理信息系统,即一个管理信息系统中间件。这个系统我的理解更接近于一个总线系统,它的作用是解决了系统之间的信息交换问题。但是,如果以汽车为例,总线系统并不能替代底盘。二者的作用仍有区别。底盘的一个重要作用是承载。总线让信息的交互成为可能,但是,一方面,对于信息交换的分流分层,仍然需要定制开发,另一方面,如果公司对于某一方面缺乏应用,中间件平台不能顶上去,提供基本功能,所以犹有不足。
因此,对于企业信息化平台,我们需要有功能满足基本要求,同时可以被替代,并可以确保信息进行聚合或分解以保证信息有序共享。
纵观目前的业务系统,唯一能覆盖业务全过程的仅有ERP系统。它最大限度地覆盖了业务职能,同时打通了物流和资金流的任督二脉,打通了企业运行的小周天。其他的系统只能保证信息在某一职能部门中的流转,或者信息不能跨部门流转,或者信息只是物流信息去不能与资金流挂钩。目前还没有其他系统能承担信息化底盘的职能。
如何实现ERP的底盘化
从长远来看,ERP系统需要进行重构。对于ERP系统,要抛弃原有的体系架构,采用微服务的模式,把业务功能模块化,微粒化。目前有些企业已经在这方面进行了探索,但厂商在ERP上有着长期投资和自身利益,在没有触动的情况下很难自主地推动自身的变更。
是不是这就是一个无解的怪圈呢?如果换个角度,从甲方的角度,我们还是有可能推动这件事的。
不可否认,众多甲方在和ERP厂商的接触和实施过程中,对于数据接口积累了大量经验和代码,但是由于人员的分散,因此与甲方的谈判中处于弱势地位。这些甲方的知识没有共享,每个公司都在要求ERP厂商重新发明轮子,做了大量的无用功。
必须承认,对于二次开发,代码的所有权属于委托开发的企业。如果换个思路,如果我们参考github的模式,成立一个ERP开发的共享平台或服务机构,把已有的接口代码共享出来,根据使用ERP系统,版本,平台,功能等等进行分类。所有共享的企业会因为共享而获得收益。其他用户在需要时可以购买已有的代码,遵循一定的规则维护并更新上传的代码。通过这种众包的形式,不断更新完善功能。
通过这种方式,平台可以在没有ERP厂商参与的前提下提炼出接口规范,倒逼ERP厂商去改善产品。