EE-Forum.org(EEF)-

EE-Forum.org(EEF)_
Categorized as: 企业应用   Tagged as: ,, , , , , , , ,

余彤鹰:企业应用探索十五年之路线图

Author: 余彤鹰,  Source: 企业工程论坛,  Published: 2010-07-30

Excerpt: 本文回顾了十五年以来,围绕企业应用/信息系统这个中心所做的探索,描述了我们探索研究过程中的一些重要的里程碑:起点或动因、认识过程中承上启下的关键点、重要的知识领域或课题。它们构成了一幅围绕着新一代企业应用这个核心目标的,完整的探索研究路线图,既记录了我们的探索历程,也表现出有关新一代企业应用的基本要点与重要课题,和它们的内在联系。我们在1999年初提出的“新一代企业信息系统”框架等前瞻性研究,对国内业界有实质性的影响。迄今仍保持着许多独到的之处。Forrester在2007年9月提出的新一代业务应用概念“动态业务应用”等论述,以及近年国内外IT主流产品的一些发展,还有一些成功的平台产品,在多方面重复或实践着我们的基本观点。综合来看,我们的工作具有很大的前瞻性,正在逐渐得到业界的验证,其影响是可见的,它的意义会越来越大。

1 引言

我们对企业应用/[1]的真正认识,可以从1995年学习、考察、引进、实施ERP类企业应用软件算起。回顾过去的探索历程,可发现许多明显的里程碑:或达成关键的认识,或拓出新领域、新课题。将它们按照探索或引发的线索画出来,呈现为下面这个图。

图中的每个椭圆型可看作一个探索过程的里程碑,绿色的是研究探索的主要起点或动因,黄色的是认识过程中承上启下的关键点,蓝色的是重要的知识领域或课题。连接它们的箭头,呈现了我们的思考与研究的实际过程,并暗合着它们的内在逻辑关系。为了避免图形太复杂,这个图有所简化,尤其在关键问题点方面。图中也不包括相关的常规领域或课题,比如软件工程、信息理论、系统工程、管理学、数学等。这个图比较完整地概括了我们对信息技术企业应用(软件系统或信息系统)探索研究的基本思路和收获点。可以看到,所有列出的方面,都围绕着“新一代企业应用”这一中心课题。

从收获的角度,我们的探索大致可分两个阶段。1998年企业工程论坛创建,发布《企业工程是什么》、《迈向21世纪的企业信息技术应用》等,概括了初期的标志性结果。2001年由企业工程论坛与天津大学管理学院、思维加速公司(现起步软件)等共同发起的“2001北京企业工程研讨会”、2003年互联网实验室的《业务架构基础平台软件产业研究报告》[2]等,显示了我们工作的早期影响。《新一代企业信息系统研究与开发纲要》(2004)概括了早期的研究思路。《新一代企业信息系统——从实质性需求分析与研究到模型驱动系统》(2005)与《在暨南大学管理学院的讲座:企业工程、模型及信息系统》(2007,演示文档下载)主要概括了第一阶段的收获。第二阶段,互联网成为一个新的主要动因,我们在第一阶段的基础上继续深入,并拓展到图中右侧的主要领域,也已获得了一些新的阶段性结果,但尚未做过系统性的发布。下面将按照路线图的线索,对各个关键点及领域做出说明。

1 起点与动因

1.1 管理体系与业务流程

我们实践与认识最初的出发点,是管理体系建设。其中的基本内容,是管理/业务流程的梳理或规划。它是理解“企业变革”、“企业工程”的重要出发点。对管理体系整体性的建设或改造(例如ISO9000)是企业的一种系统工程,这是认识企业工程的关键。同时,综合管理软件或业务支撑系统的引进、实施过程,本身就应当是一次管理/业务体系的改造提升过程,所不同的是它除了类似ISO9000,CMM那样的纯管理或业务要求,还结合着新的工具——企业应用软件的学习与运用。(参看《ISO9000与管理软件应用》)

“管理体系与业务流程”和新一代企业应用的关系,在最初看似乎是间接的,但是,当明确了所谓“信息化/计算机化企业”的目标时,可以看到,企业应用系统本身就将是整个企业系统的有机组成部分,其设计与实施,逻辑上涵盖于整个企业的设计与实施(企业工程)之下。

1.2 企业应用最终用户的困惑

95年左右,我们在完成了一次历时两年,呕心沥血的ISO9000实施及综合管理升级工作后,开始启动一项电脑应用计划:希望把电脑的应用从文档编排、电子表格、dBase小工具应用层次上提升一步,因此,开始学习、寻找、评估适合制造业的管理软件。也就是现在习惯说的ERP类软件。作为前一项工作的延续,我们把软件实施和业务方法改变完全融合在一起。由此,开始切身体验到综合性管理软件的种种问题,包括这些问题的产生和解决。我们首先体会到了一些基本的疑惑,比如:

  • 道理上,似乎符合逻辑的事情都能做到,但现实却很难找到“理想的”管理软件;
  • 大量想要的功能没有,同时总有许多的功能不好用、或没有用;
  • 用户被强迫适应软件产品,而不是软件产品适应用户;
  • 实现一点用户认为非常简单的特殊要求或修改竟然那么困难;等等。

