Surveys show that 2 out of every 3 IT projects fail. Many are even cancelled before completion. Common reasons projects fail range from budget overruns to failure to deliver ROI to no change control system. The list can go on and on….  According to a PMI Survey, one of the top 3 reasons for project failure is not meeting the audience needs. A key factor to avoid this is by simply keeping your audience engaged throughout the “entire” process. Letting your audience have a voice throughout the project lifecycle (Audience Centered Design) while implementing functionality in small dosages (Agile Development Cycle) is a major key to developing a successful website and will substantially decrease your chances of project failure or rework later on.

Classic waterfall methodology

 
Traditional Approach:
During a website waterfall SDLC, users typically get involved during the User Acceptance Testing (UAT) phase. If they’re lucky, they will be involved (but limited) during requirements. As long as the application meets all the business, user, design, quality etc requirements while doing it on budget and on time, then the project was a success. However, project success should be defined by what happens post-deployment: inefficiencies, adoption issues, training issues, etc. all will cost you more time and money in the long run. Having users involved during the entire process would alleviate those more important success metrics.

 

Agile waterfall methodology

 

Recommended Approach:
The Agile methodology shown here is essentially the waterfall method but with continuously repeated “Design Iterations” that are “Audience Centered”.

  • The methodology begins with a Planning Phase followed by a Requirements Phase.
  • The Requirements Phase involves heavy audience participation (focus groups, interviews, surveys etc).
  • Once requirements are completed, the first Design Iteration begins. This iteration is “Time Boxed” and involves implementing incremental design functionality (i.e. functional logic, wire framing, page comping etc) onto an evolving prototype.
  • Once the functionality is implemented, the iteration starts again and it will be validated with your audience.
  • After validation is completed, the next iteration of incremental design begins (although design iterations are also done in parallel).
  • This continues until all the requirements are implemented and fully validated in the prototype.
  • Once the “Design Iterations” are completed, application development will begin (using the functional) and the remaining waterfall phases are executed (QA, UAT, Deployment and Maintenance).

There are different types of Agile methodologies such as SCRUM, XP, RAD, Crystal Clear, FDD, Lean SD etc. The diagram shown above is a basic Agile Methodology with iterations focused around the design cycle.

Benefits/Conclusion
Here are a few benefits of adapting this solution:

- Reduce the cost of future redesign by meeting the audience needs.
- Reduce user task times, time of training, help desk support & turnover as well as increase user productivity & quality.
- Show development results faster and keep project team members focused and communicating. You will receive feedback early so corrections are easier to accommodate.

Implementing this solution in your next application development project will exponentially increase your chances of project success and save you headaches, time and money down the road!

Share this:
  • Add to favorites
  • email
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • LinkedIn
  • MySpace
  • Twitter
  • Yahoo! Buzz
 
Comment * required field to submit

*

*

* security check  
   

Subscribe without commenting