Во время обсуждения один из моих коллег сказал, что у него есть некоторые трудности с его текущим проектом, когда он пытается устранить ошибки. «Когда я решаю одну ошибку, что-то еще перестает работать в другом месте», - сказал он.
Я начал думать о том, как это могло произойти, но не могу понять это.
- Иногда у меня возникают похожие проблемы, когда я слишком устал или сонлив, чтобы правильно выполнять работу и иметь общее представление о той части кода, над которой я работал. Здесь проблема, кажется, в течение нескольких дней или недель, и не связана с фокусом моего коллеги.
- Я также могу представить себе эту проблему, возникающую в очень большом проекте с очень плохим управлением , когда товарищи по команде не имеют ни малейшего представления о том, кто что делает, и какое влияние на работу других может оказать изменение, которое они делают. Это также не тот случай: это довольно маленький проект с одним разработчиком.
- Это также может быть проблемой со старой, плохо обслуживаемой и никогда не документированной кодовой базой , где единственные разработчики, которые действительно могут вообразить последствия изменений, покинули компанию много лет назад. Здесь проект только начался, и разработчик не использует чью-либо кодовую базу.
Итак, что может быть причиной такой проблемы на новой небольшой базе кода, написанной одним разработчиком, который остается сосредоточенным на своей работе ?
Что может помочь?
- Модульные тесты (их нет)?
- Правильная архитектура (я почти уверен, что кодовая база вообще не имеет архитектуры и была написана без предварительного обдумывания), требующая полного рефакторинга?
- Парное программирование?
- Что-то другое?