随后,我们接触到了企业再造工程(reengineering, BPR)等思想。在这些先进思想的启发下,得到了一些重要的认识,例如:

  • 电脑的深入应用,会改变甚至抛弃旧的业务方法,因而,综合管理软件的成功实施过程,就会是一次管理体系(业务流程)的改造升级过程。[3]
  • 业务和管理必然是家家不同、动态变化的,这与按照“需求”编制“软件包”之间有着本质性的、不可避免的矛盾,不是简单地说软件好不好或者开发商能力的问题。
  • 理想的软件功能或基本特性,就必须包括“改变”——但那时看到的所有管理软件,都是传统的,用高级语言(可能加上SQL)编写的固定功能系统(通用软件包)。只带有一些非常有限和笨拙的“配置”或“客户化”。
  • “个性化功能”与“动态改变”,不是单纯的程序设计课题,涉及到对软件的理解(按现在的讨论方式,首先是“架构”),还有整个软件公司的开发运作模式与所谓产品生命周期模型。因此,我们很早就理解到,基于编程员作业的“定制编程”生产模式为何难以大规模有效地经营。

综合地看,对这些困惑的思考,结合管理体系改造的经验,将我们引向两个方面的探索:企业变革和IT的作用(异化);企业应用系统的功能、特性和关联的实现方式。

1.3 互联网

互联网已经悄然成为企业应用研究的一个主要“动因”,但这是一个“后话”。我们第一阶段的收获基本不包含这一因素。

真正开始感受到它对企业应用乃至企业的经营环境、内部关系、外部关系的全面冲击,是2000年以后的事情。我们认为,互联网的崛起改变了企业应用的进化路线,其效果,现在也只是初现端倪。但早期提出的“新一代企业信息系统”要点,虽然是在主机或客户/服务器(C/S)及局域网这样的计算环境之下提出的,但我们提出的几乎所有要点都没有过时。互联网带来了更多的要求,例如开放的,更加普遍和复杂的分布式业务及协同作业,更强烈的动态性要求等。无疑,互联网相关的技术吸引了业内的主要关注与资源,至少分散了一些我们认为重要的领域上的注意力。

在互联网这个动因之下诱导出的一个认识关键,就是“开放与动态协作”(见后面叙述)。此外,我们也发现,在典型的互联网计算环境之下(例如:相对仍然有限的带宽、无状态连接和开放性),某些重要的应用/技术机制已经悄然成为下一代企业应用的基础或核心,在当今传统通信等向互联网融合,用户终端多样化、小型化的大趋势下,这些机制的必然性开始更清晰地呈现出来。面向服务架构(SOA)是在这个背景下发展起来的一个典型,但不免陷入纯技术模式的藩篱。云计算的出现,带来更大的变数。而我们关注的一些具体技术,业内的领导企业常有所涉及或发展,但却迟迟不见真正革命性的进展。这既有机会性的问题,也反应了“创新”的基本规律:许多革命性的机会,只有轻装上阵的后来者才能够真正的把握。

2 认识过程上的一些关键点

2.1 企业变革与IT异化

从路线图和上面的说明中可以看到,对企业变革和对企业的管理体系/业务流程的规划,来自于两种基本的活动,最基本的当然就是业务/管理体系建设本身,而综合性的企业应用(管理软件或业务支撑系统)实施,是我们关注的另一种来源。从这里就引申出IT对企业经营管理的影响问题(也就是所谓企业信息化问题),在这里特别点明了认识的关键点:IT的“异化”作用:IT将改变应用对象,而应用对象的变化又在改变对IT的需求——我们在“信息化”这个话题下讨论了这些认识,参见《信息化概念与意义探究:三、一些启发性的理解要点》等系列文章。

再进一步,而从更一般化的角度看,企业是复杂的人造系统,它需要被设计(规划)和有效/可控制地实施。这就是“企业工程”。

2.2 企业应用系统的功能、特性及关联的实现方式

这是认识转变上一个重要的过渡:由“用户立场”转向从“用户、开发者或中立者”等多种立场看问题。由此形成更全面的认识,并逐渐发现一些被忽略的关键——比如,改变或动态性是一种基本的、功能性的需求。而“实现方式”就涉及现在讨论得很多的“架构”问题,或更笼统的“设计思想”问题。它与功能、特性的关联性,是认识的一个要点。有些设计思想及功能等,是相互制约、矛盾甚至无法调和的。

当我们理解了开发者的立场,就发现所谓“需求困惑”的问题,从而渐渐形成了“实质性需求分析与研究”的思维方法。我们也发现,在对企业应用所有的功能或性能要求中,随企业的改变而“动态改变”是对软件开发与架构最具颠覆性的诉求。

2.3 可以动态改变的企业应用系统

如前所述,“动态改变”是对企业应用最具颠覆性的诉求,这是我们最初得到的重要的认识之一。更具体地说,无论是怎样的配置、二次开发、客户定制或者完全的按需生产,最终的目标,都是希望达成可以随着客户的业务、管理变化而动态改变的企业应用系统;它是最困难的,但同时又恰恰是当代企业经营环境对企业的业务和管理模式最大的要求和挑战。

换个角度看,无论它有多困难,但这就是用户需求。必须将它看作需求,而不是麻烦。澄清这一实质性需求之后,再考察传统的软件模式和其开发模式,又会发现,要实现这一要求,必须从软件本身的设计思想(及架构等)到整个开发的模式及应用的生命周期、角色分工与供应链等,做出革命性的改变。

