欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  资讯频道

打破竖井,统一体验,SOBA热起来!

程序员文章站 2024-02-23 18:57:34
...

近日,全球最大的中文技术社区Csdn主办的中国软件开发2.0技术大会SD2C 2008)在北京九华山庄拉开帷幕,一千多名CTO、架构师、项目经理与开发管理人员及软件工程师齐聚歆享这场技术盛宴。会上,来自普元软件的首席架构师焦烈焱与胡长城围绕“SOBA:企业应用2.0”主题发表演讲,揭示在企业软件应用领域,随着IT与业务更为一致的客户需求压力,面向服务的业务应用(Service-Oriented Business Application,简称SOBA)将成为软件开发的主流。

GartnerSOBA一词的定义者。在他们看来,SOBAERPCRM和其他C/S(客户机/服务器)商业应用的终极体现,而这些应用正是目前单一计算体系的中坚力量。Gartner甚至预言,面向服务的业务应用(SOBA)将会兼备ERPCRM、供应链和其他应用的全部功能,从而成为单一的商业应用终结者。在SOA时代,SOBA将是商业管理系统的代名词。

何谓SOBA?

SOBA(Service-Oriented Business Application),面向服务的商业应用,其理念是构造可复用、易集成的业务应用。SOBA的核心是以用户为中心、以流程为中心,针对目前大多企业的现状(拥有多个相互之间难于集成的异构系统和框架、新的应用需求复杂高、业务创新迅速),通过整合界面、业务流程、服务和信息,提供统一、灵活的用户体验和跨流程、跨系统的组合能力。
打破竖井,统一体验,SOBA热起来!

 

SOA的浪潮中,人们更关心基于面向服务架构构建的系统是什么样子,具备哪些特性,需要哪些关键技术和基础设施。可以说,SOBA为我们提供了答案。

企业应用推动SOBA出现

企业应用是个永恒的主题,因为他还在不断地成长。这个主题中永远包含三个话题:展现(Presentation)、业务逻辑(Logic)和数据(Data)。这三个话题四十年前是这样,四十年后还是这样。

近四十年前:那是计算机少为人知的年代,更不要说软件了。为了满足企业商业应用软件的需要IBM研发出了CICS这个IT恐龙时代的产物。在此之前计算机主要用在顾名思义的‘计算’上了,而无法用在商业的管理与业务之上。自打CICS的诞生,计算资源有了更为广泛的应用。CICS,是Customer Information Control System的简称,主要用在IBM的大型机上面。有了他(CICS)就可以包打天下,把企业应用中的展现、逻辑和数据一网打尽,全部在CICS中得以实现。CICSmap操作(sendmap, receivemap)就是在把一张张的页面发送到前台的傻终端上;他的program操作就是调用一个个后台的业务处理逻辑;而他的File/SAM/VSAM/Buffer管了所有的数据服务,连我们熟知的数据库都不需要。

创造了价值的企业总会有丰厚的回报,IBM成为了最大的IT厂商(963亿美元)。

二十多年前:那是计算机进入广泛企业应用的时代。为了拆掉高昂成本的主机时代的门槛,满足更为广泛的企业商业应用软件到需要,微软推出了GUI的图形客户端,BEA推出了交易中间件,Oracle推出了关系型数据库。而这次发展正是把CICS所独揽的展现、逻辑和数据分立开来,对这三个话题进行了革命。这一革命可不得了,让企业级应用的门槛从几百万美元降到了几万美元。更多的企业都可以靠这些信息技术来发展和管理他的业务。这次革命就是大家熟知的客户机/服务器的企业应用架构所带来的。

当然创造了价值的企业还是少不了有丰厚的回报,Microsoft成为了最大的软件厂商,BEA成为了最大的交易中间件厂商,Oracle成为了最大的数据库厂商。

十年前:那是互联网的时代,怎样的企业应用架构是适合互联网的呢?现在的我们当然脱口而出‘BS架构’,即Browser/ServerJ2EE.NET就是代表的技术。这样的架构让100倍的人开始享用信息技术和服务,而花的确是百分之一的价格,几百美元。连看电话亭的老奶奶也上网了。

还是那句话,创造了价值的企业总会有丰厚的回报,IBM/BEA/Microsoft成为了最大的应用服务器厂商。

