迭代开发方法对Web应用程序的好坏

时间:2015-03-19 19:55:41

标签: web iteration agile methodology

有人可以向我解释迭代开发方法以及在开发Web应用程序时使用它的好处/局限吗?

另外,我一直在研究它,但我很困惑,它是否是敏捷的一部分?一些消息来源说它是,有些不说?

谢谢大家。

2 个答案:

答案 0 :(得分:0)

Iterative反对瀑布式开发。如您所知,您应该经历几个不同的阶段来交付软件产品。

  • 工程/启发要求
  • 分析&设计
  • 实施
  • 测试&验证
  • 部署&维护

在每个阶段结束时,您将获得一些工件或可交付成果。在瀑布策略中,一旦你完成一个阶段,一切都完成了,你将不会再回到那个阶段。

在迭代方法中,您将重复执行这些阶段。在每个循环中,您重复这些阶段的全部或部分,并在每个循环结束时,您将提供一个正常工作的产品。

迭代方法允许您逐步开发软件,并且您将能够逐步建立并进一步扩展您的产品。您可以在第一个周期结束时提供Web应用程序的框架,然后在每个周期中,您将重新审视您的需求,设计,实现和测试计划。你会发现错误并修复它们。同时,您将收到最终客户的反馈,并相应地更改您的产品。

敏捷方法如scrum,主要是关于如何消除不必要的大量过程,如繁重的文档,正式会议等。因此,您可以专注于您的产品和代码,并更快地遍历您的周期。敏捷既没有强制执行瀑布也没有迭代方法,但事实是瀑布现在已经过时,不再在工业中使用了。

答案 1 :(得分:0)

迭代开发已经存在了很长一段时间。它肯定早于敏捷,但你可以说它是敏捷开发方法的祖先。

有一些非敏捷开发方法包括迭代,例如RUP,所以它不仅仅是一种敏捷实践。

还有很多方法可以使用迭代方法。例如,您可以预先收集需求和设计,然后在开发阶段使用迭代。

像XP和Scrum这样的敏捷框架会进一步迭代,并希望有一个可释放的'每次迭代结束时的产品。

敏捷迭代方法的好处:

  • 该产品可在开发的早期阶段发布
  • 进度通常更容易衡量(发布的代码是一个很好的衡量标准)
  • 迭代方法允许团队更轻松地响应变化

敏捷迭代方法的局限性:

  • 将诸如UAT和法规遵从性等问题纳入迭代可能是一项挑战
  • 频繁发布和频繁重新规划可能会产生开销

您可以考虑在每次迭代结束时使用可释放的产品作为纯粹的迭代开发形式。并非每个团队都使用这种方法。例如,有些人可能会在几次迭代之后让用户进行测试。这样做的缺点是,你永远不能确定工作是否已经完成,因为潜在的用户反馈可能会改变一切。