soa架构的优点有哪些? 利用SOA架构开发的优点:
第一更易维护
业务服务提供者和业务服务使用者的松散耦合关系及对开放标准的采用确保了该特性的实现建立在以 SOA基础上的信息系统,当需求发生变化的时候,不需要修改提供业务服务的接口,只需要调整业务服务流程或者修改操作即可,整个应用系统也更容易被维护
第二更高的可用性
该特点是在于服务提供者和服务使用者的松散耦合关系上得以发挥与体现使用者无须了解提供者的具休实现细节
第三更好的伸缩性
依靠业务服务设计开发和部署等所采用的架构模型实现伸缩性使得服务提供者可以互相彼此独立地进行调整,以满足新的服务需求
SOA技术架构如何支持敏捷开发方法两者是否有一定的结合? Martin Fowler:没有特别的关系,因为SOA是用来描述一种特定的软件结构的词汇更多的是为了让市场上大家明白这种软件结构,而敏捷方法是一种方法学,是用来构造软件的一种方法 郭旭:既然SOA是一种架构,敏捷是一种开发方法,那架构和开发方法以及开发的人这几者之间在开发的过程中哪个更重要? Martin Fowler:开发的人更重要 才子英:提到架构的问题,因为SOA这种技术架构强调随需应变,实际上敏捷也是提倡让企业更快的适应变化技术架构上随需应变和开发方法的随需应变有什么关系,技术上的随需应变能够给开发方法上的随需应变带来上来帮助和好处? Sidney Pinney:ThouhtWorks今年提出的一个理念就是敏捷企业,企业本身需要应对变化的能力从IT的层面上怎么提供这种支持呢?SOA是一个方面,是架构层面的因素,可以让企业架构变得更加松耦合,让业务更快的发展起来敏捷方法是另外一个因素,它能够给SOA的架构提供一种迭代的开发方式,让它能够快速的产生价值,SOA和敏捷有这样一种奇妙的共生关系在我们看到研究报告上说在美国采用SOA的企业同时采用敏捷方法的比例比其他的企业要高出一倍以上公司必须一边改造一边使新的应用产生价值,所以往往会采用迭代的方法,所以敏捷就成了自然而然的选择 郭旭:不知道你们有没有听过SCA这种架构平台?就要基于构件的开发方法,它的理念是把很多应用模块做成大大小小的构件,有一个标准,将来做业务变化的时候可以基于构件重组带来个方法实现它的这种开发理念也是一种快速开发或者是随需应变的开发方法,它跟咱们的敏捷开发采取的方法论是不一样的这两者方法有没有一些结合或者有什么特点或者优势? 莫映:这两个是不同围度的事情如果基于组建这种思路,很早以前就有了 郭旭:SCA跟SOA有一定的相关性,是基于开发的,也是面向服务的一种开发方法,大概是去年提出来的 Sidney Pinney:关于组件的技术ThouhtWorks在国外也做过一些研究,包括跟微软也做过一些合作的研究但是最后在这方面取得的成果并不是特别乐观,整体来说要预见到一个软件需要什么东西是很难的事情组件的组装当然是一个非常好的想法,很多人在尝试,但是我们在微软这边,现在微软也在提这个概念 郭旭:这个是去年IBM和和Oracle这样的公司提出的一个联盟 Sidney Pinney:我们现在基本上放弃了这方面的研究 郭旭:我觉得敏捷开发方法从开发角度来讲是很有优势的,但是对于未来的管理有某种程度的管理,它可能跟一些其他的类似SCA这样的东西做一些结合,可能会形成一些更良好的开发模式? 莫映:其实这个并不矛盾