Gestion des versions - Release management

La gestion des versions est le processus de gestion, de planification, d'ordonnancement et de contrôle d'une version logicielle à travers différentes étapes et environnements ; cela inclut le test et le déploiement des versions logicielles .

Arrière-plan

La gestion des versions est une discipline relativement nouvelle mais en croissance rapide au sein du génie logiciel . À mesure que les systèmes logiciels , les processus de développement de logiciels et les ressources deviennent plus distribués, ils deviennent invariablement plus spécialisés et complexes. En outre, les produits logiciels (en particulier les applications Web ) sont généralement dans un cycle continu de développement, de test et de publication , s'exécutant souvent sur des plates-formes évolutives d'une complexité croissante. De tels systèmes nécessitent des ressources dédiées pour superviser l'intégration et le flux de développement, de test, de déploiement et de support.

Relation avec la livraison continue, DevOps et le développement de logiciels Agile

Les organisations qui ont adopté le développement logiciel agile voient des quantités de versions beaucoup plus élevées. Avec la popularité croissante du développement agile, une nouvelle approche des versions logicielles connue sous le nom de livraison continue commence à influencer la façon dont le logiciel passe du développement à une version. L'un des objectifs de la livraison continue et du DevOps est de publier des applications plus fiables plus rapidement et plus fréquemment. Le passage de l'application d'une « construction » à travers différents environnements à la production en tant que « version » fait partie du pipeline de livraison continue. Les responsables des versions commencent à utiliser des outils tels que l' automatisation des versions d'applications et les outils d' intégration continue pour faire progresser le processus de livraison continue et incorporer une culture de DevOps en automatisant une tâche afin qu'elle puisse être effectuée plus rapidement, de manière plus fiable et reproductible. De plus en plus de versions logicielles ont conduit à une dépendance accrue aux outils de gestion des versions et d'automatisation pour exécuter ces processus de publication d'applications complexes.

Relation avec Enterprise Release Management

Alors que la gestion des versions se concentre sur les transitions du développement aux tests et à la publication d'un seul projet ou d'un ensemble de projets connexes, la gestion des versions d' entreprise (ERM) se concentre sur la coordination des versions individuelles au sein d'une organisation plus large. Une organisation avec plusieurs groupes de développement d'applications peut avoir besoin d'une série de versions hautement orchestrées sur plusieurs mois ou années pour implémenter un système à grande échelle. L'ERM implique l'effort coordonné de plusieurs gestionnaires de versions pour synchroniser les versions dans le contexte d'un portefeuille informatique .

Relation avec ITIL/ITSM

Dans les organisations qui gèrent les opérations informatiques à l'aide du paradigme de gestion des services informatiques , en particulier le cadre ITIL , la gestion des versions sera guidée par les concepts et principes ITIL. Il existe plusieurs processus ITIL formels liés à la gestion des versions, principalement le processus de gestion des versions et du déploiement, qui "vise à planifier, programmer et contrôler le mouvement des versions vers les environnements de test et de production.", et le processus de gestion des changements dans les organisations ITIL , les versions ont tendance à être moins fréquentes que dans un environnement de développement agile. Les processus de publication sont gérés par les équipes d'exploitation informatique à l'aide de systèmes de billetterie de gestion des services informatiques, en se concentrant moins sur l'automatisation des processus de publication.

Voir également

Les références

  1. ^ Humble, Jez; Farley, David (2011). Livraison continue : versions logicielles fiables grâce à l'automatisation de la construction, des tests et du déploiement . Pearson Education Inc. p. 110. ISBN 978-0-321-60191-9.
  2. ^ Baies, Michael E. (1999). Méthodologie de sortie de logiciel . Upper Saddle River, NJ : Prentice Hall PTR. ISBN 0-13-636564-7. OCLC  41411901 .
  3. ^ Ambler, Scott W. (12 février 2014). "Nous avons besoin de plus d'informatique agile maintenant !" . Le monde du développement logiciel du Dr Dobb . San Francisco : UBM.
  4. ^ Humble, Jez; Farley, David (2011). Livraison continue : versions logicielles fiables grâce à l'automatisation de la construction, des tests et du déploiement . Pearson Education Inc. p. 255-257. ISBN 978-0-321-60191-9.
  5. ^ Meilleures pratiques en matière de gestion des modifications, de la configuration et des versions (rapport). Gartner. 14 juillet 2010.
  6. ^ "Gestion des versions et du déploiement ITIL" . Cartes des processus informatiques . Allemagne : Stefan et Andrea Kempter. 15 mai 2016.
  7. ^ Murphy, Vawns (2 février 2016). « Gestion du changement vs gestion des versions » . La revue ITSM . Royaume-Uni : Enterprise Opinions Limited.
  8. ^ "Pratiques de gestion des versions ITIL/ITSM" . Wiki de gestion des versions . États-Unis : Nuage électrique.

Liens externes

Lectures complémentaires

  • Bays, ME (1999). Méthodologie de publication de logiciel . Philadelphie, Pennsylvanie : Prentice Hall.