60px

451px

Amadeus

Blog

Agile design processes: Designing great software features or building the Normandy Bridge?

Jean-Noel Lau Keng Lun

Head of Product Management Corporate, Services and Security, Amadeus IT Group

To understand, we have to reflect on the good old way, which is the waterfall model I learned many, many years ago in engineering school. In fact, "Waterfall" is another cool-ish word to describe a linear process of Conception, Initiation, Analysis, Design, Construction, Testing, Production/Implementation, and Maintenance.

 

"Agile" is a bit of a buzz word today in software design. A lot of similar terms (SCRUM, KANBAN, Extreme Programming, Crystal Clear...) are thrown around.

But really, why should you care?

The funny thing is that this process is inherited from the construction work processes dating back to the Romans. Once you build a bridge, it is nearly impossible to "fix" it afterwards, or if you do it, the cost is simply prohibitive. So, getting the right design (and knowing what you want to build) at the very beginning is vital.

Nowadays, with software, you can actually change the end-product quite easily. In fact, one could even say that users expect the end-product to change regularly. Furthermore, at the outset, users sometimes only have a vague idea of what they want (the features), but a strong opinion of what they want it for (the business need).

Going beyond the fluff – agile design processes allow the product manager to create the conditions for close and frequent interaction between the customers, the business folks, and the delivery. We conducted theAmadeus E-Travel Management UI project this way. In terms of features, the end-result was actually quite different from what I had envisioned at the start...However, our customers were really pleased with it and with themselves in fact, as they designed it with us.

To quote Kent Beck, a pioneer in this methodology, it achieves “Customer satisfaction by rapid delivery of useful software ". I like this quote very much, as it sums up agile design processes nicely.