现在和未来的十多年:现在和未来的十多年又会如何呢?企业应用还是会发展吗?答案当然是‘是’。未来的企业应用将是以用户为中心、以流程为中心的模式,而不是以一个个IT系统为中心。用户可以在任意时间、地点、通过自己喜欢的交互方式访问应用。对于企业来说,应用不再是多个孤立的系统,而是以业务流程为核心的整体解决方案,企业可以在已有服务(包括后台服务和UI服务)基础上组装新的应用,快速响应需求变化,实现业务创新。

难道你还没听到众多的词汇又在充斥你的耳朵吗?‘SOA/ Web Services/Component/SCA/SDO/BPEL/Mashup/Ajax’,这就是信号,强烈的信号,新的企业应用架构在逐渐成形。

打破竖井,统一体验

企业应用技术架构的演进会经历3个主要阶段:主机架构、客户机/服务器架构、企业服务架构。他们之间的主要区别是:

  • 在主机架构下,数据和逻辑是一体的,采用面向过程的设计方法,每个应用是一个孤立的系统,维护相对容易,难于相互集成;

  • 客户机/服务器架构将逻辑与数据进行了分离(不论C/S还是B/S 模式,本质都是客户机/服务器架构),采用面向对象的设计方法,每个应用是一个孤立的系统,提供了一定后台集成的能力,典型的客户机/服务器架构就是 MVC 架构;

  • 企业服务架构把流程从逻辑中抽象出来,逻辑成为系统对外的服务,通过统一的用户界面、流程打破竖井式结构,采用面向服务的设计方法,企业多个应用之间将成为一个有机的整体。


打破竖井,统一体验,SOBA热起来!
 

简而言之:目前企业计算的架构正在从关注单系统、单应用的MVC架构向关注多系统、多应用的企业服务架构发展,伴随着支持这种发展,新的技术和产品已经出现。

SOBA开发平台

 

SOBA强调突破应用系统的限制,从整体视图构建企业应用,支持 SOBA 的企业服务架构采用了SOA的架构风格,以松耦合为特点,将企业应用分为协同、流程、服务、逻辑和资源(数据)5个层面。


打破竖井,统一体验,SOBA热起来!
 

  • 协同层——为用户提供了一个统一的交互门户和工作平台,通过RIARich Internet Application)的方式提升用户体验,用户通过协同层更容易以其他人进行协作,例如即时通讯、查看任务列表、查看发布信息,也能够把已有数据、服务或界面快速组合到新应用中。通过协同层,用户不再与多个孤立的系统进行交互,而是面对一个有机的整体;

  • 流程层——维护跨系统之间的业务状态,企业应用的核心是业务流程,流程包括端到端流程和人工参与的流程,流程会产生任务,推送到工作平台。流程把企业中多个应用联接起来;

  • 服务层——将应用系统提供的逻辑以标准化的方式暴露出来,使开发者不需要关心逻辑的对外协议、逻辑的实现方式、逻辑的部署位置,并提供事件的方式降低逻辑间的耦合度,为非侵入式的操作提供基础。

  • 逻辑层——实现了具体的业务逻辑,包括UI逻辑和后台逻辑。逻辑将由多个组件组成,这些组件将以可插拔的方式部署,使用AOP、依赖注入的方式编程,提供逻辑的编排能力;

  • 资源层——解决如何整合数据的问题,需要通过一个统一的数据编程模式统一对不同数据源的访问。

SOBA,企业应用2.0

会上,普元软件首席架构师焦烈焱说道,SOBA面向服务的业务应用,其理念是构造可复用、易集成的业务应用。2.0时代的企业应用中系统越来越多,越来越复杂,企业更加希望用统一架构进行应用的规划,打破竖井式结构,使应用天然具备集成能力。为达到上述目标,未来企业应用架构将更加看重多系统之间的集成能力,包括可插拔的构件模式、UI集成、流程集成、组合服务等,SCASDOBPELRIA等技术标志着企业应用2.0 时代的到来。

面向服务架构时代,对企业应用提供了更新的要求,构造SOBA(面向服务的商业应用)是我们面临的迫切问题。在SOBA中,企业应用的体系架构将从以MVC为代表的单系统架构发展为更加考虑系统间集成性的企业服务架构,相关技术的出现也给程序员带来了新的挑战和机遇,让我们一起,拥抱这个新的变化。