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.

  • 🧭 Trois éléments : La gouvernance contrôle le financement et l'accès, le développement conçoit l'application et les opérations gèrent et maintiennent l'infrastructure technologique déployée.
  • 📋 Exigence Foundation: La documentation, l'analyse, la priorisation et la validation des exigences sont des processus continus et ne se terminent pas avant le début de la construction.
  • (I.e. Méthodologie sensible : Le modèle en cascade sépare les opérations du développement, tandis que le DevOps les fusionne en un processus continu et entièrement intégré.
  • 🇧🇷 Contrôle de configuration : Gestion de la configuration logicielle tracks enregistre chaque modification apportée au code, aux documents et aux entités connexes tout au long de leur cycle de vie.
  • 🧪 Étendue de la vérification : Les tests confirment la conformité aux exigences énoncées et aux attentes des parties prenantes que les exigences n'ont pas permis de saisir.
  • Paysage des outils : Studio Kovair ALM, OpenText Gestion de la qualité des applications et Digital.ai Les exigences de couverture Agile sont disponibles jusqu'à la publication.

Qu'est-ce que l'ALM ?

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)

É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.

Studio ALM Kovair

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.

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é .

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.

FAQ

Non. ALM est la discipline ; HP ALM est un produit qui met en œuvre cette fonctionnalité. Ce produit est maintenant vendu sous le nom de OpenText Gestion de la qualité des applications après passage Mercury, HP et Micro Focus.

La responsabilité est partagée. La gouvernance relève généralement de la gestion des produits et du portefeuille, le développement des responsables de l'ingénierie et les opérations de l'équipe plateforme ou DevOps. Il est rare qu'un seul responsable couvre l'ensemble du cycle de vie.

AI Il rédige les exigences à partir des notes des parties prenantes, génère des cas de test à partir de ces exigences, prédit quelles modifications présentent le risque de défaut le plus élevé et résume l'état de préparation de la mise en production pour les revues de gouvernance.

En partie. L'IA peut suggérer des liens entre les exigences, les cas de test et les commits en faisant correspondre le langage et l'historique des modifications. Dans les environnements réglementés, l'approbation humaine reste toutefois nécessaire. tracmatrice d'aptitude avant audit.

Couverture des exigences, taux de défauts non détectés, délai entre la demande et la mise en production, et pourcentage de retouches. Une couverture croissante associée à une diminution des défauts non détectés indique l'efficacité des contrôles du cycle de vie.

Résumez cet article avec :