· Julien PENASSOU · Deep dive  · 10 minutes de lecture

DevOps et DevSecOps, au-delà des buzzwords

DevOps et DevSecOps, une façon moderne et responsable de concevoir, livrer et sécuriser le logiciel.

DevOps et DevSecOps, une façon moderne et responsable de concevoir, livrer et sécuriser le logiciel.

Introduction

Dans notre article précédent sur l’ingénierie logicielle en 2026, nous avons constaté que la philosophie DevSecOps fait partie des tendances majeures de l’industrie logicielle qui semblent se dessiner pour l’année 2026.

Depuis plus de quinze ans, les concepts DevOps se sont imposés comme des piliers de l’ingénierie logicielle moderne. Plus récemment, la notion de sécurité intégrée dès la conception est venu compléter, et parfois bousculer, cette approche. C’est ce que l’on appelle aujourd’hui DevSecOps.

Mais derrière ces buzzwords, que recouvrent réellement ces pratiques ? Sont-elles réservées aux grandes entreprises ou accessibles aux PME et aux startups ? Et surtout, comment les appliquer de manière pragmatique, sans tomber dans l’usine à gaz ?

Le DevOps : origine et philosophie

Avant le DevOps

Pendant longtemps, le cycle de vie logiciel était fragmenté. D’un côté, les développeurs (Dev) écrivaient le code, et de l’autre, les équipes opérationnelles (Ops) géraient les serveurs et la production.

Cette approche fonctionne mais apporte quelques problèmes récurrents :

  • Des objectifs opposés :
    • Les Dev veulent continuer à enrichir le logiciel et livrer vite.
    • Les Ops veulent de la stabilité et de la sécurité.
  • Des déploiements manuels, risqués et donc rares.
  • Beaucoup de bugs découverts une fois l’application mise en production.
  • Une culture du reproche et des conflits entre les équipes.

    “Ça marchait chez moi !” vs “Vous avez tout cassé”

  • Un effet tunnel entre les équipes (Chaque équipe travaille dans son coin, en “silos”).

Résultat : cette méthode de fonctionnement apporte une certaine lenteur, une certaine frustration liée aux conflits et impacte donc la qualité des livraisons.

Schéma illustrant le conflit entre les Dev et les Ops avant la mise en place de la culture DevOps

La culture DevOps

Le terme DevOps ne représente pas un outil, ni un poste, mais une manière de travailler.

L’objectif est simple : livrer plus vite, plus souvent, avec plus de fiabilité.

Celle-ci est basée sur plusieurs principes clés :

  • Une collaboration continue entre Dev et Ops (pas seulement en fin de chaîne, on casse les silos).
  • La conception et le maintien de la Software Supply Chain (cf. ci-dessous).
  • L’automatisation de tout ce qui est répétitif pour éviter les erreurs humaines et gagner du temps.
  • Avoir des livraisons plus fréquentes.
    • On préfère 10 petites livraisons avec moins de fonctionnalités qu’une grosse livraison compliquée à intégrer !
  • L’amélioration continue.
  • L’ajout de monitoring (logs, traces, métriques) pour savoir immédiatement si quelque chose ne va pas.
Schéma illustrant le travail d'équipe entre les Dev et les Ops après la mise en place de la culture DevOps

La Software Supply Chain

La Software Supply Chain représente la chaîne d’approvisionnement logicielle. Elle désigne l’ensemble des processus, outils et pratiques permettant de transformer du code source en une application déployée en production.

Elle inclut :

  • Le build
  • Les tests
  • La sécurité
  • Le packaging
  • Le déploiement
  • Le monitoring
  • La gestion du cycle de vie complet
Schéma illustrant la Software Supply Chain

Le cycle DevOps

On peut souvent voir des schémas représentant le DevOps sous la forme d’une boucle infinie. Ce schéma représente un cycle continu de livraison, de feedback et d’amélioration partagée entre le développement et l’exploitation.

Schéma représentant les concepts DevOps

Le cœur du DevOps, c’est l’idée que le logiciel n’est jamais “fini”.

  • On planifie
  • On développe
  • On compile
  • On teste
  • On livre
  • On déploie
  • On exploite
  • On observe
  • On apprend et on recommence