幸运的是,在软件如何能达成动态改变方面,我们很快就找到了其中的要害:以模型表达用户需求,将应用模型与技术平台分离(现在流行的说法是“解耦”);还有解耦后,达成新的有效系统的关键技术原理:“”等。

在这些认识的基础上,我们分析与总结了企业应用(信息系统)的需求环境、提出了“新一代企业信息系统”()的框架,并在1999年1月通过企业工程论坛发布。其中最重要的一份报告,即《迈向21世纪的企业信息技术应用》,在当时中文原创内容稀少的互联网上广为流传,引起了广泛反响。经过十余年的观察,其前瞻性、指导性已经得到了相当充分的验证。国内基于这个基本构思开发的商业化产品,也已经获得了很大的成功。

2.4 开放及动态协作

这是在互联网的背景下着重讨论的一个要点。互联网所带来的变革,在社会环境、企业经营模式、企业的内部、外部关系(从人际沟通到企业协作),包括IT本身,都是空前的,颠覆性的。

我们同样可以从两个方面去理解它的影响和实质性需求:从用户的方面,有基于新环境、新可能性而提出的新实质性需求;从IT方面,有新能力与技术创造出的新可能性。需求困惑——用户需求的不确定性、幼稚性更加强烈。所以,更需要进行实质性的需求分析与研究,同时思考应用系统的新功能和业务方法革新的问题。

互联网带来的影响非常广泛,而且正在不断发生。在这个简单的“路线图”中,我只列出了“开放性和动态协作”一个关键点。开放性的含义是多层次的。从通讯层,到软件配置,到系统间、企业间互操作,等等。动态协作,是在这样开放而且是“分布式”(跨平台及全球性)的背景下的协作,并且常常是个体(人)与电脑(机)混合的协作过程。

在这个背景之下,我们正在重新理解和定义应用系统的功能。无疑,在上一轮研究中提出的NEIS的基本原则仍然是重要的,但需要添加许多新的要素。

3 重要的知识领域或基础课题

3.1 企业工程及信息化

在企业变革及再造工程上再进一步,就是“企业工程”。这是企业工程论坛开创的标志性话题之一,已经做了比较系统的阐述和发表。理论上,IT并非企业工程的本质动因,但在当代企业经营环境之下,IT是无法摆脱、必不可少的伴侣。它对于企业工程有着多重的意义,任何其他的技术要素,都不具备这种地位。从实践的角度,“企业工程”还在系统实施方面与企业应用直接联系在一起,并且需要企业建模工具的支持。(参见《信息技术对企业工程的双重作用》等文)。也是基于这个缘由,我们将“信息化”也归并在企业工程之下讨论。

同时,在今年发表的一些列讨论中我们也明确指出,在企业工程的框架之下,对于近年逐渐被重视和推广的“企业架构”(EA)概念,可以有更全面、完整的理解,参见《企业工程之屋0.92版》、《企业工程的内容与企业架构的定位》等。

在参与一些政府信息化领域的项目过程中,我们也曾将企业工程的基本原理在“政府”这种特殊“企业”的应用做了一些探讨,提出了“政务工程”的概念以及基于模型驱动机制的“电子政务推动模型”(参见《政务工程与电子政务推动模型的提出》)。这是一个十分重要和巨大的应用领域。

3.2 实质性需求分析与研究(ERAR)

这是我们对“需求困惑”给出的基本答案。

按照经典的软件工程观点,对于企业应用应该有什么样的功能、性能的探求,应当归纳在“需求分析”之下。然而,这里存在一些根本性的佯谬或悖论,也就是大家常说的“需求困惑”(参见《系统分析要研究、区分需求在未来变化的可能和变化的规律》)。这种需求困惑,也是最终用户的困惑的直接根源。

我们发现,所谓“需求困惑”的实质,并不是需求表述的精确性和对获取过程的工程化管理问题,这是一个误区,可以看到许多业者仍深陷其中。ERAR的基本观点认为,在新技术应用的领域,需求是一种处于进化中的客观事物,它具有自身的演变规律、生命周期和生存环境。它是悬而未决的未来事物的一部分,并且会因我们的介入(实施或应用)而改变,不确定性、幼稚性是它的基本特征,只有在具体的应用过程中才可能逐步地成熟与稳定。尝试、权宜、改变等,是这个过程的基本组成部分。它的完整生命周期与应用过程是不可分离的。“满足用户需求”不仅仅是一个“发现-解决”的过程,还是一个“研习-创造”的过程。ERAR的基本目标是揭示和总结各种隐蔽的、可能的或未来将要出现的需求,及其需求进化规律,提出或创造新的方案或模式。

这是我们总结出的重要指导思想和方法论框架。这一思想,是在软件工程领域传统的需求分析基础上提出的,是一种自然的深化和升华,因此,我们采用与传统、习惯的称呼对应的表达方式,称其为“实质性需求分析与研究”(Essential Requirements Analysis and Research, ERAR,也可简称为“需求研究”)。我们对于企业应用所有的重要思考结果,都是在这一基本思想方法的基础上提出的。(见《实质性需求分析与研究(ERAR)》)

