基于SOA架构与云计算技术的ERP系统设计方案.docx
《基于SOA架构与云计算技术的ERP系统设计方案.docx》由会员分享,可在线阅读,更多相关《基于SOA架构与云计算技术的ERP系统设计方案.docx(102页珍藏版)》请在冰豆网上搜索。
![基于SOA架构与云计算技术的ERP系统设计方案.docx](https://file1.bdocx.com/fileroot1/2023-2/24/14a9cffa-422c-4742-ae42-6301204a130c/14a9cffa-422c-4742-ae42-6301204a130c1.gif)
基于SOA架构与云计算技术的ERP系统设计方案
1前言
1.1企业ERP系统的需求描述
ERP实施的主体――企业的需求永远是ERP技术发展的主动力,由于全球一体化进程的加剧,使得企业所面临的竞争环境发生了巨大的变化,对ERP提出了新的需求,具体表现在[50]:
1)全球化市场的发展与产业链之间合作经营生产方式的出现,使得ERP能支持异地企业运营、异种语言操作和异种货币交易;
2)企业过程重组及协作方式的变化使得ERP能支持基于全球范围的可重构过程的供应链及供应网络结构;
3)企业需要应对新生产与经营方式的灵活性与敏捷性使得ERP也越来越灵活的适应多种生产制造方式的管理模式;
4)由于行业特性越来越明显,因此ERP的行业化发展趋势越来越明显;
5)企业的快速发展使得ERP的柔性越来越高以适应企业的动态变化;
6)企业的低成本策略使得ERP可以按需配置、大大缩短实施周期。
IT技术的发展是推动ERP发展的另一驱动力,毕竟ERP应用是以“技术导向”为推动的应用技术,具体表现在,计算机新技术的不断出现将会为ERP提供越来越灵活与强大功能的软硬件平台,多层分布式结构、面向对象技术、中间件技术与Internet的发展会使ERP的功能与性能迅速提高。
图1.1企业ERP系统结构图
1.2ERP技术及应用的发展趋势
1.2.1B/S架构的ERP已经盛行
B/S模式是一种全新的软件系统构造技术。
随着Windows98/Windows2000将浏览器技术捆绑植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。
显然B/S结构应用程序相对于传统的C/S结构应用程序将是巨大的进步。
网络应用系统的发展正在改变着ERP系统的开发及其实施方法,传统ERP体系结构逐渐被由客户、应用服务器、数据库服务器组成的三层B/S结构所替代,并有了统一的通讯协议TCP/IP和统一的基于Web浏览器的用户界面。
B/SERP把传统的依赖于邮件、电话、人盯人的管理方式变革为目标导向、流程驱动、智能的电子商务流程。
并且该B/S架构的ERP可以把企业内部流程与企业外部流程连接起来,与客户、合作伙伴、供应商协同完成供应链业务操作[52]。
1.2.2SOA架构的引入,使ERP全面升级
SOA(Service-OrientedArchitecture面向服务架构)的概念是由Gartner公司给出的,Gartner对SOA的定义为“客户端/服务器的软件设计方法,一项应用由软件服务和软件服务使用者组成……SOA与大多数通用的客户端/服务器模型的不同之处,在于它着重强调软件组件的松散耦合,并使用独立的标准接口。
其核心是:
1)SOA是一种软件架构思想,并不是一种产品。
2)SOA的重点是面向服务,此服务包括企业的内部与外部的每一个业务细节,比如企业中财务应收发票的处理就是一个服务。
SOA的思想是把这些服务从复杂的环境中独立出来——组件化封装,然后通过标准的接口使不同的服务之间相互调用。
3)SOA是一种软件架构思想,通过使企业中一个个细化的服务标准化,来达到企业的IT系统跟随企业的动态变化的目的。
1.2.3平台化——ERP的柔性大大增强
在ERP应用实施的过程中,用户的满意度一直不高。
主要原因是产品更新周期加快、市场响应要求提高,对ERP的个性化要求越来越高,这是导致ERP实施成功率不高的重要原因之一。
经过多年的积累,人们已经总结出了ERP系统中业务的核心,其架构、业务模型、标准化高的业务处理均是可封装的,如果我们把这部分封装起来,再开发出辅助这个平台的客户化工具,就可以形成业务化平台。
同样如此,如果对ERP进行分析、研究,将ERP的相关部分封装起来,再加上工具包,就可以形成平台化的ERP。
平台级企业信息解决方案提供了一个软件平台,内置多种管理软件组件和快捷的二次开发工具,其组件可以通过多种语言来开发,开发出一个个的小模块,然后把每一个小模块独立起来建成一个组件,最后把这些组件组装起来形成最终的成品。
那么对这些组件进行调用,管理和删减、添加及修改,甚至重新构架都可以,而这样对某一部分的改动根本不会影响到其它功能。
这就是平台带来的灵活性,易操作性,使它在进行小的改动时可以直接通过系统上的某些功能来实现,而不必要通过改源代码的方式来处理,可以降低企业信息化软件的开发难度,提高开发效率,提高系统的柔性和可扩展性。
一方面管理信息化厂商通过平台提供的组件能很方便地满足用户个性化的需求,以及用户在发展过程中各种各样变化的需求。
另一方面将应用软件的业务逻辑和开发技术相对分开,使得应用软件的开发者可以仅关注应用的业务任务,而不必关注其技术的实现。
这使管理与业务人员参与应用软件的开发成为可能。
平台化软件的基本特性如下:
1)软件架构灵活;
2)核心业务标准化;
3)接口标准化,具有很好的兼容性;
4)提供客户化工具包。
1.2.4与其它信息系统的集成
1)ERP与客户关系管理的进一步整合
ERP将更加面向市场和面向顾客,通过基于知识的市场预测、订单处理与生产调度、基于约束调度功能等进一步提高企业在全球化市场环境下更强的优化能力;并进一步与客户关系管理CRM结合,实现市场、销售、服务的一体化,使CRM的前台客户服务与ERP后台处理过程集成,提供客户个性化服务,使企业具有更好的顾客满意度。
2)ERP与电子商务、供应链SCM、协同商务的进一步整合
ERP将面向协同商务(CollaborativeCommerce),支持企业与贸易共同体的业务伙伴、客户之间的协作,支持数字化的业务交互过程;ERP供应链管理功能将进一步加强,并通过电子商务进行企业供需协作,如汽车行业要求ERP的销售和采购模块支持用电子商务或EDI实现客户或供应商之间的电子订货和销售开单过程;ERP将支持企业面向全球化市场环境,建立供应商、制造商与分销商间基于价值链共享的新伙伴关系,并使企业在协同商务中做到过程优化、计划准确、管理协调。
3)ERP与产品数据管理的整合
产品数据管理PDM(ProductDataManagement)将企业中的产品设计和制造全过程的各种信息、产品不同设计阶段的数据和文档组织在统一的环境中。
近年来ERP软件商纷纷在ERP系统中纳入了产品数据管理PDM功能或实现与PDM系统的集成,增加了对设计数据、过程、文档的应用和管理,减少了ERP庞大的数据管理和数据准备工作量,并进一步加强了企业管理系统与CAD、CAM系统的集成,进一步提高了企业的系统集成度和整体效率。
4)ERP与制造执行系统的整合
为了加强ERP对于生产过程的控制能力,改变ERP"重计划,轻控制"的弱点,将进一步加强"事前计划、事中控制、事后审核"的功能,ERP将与制造执行系统MES(ManufacturingexecutiveSystem)、车间层操作控制系统SFC更紧密的结合,形成实时化的ERP/MES/SFC系统。
该趋势在流程工业企业的管控一体化系统中体现得最为明显。
5)ERP与工作流管理系统的进一步整合
全面的工作流规则保证与时间相关的业务信息能够自动地在正确时间传送到指定的地点。
ERP的工作流管理功能将进一步增强,通过工作流实现企业的人员、财务、制造与分销间的集成,并能支持企业经营过程的重组,也使ERP的功能可以扩展到办公自动化和业务流程控制方面。
6)ERP与企业知识门户进一步整合
企业知识门户(EnterpriseKnowledgePortal,EKP)所关注的是企业内部员工和信息内容,它的核心是知识管理(KM),通过与ERP系统的集成,使得企业内任何员工都可以实时地与工作团队中的其他成员取得联系、寻找到能够提供帮助的专家或者快速连接到相关的知识,它的建立和使用可以大大提高企业范围内的知识共享,并由此提高企业员工的工作效率。
1.2.5整合业务流程的监测与评估
“用于测量成功的业务应用解决方案是连续改进的关键:
财务表现的共享,SC效力,知识资本的价值以及顾客的满意度都是新的评测方法。
”――Gartner。
2传统ERP产品技术架构
2.1传统C/S架构的ERP系统
信息系统架构示意图:
1)一层架构:
客户端、应用服务器和数据库服务器都在同一台机器上部署;
2)两层架构:
数据库服务和应用服务在同一台服务器上部署,客户端访问服务器上的资源或数据;
3) 三层架构:
应用服务和数据库服务分离,分别部署在不同的服务器上,应用服务采取集群部署,达到性能上的需求。
图2.1不同分级层次的系统架构图
从企业信息系统架构设计看,三层分布式架构是一种典型应用;甚至可以过渡到多层分布式架构,如扩展出缓存服务、负载均衡服务等;这些都是用户对系统快速响应和系统可靠性的需求。
2.2B/S架构的ERP系统
B/S架构的ERP系统的出现使得传统的ERP系统成为互联网应用,用户借助网络的方便快捷,可以随时随地办公,处理业务数据。
现代企业普通存在多区域分支机构,或者业务人员需要差旅或在家办公,传统的C/S架构日益不能满足移动办公的需要,B/S架构的ERP系统刚好可以解决这一需要。
图2.2B/S架构的ERP系统部署图
2.3C/S架构和B/S架构的优缺点分析
2.3.1C/S系统优缺点
C/S模式的优点[1]:
1)由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。
(当数据少时,C/S在局域网内响应快;当数据超过十万时,C/S软件变慢,B/S软件能维持稳定速度)
2)操作界面交互性强、控件组件形式多样,可以充分满足客户快速操作的要求。
3)C/S结构的管理信息系统能实现的复杂的数据处理操作,不用过多考虑网络的不稳定性。
C/S模式的缺点:
1)需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置。
2)兼容性差,对于不同的开发工具,具有较大的局限性。
若采用不同工具,需要重新改写程序,跨平台难度大,无法轻易实现Windows、Linux、iOS系统的同时开发和部署。
3)开发成本较高,需要具有一定专业水准的技术人员才能完成。
(就开发小型企业管理软件,针对内部使用的系统而言,C/S开发人员比B/S开发人员的成本低了许多)。
2.3.2B/S系统优缺点
B/S结构的优点:
1)是互联网应用,具有分布性特点,可以随时随地进行查询、浏览等业务处理。
2)业务扩展简单方便,通过增加网页即可增加服务器功能。
3)维护简单方便,只需要改变网页,即可实现所有用户的同步更新。
4)开发简单,共享性强。
B/S结构的缺点:
1)操作是以鼠标为最基本的操作方式,无法满足快速操作的要求,尤其是在大量数据录入操作、复杂交互的情况下,需要提升交互设计能力。
2)页面加载刷新时,响应速度受网络连接的稳定性影响。
2.3.3结论
目前,从架构设计来看,ERP系统采用B/S架构和C/S架构是并存存在的,B/S的架构的系统更有发展前景,从长远来看,由于互联网发展,网络带宽提升,HTML5技术出现的等因素,B/S的架构的系统是将来的发展趋势。
3国内外最新ERP产品技术架构
3.1主流ERP产品简要介绍
3.1.1OracleEBusinessSuite
3.1.1.1OracleEBS产品介绍
OracleEBS是OracleE-BusinessSuite的缩写,是Oracle公司的ERP产品,全球销量仅次于SAP(另一款ERP产品)。
OracleEBS是一整套企业级应用软件,包括:
采购管理、库存管理、销售管理、车间管理、物料清单及工艺管理、生产计划、成本管理、应付账款管理、应收账款管理、现金管理、总帐管理、项目会计、项目制造、客户关系管理、供应商门户等模块。
3.1.1.2纯互联网技术架构
Oracle电子商务套件采用标准的100%基于互联网的三层体系架构;无论是数据库层、应用层以及最前端的最终用户操作界面都100%支持基于JAVA的先进互联网技术[37]。
Oracle电子商务套件的技术架构特点,提供了软件系统基于数据中心运行的集中管理基础。
使所有关于软件系统的推广、升级和日常维护工作可以基于数据中心进行,从而达到最大限度地降低客户端软硬件和维护成本,降低服务器端的软件维护工作内容。
图3.1Oracle应用软件技术架构
3.1.1.3模块化开放架构
Oracle电子商务套件应用产品采用模块化和组件化的先进软件技术体系架构,应用软件产品可以细化成为许多细粒度的模块,不同的客户应用可以选择不同的组件或模块组合形成适合于企业需求的软件平台方案;基于同一共享数据库和统一数据模型的数据层面的高度集成架构,保证各应用模块之间的紧密无缝集成和平滑的业务流转[37]。
图3.2Oracle电子商务套件的模块化开放架构
3.1.2SAPNetWeaver
3.1.2.1SAPNetWeaver产品介绍
SAPNetWeaver是SAP的集成技术平台和自从SAPBusinessSuite以来的所有SAP应用的技术基础。
SAPNetWeaver是一个面向服务的应用和集成平台。
SAPNetWeaver为SAP的应用提供开发和运行环境,也可以用来和其它应用和系统进行自定义的开发和集成。
SAPNetWeaver是使用开放标准和事实上的工业标准进行开发的,可以用icrosoft?
NET,Sun燡avaEE,和IBM燱ebSphere等这些技术平台进行扩展和互操作[44]。
3.1.2.2SAPNetWeaver技术架构
SAP企业系统架构是以SOA架构技术作为基础框架进行开发的。
ERP,CRM,SCM,SAPBusinessSuite,SRM,PLM系统都是独立的子系统,这些系统之间的交互都是通过SOA服务进行。
图3.3SAP企业系统架构
3.1.3用友U9
3.1.3.1用友U9产品介绍
用友U9完全基于SOA架构的世界级企业管理软件,用友U9面向快速发展与成长的中大型制造企业复杂应用,以“实时企业、全球商务”为核心理念,完全适应多组织供应链协同、多工厂制造协同、产业链协同、产品事业部和业务中心的管理模式,更能支持多生产模式的混合生产与规划、多经营模式的混合管理、精益生产、全面成本、跨国财务等深度应用,具有高度灵活的产品架构,帮助企业快速响应变化,支持经营、业务与管理模式的创新。
3.1.3.2用友U9技术架构
UFIDAU9完全采用面向服务架构(SOA),实现了全程模型驱动开发(MDD)模式,达到降低集成和开发成本的目的。
UAP使企业管理软件具有多项新技术应用特点:
企业信息资源变得可重用、透明化,并且系统具有高可扩展性,让业务处理更加高效、简洁、安全。
UAP还提供了统一的集成开发环境(IDE),用户可以使用包括企业建模、领域建模、服务设计、UI设计、报表设计、规则设计、数据库设计等全方位的设计器,并通过可视化的界面和友好的交互操作,自动生成用户所需要的各种服务部件。
UAP完全支持企业级的集成与应用协同,如Office集成、移动商务、企业搜索、智能客户端等多项领域[35]。
图3.4用友U9技术架构
3.2ERP系统架构设计的共同特点
通过国内外最新ERP产品的功能及技术架构比较,得出:
基于SOA架构的技术框架是共同采用的,而且更加强调了多设备的支持,完全基于互联网模式的系统。
产品名称
是否B/S
是否
SOA架构
是否模块化构建
是否支持移动设备
是否分布式部署
OracleEBusinessSuite
是
是
是
支持
是
SAPNetWeaver
是
是
是
支持
是
用友U9
是
是
是
支持
是
金蝶EAS
是
是
是
支持
是
OpenERP(开源)
是
下一版本支持
完全模块化
支持
是
表3.1各主流ERP产品系统架构比较
3.2.1基于互联网的三层体系架构
采用标准的100%基于互联网的三层体系架构,无论是数据库层、应用层以及最前端的最终用户操作界面都100%支持WEB的互联网技术,特别是应用层,直接采用互联网先进技术,不需要任何中间转换过程,在体现先进互联网技术的同时,最大限度的减少了中间环节,保证了系统处理的高性能和高稳定性。
3.2.2面向服务架构(SOA)
完全采用面向服务架构(SOA),实现了全程模型驱动开发(MDD)模式,达到降低更加强调系统的基础,采用松耦合,降低系统的耦合度。
SOA的实现方式都是采用了基于Http协议的WebService的技术,数据交换格式采用XML,SOAP。
3.2.3模块化和组件化的体系架构
模块化和组件化的先进软件技术体系架构,应用软件产品可以细化成为许多细粒度的模块,不同的客户应用可以选择不同的组件或模块组合形成适合于企业需求的软件平台方案;基于同一共享数据库和统一数据模型的数据层面的高度集成架构,保证各应用模块之间的紧密无缝集成和平滑的业务流转。
4基于SOA架构的ERP系统
4.1SOA技术简介
4.1.1SOA概念及简介
4.1.1.1SOA的基本概念
面向服务的体系结构(Service-OrientedArchitecture,SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。
接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。
这使得构建在各种各样的系统中的服务可以使用一种统一和通用的方式进行交互[26]。
简介
SOA(Service-OrientedArchitecture),面向服务架构,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。
服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。
SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。
SOA可以看作是B/S模型、XML/WebService技术之后的自然延伸。
4.1.1.2SOA技术的优势
通过SOA思想的引入,使得ERP软件可以做到[50]:
1)支持异构集成
所谓异构环境,包括四个层次,硬件平台、操作系统、数据库、应用软件。
如果一套硬件、一套操作系统、一套数据库、一套应用软件能够面面俱到的解决集团企业的所有管理问题,那是再好不过了。
但现实中是不可能的,更普遍的是,不同的应用往往选择不同的平台和应用系统,以便充分发挥各个厂商的特长。
支持SOA的ERP系统为集团企业的信息化提供了伸缩空间,企业可以根据需要选择最合适的解决方案。
2)降低企业的IT成本
以往多数企业在建设企业的ERP系统时是从项目的角度出发的,比如ERP项目、CRM项目等,事后当企业的IT系统越来越多的时候,才会考虑系统的集成问题,但这时候往往集成的难度就很大了。
而SOA要求企业在建设IT系统之初就要考虑这些问题,也就是要考虑服务之间的接口问题。
这样就会使企业的IT成本大大降低。
同时,SOA将改变以往的软件购买模式。
目前,多数企业在购买软件时往往是成熟性软件,需一个模块或一个系统的购买,企业在购买时往往无法将那些企业不需要的功能剔除出去,这样,企业就不得不为此多付出资金、培训成本等许多不必要的成本。
而支持SOA的集团财务软件则可以帮助企业实现真正的按需购买,企业需要什么功能就购买相应的服务,帮助企业避免不必要的支出。
3)实现企业的动态变革
支持SOA的集团财务系统使企业的IT人员不必太多的关心企业IT系统的底层技术,而更多的去考虑集团财务的业务处理以及财务业务与IT的接合。
同时,以往企业在开发集团财务系统时,在重复功能上浪费了大量的人力与财力,同时系统在开发完成后,如果企业业务变化,系统将很难更改或者更改的成本很高。
而SOA面对的是一个个独立的服务,服务之间可以通过标准接口来相互调用,这样企业在重复功能上就可以直接通过接口调用,而不必去重新开发。
企业的业务发生变化时,只需要修改相对应的服务即可,降低了修改的难度与复杂度,保证了企业的IT系统的动态变化。
4.1.2基于SOA技术的体系结构
4.1.2.1SOA是松耦合的系统
这种具有中立的接口定义(没有强制绑定到特定的实现上)的特征称为服务之间的松耦合。
松耦合系统的好处有两点:
1)是它的灵活性,当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,它能够继续存在。
2)而另一方面,紧耦合意味着应用程序的不同组件之间的接口与其功能和结构是紧密相连的,因而当需要对部分或整个应用程序进行某种形式的更改时,它们就显得非常脆弱。
对松耦合的系统的需要来源于业务应用程序需要根据业务的需要变得更加灵活,以适应不断变化的环境,比如经常改变的政策、业务级别、业务重点、合作伙伴关系、行业地位以及其他与业务有关的因素,这些因素甚至会影响业务的性质。
我们称能够灵活地适应环境变化的业务为按需(Ondemand)业务,在按需业务中,一旦需要,就可以对完成或执行任务的方式进行必要的更改。
SOA系统原型的一个典型例子是通用对象请求代理体系结构(CommonObjectRequestBrokerArchitecture,CORBA),它已经出现很长时间了,其定义的概念与SOA相似。
然而,现在的SOA已经有所不同了,通过使用基于XML的语言(称为Web服务描述语言(WebServicesDefinitionLanguage,WSDL))来描述接口,服务已经转到更加动态且更灵活的接口系统中,非以前CORBA中的接口描述语言(InterfaceDefinitionLanguage,IDL)可比了。
4.1.2.2SOA体系结构作用
传统企业(数据库)应用软件产品,如MRP、ERP、OA系统等,在设计或架构上都是紧偶合、封闭式、自成体系,属于一次性投入一次性完结的产品。
这样的产品很难适应或快速响应市场或客户灵活多变的需求,以及后续的扩展。
在这样的市场、及客户需求下,从而催生了软件产品一种新的设计或架构的理念:
面向服务架构(SOA架构)。
对SOA的需要来源于需要使业务IT系统变得更加灵活,以适应业务中的改变。
通过允许强定义的关系和依然灵活的特定实现,IT系统既可以利用现有系统的功能,又可以准备在以后做一些改变来满足它们之间交互的需要。
SOA是一场革命。
一个应用程序的业务逻辑(businesslogic)或某些单独的功能被模块化并作为服务呈现给消费者或客户端。
这些服务的关键是他们的松耦合特性。
例如,服务的接口和实现相独立。
应用开发人员或者系统集成者可以通过组合一个或多个服务来构建应用,而无须理解服务的底层实现。
举例来说,一个服务可以用.NET或J2EE来实现,而使用该服务的应用程序可