La boucle infinie symbolise ce cycle sans fin, orienté amélioration continue. On livre petit, souvent et en continu.

Planification

Définition de quoi construire et pourquoi, en alignant produit, technique et business.

Pendant cette étape, on va :

  • Définir les fonctionnalités
  • Prioriser le backlog (liste des fonctionnalités qui restent à implémenter)
  • Découper en tâches techniques
  • Anticiper les contraintes Ops (scalabilité, sécurité, coûts)

On peut donner quelques exemples d’outils :

  • Gitlab / Jira / Trello pour la gestion des tickets et/ou du backlog
  • WikiJS / Notion / Confluence pour la documentation du projet
  • Draw.io / Excalidraw / LucidChart pour les schémas / diagrammes

Développement

Écriture de code lisible, testable et maintenable.

Pendant cette étape, on va :

  • Développer les fonctionnalités
  • Faire la revue de code
  • Gérer les branches
  • Écrire des tests unitaires, d’intégration et fonctionnels
  • Réaliser les premiers contrôles qualité

Exemples d’outils :

  • VSCode / IntelliJ / NeoVim pour l’IDE
  • Git / Subversion en tant que contrôleur de versions
  • Eslint / Pylint / Clippy pour la détection statique des erreurs, incohérences et mauvaises pratiques
  • Prettier / Black / Gofmt pour le formatage

Compilation

Transformation du code en artefacts déployables et reproductibles.

Pendant cette étape, on va :

  • Compiler
  • Packager (binaire, image Docker)
  • Gérer les dépendances
  • Versionner le code source

Exemples d’outils

  • Maven / Cargo / Npm pour la compilation
  • Jenkins / Gitlab CI / Github Actions pour l’intégration continue (CI)
  • Docker / Podman pour la conteneurisation

Tester

On va s’assurer que le code fonctionne comme prévu et qu’il n’introduit pas de bugs et de régressions.

Pendant cette étape, on va :

  • Exécuter les tests automatisés dans la CI
  • Générer des rapports de tests et de couverture de code
  • Analyser les résultats des tests et corriger les erreurs

Exemples d’outils :

  • JUnit / TestNG / PyTest pour les tests unitaires
  • Playwright / Cypress pour les tests fonctionnels
  • SonarQube pour la qualité du code

Livraison

On va préparer le code pour le déploiement en production.

Pendant cette étape, on va :

  • Faire un tag de version en fonction de la modification (Majeure / Mineure / patch si on suit Semantic Versioning)
  • Générer le changelog (liste des modifications)
  • Mettre à disposition la version (release)

Exemples d’outils :

  • Nexus / Artifactory / Gitlab pour la gestion des artefacts / registry
  • Docker registry / Harbor / Gitlab pour stocker les conteneurs
  • Helm pour la gestion des charts pour Kubernetes

Déploiement

On va déployer le code sur nos différents environnement (préproduction puis production) rapidement et sans interruption.

Pendant cette étape, on va :

  • Déployer automatiquement les modifications dans nos différents environnements
  • Mettre en place une stratégie de déploiement sans interruption de service permettant de s’assurer que la nouvelle version n’est pas cassante.
    • Blue/Green : Il s’agit de deux environnements identiques, Blue (version actuelle en production) et Green (nouvelle version). On déploit la nouvelle version sur Green, on teste, puis on bascules le trafic vers celle-ci. Si un problème est détecté, on rebascule immédiatement vers Blue.
    • Rolling : La nouvelle version est déployée progressivement sur les instances existantes (ex: 1 serveur sur 10 à la fois). Le service reste disponible pendant la mise à jour et permet de savoir rapidement si un problème est détecté en production.

Exemples d’outils :

  • Kubernetes / OpenShift pour l’orchestration des conteneurs
  • ArgoCD / Flux pour faire du GitOps
  • Terraform / OpenTofu pour la gestion du provisionnement de l’infrastructure
  • Ansible / Puppet pour la gestion des configurations serveurs

Exploitation

