在多数传统的生命周期中,阶段是以其中的主要活动命名的:需求分析、设计、编码、测试。传统的软件开发工作大部分强调一个序列化过程,其中一个活动需要在另一个开始之前完成。在迭代过程中,每个阶段都包括不同比例的所有活动。实质上,它类似小型的瀑布式项目。RUP认为,所有的阶段都可以细分为迭代。每一次的迭代都会产生一个可以发布的产品,这个产品是最终产品的一个子集。
迭代开发模型
迭代开发模型,如上图所示,水平方向为时间维度,从组织管理的角度描述整个软件开发生命周期,分四个阶段:初始、细化、构造、移交,可进一步描述为周期、阶段、迭代。核心工作流从技术角度描述迭代模型的静态组成部分,包括:业务建模、需求获取、分析与设计、实现、测试、部署。图中的阴影部分描述了不同的工作流,在不同的时间段内工作量的不同,几乎所有的工作流在所有时间段内均有工作量,只是大小不同而已。各阶段的主要任务:

与传统的瀑布模型相比较,迭代过程具有以下优点:
降低了在一个增量上的开支风险。如果开发人员重复某个迭代,那么损失只是这一个迭代的花费。降低了产品无法按照既定进度进入市场的风险。通过在开发早期就确定风险,可以尽早来解决而不至于在开发后期匆匆忙忙。加快了整个开发工作的进度。因为开发人员清楚问题的焦点所在,他们的工作会更有效率。由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的。因此,迭代这种模式适应需求的变化会更容易些。使用条件在项目开发的早期需求可能有所变化。分析设计人员对应用领域很熟悉。高风险项目。用户可不同程度地参与整个项目的开发过程。使用面向对象的语言或统一建模语言(Unified Modeling Language,UML)。使用CASE(Computer Aided Software Engineering,计算机辅助软件工程)工具,如Rose(Rose是非常受欢迎的物件软体开发工具。)。具有高素质的项目管理者和软件研发团队。