agile - 发布频率是敏捷和瀑布之间唯一真正的区别吗?

标签 agile waterfall

关闭。这个问题是opinion-based .它目前不接受答案。












想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题.

3年前关闭。




Improve this question




显然,应用这两种方法对团队、客户、投资返回率等的影响差异巨大,这是许多书籍和无休止的讨论和 session 的主题。

但是当我想得更多时,我很难找到两者之间的任何差异,这些差异最终不会映射到单一的根本差异,即发布频率。

Waterfall 花时间在设计上,然后编写代码,然后进行测试,最后发布。但是敏捷执行完全相同的一组步骤——只是每个步骤都更小。

敏捷方法的一个关键部分是从每个版本中学习并使用它来让更大的设计出现,而不是在一开始就试图预测它。

但瀑布也这样做。只是 Waterfall 团队不是每 3 或 4 周学习一次,而是每 6 或 9 个月学习一次。但瀑布设计仍然出现。也就是说,瀑布式版本 2 将反射(reflect)在版本 1 中学到的东西。所以过程没有什么不同,只是它以不同的速度执行。

敏捷专注于密切的客户协作。但瀑布也这样做。只是因为瀑布式的迭代时间较长,所以更需要一份契约形式的需求列举 list ,让大家在很长一段时间内保持在同一页面上。但同样,这只是频率的产物。交货频率越高,对契约(Contract)的需求就越低。

我还遗漏了其他任何原始差异 - 还是真的只是频率?

最佳答案

瀑布 :

  • 您设计的产品
  • 你 build 它
  • 你测试一下
  • 你记录它
  • 当您开发了所有需求时,您就可以发布它

  • 敏捷 :
  • 您首先设计最有值(value)的功能(或 user story)
  • 你测试它 (TDD ;))
  • 你 build 的
  • 你记录它
  • 你用下一个最有值(value)的特征重复这个过程
  • 您可以随时释放它

  • (在您完成的每个功能之后或在时间限制期之后(通常称为 sprintiteration ))

    区别对我来说很清楚。

    敏捷 ,您可以通过频繁交付小块软件来调整要构建的内容。当你有足够的时候,你可以停下来。

    关于agile - 发布频率是敏捷和瀑布之间唯一真正的区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3538286/

    相关文章:

    mysql - 将mysql集成到 waterfall 异步中

    agile - 哪些群体应该参与敏捷?

    agile - : writing the code right, 和编写正确的代码哪个更重要?

    deployment - 如何持续部署由多个应用程序组成的大型系统

    tfs - 修改团队基础服务器中 Sprint Board 的列

    node.js - 在异步 waterfall 中不调用最终回调有什么坏处吗?

    javascript - 注释 Google 图表 API

    node.js - 查询数据库时的异步 waterfall 问题

    eclipse - Eclipse 中的协作编程

    project-management - 当客户端的错误真的是一个新功能时