Now… let’s start by defining a “sprint” since I just used that term. In product development or a software development process, a sprint is a set period of time during which specific work has to be completed and made ready for review. Certain functionality – agreed to in advance – is created and finalized during each sprint. Where as Waterfall looks at a project as a series of phases… which brings us to our first discussion of key transitional understandings for the business analyst and project team members…
In Waterfall, the software development process is divided into phases that happen once – in Agile they can happen over and over again. On the Waterfall project, the software development process is divided into different key phases. In an Agile methodology the software process is basically broken up into a series of sprints – each creating and finalizing a new or set of new functionalities. The end of the project isn’t the only rollout of working functionality… rather that happens at the end of each sprint. Waterfall looks at the software development process as one big single project divided into many phases and deliverables, but each appears only once during the development lifecycle. With Agile, the same phases may actually appear in each sprint. For example, design, development and testing will appear repeatedly rather than only once. The Agile software development project can actually be viewed as a collection of many different projects and can… and often will… grow with the customer’s needs, changing and evolving requirements, as well as their expanding funding and budget availability.