闲亭信步(KISS)

书犹药也,善读之可以医愚。If we only do as well as we did yesterday, then we will not see any improvement tomorrow.

翻译 SOA and Agile: 是朋友还是敌人收藏

新一篇: CruiseControl与Lava Lamp | 旧一篇: AgileChina 2007年度首次联合聚会活动

原文:http://www.infoq.com/cn/articles/SOA-Agile-Friends-Or-Foes

这是一篇关于SOA与Agile的讨论,文章总结了当前使用这两种技术的观点。虽然没有结论,却也值得思考。

其实,无论是敌?是友?都有共同的目标,那就是用技术为企业提供更大的价值。想一想,任何一种技术的产生都是同样的理由。

下面是该文的部分引用:

敏捷与SOA是朋友 
 
  SOA是一种架构,强调业务必须能满足市场要求,而且通过构建各种服务,可以消除重复,并达成“重用”这一很难捉摸的目标。团队通过构建“服务”而非“应用”,可以平衡企业内部和外部的工作。 
  敏捷是一种方法论,强调事物是变化的,软件开发团队必须拥抱变化,并对变化做出反应。通过引入技术性和非技术性实践,团队可以使业务敏捷起来。 
架构和方法论是可以一同使用的,它们本质上是互补的。而且,SOA和敏捷的目标相同,它们都承认(1)变化是必然的(2)组织需要有效地应对变化。所以,我们期望在构建SOA时,方法论的选择是敏捷,反之亦然。对吗? 
 
敏捷是SOA是敌人
 
  你可能认为既然目标相同,这两种技术必定是一致的,没有冲突的,也就意味着实践与架构的重迭。但在这一点上,SOA社区和敏捷社区都有不同的声音。为什么会这样呢? 
  主要原因之一就是,它们的出发点不同,最初的方向也不相同。尽管最近几年敏捷快速发展,社区中获得很多经验并总结了“敏捷宣言”,并将其应用于大项目,但从发展史上看,敏捷还是“草根”,从小项目中走来。SOA是新兴的,具有自顶向下的本性,使用“分而治之”的方法来进行软件开发。这种方法,尤其是其中的“分割法”,很容易会导致团队间的沟通不畅,如文档、规范等等。  
 
SOA和敏捷在以下三方面有冲突
    · SOA鼓励架构设计在前,而敏捷对这种称为“BDUF”的方法持相反观点。 
    · SOA鼓励按功能线索来划分团队,而敏捷倾向于以交叉功能式组建团队。 
    · SOA中,服务一旦建立起来,SOA就不再对服务的变化做出相关的反馈,而敏捷则强调及时反馈,无论是技术层面,还是人的层面。

 

发表于 @ 2007年04月20日 16:05:00|评论(loading...)|编辑

新一篇: CruiseControl与Lava Lamp | 旧一篇: AgileChina 2007年度首次联合聚会活动

评论

#question_0011 发表于2007-10-31 22:57:57  IP: 60.20.201.*
ok
#furniture 发表于2007-11-05 16:48:37  IP: 218.18.56.*
顶一下
发表评论  


登录
Csdn Blog version 3.1a
Copyright © 乔梁