企业混搭应用 让用户来体验SOA

来源:《程序员》   作者:王志坚
2010/4/15 20:43:08
企业混搭应用是一个随着Web 2.0潮流而产生的新兴事物。企业业务混搭从哪里来?它与SOA又有什么关系?

本文关键字: 企业混搭 SOA

     一. 企业混搭应用的概念

 
    企业混搭应用,又叫Enterprise Mashups Application。Mashup是什么?企业业务混搭从哪里来?它与SOA又有什么关系呢?我们从概念开始。
 
    什么是混搭
 
    混搭(Mashup)是一种新型的基于Web的数据集成应用程序。传统上,Mashup源于流行音乐,是一种音乐类型,也被称为bastard pop,指的是艺术家组合或者混合两首不同的歌曲(通常属于不同的流派)的音乐和歌词来创作新的歌曲。它拥有三个特征:天生的创新性,人们的经验性和结果的和谐性。
 
    特征一:天生的创新性。从起源上看,Mashup是一种内容上的创新组合。这里重点是创新,虽然组合的元素通常都源自于本来无关但非常常见的东西,但这和任何创新活动类似,一旦组合便会产生一种具有新意的新生事物。
 
    特征二:人们的经验性。这些组合都是人工进行合成的,而不是通过计算算法来合成的,人们的经验和思维在Mashup过程中起到了决定性作用。
 
    特征三:结果的和谐性。无独有偶,在现实社会中Mashup风潮也影响着服装时尚界,设计师们把街头朋克元素引入到传统的英格兰服饰,用运动T恤混搭具有少女风情的篷篷裙,产生了意想不到的匹配效果。时尚界也称Mix & Match风格,从字面上理解,Mix是混合,Match是匹配,合起来翻译成混搭。指将不同风格,不同材质,不同身价的东西按照个人口味拼凑在一起,从而混合搭配出完全个人化的风格。Mix就是混合两个或多个元素,来展现新的用户体验。Match是指一种和谐相配的有机组合,否则就是“瞎搭”了。这就是特征三,混搭结果必须和谐匹配,具有这种既混且搭的东西,现实生活中除了音乐和服装,还有中国火锅,多元文化,多元的收藏,装饰和建筑风格等等,人们的情绪可以说也是一种混搭的表现。
 
    企业混搭应用
 
    把概念引申到计算机应用,先看看维基百科的说法:Mashup:网络混搭是一种聚合应用,有一个或者多个信息源整合起来的网站或者网络应用。
 
    由此可见,Mashup是合并多个源的信息和服务的网页或网站。一个熟知的Mashup典型范例是housingmaps.com,该网站合并了Google的地图服务和Craigslist.com的公寓租售信息,包括与住宅购买数据相结合,创建了一种交互式的房屋搜索工具。
 
    对企业应用来说,就如同创造新音乐,新服装那样,它能让业务人员创造针对特定的业务需求的业务混搭应用。这里强调业务需求,这是企业混搭应用的目标。根据业务需求,企业可以开发和部署不同构架层次的Mashup应用,在特定的Mashup编辑环境中,关联并且组合不同的Mashup组件,从而自己定制出符合企业需求的应用。我个人认为,Mashup层次、组件和环境构成了Mashup应用的三要素,这在后文还有详细的描述。
 
    这种Mashup新技术也叫组合应用(Composite Application)或者叫场景应用(Situational Application)。在企业中,业务人员往往需要扮演特定的角色去完成一个特定的任务。特别在决策过程中,更需要多角度多方位的数据支持。不仅在内容上,在界面上用户也希望获得更好的用户体验。传统的企业应用局限于是由软件开发商预先定制的,并不能满足这种基于特定场景的不断变化的需求,而Mashup技术却能够让业务人员根据其在不同场合下的需求Situational Need,在新的页面上放置、移动、更换、关联不同的业务组件(Mashup组件)。新的页面中显示的数据不仅可以来自企业内部,也可以来自外部服务。比如说用一个业务组件显示企业系统中的采购合同列表,而列表中可能的供应商信息却来自外部公网组件。这样,每个业务人员都拥有了更加便捷的方式“参与”到企业业务流程的创作活动中来,而创作的结果又能以最佳业务实践的形式保存下来。在这种模式下既降低了系统的整体拥有成本,又能共享最佳业务实践,使之经过迭代后就能逐步更新完善,从中我们可以隐约看到SOA的概念。
 
    Enterprise Mashups与SOA
 
    混搭与SOA的关系则要从用户需求谈起。SOA在概念上一般被认为是一种以用例为中心,以模型为驱动的可迭代的构架。SOA构架通常基于Web Service来实现。那为什么要采用这种构架呢?Sandy Carter在《新商业语言》一书中用Flex-ponsive来形容SOA最为浅显易懂,这个词其实就是Flexible和Responsive的组合。企业为了适应市场的变化,自身就要不断调整策略,这样就产生了对企业应用需求的不断变化。SOA构架的目标就是提供能适应企业需求不断变化的底层基础构架,要做到具有灵活的可适应性和快速应对变化的能力。
 
    但SOA注重在后台架构上,讲究服务、组件和流程。企业用户往往看不见,摸不着,所以比较难把握。而企业混搭应用则在用户表现层,讲究丰富的用户体验、创建并且部署特定应用,能让用户来体验到SOA。Enterprise Mashup是SOA平台的展现,它在发布应用程序的同时,不仅可以集成企业内部服务,还可以利用外部Web 服务,RSS提要和其他方式部署Mashup组件,然后将Mashup组件组合成新的应用程序。可以这么说,Enterprise Mashup是需要基于SOA构架的。
 
    回过头再来看看我们的目标:根据业务目标调整系统应用。在以前,即使有了SOA,企业内部IT人员和业务人员还可能各自为政,企业外部供应商的咨询人员和开发人员也会有不同分歧。企业混搭应用就是希望使业务人员也有能力开发和部署自己的应用,从而拉近需求定义和开发部署的距离,消除分歧。业务人员也正是通过了混搭应用,固化了业务流程,适应了需求变化,体验了SOA所带来的价值。
 
    二. 企业混搭应用的三要素
 
    虽然非技术人员可以通过Mashup来开发和部署自己的应用,但是该技术本生不是万能的,也不能覆盖系统应用的方方面面。我们必须给Mashup一个清晰的定位,让它在相应适应的需求上发挥作用。这里所介绍的Mashup三要素分别指的是:混搭构架层次,混搭组件和混搭开发部署环境。在理解三要素的基础上,就能对Mashup能为企业做什么有个大致的把握。
 
    混搭构架层次(Mashup Level)
 
    一般来说,有3种类型的混搭应用:表现型、数据型和逻辑型。如果从企业用户角度来定位混搭,这3种类型就对应着3种不同的混搭构架层次。
 
    表现型混搭最简单,企业门户就是一种具体体现。这种混搭应用停留在用户界面层次,通过调用UI组件或者嵌入式UI组件来丰富企业应用。当然通过手工方式实现该功能也不难,但混搭应用避免了剪切、粘贴和在多个浏览器窗口里切换等操作,从而大幅提高了工作效率。
 
    较为常见的企业应用有:为了丰富像客户,经销商,采购商这样的主数据,组合并集成外部的地图/位置服务,黄页信息服务,商业网站的公司资料服务,商务网站的公司股价服务,财务信息服务,产品信息服务和公司RSS新闻服务。为了对比采购报价单的同类产品价格,组合并集成外部B2B网站的同类产品价格信息等。
 
    如果这种集成的服务能提供有用的输入信息,这类Mashup就显得更有意义了。比如利用集成的地址验证组件服务,邮编查询组件服务,信用额度查询组件服务,就能对企业数据进行有效的检验。
 
    数据型混搭收集来自多个数据源的信息,为方便比较而把他们都聚合在一起。这种混搭应用用于信息聚合以及人员协同。这里典型的例子是把新闻组件,讨论组Blog组件或着Wiki组件,显示项目进度的甘特图组件,任务分配组件,投票决议组件,财务报表组件等等,加上一些通用的像文本编辑,网页编辑,公共事件日历,导入导出,消息收发等基础组件混合起来,由用户来决定它们的组合和使用方式。
 
    逻辑性混搭通常最复杂,这往往需要进行与2个或更多应用交互的混搭工作,有时候可能也需要技术人员的参与。这种混搭应用用于企业业务流程的集成,包括对第三方服务的集成。比如把企业内部销售数据与市场研究公司的竞争对手数据集成,把企业内部工资与ADP所得税计算方案集成,把物流信息与UPS或者Fedex的物流信息服务集成,把企业内部的支持中心与外部知识库集成等。混搭能够把这类集成体现在用户界面上,可以想象,业务人员完全有可能定制组合这样的页面,在该页面上,他可以查询某个配送订单,用地图来查看UPS具体配送货品的地理位置,同时用其他服务来计算成本等。
 
    有了不同层次的混搭,就可以实现基于SOA的企业应用网络化。在企业内部,适应变化的需求,实现快速定制业务组件。在企业外部,通过与服务合作伙伴的合作,实现和内部数据的协同。这就是SOA的理想目标,Mashup正是SOA在用户体验上的体现。
共2页: 上一页1 [2]
责编:姜玲
vsharing微信扫一扫实时了解行业动态
portalart微信扫一扫分享本文给好友

著作权声明:畅享网文章著作权分属畅享网、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。
推荐博客
创新平台技术,助力政企私有云..

创新平台技术,助力政企私有云建设金蝶中间件有限公司 奉继承 博士第16届软博会高峰论坛,2012.05.31……

畅享
首页
返回
顶部
×
    信息化规划
    IT总包
    供应商选型
    IT监理
    开发维护外包
    评估维权
客服电话
400-698-9918