实质性需求分析使我们更好地理解和参与用户需求的产生和建立,例如理解到“动态改变”是一种实质性的需求,但如何解决这些需求,需要技术的方案。我们同样把建模作为精确捕捉、表达需求的手段,但我们同时把它和“模型驱动机制”结合起来,从技术上解决需求实现的问题。这与现在仍然占主流的,基于模型驱动开发思想,和所谓迭代、增量的开发过程技术完全不同。这些方法,本质上无法解决需求困惑,更无法实现“动态改变”。

3.3 企业建模

企业建模包括但不限于常见的“业务建模”[4]。我们特别强调企业建模应当是企业工程的一部分,以及它在企业工程和企业应用之间的桥梁作用。从现状上看,传统思路的企业建模研究,对企业工程概念并不很重视,与IT领域的业务(流程)建模也还有待融合,对现代企业应用的关系也常常变得含糊。

我们对于企业建模的独特理解,是将企业工程与新一代企业应用联系到了一起,支持这一联系的核心原理,就是企业模型和模型驱动机制,从而对企业应用领域的经典课题IT与业务的“对齐”(align)难题作出了独特的回答。更广泛的考察,可以放在“模型作用机制”的基础上:必须首先搞清楚模型的用途、用法(包括它们起作用的许多技术性细节),才可能真正知道你需要怎样的模型。此外,与常见的研究不同,我们把研究的重点放在模型的用法(作用)和模型本身的内容与逻辑上,而不是放在建模语言上。

在这样的背景下,结合“一般建模理论”和“模型工作机制”方面的工作,在对概念/信息建模、传统企业建模、数据模型、面向对象建模等综合考察的基础上,我们开启了基于一般事物建模(GTM)的企业模型框架研究,以及与之相适配的企业应用框架。这一工作,与统一企业建模语言(UEML),有一定的可比性,但由于其目标与工作机制不同,因此,我们的工作将不同于目前所见的其它企业建模体系——这也是提出的意义之所在。

我们在企业建模方面的实质性工作并没有公开披露过。在企业工程论坛上,曾经有过一些讨论,其内容参见《企业建模与模型的一些讨论观点》等。

3.4 模型驱动机制与模型驱动系统

“模型驱动机制”(Model-Driven Mechanism, )是我们在系统原理层面的独特发现。我们在这个基础上,进一步提出和定义了“模型驱动系统”(Model-Driven Systems, ),见《复杂系统的层级原理与模型驱动软件体系结构》(2002)、《模型驱动机制与模型驱动系统》(2005)、《企业应用与信息系统架构及模型驱动系统MDS》系列讨论等。关于模型驱动机制的完整阐述,可见2007的在暨南大学的演讲稿,其中我们将模型驱动机制的关键特征总结为三点:模型的独立性(独立储存、传输、复制)、时效性(运行期模型)和模型的可进化性(在使用过程中持续改变)。

“模型驱动”概念在近十多年成为IT业界耳熟能详的术语,主要是因为OMG2001年提出了“模型驱动架构”(MDA),并将其确立为未来的基本战略。但MDA的发展并不理想,近年甚至有被边缘化的倾向。对于MDA的问题,业内已经有不少的议论。我们看到IT业许多实质上的“模型驱动”的实践,例如国内外一些成功的应用平台、BPM,以及一些对类似系统或架构的研究(例如Forrester动态业务应用及具体框架设计,微软的Oslo计划等),常常与MDA无关。

我们是在1999年的“新一代企业信息系统”构想中独立提出“模型驱动”这一概念的,从一开始就基于自己的理解、解释和定位。“模型驱动机制”概括了我们的独特认识和发现。这与IT界在MDA方面的研究无关。另一方面看,MDA实质上就是对MDM的一种应用方式;换言之,对“模型驱动”这一术语的共同采用,则并非巧合。

我们工作的另一个重要特征是,一开始就是从最终用户需求,即企业应用系统的基本功能角度提出的,这不仅涉及对应用系统的动态性需求,还包括我们对企业工程与模型及信息系统之间关系的独特理解。因此在为什么必须采用模型驱动、用什么模型驱动、怎样驱动、模型与系统、开发者、企业(业务)分析者、最终用户等的关系等方面,一开始就形成了我们自己的独特认识。

我们坚信,模型驱动机制是解决新一代“可动态改变”的企业应用不可绕过的基础性、核心原理。从经验来看,传统业界人士很少能够一下子接受我们的观点,但近十年IT企业应用领域产品的发展,却在一点一点、稳步增量地证明着这一点。

3.5 模型作用机制

“模型作用机制”(Model Working Mechanism, MWM),是我们在对“模型驱动机制”(MDM)的研究过程中识别出的重要研究领域,就目前对国外的观察,还没有发现类似的课题。它研究模型在一般系统功能/行为形成与控制中的作用方式,并探索和建立其中的数学模型,对模型在实际系统中如何起作用和模型的类型、要求等作出揭示。存在多种不同的作用机制,而我们所提出的“模型驱动机制”,可能会是其中最重要的形式。

模型作用机制与一般建模理论密切相关,是好的、有效地建模需要厘清的前提;对系统架构的设计也有直接的指导意义。它将是新一代企业应用系统原理方面重要、直接的基础。

3.6 一般建模理论

我们首先学习与研究的,正是软件应用领域常见的建模技术,例如所谓概念建模、数据(信息)建模、实体/对象模型等。当然,还有传统企业建模领域的许多沉淀,包括近年兴起的业务流程建模、UML建模和所谓的问题领域建模等。在这些不同的建模方法、技术或模型背后,有许多共同的、规律性或基本的东西需要研究和总结。

