article

done_all

workspace_premium

science

Actualité

Projet

Retour d'expérience

Parole d'expert

timer

8

minutes de lecture

L’Application Lifecycle Management, clé pour maîtriser le cycle de vie des applications

SAnté

Retail & luxe

Énergie & environnement

Banque & assurance

L’ALM pour gérer le cycle de vie de ses applications

Les applications des entreprises se multiplient et évoluent rapidement dans le temps. Plus complexes, les SI et les applications — notamment mobiles — requièrent une grande cohérence dans les développements. Dès lors, garder le contrôle sur ses applications, leur disponibilité et leur fonctionnalité devient un véritable défi pour les services IT.

Les enjeux de qualité des logiciels sont forts: les erreurs et applications non fonctionnelles représentent en effet une perte de productivité, mais aussi un coût et une atteinte à l’image de l’entreprise non négligeables. Devenues très interconnectées, ces applications doivent être étroitement surveillées : tout incident peut avoir un impact sur l’ensemble du parc applicatif.De la conception au déploiement, l’encadrement est donc devenu indispensable. Celui-ci permet de s’assurer un parc applicatif connu et maîtrisé à tout instant. L’Application Lifecycle Management (ALM) est désormais l’outil privilégié de l’IT pour l'ensemble de la gestion d’applications, des prémices du développement à la maintenance.L’ALM permet au service IT d’avoir la main sur :

  • La gouvernance des données (accès aux données, sécurité, traitement des ressources par l’application) ;
  • Le Software Development Life Cycle (résolution des problèmes, développements en continu dans l’application, tests) ;
  • L’exploitation et le maintien en fonction de l’application tout au long de son utilisation.

Les enjeux et objectifs de l’Application Lifecycle Management

Les enjeux de l’utilisation de l’ALM sont nombreux et participent à atteindre une meilleure connaissance et une plus grande évolutivité du parc applicatif. Sur la durée, l’outil a pour but d’instaurer :

  • Des développements plus rapides et efficaces : l’intégration de tout le cycle de vie des applications accélère la collaboration et permet des développements cohérents, moins sujets aux erreurs
  • Une prise de hauteur sur l’ensemble du cycle de vie des applications. Ceci signifie non seulement mieux comprendre et anticiper leur évolution, mais aussi définir clairement leurs objectifs, et donc faire des choix plus éclairés quant à leurs fonctions et aux ressources nécessaires
  • De la cohérence dans la politique IT et un niveau supérieur de qualité, qui servira tout autant les utilisateurs que l’image de l’entreprise, tout en économisant du temps et des coûts.

Plus concrètement, la gestion des applications via une plateforme centrale permettra de :

Casser les silos

Les spécifications, développements et tests sont centralisés. Les sources d’erreur peuvent être identifiées et les problèmes résolus rapidement par les personnes habilitées à le faire.

Analyser toutes les métriques

Les informations liées aux applications (sécurité, ressources utilisées…) sont collectées sur la durée. La santé des applications et du parc entier est connue sur une période longue, et les évolutions à venir sont ainsi plus faciles à anticiper.

Fournir les bons outils aux développeurs

On améliore ainsi leur compétitivité, leur engagement et l’on stimule la collaboration.On veillera à préparer en amont la mise en place de son ALM, avec notamment :

L’anticipation des conflits de solutions et de rh

La fusion d’environnements et de données lors du passage à l’ALM génère des doublons et conflits de rôles qu’il sera nécessaire de traiter au préalable.

La préparation des nouveaux environnements

Avec l’ALM, les environnements et les usages évoluent. Il donc sera utile de définir une stratégie au départ (nombre d’environnements limité, environnement spécifique par développeur...)

L’association entre ALM et une stratégie DevOps

Complémentaire à l’utilisation de l’ALM, le DevOps mise sur la collaboration et introduit plus d’automatisation dans les développements

L’Application Lifecycle Management pour soutenir l'approche DevOps

La gestion du cycle de vie des logiciels peut être utilisée conjointement avec la plupart des méthodologies d’entreprise. Waterfall, Agile, DevOps : face à la variété des approches, l’ALM s’emploiera différemment dans chaque cas.L’approche DevOps en particulier, cherche à maximiser la collaboration entre développement et exploitation. L’ALM unifie le suivi des deux branches : l’outil est donc tout indiqué pour soutenir les démarches de passage au DevOps.Tous deux régis par une approche agile, l’ALM et le DevOps sont d’autant plus efficaces une fois combinés :

  • L'ALM accélère la mise en place de la méthodologie Agile. Il soutient les itérations rapides et améliore la collaboration tout au long du cycle de vie des applications ;
  • Le DevOps bénéficie de la communication unifiée de l’ALM, mais aussi de son approche agile. L’ALM fluidifie la communication nécessaire au DevOps aux étapes de développement, test et déploiement.

S’équiper des bons outils et adopter la bonne approche

Outre l’ALM, d’autres outils viennent soutenir le suivi des applications.Le SDLC (Software Developement Life Cycle) notamment, intervient lors de la phase de développement. Plus ciblée que celle de l’ALM, son action va de la planification au déploiement et suit des phases précises. Les différents modèles de SDLC (en cascade, en V, en spirale, incrémental...) s’adaptent au mode de communication et aux processus de chaque service informatique. Moins global que l’ALM dans son approche, le SDLC se concentre sur la qualité du développement et du produit final. Le SDLC peut être intégré à l’ALM, dont il est parfaitement complémentaire.Au-delà des modèles d’ALM, des approches telles que l’intégration continue permettent de répondre à un besoin de partage constant de l’information. L’intégration continue fournit un référentiel commun au développement de fonctionnalités et aux tests. Plusieurs étapes clés du processus de développement — jusqu’à la publication du code source — peuvent ainsi être automatisées, garantissant un niveau de qualité élevé et limitant la déperdition d’efforts liée aux silos.Mais pour porter ses fruits, cette démarche doit avoir pour socle une approche Agile et s’appuyer sur la complémentarité ALM/DevOps. L’objectif : instaurer des cycles courts, parfaitement compatibles avec une recherche d’intégration en continu.Infogene accompagne ses clients dans le passage à une organisation Agile  et à une gestion complète du cycle de vie des applications. Adopter une méthodologie projet adaptée et une approche d’intégration continue permet aux entreprises d’atteindre les objectifs de qualité et de Time-to-Market qu’elles se sont fixés. Infogene apporte sa vision technique, l’outillage, mais soutient également la nécessaire conduite du changement, afin que les utilisateurs deviennent acteurs de la transformation et tirent le meilleur parti des nouveaux outils choisis.