Agile vs Waterfall what approach is right? (Answer: Why not try both)

October 5, 2009 18:00 by Paul Hart

A lot of talk and discussion has been going on between our project managers & analysts in the Waggware offices about choosing the appropriate software development project approach (Waterfall vs. Agile).  I'll share with you some of the outcome of our discussions:

Waterfall ensures the core of the application works

Waterfall development is an approach to developing software t that breaks a project into finite phases.  Each phase is performed in order and each depends on the completion of preceding phases.  The central idea behind the Waterfall model is that time spent up front will ensure project success towards the end.  With this software development life cycle approach the project managers and business analysts must ensure that requirements and design are correct.  Pressure is on them to be thorough in understanding project goals, comprehending existing business processes, gathering business requirements, and developing designs. 

The Waterfall methodology should be used when the project involves putting the back end engine together.  Items such as business rules, adhering to regulatory requirements, and connecting databases all fall into the core of an application.

Agile development focuses on user adoption and experience

Wikipedia describes Agile software development as "a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams. " Agile encourages developers and end users to work closely with one another to ensure that unique user needs are met and that business activities are optimized.  This is accomplished by developing in short development bursts (1 - 2 week periods) and gaining feedback on the usefulness of the software application.  The feedback should come from the users that will actually be using the system.  The thinking behind this approach is that users are subject matter experts and are more likely to adopt the change because they took an active role in designing and testing the new changes to the workflow through the iterative software development process. 

Leveraging both an AGILE and Waterfall approach will help to ensure that your project is a successful one.  Focus on the core project objectives by leveraging a Waterfall approach and improve user adoption and experience by leveraging the Agile project approach.  This flexibility in your development process will help to ensure that your corporate project sponsors achieve their business objectives and the individual users will realize improved productivity and software that is easy and perhaps fun to use.

 

 

LinkedInTwitterFacebook

Comments are closed