我们发现提出一门“一般建模理论”(Generic Modeling Theory, GMT)的可能性和意义,以及已经具备的一些基本条件,包括一些重要的数学基础、哲学基础。

我们有意识地将模型、建模的研究和建模语言的研究适当分离,把“语言”与表达理论、表示法等划为一起。看上去,似乎降低了“语言”的地位,这与建模领域的常见状况不大一样。

我们研究了“一般事物建模”(Generic Things Modeling, GTM)框架,并准备将其作为企业或应用系统(领域或需求)建模的重要基础。

虽然到目前为止,我们都不曾将构造一般建模理论作为自己预期中的任务,但这方面的工作却在相关的研究的过程中,很自然地在积累、蜕变。最近发布的几篇文章,就是从这些积累中抽取的一些片段,例如《一些常见模型类型与分类的初步讨论》等。

3.7 表达理论与表示法

“表达理论和表示法”包括“表达”方面的种种课题,通常所说的建模语言研究也可概括在其中,也可包括图形表示法等,这些不仅仅涉及企业建模,还涉及信息技术领域的各种建模。

“表达理论”目前还是一个比较少见的提法,但这个简单的名词具有很强的概括性。我们对这个方面的一些直接的需求或启发,来源于企业建模,特别是一般建模理论方面的研究。欧阳余山则在多年前,开辟了表达的数学模型研究的先河(见《表达的探究》),并在此基础上探讨企业建模等方面的课题。

与其它相关课题一样,我们的注意力,主要不是放在具体的语言上——我们已经有了相当多的“方言”,然而在实质目标上却难以进步,这里必定有一些重要的误区。

企业工程论坛最近发表的《认知结构三角模型及映像、模型与理论概念》,初步披露了我们在这个方面另一些可能十分重要的思考。尽管多年来,我们始终把新一代应用系统开发实现作为目标,但深入研究的过程告诉我们,理论和技术的发展必须均衡和相互促进。真正的新一代技术,必定有其独特的理论基础,我们的工作在这些方面已经初见端倪。

4 新一代企业应用的发展与我们工作的地位

“新一代企业应用”是我们整个探索的中心。首先,这里的“企业应用”,主要是指企业综合管理与业务支持系统,它应当支持整个企业的运作/管理体系。我们认为,除了一些非常专业化的软件(例如:各种专业性的辅助设计软件)将长期保持独立外,其它的综合性、业务支持性功能,例如所谓管理信息系统(MIS)、事物处理系统(TPS)、企业资源管理系统(ERP)、决策支持系统(DSS)、制造执行系统(MES)、人力资源系统、设备管理系统,包括业务流程管理(BPM)等等(参见《企业应用发展线索分析》),它们的功能,在企业内都应该表现为一个统一的有机系统,而不是由数据、流程割裂的系统再去“集成”。只有那些功能相当独立的专业软件,集成的方式才是适当的。而所谓“新一代”,是以我们最初发现的一些基本特征而言的,不仅涉及功能,还涉及整个产品的应用方式、生命周期、供应链模式等。理论上说,没有互联网的因素,按照我们的构思,足以形成一个特征强烈的产品世代。互联网的崛起,迫使“两代”的革命一起发生。

事实证明,即使在飞速变化的IT领域,真正认清并普遍接受这些革命性的思想并非易事,而互联网这一因素,又在相当大的程度上夺走了人们的注意力。虽然对当代企业“变革”(change)的认识,从上世纪80-90年代起,就已经成为一种常识,但真正认识到企业应用本身“必须、也可以”随需而变,并落实到运行期企业应用系统,能实现全新的用户系统生命周期和供应链模式的方案,却不多见。

例如,同样以“模型驱动”为基础的MDA,实践上基本局限于模型驱动开发(MDD)和基于模型的代码自动生成,所谓“可执行模型”基本被认为是不适用或不现实的。在这些年企业应用的平台化大趋势中,绝大多数的方案,实际上是落入了“企业应用开发平台”的范畴,也就是比传统的集成开发环境(IDE,例如曾经的Delphi)更专用的、自主的开发环境。另外许多的“企业应用平台”,实际仍然是集成化的固定功能通用系统,只不过包含了所谓“协同”和“自定义工作流”。互联网强化和扩大了这方面的需求,使这一类系统广泛流行。但抛开工作流这一部分,在解决传统软件所覆盖的企业基本管理与业务问题时,往往与旧的管理软件没有本质的区别。

近年兴起的业务流程管理(BPM)类软件,实际上是国外最能体现我们提出的模型驱动机制作用的大规模实践之一。在更早的时候,我们就对工作流有较清晰的认识,认为它可能形成新一代企业应用的重要、甚至核心的功能(基础)[5]。但我们强调从企业的整体综合性解决方案出发,实现对真实业务流程的支持,它是企业应用功能的一部分。从BPM的“动态流程”的实现,到综合性企业应用系统功能的动态化之间,还存在实质性的门槛。而迈过这一门槛的努力,正在按照我们所预想的方式上演(例如,《国外业务实体建模与业务流程管理(BPM)的新动态》)。

