GitLab, logiciel libre, intégration continue, CI Continious Implementation, CD Continuous Developpment, pipeline, SDLC Software Developpment Life Cycle, SRS Software Requirement Specification, SDD Software Design Document, MTTR Mean Time To Repair, workflow, Sentry, JMeter, développement de logiciels
Le besoin de rapidité, de fiabilité et d'efficacité est un impératif croissant dans le développement moderne de logiciels. À cet égard, il existe deux approches appelées CI/CD : l'intégration continue (CI) et le déploiement continu (CD). L'intégration continue et le déploiement continu représentent une étape évolutive dans le cycle de développement du logiciel qui vise à améliorer la collaboration, la qualité et la rapidité des processus de développement. [...]
Dans cette perspective, GitLab CI/CD se veut une solution tout-en-un pour l'intégration automatisée et la livraison continue. En effet, GitLab CI/CD utilise les ressources de l'infrastructure GitLab existante pour permettre aux développeurs d'automatiser entièrement leurs pipelines de développement logiciel. En utilisant des configurations simples basées sur des fichiers YAML, les développeurs peuvent définir et personnaliser facilement les étapes de leur pipeline, de la construction des applications à leur déploiement sur des environnements de production.
[...] GitLab CI/CD est un outil puissant qui utilise un fichier de configuration YAML.(gitlab-ci.y ml) dans chaque repository de code. Lorsque le code est déposé, GitLab CI/CD utilise cette formule pour construire, tester et déployer automatiquement les applications dans n'importe quel environnement configuré. 2.8 Benchmark des solutions de CI/CD Caractéristiques GitLab CI/CD jenkins CircleCI Open source Oui Oui Oui Prix La plupart des fonctionnalités sont disponibles dans la version gratuite. L'outil propose également des plans payants avec davantage de fonctionnalités. Gratuit La plupart des fonctionnalités sont disponibles dans la version gratuite. L'outil propose également des plans payants avec davantage de fonctionnalités. [...]
[...] De tous ces éléments, les tests sont sans doute les plus importants. Au contraire, les tests sont la première raison pour laquelle les versions sont retardées. Non seulement ces retards ont un impact sur les coûts, l'image de marque, les relations publiques et même la réputation de l'entreprise, mais ils sont mortels pour les entreprises qui comptent sur une mise sur le marché rapide. Historiquement, les tests de logiciels étaient manuels et prenaient énormément de temps, de sorte que les entreprises ne publiaient de nouveaux codes qu'une ou deux fois par an. [...]
[...] - Tests de convivialité peuvent être intégrés par des outils d'expérience utilisateur ou effectuer des tests manuels d'ergonomie. Ils sont intégrés manuellement lors de la validation du pipeline GitLab CI/CD - L'intégration des test UAT se fait par l'intégration de scripts personnalisés conçus à partir de la définition des critères de test et les scénarios d'utilisation par les utilisateurs finaux. - Ces tests sont intégrés après les tests fonctionnels et de performance, et avant le déploiement en production. - Les tests de benchmark peuvent être intégrés par des jobs spécifiques à des étapes définies du pipeline. [...]
[...] Le mouvement DevOps a introduit l'intégration continue, la livraison continue et le déploiement continu en tant que pratiques conçues pour accélérer la livraison de logiciels sans compromettre la qualité. 1.8 L'intégration du CI/CD dans le SDLC CI/CD est une approche de développement logiciel qui vise à rationaliser le processus de construction, de test et de déploiement des applications. Les méthodologies traditionnelles de développement de logiciels, telles que le modèle Waterfall ou le modèle impliquent généralement un processus séquentiel avec des phases distinctes : recueil des besoins, conception du système, développement, tests et déploiement. [...]
[...] Avec le CD, le logiciel est conçu de manière à pouvoir être déployé en production à tout moment. Vous pouvez ensuite déclencher les déploiements manuellement ou passer au déploiement continu, où les déploiements sont également automatisés. 2.3 Le concept de pipeline Un pipeline CI/CD automatise le processus de livraison de logiciels. Le pipeline construit le code, exécute les tests et déploie en toute sécurité une nouvelle version de l'application (CD). Les pipelines automatisés éliminent les erreurs manuelles, fournissent des boucles de retour d'information normalisées aux développeurs et permettent des itérations rapides du produit. [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture