基于SOA技术的ERP系统敏捷架构研究

时间:2022-07-25 06:17:40

基于SOA技术的ERP系统敏捷架构研究

摘要:为解决现有ERP系统不能灵活响应业务流程重组、不能灵活集成其他应用系统等问题,对现有ERP系统敏捷架构进行了分析,指出现有ERP系统敏捷架构中存在的关键问题。通过分析面向服务架构(SOA)的特点,以及针对存在的问题,提出一个基于SOA的ERP系统体系敏捷架构的解决方案。总结SOA应用到ERP领域的优势,得出采用SOA架构解决方案可提高ERP产品的柔性和灵活性,从而提高企业的核心竞争力。

关键词:ERP系统; 应用系统; SOA的工作原理; 体系敏捷架构

中图分类号:TN91134文献标识码:A文章编号:1004373X(2012)04003803

Agile architecture of ERP systems based on SOA technology

ZHOU Shizhong

(Xiamen Institute of Software Technology, Xiamen 361024, China)

Abstract: To solve the problem that the existing EPR system can not flexibly respond to business process reengineering (BPR) and can not flexibly integrate other application systems, the prompt architectures of the existing EPR systems are analyzed, and the key issues that lie in the prompt architectures of the existing EPR systems is pointed out. The features of the serviceoriented architecture (SOA) are also analyzed. A solution for EPR system prompt architecture based on SOA is proposed for the problem. The superiority of SOA applied to the EPR realm is summarized. A conclusion that the solution of SOA architecture can improve the compliance and flexibility of the EPR products is obtained. It can enhance the competitiveness of the related enterprises.

Keywords: EPR system; application system; operating principle of SOA; system prompt architecture

收稿日期:20110926老式的企业资源计划(ERP)系统是一种应用软件系统,它在业务模型和管理功能同时驱动的情况下实现多模块集成。但是它的结构比较复杂,灵活性不高,并且不能适时的根据不同行业间的动态业务需求和企业的内部业务流程做出相应的变化。针对这一问题,就如何在提高ERP系统内部结构与效率,降低不必要的成本的同时,提高系统的敏捷性,并且在此基础上提供一套完整的企业间相互协同合作方案,建立了研究课题。在本文中,我们将着重对ERP系统敏捷架构进行研究。

1ERP软件系统

近几年来,ERP系统的应用范围越来越广,因此得到了众多企业的重视。经过多方面的改造,ERP软件系统的开发技术也提升了一个层次。主要是,企业在实施ERP项目的同时对ERP系统的要求也越来越高,特别是对ERP软件系统的实用性和敏捷性的要求越来越高。因此,对ERP系统敏捷架构的研究,迅速满足用户的需求对企业实施和应用此系统具有非常重大的意义。

(1) 将出发点放在业务流程上,以业务流程建模技术和面向服务对象的方法与技术实现应用系统的分析。业务流程是指企业为了完成某个特定的目标,利用一系列的逻辑关系来完成的企业活动的集合。对业务流程的关注有利于及时发现并删除流程中不必要的环节,提高各业务部门之间的相互协作水平,提高各业务部门所处理的信息流动,从而提高企业的敏捷性和客户服务的水平。

(2) 引入工作流的管理技术,利用工作流管理系统,其重点是强调流程的建模与执行的分离情况。在WFMS支持下的工作流的建模过程,强调的是对外部应用及人员的集成,这样就可以用它来实现人物的分配和流程执行进度的全面监控。如这种流程逻辑同功能实现相分离的特点,就极大地增强了系统的柔从性,使流程有更大的空间可以制定,就更能满足企业业务流管理的持续改进,从而提高流程的敏捷性。

(3) ERP系统的相互组件化,系统通过不同的组件组合和替换,就能够达到支持ERP系统的重构与演化。软件组件是一个可以独立生产、获取和部署的单元,通过组件的重新组装就可以实现“组件化”的功能系统。将软件组件分离,使接口规范与具体功能能够展现,所以组件替换方式是系统升级及演化的一种方式。对企业业务流程进行相应的分析,与对象的组件化技术向结合,就可以实现应用系统业务组件体系结构的复用,建立以工作流建模为核心的敏捷化的ERP系统结构。