目前看到的,国外IT界与我们1999年提出的新一代企业信息系统具有真正可比性的重要例子,是国际著名IT咨询研究机构Forrester的John R. Rymer与Connie Moore等2007年发表,名为“The Dynamic Business Applications Imperative”的报告,这份报告提出了“动态业务应用”(Dynamic Business Applications)概念,称之为“新一代业务应用”(或新一代企业软件),核心原则是“为人而设计,为改变而构建”。2008年Vasile Buciuman-Coman与Michael Chervenic等发表“Beyond SOA: A New Enterprise Architecture Framework for Dynamic Business Applications”(见《超越SOA:动态业务应用的新企业应用框架》,InfoQ,2008),介绍了这一基本概念的企业应用框架如何和实现,提出了“自适应企业操作平台”(Adaptive Enterprise Operating Platform, AEOP)。我们初步看到,其技术性框架的构思有许多独特的地方,但那是一种全面的、运行期可改变的应用体系,而且呈现了典型的“模型驱动系统”特征,并且这些模型并不是软件系统模型。

在国外,我们发现的另一个模型驱动的企业应用系统例子,是Havard Jorgensen等的博客(可能要翻墙访问)中介绍的。他们的基本概念是“活动知识建模”(Active knowledge modeling, AKM)——用于动态可配置SOA的,以业务为中心的方法。他们明确地提出了“模型驱动应用”(Model Driven Applications),其主要目标,是建立一种新的软件平台,可以通过建模而不是编程来配置和改变其作用——这种想法已经“不稀奇”,我们更看重的,是其包括了如下要点:由业务用户驱动、使用业务概念建模、用户在“运行期”(runtime)建立AKM等——他们很好地重复、验证了我们提出的一些关键点。这些资料的发表时间,是2009年,据称他们的平台开发已经进行了十多年。

国内的经典实践案例,无疑就是北京起步软件(最初名为思维加速)的业务基础架构平台。这个产品的最初设计时(2000年左右),正是直接参考我们1999年发布的“新一代企业信息系统”框架进行的。经过多年的积累,在产品和商业化方面都已经相当成熟。

比较国内的一些平台产品和国外主流厂商产品线与战略及一些方案、理论展望[6],我们初步认为,在新一代企业应用平台,尤其是模型驱动应用系统平台(注意不是MDA)方面,并不见得落后,某些方面甚至还可能局部领先。在国内管理软件领域,对于“企业建模”这一传统上来自工业自动化等领域的、学术性很强的概念,关注程度也高于国外的一般情形,关注的角度、重点也有所不同。

综合来看,我们的工作具有很大的前瞻性,正在逐渐得到验证,其影响是可见的,它的意义会越来越大。

5 进一步探索的若干设想和困惑

这些工作坚持到这一步,凭个体的力量再进行下去,已经非常困难。在资源与精力的限制之下,我们只能越来越偏向某些领域的纯理论讨论和总结。下面这些主要课题,十分值得投入大量资源进行开发:

新一代信息系统的设计开发:虽然已经有了一些产品开发的实践,但现有的产品还存在各种的问题。其中一个方面,就是此类系统往往显得庞大、笨拙,而这一点在当今的互联网应用环境中,更显突出。此外,在用户参与或整个应用生命周期上,往往不能完全达到预期的目的。“轻量化”的程度,实际上是一个很好的指标,可以衡量出架构设计与实现技术等方面,对于新一代企业应用的原理、关键把握的程度。而应用系统功能改变的过程,到底需要哪些、什么样的人完成(例如,是否要学习很多业务无关的特殊技巧),是另一个重要的标尺。这里的空间很大。市场上大部分的平台,还只是或多或少地部分体现了新一代应用系统的特征,而常缺少、忽略一些关键的东西。以Forrester的“动态业务应用”宣言为标志,国际IT主流对这个课题的真正重视或许就会到来(可能很多计划已经在进行中了),其中包括我们所强调但一直没有被“主流”采纳的一些关键点。

我们能够根据具体的应用系统开发目标,完成从应用架构设计到功能设计、模型设计的工作,并与软件专家一起进行技术架构、数据架构等的设计,对一些技术关键(例如模型驱动机制)的实现给予指导。

一般事物建模与企业模型框架的研究:这个工作我们已经有了清晰的方案并初具雏形。从应用角度看,“一般企业模型框架”[7]本质上是一种标准化方案的设计,很可能会成为新一代企业应用竞争的战略制高点。要达成可发布、达到执行级标准的工作,需要投入较大的工作量和资源(例如,其中包括对于同类、相关工作、标准或方案的梳理)。这个工作,对于新一代企业应用,和与此相关的企业工程实现,将是重要的基础。

企业工程:这是一个具有独立发展可能的领域,特别适合学术界与咨询服务界的参与。值得展开的工作包括知识与理论体系的构建、总结,特别是在实施方法方面的系统总结和积累,以及各方面的深入研究、应用推广、学科建设等。《如何深入开拓企业工程》讨论了这个话题。

其它技术或理论的研究课题:我们在探索的过程中,积累了许多具有应用/技术、理论/学术双重价值的课题或研究方向。它们或者具有直接应用价值,或者涉及某些应用技术(主要是电脑软件方面)的基础理论。有些具体课题,只要做一些系统的文献综述与比较,就能够形成具有很好学术价值的论文。还有一些饶有兴趣、深入的课题,需要或值得特定领域的专家(例如数学家)共同研究探索。

