Как называется такой подход к разработке, тестировани и баг-фиксу? Работал на проекте, где совершенно не было тестов, но и завала по багам так же не было.
Вот почему то вспомнилось и приспичило узнать, есть ли название следующему подходу:
Весь код заливается через строгий и тщательный код-ревью. На дев сервере тестится только руками, зачастую мелкие баги попадают в продакшн.
Баг фикс организован таким образом, что клиент где-то натыкается на ошибку, ошибка сразу репортится в канал Slack и сохраняется в базе, как необработанная. Ошибка анализируется по стеку и переменным окружения, которые прилагаются к записи этой ошибки. Исправляется и заливается хот-фикс.
Сама ошибка, фактически - это отловленный Exception, который записывается в базу со всей доступной информацией. Если, например, произошла некоторая абстрактная ошибка, то при фиксе ставится исключение уже с человеческим названием, и если вдруг из за изменения некоторого модуля снова попадаем в ту же исключительную ситуацию - получаем уже абсолютно точное название, по которому понятно, что за ошибка произошла и можно даже вспомнить, где её искать (хотя, к ошибки крепится номер файла и строки, так что можно и не вспоминать).
Минусы очевидны - логические ошибки таким образом не выловишь, только по обращению клиента. Ну и, само собой, автотесты предусмотрели бы ошибку заранее.
Плюсы - не тратится время на тесты, благодаря чему быстрее пилятся фичи. Всё более стихийно, проект "чаще ошибается", но быстрее развивается и адаптируется под клиента, что очень важно, особенно в условиях жесткой конкуренции.
Это просто такой компромиссный способ разработки продукта с баг-фиксом малой кровью, или у такого подхода есть название и он является в некоторой степени вполне рабочей альтернативой? Хотелось бы узнать больше и почитать на эту тему.
Нашел и прочитал пару статей о статическом и динамическом анализе кода и сначала подумал, что это о моём вопросе. Но как оказалось, сходство только в том, что в динамическом анализе тоже используется рабочая версия программы, а не тестовая, фиктивная.
А может просто поздно, мозг устал и пытается выжать важное из неважного, - просто проект без тестов. Чего я привязался и ищу что-то глубокое? Кто знает...

21 Авг 2019 в 06:29
317 +1
0
Ответы
1

Данный подход к разработке, при котором отладка и исправление ошибок происходит путем реакции на обратную связь от клиентов, а не через автоматизированные тесты, можно назвать "реактивной разработкой" или "разработкой на основе обратной связи". Этот подход является компромиссом между быстрой разработкой и стабильностью программного продукта, и в некоторых случаях может быть эффективным, особенно в условиях ограниченных сроков или быстро меняющихся требований клиента.

Однако, стоит помнить, что такой подход не исключает необходимости тестирования и предупреждения ошибок заранее, так как постоянное реагирование на возникающие проблемы может быть неэффективным и привести к накоплению технического долга. Идеальным вариантом является использование комплексного подхода, включающего в себя как реактивную, так и проактивную разработку, а также автоматизированные тесты и регулярные код-ревью.

20 Апр в 13:17
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 95 117 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир