Any IT development service provider has already met this challenge : how to effectively manage the creation of a software application. This is where the AGILE method comes in. A simple, effective and flexible methodology, it guarantees 100% customer satisfaction (under certain conditions).
The classic method of the old days
The classic method consists in writing specifications as exhaustive as possible in advance of all the functionalities desired by the customer. However, this method has serious disadvantages :
- it is tedious
- it extends the time limits
- it makes the project rigid
- it does not guarantee customer satisfaction
- it systematically results in under- or overvalued invoicing
- it can lead to off-topic development
The classic method is based on the principle that the customer already knows all the features he needs and that he will not change his mind during development… Of course, in real life, that’s not how it works.
The AGILE method
The AGILE method proposes a completely different approach : project management by iterative cycle.
The client and the service provider will jointly define an overall objective to be achieved. Then several key steps towards this objective are identified. Finally, each of these steps will be divided into tasks to be handled by the development team.
Tasks will be processed in « batches », the latter being characterized by a duration. We call these batches (or iterations) « sprints » in the jargon of the AGILE method. Generally a sprint lasts 2 to 3 weeks. The project manager is generally referred to as a « Scrum Master ».
This means that at the end of each sprint (i.e. every 2 weeks for example), the functionalities completed by the development team are presented to the customer for feedback and validation. These meetings at the end of each iteration are called Sprint Reviews.
And so on, until the overall objective is achieved.
> The Agile method can be useful for CRM software development
The advantages of the AGILE method
This method eliminates the disadvantages of the traditional method.
The AGILE method :
- is flexible (adapts to the client’s regular feedback)
- is pragmatic (based on concrete use to develop)
- guarantees 100% customer satisfaction, because otherwise the customer says so and the service provider immediately modifies the software
- makes it possible to invoice as accurately as possible for the development of the project
- is reassuring because the customer sees the changes as they happen
- is fast because the customer can use the system even if not all features are yet implemented
Required for the success of the AGILE method
The AGILE method is effective, but it requires the following conditions to succeed :
- have as few interlocutors as possible from both parties (maximum 2 per party)
- the same interlocutors must follow the project from start to finish
- the client must be involved in the follow-up of the project, he must not remain a « passenger ».
- it is necessary to focus on important and/or urgent functionalities at startup
- the staff of the client company must accept the change
To go further
And no, I didn’t invent this method :) In fact, it has been in existence for several decades : since 1976. This method was then formalized in several books and video montages, notably by IBM in 1989.
As a result, there are many documents on the Internet dealing with this subject, including a selection below :
- A brief history of incremental and iterative development
- An AGILE methodology : EVO
- The New New New Product Development Game
And of course, don’t hesitate to ask me your questions in comments.