我们一直在寻求和尝试直接进行开发新一代应用系统的开发,但始终没有机会跨越人才和资金方面的门槛。我们也设想,将论坛实体化,或创建某种形式的研究所,以此为基础,与感兴趣的机构(企业、研究机构或个人)合作开拓。然而以我们的资源和经验,也还没有找到实现的途径。

6 后记

秉承企业工程论坛一贯的原创、共享精神,我们在这篇公开发布的文章中,对多年来的研究思路和要点做了系统的梳理和回顾,希望与各方面的朋友广泛交流,包括在具体的领域、课题上合作研究或开发。虽然有企业工程论坛这样的公开平台,但我们许多工作(尤其具体内容和后期的工作)并没有做过多少介绍。第一层的原因,是我们一直将企业应用开发作为直接追求的目标。另一层重要的原因,是国内的现实环境:公开的发表,有时差不多就是为“表姐”送嫁衣裳,甚至沦为抄袭者的热餐(可参见《抄袭不成过街老鼠,何来创新沃土》)。

互联网极大地改变了企业应用的环境、技术与需求,也使我们能够始终保持对国外IT等领域基本趋势的跟踪与观察,从而得以避免许多闭门造车之弊。正是基于这种观察,加上企业管理与应用第一线的实践,才能对自己的工作保持着坚定的信心。如果说十多年前,我们只算是有些独特见解,会开发数据库软件的企业管理/企业应用跨领域顾问,经过这十年多年“不食人间烟火”的执着探索,我们已经在企业应用开发及原理的许多方面有了广泛的研究和积累,形成了系统的知识和研究方法。

[1] 名词上,企业应用(enterprise applications)是相对最宽泛的。我们早期多使用企业信息系统 (enterprise information systems)这种提法。作为泛指,这些提法反映了不同的侧重点和习惯,企业信息系统可能被理解得窄一些。本文将主要使用“企业应用”一词,详见后面的说明。
[2] 这份开创性研究报告正式咨询并引用了我们的工作。随后不久,另一家国内IT咨询研究机构计世资讯也发布了类似的研究报告。这一年,成为国内业务架构基础平台软件概念的元年。
[3] 留意,这个认识在十几年前国内开始炒作ERP时,是相当前瞻性的,但现在如果仍然单纯强调这一点,把软件实施者提升为先进管理方法的传播者,是有问题的。我们至少应当看到,如果有了能够“与企业一起成长”的软件架构,那么这个实施的过程(或企业学习、改进的过程)就会完全不同。
[4] 国际上流行的主要用语通常是business多于enterprise,而中文里的“企业”和enterprise有许多微妙区别。
[5] 这也是个相当复杂的话题,可参见《工作流是什么》、《工作流与业务过程管理的区别及其他讨论》等。
[6] 这个方面的资料不多,尤其近几年对国内的产品发展追踪也十分有限。我们只是从少数代表性的IT媒体和一些业内知名厂商动态上,对所谓“主流”的宏观状况作出判断。而创新技术早期可能在世界的任何一个角落已经有非常好的探索和实践。
[7] 特别要区别于当前讨论较多的“企业架构框架”。

Copyright

本文允许自由转载,但须保持原始署名及出处。网络媒体需保持文中活动链接。

Cite Style

GB7714 style: 余彤鹰. 余彤鹰:企业应用探索十五年之路线图[EB/OL]. 企业工程论坛, http://www.ee-forum.org/pub/ty/2010-07-p1544.html, 2010-07-30[2014-07-26 03:05]

Chicago style: 余彤鹰, "余彤鹰:企业应用探索十五年之路线图", 企业工程论坛, http://www.ee-forum.org/pub/ty/2010-07-p1544.html(accessed 2014-07-26 03:05)

Posted by   2010-07-30(原发)   Hits 15824   Modified 2010-08-06(Locked)
Prev Post: 
Next Post: 

Related Entries:

一个模型驱动企业应用平台架构方案框架
模型驱动软件开发与工程的现状
札记:微软企业应用软件(Microsoft Dynamics)的发展
企业IT系统开发
企业应用与信息系统架构及模型驱动系统MDS(一)

