Ретроспектива и регрессия
Короткое правило успешного проекта "Регулярно делаем ретроспективу и не допускаем регрессий".
Ретроспектива - это процесс поиска недостатков в текущей кодовой базе и обдумывания способов улучшения сложившейся ситуации.
Понятие пришло из agile-практик и глубоко укоренилось в продвинутых командах разработчиков. Плохие проекты - это не те у которых нет проблем, а те в которых проблемы не решаются, поэтому ретроспектива - это отличный подход к развитию проекта.
Негатив в отношении данной практики в основном есть в командах со слабой технической базой, потому что любые изменения кодовой базы, сделанные из самых лучших побуждений, приводят к регрессиям. Чтобы этого избежать повсеместно используется правило "работает, не трогай!".
Регрессия - это ситуацию при которое изменений одной части кода приводит к поломке в других частях программы. Происходит это из-за сильного зацепления и неграмотного проведения границ. Основной способ бороться с регрессиями - тесты. Не обязательно добиваться высокого покрытия, важно разобраться с механизмом возникновения регрессий. Самый действенный способ для поиска регрессий - это интеграционные тесты.
Таким образом, правило, озвученное выше, означает, что нужно регулярно искать что можно улучшить в проекте, а чтобы уменьшить головную боль от изменений проекта, нужно учиться внедрять тесты.
#понятия #база