Etapes clés de développement d'une application web ou mobile
L’utilisation d’applications digitales est maintenant bien ancrée dans la stratégie de développement des entreprises.
Certaines applications facilitent le suivi des activités en interne. Ex : application de traçabilité des stocks pour une société de distribution, application de gestion électronique des documents pour une administration publique.
D’autres sont plutôt orientées client : web banking pour les établissements financiers, e-commerce pour les entreprises commerciales, mobile insurance pour les sociétés d’assurance
Mais le développement de telles applications, qu’elles soient faites en interne ou par un prestataire, doit respecter certaines étapes importantes. Découvrez les ci-dessous.
ETAPE 1 : Elaboration du cahier des charges
C’est l’étape initiale avant de lancer le projet. Ici, l’entreprise désigne des utilisateurs clés ou des business process owners qui seront chargés d’élaborer un cahier des charges de l’application qu’elle souhaite mettre sur pied. Ces derniers établissent une liste des besoins de la future plateforme digitale.
Un product owner sera aussi désigné. C’est lui qui sera le porteur métier du projet et qui s’assurera que les fonctionnalités développées dans l’application correspondent aux besoins listés.
ETAPE 2 : Analyse
Durant cette phase, une revue des besoins est effectuée entre le product owner et l’équipe responsable du développement. On utilisera le terme prestataire pour désigner cette équipe, le prestataire pouvant être interne à l’entreprise (équipe IT) ou externe (cabinet).
A l’issue de cette phase, une liste détaillée des fonctionnalités est élaborée (user stories pour les projets en mode agile). Chacune fonctionnalité sera rangée dans une macro-fonctionnalité ou un futur module de l’application. La méthodologie agile fera l’objet d’un article séparé.
Au cours de cette étape, l’architecture technique de la solution est aussi définie ou confirmée. Par exemple : le type de base de données à utiliser, les frameworks frontend ou backend à sélectionner et les différentes interfaces utilisateurs ou système à mettre en place, etc…
ETAPE 3 : Conception détaillée
Les étapes 3 à 5 sont effectuées en parallèle pour les projets en agile, le but étant de valider de manière graduée le développement de l’application.
Lors de la phase de conception détaillée, les spécifications fonctionnelles sont rédigées par le prestataire et validée par le product owner. Les spécifications détaillées contiennent tous les futurs détails de l’application : logique fonctionnelle, enchainement des écrans, champs et actions attendues de chaque écran, détails des interfaces entre l’application et les systèmes externes.
ETAPE 4 : Développement
Les développeurs du prestataire implémentent la solution telle que définie dans les spécifications fonctionnelles. Ils effectuent des tests unitaires afin de se rassurer de l’effectivité de leur code source. Après la réalisation d’une fonctionnalité, ils mettent leur travail à disposition de l’équipe qui est responsable des tests.
Le code source de chaque développeur est stocké dans une plateforme centralisée (ex : Github). Une revue du code source peut être effectuée à tout moment par les responsables techniques du prestataire.
ETAPE 5 : Tests
Les tests sont réalisés par des utilisateurs clés. Les utilisateurs clés sont des personnes désignées en début du projet qui seront garantes du bon fonctionnement de l’application au cours de sa vie. Les tests doivent être exécutés selon un cahier de recette élaboré par le prestataire ou le product owner.
En cas d’échec d’un test dû à une erreur de développement, le message est transmis à l’équipe de développement pour mise à jour d’un correctif.
Une fois que toutes les fonctionnalités sont développées, testées et validées, on peut passer à la phase suivante.
ETAPE 6 : Formation et UAT
Avant de démarrer la formation des futurs utilisateurs du système, un plan et un catalogue de formation sont mis sur pied. Ici, le but est de focaliser un utilisateur uniquement sur les modules et fonctionnalités qui lui concernent. Sa formation sera effectuée par un utilisateur clé. Un plan de tests d’acceptance des utilisateurs ou User Acceptance Tests (UAT) est aussi élaboré. L’objectif est que chaque fonctionnalité soit validée par les utilisateurs finaux.
Un environnement de simulation peut être mis en place afin de permettre aux utilisateurs finaux de tester l’application quasiment en mode réel.
Il est à noter que pour les applications orientées client, un panel de clients de l’entreprise pourra être sollicité pour cette phase afin de valider avec eux la future solution.
ETAPE 7 : La préparation de la bascule
Après la formation et les UAT, on est presque prêt pour le lancement effectif de la solution.
Un environnement de production est mis sur pied par l’équipe technique. Le paramétrage de cet environnement est fait par le prestataire. Les données initiales sont chargées manuellement ou via des programmes de migration développés lors de l’étape 3. Les accès et habilitation des utilisateurs finaux dans le système sont aussi créés.
ETAPE 8 : Le suivi post démarrage
Après le démarrage effectif de la solution, le prestataire ou l’équipe technique assure le support post-démarrage. Des niveaux de support sont définis afin de traiter et corriger les anomalies remontées par les utilisateurs. Un bilan post-démarrage est aussi établi par le prestataire à la fin de la mission. Cette phase de support peut durer quelques mois.
ETAPE 9 : Maintenance
Vient, ensuite, la phase officielle de maintenance technique et évolutive de la solution. Durant cette phase, le prestataire continue à corriger les erreurs ou bugs de l’application. Par ailleurs, il développe des fonctionnalités additionnelles demandées par l’entreprise en respectant ce qui a été mentionnées dans les étapes 1 à 5.
IniMov vous accompagne dans le développement de vos plateformes web ou applications mobiles. Plus de détails ici.