技术开发 频道

SOA技术架构如何支持敏捷开发方法

【IT168 技术文章】

    郭旭:关于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这样的东西做一些结合,可能会形成一些更良好的开发模式?

    莫映:其实这个并不矛盾。

    熊节:如果组件化技术能够成熟的话我相信一定会有帮助。

0
相关文章