Роб Инглагд (IT Skeptic) подхватывает популярную сегодня тему пользы провалов и предлагает в одной из свежих записей в своей блоге рассматривать любую неудачу через призму обучения.
Провал дает важнейшую обратную связь. Особенно, если мы ошибаемся быстро. В основе DevOps лежит принцип гранулярности (небольшие порции функциональности, кода, изменения, релиза, целевой группы пользователей). DevOps — про смещение жизненного цикла ПО влево по временной шкале: тестируем раньше, узнаем, что все не работает, когда это еще не оказывает серьезного влияния.
Используя любимую Скептиком Cynefin model, он описывает роль ошибок при выполнении работы разной степени сложности и упорядоченности:
- В простом (simple) сценарии мы должны четко знать, что делаем. Ошибки не приемлемы.
- В сложном (complicated) сценарии мы должны быть способны справиться с задачей. Вероятность ошибок можно снизить благодаря привлечению людей с необходимыми опытом и компетенцией.
- В комплексном (complex) сценарии ошибки являются способом обучения. Мы должны экспериментировать, исследовать, пробовать и непременно пару раз сорваться с обрыва.
- В хаотическом (chaotic) сценарии ошибки также крайне вероятны, так как мы пытаемся привнести в хаос порядок.
Не только изменения, но и операционная деятельность не лишена ошибок. ИТ-системы крайне сложны. Они неизбежно ломаются. Когда это происходит, мы должны вместо поиска виновных поблагодарить инженеров за то прекрасное время, когда системы функционировали без сбоев и провести работу над ошибками. Ведь неудачи ценны только тогда, когда чему-то нас учат. Проводится ли у вас анализ инцидентов? Есть ли ответственный за оценку и план последующих действий? Не стоит упускать возможность "капитализации" ошибок на пути к антихрупкости.
С оригинальным текстом заметки можно познакомиться в блоге Роба Ингланда.