On va garantir la disponibilité, la performance et la stabilité du système.

Pendant cette étape, on va :

  • Gérer et mettre à l’échelle (scaling) les ressources mises à disposition
  • Mettre en place un système de sauvegardes
  • Gérer les incidents

Exemples d’outils :

  • Prometheus / Grafana pour la surveillance, les métriques et les alertes
  • Kubernetes HPA / Cluster Autoscaler pour le scaling automatique et la gestion des ressources
  • Velero / Restic pour les sauvegardes et la restauration des volumes
  • PagerDuty / Opsgenie pour la gestion des incidents

Observation et feedback

On va recueillir des retours d’expérience et des données pour améliorer le processus et comprendre ce qui se passe réellement en production.

Pendant cette étape, on va :

  • Collecter les métriques
  • Centraliser les logs
  • Récupérer les traces distribuées
  • Mettre en place des alertes intelligentes

Exemples d’outils :

  • Prometheus / Grafana / Alertmanager pour la collecte de métriques et l’alerte
  • Loki / ELK Stack (Elasticsearch, Logstash, Kibana) pour la centralisation et l’analyse des logs
  • Jaeger / Tempo / Zipkin pour l’observabilité distribuée (traces)

Les limites du DevOps “classique”

La mise en place de chaines complexes de traitement pour résoudre tous les problèmes précédemment évoqués apporte aussi de de nouveaux points d’entrée que les attaquants peuvent chercher à exploiter.

Voici les problèmes fréquents :

  • Secrets exposés dans le code
  • Dépendances vulnérables
  • Images Docker non maintenues
  • Configurations cloud trop permissives

La sécurité de la chaine d’approvisionnement a historiquement été délaissée ou reléguée à quelques actions insuffisantes en fin de processus. Or, les conséquences de ces manquements peuvent être excessivement néfastes et il est devenu nécessaire de prendre en compte les aspects liés à la sécurité dans l’ensemble de la chaine.

DevSecOps : intégrer la sécurité dès le départ

Pourquoi faire ?

Le DevSecOps repose sur une idée clé :

La sécurité est l’affaire de tous, dès la première ligne de code.

C’est l’étape suivante évidente du DevOps car sans sécurité intégrée, le DevOps est incomplet.

Pour répondre à ces observations, et dans la même logique que Dev et Ops, le DevSecOps casse les silos entre les équipes pour intégrer directement la sécurité dans le cycle avec pour objectif de sécuriser le plus tôt possible et à tous les niveaux.

Cela implique :

  • Des contrôles automatisés
  • Des standards partagés
  • Des feedbacks rapides
Schéma représentant le concept DevSecOps

Shift Left Security

Le Shift Left Security est un principe clé du DevSecOps. Il consiste à intégrer la sécurité le plus tôt possible dans le cycle de développement logiciel, dès les premières étapes (donc le plus à gauche possible).

Schéma illustrant le concept de Shift Left Security

Ce principe est crucial car une faille détectée en production coûte très cher, alors qu’elle n’aurait coûté presque rien si elle avait été détectée au niveau du commit. Plus on détecte tôt, moins ça coûte et moins c’est risqué.

Exemples de mises en place

  • Planifier
    • Détecter les API sans authentification
    • Rendre le HTTPS obligatoire
  • Coder
    • Détecter les injection SQL
    • Blocage d’un commit si on détecte des secrets / clé API
  • Compiler
    • Blocage d’un build si on détecte une dépendance vulnérable
    • Obliger l’utilisation d’images Docker avec le minimum de packages (distroless)
  • Tester
    • Tester en profondeur les couches d’authentification
    • Mise en place de SAST / DAST : Analyse statique et dynamique de code.
  • Livrer
    • Scan d’image obligatoire avant une livraison
    • Refuser les images non signées
  • Déployer / Exploiter
    • Vérifier que les conteneurs utilisés sont sans droits root
    • Vérifier qu’aucun secret ne soit en clair
    • Reconstruire régulièrement les images docker en production
  • Surveiller
    • Mettre une alerte si un shell est ouvert dans un conteneur
    • Avoir un scan régulier des CVE sur les applications en cours de livraison et déjà en production

