Le rapport 2017 sur l'état des devops indique qu'il y a environ 31 à 45% de «taux d'échec du changement». Bien que cela semble intuitivement correct, sont-ils suivis comme des incidents? Non. Parce qu'ils sont corrigés assez rapidement, généralement lors de la validation.
Un problème qui se résout rapidement est toujours un problème. Si vous ne les signalez pas comme tels, c'est un problème.
Il faut donc de la discipline pour signaler avec précision les taux d'échec. Nous ne sommes pas encouragés à faire de tels rapports parce que nous voulons que les choses fonctionnent et que nous faisons ce qu'il faut pour y arriver.
Si votre objectif est réellement de faire fonctionner les choses, alors vous devez être honnête au sujet des échecs afin de pouvoir les éviter à l'avenir. On dirait que l'équipe ici est couché (peut - être eux - mêmes, sans aucun doute à la gestion) au sujet des échecs parce que leur objectif est d'avoir les choses semblent fonctionner.
Ce sont des choses différentes. Par exemple, prenez la vieille blague selon laquelle QA produit des bugs - "mon code était correct jusqu'à ce que QA s'en empare, puis ils ont fait tous ces bugs!". Les bugs étaient toujours présents, mais le développeur les ignorait. L'objectif d'une équipe d'exploitation doit être la fiabilité réelle , et elle doit être incitée en tant que telle par sa direction. Cela signifie que s'ils mettent en place plus de surveillance qui mène à la découverte de nouveaux problèmes, ils devraient être récompensés, et non pénalisés pour la baisse ultérieure des mesures de fiabilité.
TL; DR, comment prouvez-vous que les devops, en particulier l'automatisation du déploiement, améliorent les taux d'échec des changements?
Si vous essayez de motiver le changement dans votre organisation, vous ne devriez pas essayer de prouver quoi que ce soit, mais fournir des preuves de ce que les autres organisations disent de leurs propres transitions. Si vous essayez de mesurer les processus que vous avez déjà en place et de justifier leur existence continue, vous devez suivre les mesures de fiabilité standard, comme le temps moyen de réparation (MTTR).
Mais les principes devops ne consistent pas seulement à accroître la fiabilité. Même l'ingénierie de la fiabilité du site ne se limite pas à accroître la fiabilité. Au contraire, vous voulez atteindre un niveau de fiabilité approprié - quelque chose qui profite à l'entreprise mais n'entrave pas le développement. Et cela fait apparaître le véritable facteur de motivation dans les devops, qui est de permettre le changement . Vous voulez permettre à l'entreprise de répondre plus rapidement aux stimuli du marché, ce qui se produit en diminuant la friction des développeurs, en augmentant le taux de déploiements, en automatisant les processus manuels, etc. tout en restant dans une limite de fiabilité acceptable. Cela signifie que vous devez mesurer la fiabilité, mais vous devez également mesurer la vitesse, car votre objectif est d'augmenter cette dernière tout en maintenant la première relativement statique.