OpenText Cordys BOP 4平台开发入门实战演练

前言

随着互联网技术的发展,基于B/S结构的软件架构,呈现出多样化,所涉及到的富客户端、Webservice、WEB 2.0、HTML5等技术也粉墨登场,本文将介绍基于OpenText Cordys产品的SOA体系架构和相关开发技术,为开发人员分享另一种软件系统开发实践。

其中,富客户模型将界面分解成许多的既可以和用户直接交互又可以和服务器进行通信的小单元模块,所涉及到开发语言是JavaScript,以及围绕HTML DOM开发动态网页。

关于SOA

SOA是面向服务的体系结构,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服务可以使用一种统一和通用的方式进行交互。

面向服务架构,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。

SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。SOA可以看作是B/S模型、XML(标准通用标记语言的子集)/Web Service技术之后的自然延伸。

SOA的核心要素

要准确全面理解SOA,首先必须理解SOA的核心要素:

SOA的目标就是实现灵活可变的IT系统。要达到灵活性,通过三个途径来解决:标准化封装、复用、松耦合可编排。

SOA实践

在工程上,SOA的重点是服务建模和基于SOA的设计原则进行架构决策和设计。

从建模和设计的角度来说,SOA更多地侧重在业务层次上,也就是通过服务建模将业务组件化为服务模型,它是业务架构的底层,是技术架构的顶层,承上启下,是灵活的业务模型和IT之间的桥梁,保证二者之间的”可追溯性”。从这里往下,是基于已有的方法,比如OO/CBD来进行的。从架构的层次上,SOA更多地侧重于如何将企业范围内多个分布的系统(包括已有系统/遗留系统)连接起来(ESB,Adapter/Connector),如何将它们的功能、数据转化为服务,如何通过服务中介机制(ESB,Service Registry)保证服务之间以松散耦合的方式交互,如何组装(集成)服务为流程,如何管理服务和流程等。

SOA的架构特性,使得敏捷过程非常适合SOA项目的实施。在SOA架构中,服务的独立性,使得每个服务可以被单独地开发、测试和集成。一个企业中的IT系统,如果是基于SOA的计算环境,那么这个环境就是一个服务的生态系统,每开发一个服务,马上就可以独立部署,成为这个生态系统中的一部分。这样既很好地支持了持续集成、持续质量保证,又很好地使得这个服务马上产生业务价值,而不是苦等其他服务的到位。

服务的松耦合与无状态松耦合——服务的粗细粒度:一般主张使用粗粒度显然,为了实现最大程度重用,创建细粒度的服务也是必要的。无状态

服务应该是独立的、自包含的请求,在实现时它不需要获取从一个请求到另一个请求的信息或状态。服务不应该依赖于其他服务的上下文和状态。

Web service

Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。

WebService三要素:

SOAP用来描述传递信息的格式; WSDL(WebServicesDescriptionLanguage) 用来描述如何访问具体的接口; UDDI(UniversalDescriptionDiscovery andIntegration)用来管理,分发,查询。

Web Services 的理解及SOAP、WSDL、UDDI的关系

Web Services 是一个可以将应用程序变为web应用程序,将自己本地的应用程序信息通过网络,发布到网络当中,让别人通过浏览器等访问本地的信息。

简单对象访问协议 (SOAP)

简单对象访问协议是交换数据的一种协议规范,是一种轻量的、简单的、基于XML的协议,它被设计成在WEB上交换结构化的和固化的信息。通常,使用 HTTP 作为传输协议。

SOAP 消息包含以下元素:

关于WEB服务和网页WEB服务

Apache HTTP Server(简称Apache),是Apache软件基金会的一个开放源代码的网页服务器,可以在大多数电脑操作系统中运行,由于其具有的跨平台性和安全性,被广泛使用,是最流行的Web服务器端软件之一。

HTML网页HTML DOM

HTML DOM是HTML Document Object Model(文档对象模型)的缩写,HTML DOM则是专门适用于HTML/XHTML的文档对象模型。熟悉软件开发的人员可以将HTML DOM理解为网页的API。它将网页中的各个元素都看作一个个对象,从而使网页中的元素也可以被计算机语言获取或者编辑。 例如Javascript就可以利用HTML DOM动态的修改网页。

HTML网页与WEB服务

HTML网页部署在Apache HTTP Server上,并可以携带JavaScript编写的文件(.JS),以及样式文件(.CSS)、图片等。

OpenText Cordys BOP 4 产品架构

Cordys BOP是完全构建在标准、前瞻的架构之上,从一开始就设计成业务运营的支撑平台。客户可以利用BOP平台的SOA架构和完整的BPM能力,并与现有或新建的共享服务组合在一起,具有优异的兼容性,构建完整的业务运营环境。Cordys BOP不仅满足面向业务层面的流程建模与设计,还包括将业务流程真正落地实现,从而驱动企业内部的创新、敏捷性。

产品重要构成:

SOA Grid:包含通常意义上的ESB模块,以及一些额外的功能,如安全文档传输与数据同步。由于Cordys是一个彻底的SOA体系架构,采用标准的Web服务,因此上层的BPM和CAF也可以不用Cordys自身的ESB,而是和第三方的ESB无缝集成,对第三方ESB开放出来的Web服务,进行组合与流转;BPM:一体化的建模、执行、监控环境,也就是通常意义上的业务流程管理工具。

产品主要特点:

Web访问原理

了解基于OpenText Cordys产品的Web访问原理,,有助于设计、开发、运维等工作,也是建立另一种思维体系——简洁的SOA架构体系。

如上图Web访问过程图所示,简单描述如下:

开发技术与系统架构层次

基于OpenText Cordys产品的SOA技术架构,相对来说是比较简洁方案,笔者所了解的SOA方案中,这个Cordys SOA方案是最简洁者之一。

Less Coding这一次是一个告别,或者一个永远的告别,

OpenText Cordys BOP 4平台开发入门实战演练

相关文章:

你感兴趣的文章:

标签云: