DevOps, l'atout des services publics pour répondre aux attentes de citoyens toujours plus exigeants

Dans le privé, les DSI ont pour mission de créer des applications qui auront un impact sur les clients. Dans le public, leur mission est la même, à un détail près : ils ne travaillent pas pour des clients, mais pour le grand public.

Dans un marché ouvert, les consommateurs ont généralement le choix entre plusieurs fournisseurs pour leurs produits et services, et, s'ils ne sont pas satisfaits, ils peuvent aller voir ailleurs. Pour tous les services publics, en revanche, vous n'avez pas d'autre choix que de vous en remettre aux organes gouvernementaux, que ce soit pour les soins de santé ou les services d'intervention d'urgence, à moins que la qualité des services en question soit si peu satisfaisante que le secteur doive se privatiser. Votre seul autre recours, est d'effectuer les démarches physiquement, en vous déplaçant par exemple jusqu'aux bureaux de votre administration plutôt que de passer par les plateformes en ligne.

Le secteur public doit faire face à une difficulté de taille lorsqu'il s'agit de développer ou d'améliorer ses applications : le niveau d'exigence extrêmement élevé des utilisateurs. Ces derniers attendent une qualité de service équivalente à celle fournie par les entreprises du secteur privé et ne revoient pas leurs exigences à la baisse sous prétexte qu'ils ont affaire à un organisme public. C'est pourquoi le secteur public doit adopter une nouvelle approche, plus dynamique, pour développer ses applications.

Plusieurs impératifs transforment aujourd'hui la façon dont les départements informatiques fournissent des services. Voici les plus importants :

  • Migrer les applications (nouvelles ou anciennes) vers le cloud
  • Garantir le fonctionnement efficace et économique des applications
  • Satisfaire la demande croissante d'interactions multicanal de la part des utilisateurs
  • Garantir la satisfaction du public pour éviter le spectre de la privatisation
  • Être extrêmement attentif aux nouveautés en matière de cybersécurité
  • Assurer une protection efficace contre toute faille de sécurité concernant des services publics de première importance, tels que les soins de santé
  • Fournir des services au moyen de ressources numériques pour répondre à une demande croissante
  • Faire en sorte que le public ait accès aux services n'importe où

Produire des applications plus rapidement, à moindre coût et avec moins de risques

Le développement d'applications est le domaine qui offre au secteur public les plus grandes possibilités d'amélioration en matière d'utilisation des ressources pour répondre aux attentes du public. Malgré tous les obstacles auxquels elles doivent faire face, les institutions publiques peuvent fournir des services efficaces en adoptant des stratégies innovantes. Pour répondre aux besoins et aux attentes des utilisateurs, elles doivent concevoir, tester et déployer leurs applications en temps réel, en s'appuyant pour cela sur deux composantes essentielles : DevOps et le déploiement continu.

DevOps est un ensemble de pratiques organisationnelles qui permettent d'accélérer le processus de création d'applications et de le rendre plus fiable. Il repose sur une culture de collaboration et de travail d'équipe : au lieu de travailler chacune dans leur coin en s'échangeant des lignes de code, l'équipe de développement et celle des opérations informatiques sont appelées à conjuguer leurs efforts tout au long du cycle de production des applications. Ce rapprochement passe notamment par la suppression de toutes les démarches organisationnelles inutiles et de tous les motifs de friction. La plupart des organismes publics ont commencé à s'intéresser à DevOps, mais le problème auquel ils font face est d'ordre culturel, et non technique.

Le déploiement continu est une approche qui permet aux équipes de développement de disposer en permanence de code sûr, testé et prêt pour la production. Il s'appuie avant tout sur l'automatisation des processus, qui permet aux équipes de fournir des mises à jour plus rapidement et avec moins d'erreurs. Lorsqu'une nouvelle fonctionnalité ou une mise à jour est terminée, le code peut immédiatement être envoyé pour déploiement vers un environnement intermédiaire, voire directement vers un environnement de production.

Le déploiement continu passe tout d'abord par la mise en place d'une intégration continue. Cette dernière consiste à intégrer automatiquement le code dans un référentiel partagé. Lorsqu'un développeur entre du code dans ce référentiel, ce code est alors vérifié par un processus de build et de test automatique. Si tout est normal, cette nouvelle section de code passe aux étapes suivantes définies dans le pipeline de création des applications. Le déploiement continu va cependant plus loin que l'intégration continue en étendant l'automatisation à l'ensemble du cycle de création des applications, et non simplement à l'environnement de développement. Le terme « déploiement continu » désigne ainsi le processus global mis en place à l'aide des pratiques organisationnelles de DevOps.

Les enjeux pour demain

Les menaces qui pèsent sur le secteur public sont réelles et immédiates, tout comme les opportunités qui s'offrent à lui. Sa priorité doit être de créer de nouvelles applications, mais aussi de moderniser et d'améliorer celles dont il dispose déjà, afin de satisfaire les attentes des utilisateurs. Si la tâche est ardue, les différentes administrations ont cependant à leur disposition de nouvelles pratiques, de nouvelles méthodes et de nouveaux outils pour y parvenir. DevOps, le déploiement continu, l'intégration et l'automatisation sont autant de clés pouvant lui permettre de rivaliser avec les offres du privé tout en maintenant des coûts peu élevés et en satisfaisant la demande d'une génération née à l'ère du digital.