Get the foundations right – why agile development needs UX

There has been lots of discussion in the UX community about the compatibility or not of agile development and the principles of user centered design (UCD). The fact that developers are aiming to produce something fast in small iterations can have a scary note to it – best captured in Alan Cooper’s book The Inmates are running the Asylum.

In my experience, rapid development is not a bad thing at all – if it comes embedded in a well-managed project with well-defined strategy and scope.

I first came across “Agile” in 2000 when I worked for a software company in California (Niku, whose product “Clarity” is now part of CA Technologies). After the burst of the bubble and a couple of rounds of lay-offs, the CEO went around distributing copies of a book called Extreme Programming. This happened in an organisation that had once boasted a PMO (gone), Product Managers (gone), Marketing (almost gone), and a full-blown web development team with producers, usability engineers, designers and front-end developers (only 3 remained).

The result was quite astonishing:

  • development was streamlined with automated nightly builds (no more: “but it worked on my machine”)
  • usability issues were addressed on the fly and tested with whoever happened to walk down the hallway, and most importantly
  • customer requests were prioritized and features added or dropped based on their needs

As a result, we were able to get a number of releases out in record time while working in very tight collaboration amongst ourselves and with our clients.

A couple of things played in favor of such an agile development effort:

  • Small teams
  • Senior and experienced people
  • A general roadmap and strategy in place
  • UI patterns well defined and documented

However, in order to have a roadmap and strategy in place as well as a well-defined concept, the mantra of “doing your homework first” is more valid than ever:

  • Research user needs and context
  • Evaluate competitive landscape
  • Assess business goals and objectives and
  • Create an overall concept in form of sitemap, process flows, wireframes, etc..

As with building a house, you want to get the foundations right – or any extension done later on will look like the picture above!