基于SOA的企业销售渠道管理系统研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于SOA的企业销售渠道管理系统研究
作者:王晓生李莉
来源:《中小企业管理与科技·下旬刊》2011年第06期
摘要:随着企业销售规模的扩大,对销售渠道管理的难度也越来越大。
基于SOA的销售渠道管理系统是充分利用企业的全部资源,实现信息流、资金流和物资流的合理分配和流动,从而最大限度地实现企业的生产价值。
本论文的主要内容是SOA在渠道管理系统中的应用。
在系统分析的基础上,设计了系统的架构模型,并对系统的实现进行了简要的介绍。
关键词:SOA Web Service 销售渠道管理
0 引言
随着中国市场经济的不断发展,许多产品所面对的销售市场从单一的地方性市场变成了全国性乃至全球性的市场,一个个规模庞大的销售网络还在建立或是正在运营。
规模扩张带来的直接问题是如何实现对整个销售渠道的掌控。
由于存在地域分割和地域销售环境差异,层次关系复杂多样,造成信息的失真与滞后,对于异地机构,多级代理商的物流、资金流和信息流的管理难度越来越大。
同时,企业面对激烈的市场竞争,必须根据不断变化的外部环境,迅速地调整经营策略以及业务流程等。
这使得原有的销售管理系统总是会陷于一种难堪的处境:软件的开发跟不上业务需求的变化或软件的应用总是不能适应业务的要求,也就是“计划跟不上变化”。
而且企业内部的多种应用系统软件相互之间必须解决信息和资源的共享问题。
比如与企业原有的ERP系统的兼容问题。
因此现代企业对应用系统提出更高的要求:企业软件应具有灵活性、协作性、可组合性、可扩展性、开放性、易于维护和升级等特性。
随着大规模企业级应用的不断发展,一种新型的软件体系架构——面向服务的架构(Service Oriented Architcture,SOA)应需快速地发展了起来。
“SOA的目标在于让IT技术变得更有弹性,以更快地响应业务单位的需求,实现实时企业(Real-Time Enterprise,这是Gartner为SOA描述的远景目标)”。
1 面向服务的体系架构—SOA(Service Oriented Architcture)
1.1 SOA的概念
SOA是以服务为基础的一种软件体系架构,它并不关注具体的实现技术。
W3C将SOA定义为:“一种应用程序体系结构,在这种体系结构中,所有功能都定义为独立的服务,这些服务带有定义明确的可调用接口,可以按照定义好的顺序调用这些服务来组成业务流程”。
SOA提供一种粗粒度、松耦合的构架支持。
它使得企业用户在进行系统重构时,根据业务流程动态的进行系统构建,无需关注代码的实现,而只需要进行服务的组合。
另外,服务标准化的开放性使企业能够整合已有的异构系统,解决企业内部系统间的信息孤岛问题。
1.2 SOA的实现技术
Web Services是一种动态组件技术,是SOA中服务的主要实现手段。
它透过网络通讯协议及数据格式的开放式标准(如HTTP、XML及SOAP等)来为其它的应用程序提供服务。
Web Services中的SOAP、WSDL、UDDI等协议都是SOA具体实现的相关标准。
Web Service的基本架构模型中依性质分成三种角色包括 (Services Broker)、服务提供者(Services Provider)、服务需求者 (ServicesRequester)。
其关系如图2-1。
2 企业销售渠道管理系统的设计与实现
2.1 销售渠道管理业务流程
企业销售渠道分为内部渠道和外部渠道两部分,企业的产品销售由内部渠道和外部渠道共同完成。
内部渠道指公司内部的销售资源,包括企业销售管理部门,各地区分公司,各地的办事处和销售代表等。
外部渠道是指社会销售资源,主要包括各地的一级代理商和二级、三级代理商,企业可以借助其分销自己的产品,但对这类渠道没有所有权,对其按照各级代理协议的办法进行控制管理。
在企业的销售政策、销售代理协议、价格政策、财务政策和返利政策等销售管理政策的指导下,内部渠道和外部渠道围绕订单管理、库存管理和应收账款管理等业务,产生一些列业务流程如图3-1所示。
2.2 系统架构设计
多级销售渠道管理系统采用五层结构体系:访问服务层、数据服务层、业务服务层、业务流程层、展现服务层。
不同层次的服务通过ESB调用,组合构成符合应用。
除此之外还包括服务注册、安全服务、公共服务、服务目录等部分。
其目标架构如图3-2所示。
2.2.1 访问服务层(Access Services Layer)
访问服务层可以将企业的现有数据和系统与SOA架构进行整合,访问服务的实现可以按照底层系统的不同而使用不同类型的适配器。
这些适配器都按照统一标准、统一机制设计开发。
2.2.2 数据服务层(Data Services Layer)
数据服务可以把一个企业里的大部分数据源合并起来,数据使用者透过数据服务可以用统一的方式来访问所有的数据,使用者不用关心不同的数据到底要用什么样的技术来访问,也不用关心数据所在的物理位置和逻辑架构。
在SOA的架构中,所有的数据服务都包含在专门的数据服务层中。
数据服务层可以直接访问数据源中的数据,或者使用访问服务层提供的服务来获得企业现有应用中的数据。
数据服务层不包含任何业务规则,因此,它们应用于不同的业务场景,而无需对服务本身做出修改。
在数据服务层中可以表示与业务逻辑相关的对象。
2.2.3 业务服务层(Business Services Layer)
在业务服务层中,完成具体的业务逻辑的实现。
业务逻辑可以被视为共享服务,这些业务逻辑可以是简单操作,也可以是复杂的业务逻辑,涉及多个系统的复杂操作,比如建立一个新的顾客记录。
实现业务服务的技术和形式多种多样,简单的服务可以由通用的底层开发平台直接开发,如J2EE。
2.2.4 业务流程层(Business Process Services Layer)
业务流程层代表了可以共享的业务处理过程,可以是完整的商业处理过程或者是独立定义的子过程。
业务流程层帮助流程参与者对动态的业务流程进行控制和协调。
将业务流程层与业务服务层分开是保持企业架构敏捷性的关键一环。
首先,这提高了敏捷性。
如果分离彻底的话,则可以比较顺利地更改现有流程,或引入新流程,应为更改仅限于表示流程控制的服务中。
第二,该方法允许封装关键状态代码,这意味着,在更改一个流程时,不会影响其他流程。
最后,由于只需一次性实现业务逻辑,故可以减少冗余,避免出现不一致的情况。
2.2.5 表示服务层(Presentation Services Layer)
表示服务层提供了通用的用户表示组件,主要功能在于为从业务服务层和访问服务层获得的业务功能和信息提供标准的交互接口。
2.2.6 服务总线(ESB)
ESB全称为企业服务总线,给系统服务的使用者提供了服务接入、服务寻址、服务调用和服务安全等功能。
服务调用者不会直接访问服务,也不知道服务的访问位置,所有部署到系统中的服务都通过服务总线进行调用。
服务总线可以降低服务的耦合度,如:接口、调用方式、传输协议等。
服务总线还负责安全检查,确保提供安全信息。
2.3 服务的实现
Web服务平台有服务器端组件和客户端组件。
本系统以Jave Web实现。
下面以订单管理为例说明服务的实现。
2.3.1 订单管理业务流程
客户发送一个订单,包含订单号和订购商品清单,以及其他信息。
订单信息经订购单服务确认后,返回确认信息和付款信息。
此信息转到库存管理系统,已决定库存商品的数量,以及可能的发货日期。
最终为客户返回一个订单确认信息,其中包括订购商品的付款信息和预计的发货日期。
整个订单管理有订购单服务和库存管理服务两个独立的逻辑单元组成。
其业务处理如图3-3所示。
2.3.2 Web服务在服务器端的部署
Web服务应用程序是由经过标注的服务接口和其实现类组成的,提供调用方法的类可以是WJB也可以是POJO。
使用WS-Metadata标注声明或配置webservices.xml都能够将java类部署为Web服务进行配置。
在部署期间,JWS容器对其自身进行配置以部署指定的Web服务,并创建WSDL。
2.3.3 Web服务在客户端的调用
客户端通常将WSDL映射到Java,生成一个服务端点接口(Service Endpooint Interface,SEI)。
运行时,使用JAW-WS的javax.xml.ws.Service类的一个实例来提供被调用的Web服务的客户端视图,用一个Service.getPort方法来获取产生的SEI运行实例。
这个运行时实例是用Java代理(proxy)技术实现的。
通过调用Proxy实例上的一个SEI方法,就可以调用Web服务。
3 结束语
在市场竞争日益激烈的大背景下,管理好企业复杂的销售渠道对企业越来越重要,销售渠道的管理策略和流程经常需要随着外围环境的变化和市场的需求发生变化,这些都对支持销售渠道管理的信息平台提出更高的要求,要能够随需应变,即对可能发生的变化做出快速响应,促进企业开展新的业务。
面向服务的架构(SOA)能够接受这种挑战,虽然不是唯一的选择,但是在当前的技术条件下,可能是最佳的选择。
Web Services技术可以很好地实现SOA架构。
如今企业对SOA应用的关注程度越来越高,但是良好的实施SOA项目,减少开发成本和周期,使企业在SOA项目中获得最大的利益,还需要做大量深入的工作。
参考文献:
[1]布朗著,胡键等译.SOA实践指南—应用整体架构[M].北京:机械工业出版社,2009.
[2]余浩.SOA实践——构建基于Java Web服务和BPEL的企业级应用[M].北京:电子工业出版社,2009.
[3]杨丹等.基于Web服务的SOA原型系统架构[J].辽宁科技大学学报2010.
[4]SOA案例研究系列./developerworks/cn/webservices.
作者简介:
王晓生(1975~),男,陕西西安人,陕西青年职业学院讲师,主要从事计算机教学与研究工作。
李莉(1976~),女,陕西西安人,西安文理学院初等教育学院讲师,主要从事计算机教学与研究工作。
注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。