DevOps / DevSecOps : Qui est concerné ?

Le DevOps et le DevSecOps ne sont pas réservés exclusivement aux grandes entreprises. Comme on l’a précisé plus tôt, à la base, le DevOps et le DevSecOps sont des méthodes d’organisation, des bonnes pratiques et une culture d’automatisation et de collaboration. C’est une question de discipline technique, toutes les tailles d’entreprises (grandes entreprises, PME, startups) sont donc concernées.

Les petites structures ont même certains avantages naturels, elles peuvent mettre en place ces méthodes dès le début, ce qui est plus difficile pour un grand groupe :

  • Moins de silos (dev / ops sont souvent les mêmes personnes)
  • Besoin de livrer vite
  • Moins d’héritage technique
  • Capacité à standardiser dès le départ

Une PME peut faire du très bon DevOps avec peu d’outils, beaucoup de clarté et des automatisations ciblées. Les meilleures implémentations DevOps se voient souvent dans les petites équipes, parce qu’elles sont obligées de rester pragmatiques.

L’idée est d’avoir une Software Supply Chain minimale, efficace et répondant à vos besoins.

Les erreurs courantes

  • Ajouter trop d’outils trop tôt parce qu’ils sont “à la mode”
  • Bloquer les équipes avec des règles trop rigides
  • Faire comme les GAFAM sans se demander si ça répond réellement à nos besoins
  • Confondre conformité et sécurité
  • Oublier l’humain derrière les pipelines

La philosophie DevSecOps doit aider les équipes, pas les ralentir.

Conclusion

Le DevOps a transformé notre manière de livrer du logiciel.

Le DevSecOps transforme la manière de le livrer durablement et en confiance.

La clé du succès ne réside pas dans l’empilement d’outils, mais dans :

  • Une culture saine
  • Une automatisation intelligente
  • Une sécurité intégrée, mesurée et comprise

En 2026, la vraie question n’est plus « faut-il faire du DevOps ou du DevSecOps ? » mais plutôt :

Comment construire des systèmes rapides, fiables et sûrs sans sacrifier les équipes ?

La réponse commence toujours par des choix simples, bien assumés.

Besoin d’aide pour implémenter DevOps et DevSecOps ?

Chez AstioLab, nous accompagnons les entreprises, startups et PME dans leur transformation DevOps et DevSecOps. Que vous soyez en phase de démarrage ou en quête d’optimisation, nous vous aidons à :

  • Établir une stratégie DevOps pragmatique adaptée à votre contexte et vos contraintes
  • Mettre en place une CI/CD robuste pour livrer plus vite et en confiance
  • Intégrer la sécurité dès le départ sans ralentir les équipes
  • Construire une culture DevSecOps au sein de votre organisation
  • Évaluer et optimiser votre toolchain pour réduire la complexité

Nous croyons au pragmatisme : pas de solution clés en main, mais des approches adaptées à votre contexte et vos enjeux réels. Chaque organisation est unique, et nous nous engageons à construire avec vous une stratégie qui fonctionne.

Vous avez un projet, une idée ou une question ? Contactez-nous pour discuter de comment nous pouvons vous aider.

Suivez-nous

Cet article vous a plu ?

Rejoignez-nous sur nos différents réseaux sociaux pour suivre notre actualité ! Nous y partageons nos nouveautés, nos réalisations, ainsi que des retours d’expérience sur les projets que nous menons au quotidien.

Vous pouvez également suivre notre blog via notre flux RSS, afin de ne manquer aucune publication. De nouveaux articles seront publiés régulièrement, avec pour objectif de vous présenter nos réalisations, de promouvoir les bonnes pratiques de l’ingénierie logicielle, et de décrypter l’actualité technique et numérique.

Retour au blog

Articles connexes

Voir tous les articles »
Les Tunnels SSH

Les Tunnels SSH

Libérez tout le potentiel de SSH pour créer des tunnels réseaux sécurisés !

Certification HDS

Certification HDS

Comprendre les exigences, les enjeux et la réalité terrain des logiciels de santé.