S — Situation

При подготовке релиз-кандидата возникает множество merge-конфликтов, что затягивает сборку. Правка merge конфликтов часто приводят к последующим дефектам на этапе регрессионного тестирования. Происходит плавное накопление тех. долга из багов. При этом в среднем команда затрачивает 10.5 дней на исправление каждого дефекта. При этом уровень стандартного отклонения достигает 10.1 дня, что говорит о большом разбросе во времени, затрачиваемого на правку этих дефектов. Это отражено в метрике на 24/May/22 (см. график ниже)

image.png


T — Task

Снизить количество merge конфликтов при слиянии, повысить качество раннего тестирования, предотвратить рост тех. долга.


A — Action

  1. Внедрены практики shift-left testing
    1. Тестовая модель по фиче начинает разрабатываться задолго до самого момента разработки, согласно утвержденным спецификациям и макетами. Подробнее: Кейс 1: Сокращение цикла разработки и Time To Market
    2. Документация к фиче тестируется QA инженером на предмет полноты, актуальности, однозначности формулировок и покрытия корнер кейсов, а правки в документацию по замечаниям QA вносятся до их момента передачи в разработку
  2. QA инженеры тестируют фичу в фиче ветке до того момента, как она вмерживается в main ветку. Перед началом тестов в фиче ветку подтягиваются все актуальные изменения из main ветки. Стабилизация фичи и исправление дефектов по ней так же выполняется в фиче ветке, тем самым main ветка в GIT всегда остается стабильной.

R — Result

Bug cycle time (all period).gif

В начиная с момента внедрения изменений (ноябрь 2022) удалось достичь следующих результатов: