Découvrez la méthode rapid application development (RAD) pour épater la galerie en livrant des applications en quelques semaines, voir quelques jours.
Cette méthode de développement ne date pas d'hier (comme souvent lorsqu'on parle de méthodes). Elle a été créée par James MARTIN en 1991. Il s'agit d'une forme de méthode agile. Et comme toutes les méthodes agiles, elle consiste principalement en de courtes itérations qui permettront de rapidement produire un résultat en étroite collaboration avec le client et les développeurs.
A quoi ça sert ?
Cette méthode a été conçue à l'origine pour produire rapidement des applications de manière fiable tout en évitant les dérives fonctionnelles, grâce notamment aux itérations très rapides.
Cela implique bien évidemment un investissement du client et des équipes de développements qui doivent être disponibles à toutes les phases de construction de l'application.
Les principaux avantages sont les suivants :
- Améliore la flexibilité et la tolérance aux changements puisque les développeurs peuvent opérer rapidement des ajustements pendant la phase de développement
- De courtes itérations qui permettent de livrer rapidement et de réduire les développements
- Une réutilisation du code existant poussée au maximum. Réduisant ainsi la quantité de code développée, le temps de test et les erreurs.
- Améliore la satisfaction client qui voit quasi en temps-réel son application se matérialiser et se sent impliqué dans sa construction.
- Limite la dérive fonctionnelle puisque le client est impliqué très tôt dans le cycle applicatif
En quoi ça consiste ?
1ere étape : à quelles problématiques doit répondre l'application
Cette étape est primordiale puisque c'est elle qui va déterminer la trajectoire de départ de la future application. Elle consiste à déterminer les objectifs fonctionnels, les attentes des utilisateurs, le périmètre, les grandes échéances ainsi que le budget. Une fois ces éléments déterminés, la phase itérative peut débuter
2eme étape : construction du prototype de manière itérative
Les développeurs et le client vont travailler étroitement ensemble pendant cette phase de création. Il s'agit de produire rapidement quelque chose de visible pour le client pour que celui-ci puisse déjà faire ses retours afin que les développeurs ajustent. Et on recommence jusqu'à être proche du produit final.
3eme étape : tests, re-tests et re-re-tests
Aucune méthode de développement ne nous affranchi des tests. A ne pas sous-estimer car c'est l'ultime étape avant le déploiement auprès des utilisateurs finaux. Cette phase vise notamment à s'assurer que les attentes du client sont bien satisfaites. Cette phase dure tant qu'il y a des retours du clients et les tests que ça implique.
4eme étape : déploiement auprès des utilisateurs
Il est désormais temps de livrer l'application. Cette phase englobe tout ce qui concerne la reprise de données d'un éventuel ancien système, la formation des utilisateurs, etc.
Cas d'utilisation de la méthode RAD
Celui qui vous dit qu'en appliquant cette méthode il peut vous produire un ERP en quelques jours, fuyez-le de toutes vos forces. Car comme vous vous en doutez, cette méthode sera efficace dans un certain nombre de cas de figures, mais pas dans tous.
Elle sera d'autant plus efficace si vous êtes concernés par les points suivants :
- Vous avez besoin de produire une application rapidement (dans les 2 à 3 mois maximum)
- Vous êtes prêt à vous rendre disponible fonctionnellement pendant toute la phase itérative
- Vous êtes prêt à utiliser les bons outils et les bonnes technologies pour mettre en œuvre la méthode RAD
Voici quelques cas d'utilisation où RAD est particulièrement efficace
- remplacement de fichiers Excel qui font office de base de données, d'implémentation de process ou tout autre but plus compliqué qu'une simple utilisation "one shot"
- création d'une application d'opportunité : pour produire rapidement une solution qui vous permettra de concrétiser une opportunité commerciale
- exploitation de données sous forme de tableau de bord de pilotage ou de présentation
- partage de données de votre SI avec des partenaires, des clients : application de pré-facturation, application de passage de commande, mise à disposition de factures, etc.
- étendre le système d'information en lui rajoutant des fonctionnalités qui vous conviendront parfaitement
- plus globalement, toute application simple et dont il est facile d'en expliquer les fonctionnalités
Cette liste n'est bien évidemment pas exhaustive. Et pour être encore plus concret, voici quelques exemple d'applications que j'ai réalisé avec cette méthode :
- application de gestion des ventes : pour permettre aux commerciaux de déclarer leurs ventes et toucher leurs commissions.
- application de gestion d'exploitation : pour permettre aux exploitants de réaliser leurs opérations en fonction des commandes clients et de déclencher la facturation une fois réalisées
- application de suivi terrain : suivi des interventions sur site avec saisie des comptes-rendus et des temps
- application de dématérialisation des documents : mise à disposition des documents dans une base documentaire accessible en ligne
- application de prise de commandes : portail client de prises de commandes en ligne
- application de gestion de projets : implémentation de la méthode de gestion de projet spécifique au client et en lien avec son système d'information
- application de pilotage : tableaux de bord financier, commerciaux et d'exploitation pour l'aide au pilotage de l'entreprise
- application de suivi budgétaire : construction du budget de l'entreprise et suivi au fil de l'exercice
Cette liste n'est également pas exhaustive. Je n'ai mis que les exemples qui me sont venus en tête :) ! En fait, les cas sont trop nombreux pour qu'on les liste.
J'imagine que désormais vous serez en mesure d'estimer si c'est cette méthode qu'il vous faut pour concrétiser votre projet d'application ;) !