Chinaunix首页 | 论坛 | 博客
  • 博客访问: 25083
  • 博文数量: 3
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 51
  • 用 户 组: 普通用户
  • 注册时间: 2014-10-08 21:15
文章分类
文章存档

2015年(3)

我的朋友

分类: 云计算

2015-05-28 00:01:41


SOA新观点:开发人员友好

首先谈谈本人对于SOA基本的,粗浅的认识:面向服务架构提倡高复用与低耦合,以服务的视角重新封装现有IT资产,为企业提供了持续的快速应变能力。

在传统的SOA相关讨论中,一方面强调开放标准,包括通讯协议的标准(比如HTTPSOAP),服务描述的标准(WSDL等),一方面强调适配器,ESBBPM等核心架构模块对于SOA的支撑作用。一些重型的系统,一般会遵循各种各样的开放标准,并声称将SOA的理念贯穿于自己的血液之中,并将有效的帮助开发人员和其他利益相关人贯彻SOA的核心思想。

这些产品包括ORACLESOA套件,以及SOA治理套件。IBMSOA家族以及SOA治理相关产品线(比如WSRR等)。面对这些重型套件的时候,看着界面我就头疼,这也算是帮助?可以肯定的是,熟悉这些大型产品之后,开发人员按照其设定的套路来执行相关操作,应该会得到一些收益。

引发我思考的是现在如火如荼的各种互联网的开放平台的发展情况,典型的如淘宝开放平台(),新浪微博开放平台(),百度开放平台()等。从2007年开始,就有意无意的关注淘宝开放平台,其api文档描述,调试服务,以及现在的支持中心中的问题列表,都是很好的设计。对于开发人员要求低,入门快,是这些功能的集中特点,而这些特点加速了应用的接入,也促进了开放平台的繁荣。

最近几年不少厂商已经开始投放API管理的产品,比如IBMAPI Manager,其总体思路抽象一句话:一个产品提供给传统企业建立互联网开放平台的能力。其中的各种功能对于我来讲确实挺有吸引力,但其本质来讲,API Manager这样的产品仿照互联网开放平台本身就说明了问题,我们要的不是一个冷冰冰的产品,而是一种能够推动系统不断前进的思维:开发人员友好。

对开发人员友好,不仅仅是系统对接技术上采用开放互联标准,降低不兼容和平台差异性,也包括文档友好性以及沟通的友好性。一个核心问题是开发人员是一个活生生的人,她有自己的审美能力,有自己的正常的思维习惯与工作惯性,会将她生活的时代的一些特征带入到她的工作环境。

从生产者与消费者的角度来讲,开发人员是我们的消费者,是我们的上帝,是来享受我们的服务的,而不是被一个核心的接入平台折腾的。当人类已经进入互联网时代,甚至一只脚已经迈入DT时代的时候,我们却还让我们的开发人员墨守多年以前的陈规,这是不人道的。

本着开发人员友好的思路,通过建设轻量级的内部开放平台以及开发者社区,贯穿企业应用整合的大部分流程。这样的改进,会极大的提高开发人员的工作效率,进而提高系统更新换代与互联互通的速度,从而快速响应业务需求。

在这样的思路指引下,服务化的核心,将不再仅仅是严格的通讯协议以及SCHEMA数据校验,而是在线的良好的接口文档,以及当后端系统服务变更之后,开放平台上服务文档的及时更新以及通知。

开放平台上也不仅仅提供文档,同时能够提供在线测试的能力,当一个新系统接入企业网时,可以通过开放平台搜索接口,并在线测试接口。当然,一个正规的新系统接入流程,依然是按照业务需求分析,服务接口分析,服务接口联调,接口验收,业务功能开发与验收这样的流程来执行的,所不同的是,因为开放平台上拥有服务的结构化以及非结构化的丰富信息,同时拥有需求分析之后的系统允许访问的服务接口权限列表,所以能够支持自动化的接口验收,并生成报告。

这样的SOA实践,超越了正统的SOA复杂理论,以及重型企业级产品的支撑,只取精髓思路与核心概念,来完成IT核心的蜕变。

上述提到在线测试接口,多数开放平台均支持此项功能,而自动化验收的功能,不少开放平台或者某些企业的内部系统也都已经有过类似的实现,这样的事情并非遥不可及。并且基于这样的思路,企业建设一套这样的系统,其投入是可控的,产出也是近期可见的,这是因为:通过小型工具化的平台,对开发人员工作效率的提升远比重构现有系统来的快的多。

当企业具备了快速应变能力,并适当解放了开发人员之后,对现有系统资源所进行的深层次改造与重构也将比原来明朗的多。

这样的面向服务,大多数人都消费的起。


阅读(1282) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~