agile - SOA 和敏捷方法论是互补的吗?

标签 agile soa

我还没有开始学习两者中的任何一个,但我想知道你们中是否有人使用敏捷方法来实现 SOA?

谢谢

最佳答案

所以问题是:Are SOA and Agile friends or foes?

总之,面向服务的架构 (SOA) 和敏捷软件开发都可以帮助公司变得更加灵活,并更好地协调业务和 IT。因此,许多人注意到 SOA 和敏捷似乎是天生的一对。

SOA 引入了一个受控环境,在该环境中可以适应变化以支持敏捷流程,通过应用设计模式、标准和治理程序来提高质量、效率和生产力。服务可重用性、可组合性和抽象等设计模式被用来提供灵活且适应性强的生态系统。敏捷方法还使生命周期更加增量和交互,从而使业务能够更快地从 IT 获取反馈或向 IT 提供更快的反馈。它们都支持持续的业务-IT 循环,这是企业制定与 IT 一致的战略所必需的。 -- What does SOA brings to Agile? Or Agile to SOA?

说明

正如您在 SOA Manifesto 2009 中看到的那样和 Agile Manifesto 2001 ,有很多共同的值(value)观,例如敏捷性、灵 active 、将变化视为机会等等。由于云计算 [2008]、Web 服务 [2004] 等,有些人将 SOA 视为敏捷的演变。这些撰写声明的人对Waterfall Model不满意。因为客户对交付的软件有限感到不满意。如果没有官僚主义,客户就无法改变要求,有时他们只在流程中间才知道自己想要什么或需要什么,此时契约(Contract)已经签署。小弗雷德·布鲁克斯 (Fred Brooks, Jr) 似乎说过“计划扔掉一个[实现];无论如何,你会的!”。

所以人们开始以敏捷的方式做事。也给客户带来了快乐。不知何故,他们开始对软件感到满意,并且软件比以往任何时候都更加准确,有一些小错误,并且符合要求。

随着分布式系统的繁荣!,在我看来,从 Google 开始,一些人开始在互联网上开发东西,例如公共(public)或私有(private) Web 服务和外部 API,而 SOA 的良好实践是流行语。他们写下了这份声明,它成为了一项主要的建筑设计。

注释

  1. 瀑布并没有坏或错!对于像 NASA 这样的人来说,它仍然很好,而且对于规范不会改变的重要软件来说,它效果很好。

  2. 还有更多的架构设计模式,例如层等。您需要知道的是这种模式是否适合您的项目。也许 SOA 不适合。

  3. 此外,没有 Elixir !

关于agile - SOA 和敏捷方法论是互补的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11602756/

相关文章:

tdd - 您如何在不平凡的应用程序中进行 TDD?

agile - 敏捷运动丢失了哪些良好实践(如果有)?

soa - SOA 和 ESB 的区别

wcf - SOA:库与服务:库是更好的选择吗?

web-services - 微服务架构中的消息传递

WCF SOA : CRUD Data Access Service. ..为什么要麻烦(或者我们的设计错误)?

agile - 使用Scrum和Sprint进行基础架构改进的最佳方法

agile - Scrum 任务板 - 任务可以改变吗?

git - 从 git pull 故事分支的最佳实践

wcf - 何时使用 SOA(面向服务的架构)