Qu'est-ce que l'ALM ? Signification de « Application Lifecycle Management » (Gestion du cycle de vie des applications).
⚡ Résumé intelligent
La gestion du cycle de vie des applications (ALM) régit une application logicielle depuis sa spécification initiale jusqu'à son déploiement, en passant par sa conception, son développement, ses tests et son exploitation, et ce, jusqu'à l'expérience utilisateur à long terme. Elle se compose de trois éléments : la gouvernance, le développement et l'exploitation. Sept étapes définies permettent de transformer une idée en un produit maintenu.
Qu’est-ce que l’ALM ?
ALM Le cycle de vie des applications (ALM) est un processus qui englobe la spécification, la conception, le développement et les tests d'une application logicielle. Il couvre l'intégralité du cycle de vie, depuis l'idée initiale jusqu'à l'expérience utilisateur, en passant par le développement, les tests, le déploiement et le support.
Selon la méthodologie de développement logiciel (par exemple, en cascade, agile ou DevOps), la gestion du cycle de vie des applications (ALM) peut être divisée en plusieurs phases. Le processus ALM se décompose principalement en trois éléments : la gouvernance, le développement et l’exploitation.
Processus ALM
Voici les principaux domaines de l'ALM :
Gouvernance
Il comprend la gestion des exigences, la gestion des ressources, la sécurité des données, l'accès des utilisateurs, la révision, l'audit, le contrôle du déploiement et la restauration.
Avantages de la gouvernance :
- Stratégie commerciale alignée
- Développerping une étude de cas commerciale
- Offre une surveillance continue
- Financer des projets qui génèrent la plus grande valeur
- Responsabilité et contrôle clairs
Développement d'applications
Cela comprend l'identification des problèmes actuels, la planification, la conception, le développement, les tests et le déploiement de l'application. Ce domaine couvre les rôles traditionnels de développeur et de créateur d'applications.
Fonctionnement des applications
Ce domaine comprend le déploiement de l'application et la maintenance de l'infrastructure technique. Dans la méthode de développement logiciel en cascade, l'exploitation est une étape distincte du développement. Une équipe DevOps réunit l'exploitation et le développement au sein d'un processus continu et entièrement intégré.
Pourquoi l'ALM est-il important ?
Voici les principales raisons d'utiliser ALM :
- Vous bénéficiez d'une bonne visibilité sur l'état d'avancement du projet.
- Les équipes sont capables de communiquer efficacement.
- Les exigences sont faciles à définir et track.
- Le logiciel est testé de manière adéquate.
- Le coût de maintenance et d’exploitation de la solution reste limité.
ALM vs SDLC : quelles différences ?
La gestion du cycle de vie des applications (ALM) et le cycle de vie du développement logiciel (SDLC) sont souvent considérés comme synonymes, ce qui engendre de la confusion lorsque les équipes tentent d'en adopter un. Le SDLC s'inscrit dans le cadre de l'ALM et non en parallèle.
| Aspect | SDLC | ALM |
|---|---|---|
| Domaine | Construire le logiciel | L'ensemble du cycle de vie du produit, de l'idée à la mise hors service |
| Débute à | Exigences pour une construction | Le cas d'affaires initial |
| Se termine à | Déploiement de cette version | Mise hors service de l'application |
| Couvre la gouvernance | Non | Oui — financement, accès, audit, conformité |
| Nombre de cycles | Un par livraison | De nombreux cycles de vie du développement logiciel (SDLC) au cours de la vie d'une application. |
Une application passe généralement par de nombreuses itérations du cycle de vie du développement logiciel (SDLC) tout en restant au sein d'un seul cycle de vie ALM. Comprendre cette imbrication explique pourquoi les étapes ci-dessous s'étendent bien au-delà du moment où le code est livré.
Étapes de l'ALM (Application Lifecycle Management)
Voici les différentes étapes de l’ALM :
1) Gestion des exigences
La gestion des exigences est la première étape du cycle de vie des applications (ALM). Elle vous aide à documenter, analyser, tracIdentifier, prioriser et convenir des exigences. C'est un processus continu qui se déroule tout au long du cycle de vie du projet. Consultez également notre liste des meilleurs logiciel de gestion des exigences.
2) Design
La gestion du design est un processus qui contribue à améliorer la satisfaction et la fidélité des clients en optimisant l'ergonomie. Elle influence également l'interaction entre le client et le produit.
3) Gestion des bâtiments
La gestion de la compilation, également appelée gestion du code, est le processus de conversion des fichiers de code source en un composant logiciel autonome. À cette étape, une idée d'application se transforme en une application concrète.
Durant cette étape, l'application est construite, testée et déployée, et le testeur commence à préparer les cas de test et à rédiger les scripts de test pour la phase de test.
4) GDS
Gestion des configurations logicielles (SMC) est l'étape ALM où l'équipe de développement organise, gère et contrôle systématiquement les modifications apportées aux documents, au code et aux autres entités tout au long du cycle de vie du développement de l'application.
5) Operation et maintenance
Cette phase comprend la surveillance, la gestion et le développement continu de l'application. En DevOps, elle englobe la mise en production, la configuration et la surveillance.
Durant cette étape, vous identifiez et corrigez les bogues. Cette phase vous permet de planifier et de prioriser les prochaines mises à jour du produit.
6) Gestion des tests
Lors de la phase de test, les testeurs vérifient que l'application est conforme aux exigences définies lors des étapes initiales du processus.
Ils veillent également à ce que l'application réponde aux attentes des utilisateurs et aux besoins de toutes les autres parties prenantes qui la soutiendront tout au long de son cycle de vie, même si ces attentes n'ont pas été correctement prises en compte lors de la phase de définition des exigences.
7) Expérience utilisateur
La maintenance, ou expérience utilisateur, est traditionnellement l'étape la plus longue du cycle de vie des applications (ALM), mais c'est aussi l'étape où la participation des équipes de test et de développement est généralement la plus faible.
Une fois l'application développée, le rôle des utilisateurs entre en jeu. Ils testent l'application dans son intégralité et partagent leur expérience par le biais de commentaires, puis l'application finale est livrée.
Avantages de l'ALM
Voici les avantages de l'utilisation d'ALM :
- ALM vous aide à contrôler le système en l'organisant et tractravail de roi.
- Les défauts peuvent être partagés entre les projets, ce qui réduit les risques de duplication.
- ALM offre une intégration avec d'autres outils de test.
- Il fournit une direction claire pour une application avant sa création.
- Sans ALM, il est difficile pour une équipe de développement de logiciels de produire des logiciels avec la rapidité et l'agilité nécessaires pour rester compétitive.
- ALM fournit des logiciels efficacement avec un minimum de contraintes pour l'équipe.
Outils ALM
Voici quelques outils ALM importants :
1) Studio Kovair ALM
Kovair est l'un des produits de gestion du cycle de vie des applications les plus complets. Il prend en charge l'intégralité du cycle de vie du développement, des exigences à la mise en production.
Caractéristiques :
- Adoptez une solution entièrement basée sur le Web, sans logiciel côté client, réduisant ainsi la charge de support.
- Pratiquez n'importe quelle méthodologie de développement : en cascade, agile ou hybride.
- Implémentez un moteur de flux de travail configurable basé sur les tâches pour une efficacité et une productivité accrues
- Recevez des notifications en temps réel à chaque étape exploitable
- Fournir une couverture complète de chaque étape du développement, permettant la conformité aux normes
- Permettre la visualisation en temps réel de l'état des artefacts, ce qui accroît la transparence et la prévisibilité des mises en production.
Lien : https://www.kovair.com/alm-studio/
2) OpenText Gestion de la qualité des applications (anciennement Micro Focus ALM)
Cet outil prend en charge les méthodes de livraison Lean, Agile et DevOps, et aideping Les organisations déploient leurs logiciels plus rapidement. Cela permet aux équipes de toutes tailles de fournir des applications de haute qualité plus rapidement. Le produit a changé de mains à plusieurs reprises : il a été initialement développé par Mercury, acquis par HP, transféré à Micro Focus, et depuis OpenText a acquis Micro Focus en janvier 2023 il a été vendu comme OpenText Gestion de la qualité des applications.
Caractéristiques :
- Fournit des applications avec rapidité, qualité et évolutivité
- Permet aux parties prenantes d'interagir et de se coordonner pour atteindre les objectifs du projet
- Fournit une robustesse tracgestion et reporting, et intégration transparente des tâches liées au projet
- Permet une analyse détaillée des projets et une gestion efficace
- Se connecte aux systèmes de messagerie et notifie les membres de l'équipe des changements.
Lien : https://www.opentext.com/products/application-quality-management
3) Digital.ai Agilité (anciennement VersionOne)
Agility simplifie la planification produit grâce à une gestion aisée du backlog. Il est conçu pour DevOps et assure une livraison continue de bout en bout via une interface glisser-déposer. Le produit a été lancé sous le nom de VersionOne, puis a rejoint CollabNet, et est désormais distribué sous le nom de Digital.ai Agilité .
Caractéristiques :
- Permet aux utilisateurs de prioriser les récits et les anomalies par glisser-déposer
- Gérer les initiatives commerciales avec les éléments du portefeuille
- Permet de regrouper les éléments par thème
- Fournit des résultats conformes aux objectifs commerciaux
- Centralise toutes les demandes de fonctionnalités.
- Contribue à garantir l'alignement entre les objectifs de l'entreprise et les livrables produits.
- Offre au chef de projet des informations et une visibilité de bout en bout.
Lien : https://digital.ai/products/agility/
Le choix de l'outil importe moins que la manière dont le processus est utilisé au quotidien, comme l'illustrent les deux scénarios ci-dessous.
Scénario de cas d'utilisation d'ALM du point de vue d'un développeur
- Le développeur commence à travailler et consulte la liste des tâches qui lui sont assignées.
- Ils examinent les tâches par ordre de priorité et en choisissent une.
- Ils modifient le statut de la tâche en « En cours ».
- Ils extraient du code du dépôt de code source.
- Ils mettent en œuvre un test unitaire avec le framework de test.
- Ils exécutent le test avec le script de compilation standard. Code Les rapports d'inspection font état de conventions d'appellation illégales ou de bogues potentiels.
- Ils corrigent le code et relancent le test.
- Une fois que le taux de couverture atteint l'objectif, ils valident le code avec l'identifiant de tâche.
- Ils vérifient ensuite le code et exécutent le script de compilation.
- Le code est compilé et déployé sur la machine de préproduction.
- Le test s'exécute. En cas d'erreur, une notification est automatiquement envoyée au développeur et au chef de projet.
- Le développeur annule les modifications apportées au code dans le dépôt source et sur la machine de préproduction.
- Si le test réussit, une inspection du code et une analyse de couverture sont effectuées. Tout problème est signalé ; sinon, le développeur est informé que toutes les implémentations ont été réalisées avec succès.
- Ils consignent leur historique professionnel dans le système de gestion des tâches.
- Le chef de projet est informé que la tâche est résolue et examine le résultat.
Scénario de cas d'utilisation d'ALM du point de vue d'un chef de projet
- Le chef de projet ouvre un navigateur web et accède à la page du tableau de bord ALM.
- Chaque projet possède sa propre page de tableau de bord.
- Il affiche le nombre de tâches ouvertes, le nombre de tâches en attente et toutes les tâches critiques qui sont ouvertes.
- Le tableau de bord informe le chef de projet des risques potentiels et affiche l'état général du projet.
- Chaque modification et chaque commit est automatiquement signalé.
- Le processus ALM élimine donc la nécessité d'une réunion ou d'un appel téléphonique pour vérifier l'état d'intégration continue des tâches critiques.




