由企业应用集成浅谈组件化模式的企业架构
在今年的年会上,总裁高瞻远瞩,站在企业运营和架构的绝对高度上一语道破未来企业信息架构的发展趋势:云计算、集成(优化)、商业智能。这三个方面对应着企业信息架构的三个层面:
1、在信息化基础设施建设上,绝大多数的公司都存在着资源的浪费,资源不能很好的合理均匀的分配,所以造成系统忙时资源不足,闲时资源浪费。而云计算采用虚拟化等先进的技术,提供按需的动态分配资源的方式,将企业的IT基础资源得到合理的有效的利用,降低企业的运营成本。
2、在企业业务事务上,随着越来越多的系统建立起来,逐渐开始形成信息孤岛,集成的目的就是在企业内部消除这些信息孤岛。而随着全球产业的一体化,公司间的业务将更加的频繁,企业的信息架构要不断的向外延伸,在整个供应链上进行系统集成和信息优化。
3、企业的数据是企业宝贵的财产,只有有效的利用这些数据,为企业的运营提供准确的商业分析和战略决策,那么这些数据才能发挥最大的价值。商业智能是立足企业决策层,站在企业管理和商业运营的角度上,通过大量的数据分析,为公司的战略和发展提供决策支持。
从一毕业进入公司,不断的学习成长,目睹了集团这几年的快速发展,也亲身经历了集团的信息化建设历程。作为集团新一代面向供应链全过程管理的ERP系统前期设计及基础业务平台的研发的参与者,我想通过总裁阐述的企业应用集成谈起,泛泛的描述我所理解的企业架构和基于组件化的信息化建设思路(尽量避免专业术语,以便更容易理解)。
企业应用集成(EnterpriseApplicationIntegration,EAI)是完成在组织内、外的各种异构系统,应用和数据源之间共享和交换信息和协作的途径,方法学,标准和技术。企业应用集成所连接的应用包括各种电子商务系统,企业资源规划系统,客户关系管理系统,供应链管理系统,办公自动化系统,数据库系统,数据仓库等。企业应用集成主要分为用户界面集成,流程集成,应用集成,数据集成几个层面。
集团短短几年的发展,信息化建设也非常的迅速,OA的普及,ERP对集团业务的支撑,电子商务也日渐起色,还有周报月报等其他的系统,这都源于高层对信息化建设意义的正确认识,对IT系统的大力支持。在企业内部,集团一直在使用一体化的ERP系统,信息的集成度较高,不存在真正意义上的信息孤岛。在产业领域,集团是一个以营销、流通为主的商业公司,处在产业链的中游,信息系统不仅仅要满足企业内部的业务运作,更要打通上游供应商和下游商业客户的信息资源,使得资源从企业内部的管理规划扩展到企业外部的行业或动态联盟供应链上的调配和规划。
对于集团来说,由于对信息化的重视和一体化ERP的广泛使用,已经跨过了一个企业普遍经历的IT治理的过程。集团是一个年轻的公司,以后的路还非常长,未来的潜力是巨大的,对于这样一个快速发展的公司来说,未来将充斥着更多厂商,同构异构的系统,一个很好的IT规划和优化IT服务是一件意义重大而又亟待实施的事情。而此时将下一代的基于供应链全过程管理的ERP系统和基于组件化业务平台的架构研发提上日程,具有很强的战略意义。
供应链管理将打通集团在整个产业链上的信息流和业务流,在企业下游供应链上,通过信息集成和共享及时掌握客户的需求和变化,整合资源为客户实现优质和及时的服务,从而扩大客户群落和扩大市场,提高销售额和增加利润。在企业上游供应链上,与供应商结成长期的、稳固的和互惠互利的共赢伙伴关系,以最低的成本和最短的时间内获得策略性的资源,与供应商共享信息、协同运作来使他们快速和高效的响应自己的需求,从而节约成本、缩短产品投放市场的时间、增强产品和服务创新能力以及自己响应市场和客户的能力,赢得市场,实现获利。基于供应链全过程管理的ERP系统,将企业内部和企业间的资源有效的整合起来,提升了业务处理的协作度和速度,并且为集团的战略决策提供了全面而统一的数据支持。
下图为企业上下游之间的供应链管理示意图:
而构建这样一个庞大的,统一的企业IT架构是一件非常有挑战性的工作,我们结合业内流行的信息架构方案和未来企业应用的发展趋势,提出了基于业务组件平台的架构方案,将企业应用化整为零的开发实施,同时我们在IT管理方面我们架构一套化零为整的业务平台进行资源的统一管控。
简单的解释一下什么是业务组件。
业务组件是一系列不可分割的业务活动,是构建专业化企业的功能模块。业务组件的优势在很大程度上来源于其具备两个相关但截然不同的特性:首先,组件之间通过松散耦合方式进行链接,具备灵活、响应快、适用能力强的特点;其次,组件内各活动的凝聚力强,可对外提供效率高、质量好的服务。业务组件可独立运行,因此能够独立升级和相似替代,而不影响整个应用。
采用业务组件将为我们带来哪些好处?
1、业务活动划分更加的清晰。以现有系统的设计和使用情况来看,我们的业务划分不是非常清晰,业务与业务之间的关联紧紧的耦合,满足了某一范围某一时段的个性化需要,但是缺失了业务职责的清晰性,而且系统升级将会变的越来越复杂。基于业务组件的设计的系统,将避免这个问题,不同的业务领域被强制分割开来,组件内体现了相关业务的紧密性,组件间的业务也通过更加标准化的接口进行交互。只要交互接口保持不变,组件可独立升级,部署,优化。
2、共享系统资源,减少不必要的浪费。不管是做现有系统的集成,还是像大多数SOA平台厂商宣扬的那样,系统集成交给SOA平台处理,都或多或少的存在着基础的功能的重复开发。各个系统都包含权限、流程、组织结构管理等系统功能。这是资源的浪费,对于自建系统来说,这种浪费带来的成本的增加尤其明显。同时无法对公共资源进行统一管理。业务组件的模型,将这些基础的功能作为企业的公共资源交由平台统一管控,业务组件只专注于业务的事务处理,避免重复的功能开发,也便于业务组件的独立的发展。
3、提高复用能力。组件化的开发模式从本质上不仅是抽取独立的功能,更是为了能最大限度的复用,提高开发的速度。而业务组件提高了业务的复用能力,以往我们在开发各个系统时,会存在很多相似的功能,比如ERP中存在库存管理,而供应链管理系统中也可能存在库存管理,在传统的开发模型中,这是两个需要独立开发的功能,而在业务组件模型中,库存管理可以被复用(可分为开发时的复用和运行时的复用)。如果在系统构建的过程中,采用标准化的设计和通用的行业解决方案,业务组件将纳入到业务组件库,一旦形成多组织参与的业务组件库,我们将会给更多的企业提供信息化的解决方案。
4、业务组件的自治性增强了系统运行的弹性。业务组件独立运行,提升了原子事务的处理效率。业务组件的独立运行,降低了企业系统的故障风险,一个业务组件的故障不会影响所有业务的办理。基于业务组件模式的分布式系统,可以更加有效的和云计算平台结合,合理的为每个业务组件分配计算资源,比如财务组件的系统负荷高,可单独为其分配更多的资源,比如商业智能需要在晚上进行大量的计算,可动态为其在晚上的时间段追加资源。根据企业业务发展的需要,可以按需添加业务组件和卸载业务组件。这些都是基于业务组件模式带来的企业应用的可伸缩的弹性。
业务组件化是一种创造性的企业架构思路,但是业务组件毕竟只是一块块的积木,如果用它搭建起一个完善的系统,这就需要用到上面提到的企业应用集成。基于组件化的架构,我们需要一个企业业务平台,他不仅仅包含企业系统的基本功能,如权限,组织机构,它还要担负起业务整合,公共资源的统一管控的重任。下图是企业业务平台的总体架构图:
上图已经将基于业务组件的IT架构清晰的勾勒出来了,系统平台就像一个插排,而业务组件能方便的插上和卸载,通过强大的流程引擎进行业务重组,通过主数据的管理保证集团基本数据的一致。
在这个过程中,组件化的开发模式能够快速的针对业务进行开发升级,实施部署,提高了业务的响应时间,通过平台强大的整合能力,进行业务的整合和流程的重组,快速的响应高速发展带来的不断变化。组件化的IT架构将为集团的企业信息化建设带来惊喜的变化,以IT的力量推动业务的快速扩张,支撑集团全面的战略实施。