Agile Software Development Lifecycle | Smartsheet

Agile software development is a more flexible approach than the Waterfall model’s strictly set phases. As a result, many teams are moving toward Agile’s adaptive methodology and moving away from the predictive Waterfall methodology when developing software. 

The conventional Waterfall development method follows strict phases, sticking to the original requirements and design plan created at the beginning of the project. A project manager spends time negotiating milestones, features, resources, working at length in the planning stages of a project, usually developing a full-blown project plan that details how the work will be moved through many gates to completion.

Customers finalize requirements before development begins and then a lengthy development process occurs, with the project manager tracking every movement of the project through each handoff and finally on to delivery. If everything goes well, this process produces an on-time, on-budget release. 

But the chief drawbacks to this approach are well-documented: it is not responsive to change and it takes a long time to deliver working software. When technology forms the field of play and drives every change, a six month (or longer) release cycle, with requirements chiseled in stone, does not meet the business need.

The history behind Agile software development is one of frustration with the traditional waterfall methodology. Agile is designed to accommodate change and the need for faster software development (as discussed in the Agile Manifesto’s Values and Principles). The project leader typically facilitates the work of the development team, eliminates bottlenecks, and helps the team stay focused in order to deliver software iterations on a regular basis. It is less about milestones than it is about hours, feature selection, prioritization, and meetings.

Unlike the Waterfall model, the development team ultimately decides at the beginning of a sprint (or iteration) what can be accomplished in the timeframe and sets out to build a series of features, delivering working software that can be installed in a production environment at the end of the sprint. Since Agile software development methods (such as Dynamic Systems Development Method- DSDM) are flexible, most are suitable for method tailoring – where development teams can adapt the flow to meet the needs of the product.

 

Xổ số miền Bắc