17 Comments

  1. 星期天做有闲阶级,随意浏览网页,忽然发现大作发表,先睹为快。
    15年光阴不虚度,留下了真金白银。
    先喝一声彩,待我慢慢学习体会。

    • 星期天一大早来看这个,可见yushan与我是同类人啊。

      这两天,我想起了很久以前看到:成功登顶珠穆喇玛峰的登山队员,成了世人的英雄。可实际上他们有一些本地向导——这些向导才是最先登上珠峰的人。

      这些向导,恐怕只能在山沟里放羊。如果某天,在一处山沟沟里,发现老余在放羊,大家切莫惊讶哦

  2. 反应了“创新”的基本规律:许多革命性的机会,只有轻装上阵的后来者才能够真正的把握。
    ==========================================
    此言极是。
    轻装上阵者已经人剑合一,不再被技术纠缠所分心。

  3. 这个图比较完整地概括了我们对信息技术企业应用(软件系统或信息系统)探索研究的基本思路和收获点。可以看到,所有列出的方面,都围绕着“新一代企业应用”这一中心课题。
    ==============================
    很精彩的一个路线图。
    李商隐的名句:曾省惊眠闻雨过,不知迷路为花开。
    图中的每个椭圆形都如同一朵花,流连忘返。

    • 曾省惊眠闻雨过,不知迷路为花开

      余山兄引用这两句,正是我过去十几年的写照啊

      • 只是没有完全迷路,毕竟绘出了路线图嘛。

        • 呵呵,正所谓梦中云雨,水中花月,“有娀未抵瀛洲远,青雀如何鸩鸟媒”。你说这是迷也不迷?也许我只能就此绘一幅荷塘月色,聊以自慰而已。

  4. “个性化功能”与“动态改变”,不是单纯的程序设计课题,涉及到对软件的理解(按现在的讨论方式,首先是“架构”),还有整个软件公司的开发运作模式与所谓产品生命周期模型。因此,我们很早就理解到,基于编程员作业的“定制编程”生产模式为何难以大规模有效地经营。

    所谓“新一代”,是以我们最初发现的一些基本特征而言的,不仅涉及功能,还涉及整个产品的应用方式、生命周期、供应链模式等。

    幸运的是,在软件如何能达成动态改变方面,我们很快就找到了其中的要害:以模型表达用户需求,将应用模型与技术平台分离(现在流行的说法是“解耦”);还有解耦后,达成新的有效系统的关键技术原理:“模型驱动”等。

    我们坚信,模型驱动机制是解决新一代“可动态改变”的企业应用不可绕过的基础性、核心原理。
    ====================================
    这个认识很宝贵。
    我们试图用规划来克服变动,这是一种以全面来覆盖特殊的方法,虽然能解决一些问题,但是还是开发与运行期分离的。只不过是开发前加入了所谓规划,来避免开发的风险,这对大规模开发是有意义的。
    但是,这种方式本质上还是“发现-解决”的模式,还不是一个“研习-创造”的模式。
    企业模型的意义正在后一个模式中发挥作用。前一种情况,原则上不需要模型?

    • 这正是要点。

      前一种情况的模型使用,就是“模型驱动的开发过程”。例如MDA领域所提出的MDD。还有人提出了类似的MDE(模型驱动工程)。系统工程(SE)领域也有模型驱动系统工程这样的概念。通过MDM的“时效性”判据,可以很清楚地区分这两种不同的模型作用机制。

      说出来,简单得同白水一样。但观察一下现在许多“权威”的指教,仍然可以看到业界相当多的人没有跳出陷阱。

  5. 前几天在网上别的地方看到此文,明确标明了引自本网站,可能是“自动翻译(自动索引?)”的原因,发现文章的词句不一样了。我还以为是余兄又做了修改,所以今天又读了一遍。
    余兄过去的文章我都反复读过,但是看了这篇以后,才知道以前那些并没有完全读懂。这篇文章的一大作用就是起导读作用,把笔者过去的工作和思考连贯起来,提供了一个大的阅读语境,非常好。

    • 余山兄及各位曾经在企业工程论坛上讨论的朋友们的关注,是鼓励我前行、不放弃的重要动力啊。

      这个线路图反映了我实际探索的历程,它同时呈现出强烈的内在必然性(真正认识这种必然性,并不容易,哪怕是事后,即现在)。人生其它的路我也许诸多困惑,可这条“探花之路”,我却不曾困惑过——这也是迄今不放弃的一个内在原因。纵使如此,现在每当我要在一个具体课题上展开,都要花一段时间来“激活”有关的线索。因为这个体系确实很大、涉及的面、层次都很广泛深入。这个程度上进一步的有效研究,照理应该是团队作业了。

      这篇文章7月30日发出后有一点修改(包括摘要),最后修改日期是8月6日,并已经“锁定”——即,无论再发现任何问题,不会再修改发出的原文了。必要时也许发一些“勘误”之类。

  6. 春节这些天有点时间整理了这些年自己的学习思考,仿照余兄的“探花”之路,我也列出一个术语表来凑趣:

    架构、平台、业务平台、分层、松耦合、系统集成、数据整合、
    门户、用户角色权限模型
    服务、面向服务的SOA、组件化集成化开发
    流程管理优化、工作流、功能模块、业务需求
    IRP信息资源规划、顶层(总体)设计、对开发的约束
    数据中心、综合(统一)信息系统
    模型、模型驱动机制、企业模型、UML语言
    标准、数据标准、数据共享与数据交换、XML
    语义架构、指标体系、元指标评价体系
    企业咨询、企业工程、质量管理体系、程序文件

    • 这些要素涉及了企业应用的方方面面。关键就在于怎样把它们联系起来。仅仅在这样的层面上讨论它们的内在、有机联系,也已经比业内“主流”挂在嘴边的所谓“IT与业务的对齐”(或对接、连接,align)要深刻

  7. 企业工程是对企业行为自身的表达,所谓的企业模型,
    企业模型不是技术平台,而是业务平台的最终依据,所谓的实质性需求分析
    业务平台的应变能力正是企业模型(企业工程)超越传统企业管理之处,也是它对企业管理表达提出了的新要求,依赖IT工具(模型、平台),给出了管理中立者的叙述立场,

  8. 余生,许久失联,我现在江西吉安,做五星级酒店筹备,我电话仍是137*8,请联系。

Trackbacks

  1. Models: Execution or More « THINK IN MODELS

Leave a Response