综合以上分析,了解了ERP是一个以复用为主要途径的,具有层次化特性的企业应用系统业务基础软件。而系统敏捷性的构建直接影响了基于产品复用方式构建ERP系统的灵活使用性。

2面向服务架构的工作原理

SOA是一个组件模型,它通过定义良好的接口和契约将应用程序的不同功能的功能单元联系起来。这里的不同功能是指不依赖于上下链接的一组功能。接口的存在独立于实现SOA的硬件平台、操作系统和编辑语言。SOA体系结构如图1所示。

图1SOA体系结构在SOA中主要有3种角色:

服务的消费者他们是利用服务注册中心查找到自己所需要的服务,然后使用这项服务。

服务的提供者他们创建了服务,并且对使用该服务的请求进行回应。

服务的注册中心将已经注册并的服务进行详细的分类,并提供搜索功能。

SOA就相当于一个服务信息的数据库,将服务提供者和服务消费者放在一个合理的平台上,两者都能找到自己所需要的,于此同时,服务注册中心必须是通用的,使服务的提供商所提供的服务能够符合这个标准。这样,服务的消费者使用这些服务才可以跨越不同的服务的提供者,并且可以实现每个实体角色的变换,例如一个实体可以同时充当以上三种角色的任何一个乃至多个。

SOA的主要操作有:

服务服务的提供者可以在服务中心注册属于自己的服务功能及访问接口。

发现服务服务的使用者可以通过在服务中心查找特点种类的服务。

可调用性在获取服务描述的信息后,服务的使用者可以去调用此项服务。

现目前,能够实现SOA的技术有很多,比如Web Services,CORBA等。这些技术都能够支持在不同平台上,用不同的语言编写的各种程序,他们之间能够相互通信。例如:其中作为SOA的一种实现手段Web服务,它可以提供在可扩展标记语言(XML)上能够执行的标准接口,具有非常完整的封装性、松散耦合性等特点,对于SOA的应用模式需求能够良好的满足。目前已经有许多的基于XML的Web服务标准被业界广泛的接受。于是就形成了Web服务的核心技术。

3系统敏捷架构研究

关于流程敏捷化问题:如果要适应日趋激烈的市场竞争,就要求企业能够迅速的根据外部环境的变化对现有的业务流程进行调整。众所周知,以前的ERP系统只能硬性操作,不能灵活变通,当企业环境与结构的随着业务活动需要进行灵活变化时传统的ERP系统不能灵活的调整,造成了不必要的浪费,并且对企业的发展也起到一定的抑制作用。

系统敏捷架构的主要作用:

(1) 在出现用户产品投诉的时候,能够及时有效地根据产品号码追溯这批产品的所有生产过程信息,可立即查到它的原料供应商、操作人员、经过多少工序、生产时间日期以及关键的工艺参数。

(2) 当同一条生产线需要混合组装多种型号产品的时候,它能够及时的防止工人部件装配错误、产品生产流程错误和产品混装等方面错误。

(3) 能及时统计出过去12 h之内生产线上出现最多的5种缺陷产品的次品数量各是多少。并且能够根据目前仓库以及前工序、中工序、后工序线上的每种产品数量各有多少,分别是哪些供应商需要,如何能够及时交货提出详尽的规划。

(4) 能快速的自动对产品的质量检测数据进行统计和分析,精确的区分出产品质量的随机波动和异常波动,消除质量隐患。

(5) 能够自动的统计每个过程中的生产数量和合格率,以及出现缺陷相关的代码。

老式的ERP系统只能使用一套硬件平台,操作系统、数据库和应用软件,这就非常的局限,不能够全面地解决现有集团企业内部的所有管理问题。并且,对于不同的应用厂商,根据其自身的特点,往往会选择不同的平台和应用系统,但是,这样不仅无法及时适应企业内部的相关变化,对于企业系统的升级时的选择就非常的局限,也减缓了其应用的敏捷性。操作系统和数据库管理系统对于构建大型企业非常重要,是它所应用的基础通信及数据支持设施。网络环境下最重要的一类中间软件是应用服务器,它能够在各种领域中独立应用,通常应用于核心服务或功能以及扩展服务及功能上面,它的最常见的功能或服务包括运行时候的执行处理能力、DBMS访问和链接性、动态的Web页面系统以及上下文的会话管理等。业务基础软件平台层的主要目的是在大型项目团队的协作中起协调作用,并能够开发活动,它是一个位于底层支持系统上的软件抽象层,主要作用是任务分解及资源的分配、进程的控制、访问的控制以及配置的支配等,通过提供一定的工具接口,来支持系统内部与外部各种工具的无缝集成。

