SOA是个旨在使相互作用的软件业务达到松耦合效果的架构。服务是一个由服务提供者提供的,实现服务消费者的请求的业务单元。提供者和消费者都是软件代理为了各自的利益而产生的角色。
SOA并没有在软件开发技术上带来多大的改变,但是它改变的是软件设计者的思想。不管是在计划经济时代还是在市场经济时代,企业的产品生产技术并没有什么很大不同,但是这种思想的改变却可以完全改变一个企业的面貌,这种改变是任何技术手段所不能做到的。同样,SOA并没有颠覆传统的软件开发技术,它所带来的是企业信息化观念的改变。企业的信息化,不仅是服务于企业,它还要服务于企业的客户。只有企业和企业的客户都满意的信息系统才是符合企业发展目标的系统。
企业经营者和软件设计者两者对SOA的印象是截然不同的。而我个人更提倡企业流程级的SOA,不管软件设计者是否采用ESB,或者基于.NET、Java EE,这些统统不重要。企业需要的是获取客户反馈的方法、信息传输与处理的速度的提升、信息系统本身快速调整以适应新的管理流程等。这样的SOA才是企业所需要的SOA。
松散耦合
敏捷企业一个最大的特点就是松散耦合,在构成虚拟企业的各个企业之间的关系是一种松散耦合的关系,只有松散耦合才便于不断进行调整。
在虚拟企业中,任何企业都不会在企业内部管理问题上与其他企业发生关系,每一个企业都根据其他企业或者客户的需求不断调整他的服务内容,只有服务是连接企业和用户之间的唯一接口。所有企业之间的互相配合都是暂时的,随着企业的发展和调整,他的服务提供商和客户都在不停的变化,不管是什么企业,只要能为其他的企业提供服务,就可能成为他的新合作伙伴,而这一改变不会对企业内部产生任何影响。企业内部的调整也通过企业所提供的服务进行了隔离,不会波及到其它的企业。
在面向服务的架构中,模块与模块之间,构件与构件之间或者不同的软件之间也是基于这种服务的概念。面向服务不仅指系统层面所提供的服务,在软件开发的各个层面都可以采用服务架构进行设计。
SOA助力敏捷
敏捷不是天生就有的,如同身躯高大者往往会反应缓慢,一个机构庞大的大型企业想要敏捷谈何容易。敏捷企业第一步要做的就是瘦身,只有机构精简了、流程优化了,才能够谈敏捷。
面向服务架构的IT基础设施,保证了企业信息系统的灵活性,可以根据企业的不同时期的不同需求对信息系统进行轻松调节,利用SOA将变动控制在局部范围,而不会波及整个信息系统。在信息系统中实施SOA以后,只要对外服务没有改变,则系统就无需变化,新的服务可以无缝的集成进行老系统中,而不需要引起其它程序的改变。新的业务流程可以通过调整服务的组合来实现,SOA秉承了企业中的服务概念,并对其进行了扩展。
用BPR为企业瘦身,用SOA为企业发展助力,让敏捷企业变得更敏捷。
作者简介:
唐俊(1980),男,湖南湘潭人,学士,SCJP、软件设计师、系统分析师、信息系统监理师、软件评测师,希赛顾问团顾问。研究方向为面向服务的软件体系结构、软件项目管理、移动软件开发、信息工程监理理论与方法。
文章来源于领测软件测试网 https://www.ltesting.net/