Agile Development - Case Study
What is it about the Agile projects and Agile software development that is being preached and practiced so enthusiastically ? For those who did not know, Agile Software Development is a software development approach. In traditional waterfall approach, The final usable product is available at the end of the life cycle. In Agile model, we will have usable product available at all times, and its only that more features are added as the project progresses. Here is what Wikipedia says about this- http://en.wikipedia.org/wiki/Agile_software_development
Case study – Kris Travels is a travelling agency which books tours, Air tickets, Train Tickets, Tour Cabs, Hotel Reservations and everything else. Their booking system is old and rotten. They are dependent on phones and black& green screens to make the bookings. They paid an exuberant sum to a Harvard Consultant to know why their year-on-year sales have become stagnant. Alas , I could have offered my services at half the fee ! Anyways, it was found that customers could reach Kris Travels only by phone or in person to book the tickets. They need a new web application to be able to compete with Orbitz and Kayaks.
Problem – Develop a new web booking application from scratch. It should be done fast to keep the customer base in tact and to be accessible on the web also.
Analysis– Kris travels cannot afford to lose time as the competitors already are playing big on web. They need to have a live web application in place very soon even if it means that this application has less features to start with. Most important features will be available at first and other features will be added in due course.
Proposal – This situation is a perfect fit for Agile Development model based essentially on the iterative approach. Remember that Agile development model lets you implement a basic working
application at first and then you can add more features later. The key is to list down all the requirements and identify those which are needed first. Kris Travels would say that Air ticket booking is their top priority. Hotel, Train, Cabs can come in later in the same sequence
Execution– In agile model, all the stake holders will have close interaction all the time. The team formed for this new web application will include the Software Programmers, Sales Personnel, User Interface specialists. Agile model requires all these specialists work in close proximity at all times. In fact, all these personnel may sit in the same room to resolve any questions then And there rather than waiting for a formal meeting. Informal and quick communication overtakes the formal and delayed responses as in traditional models.
-
Sales team tells the Programmers that Air Ticketing is the first features they would like see live, first up. While the programmers are working furiously at it, User Interaction team are working with Sales people to have a neat and friendly user interface. And the sales people are working to prepare a sequenced list of other features required.
-
At the end of First iteration, A new web application is developed and is available to customers who want to book Air tickets. And by the time this is available, Sales people would tell the Programmers that they want Hotel reservations next.
-
So, the second iteration will focus on adding Hotel reservations feature to the web application and also link Air tickets and Hotel Booking. While the programmers work on the second iteration, The testers will test the first iteration work and the sales personnel would start gathering requirements for the third iteration.
-
The third iteration will include Trains & Cab reservations and link them to the previously developed features.
-
Fourth iteration , Fifth iteration and so on …. will add more and more features until it’s done.
Conclusion – Agile model is both a work-in-progress and available-for-use at the same time. While this is not a web-application-only model, It suits the web application & product development works very well. The praimary purpose of the Agile development model is reduce the Time-to-Market or Time-to-use as much as possible.
Comments [0]