在SOA技术还没有出现之前,ERP系统的各业务之间的关系非常复杂,并且都有所牵绊,如某块业务功能升级将引发整个ERP产品的升级,这样将对业务的进行和信息部门都带来很大的压力。其中某一业务模块的调整也将对整个企业的相关信息处理工作带来非常大的影响,就像因为系统升级需要频繁的停机安装组件和备份文件,就容易带来相关模块操作流程和界面的改变,让整个系统应用变得更加复杂,刚性极强不利于各个部门的相关链接。现在的SOA面对的是一个独立的服务架构,它能够使企业在重复功能上可以直接通过接口调用,服务之间可以通过标准的接口来相互调用。这样就建减少了重新开发的浪费。如果企业的业务内容发生变化,只需要修改相对应的服务即可,大大的降低了修改的难度和复杂度,保证了企业ERP系统的敏捷性。如图2所示。

图2基于SOA的ERP系统体系架构在基于SOA的ERP系统中,敏捷架构是其中的一个重要的架构,如果将ERP各个业务模块的功能和每个业务模块中的子功能分开对待,把ERP系统的业务模块作为较粗糙的服务注册,把子模块作为细致的服务注册。并且本地企业提供的服务可以在本地服务注册中心注册,利于本地企业客户端的访问,需要在外部企业客户端访问的服务则到公共的注册中心区注册,供那些同外部合作的企业使用。而显示用户界面由Web环境实现,这样就可以利用SOA的客户接口实现。

由于ERP系统的重点是企业内部管理,很少涉及企业外部信息管理,所以它并不能实现企业与供应商、企业与分销商之间的相互信息集成。企业的信息在建设过程中,由于多年以来的业务流程变化和IT技术的发展,让企业内部积累了许多的应用系统。但是这些系统却不能相互通信,成为一个个独立的系统,作为企业,当然希望尽可能的重用而不是替换这些系统来实现新的业务要求,以求达到降低成本,提高投资的回报率。服务请求者和服务提供者的通信,达到查询和绑定调用方面的敏捷化目的。

SOA的目的不只是解决一个系统的调用方式,而是解决业务敏捷的问题,让IT更好地支持业务的变化。它的前提条件是运作服务化,然后把组织能力通过接口的服务体现,通过服务的组合编排来实现灵活的业务过程。架构是一个基础性的东西,而十几年前开发的软件虽然也支持SOA架构,但那并不是SOA架构,只是一种调用方式。

4结语

ERP系统已经成为现代企业管理活动中不能缺少的手段,并且是现代企业提高自身的竞争力的一种重要的途径。为了解决一切的ERP系统结构灵活性差且不能实现不同行业间的动态业务需求融合和企业内部流程的适时变换的特点,提出了一种基于SOA的ERP系统的敏捷架构。该系统架构的主要特点是:能够支持集成柔性化,为企业的信息化提供了可伸缩的空间;不但解决了ERP系统在应对不断变化的企业活动的需求做出反应方面不够灵活,系统集成也不够灵活的难题,实现了系统业务流程的快速便捷,也就是系统敏捷化架构的意义。

参考文献

[1]黄作明,薛恒新,丛秋实.基于ERP 系统定制的适应性企业信息化战略[J].情报杂志,2007,26(1):57.

[2][美]达文波特.ERP必备指南[M].宋学军,译.北京:机械工业出版社,2002.

[3]SUMNER M.ERP企业资源计划[M].张玉亭,杨晓云,译.北京:中国人民大学出版社,2004.

上一篇:基于星敏感器和陀螺的卫星定姿新方法 下一篇:基于ASP.net的网上书店系统安全性研究