Константин!
Попробуйте поговорить с представителями бизнеса при помощи понятной для всех метафоры — обычного денежного долга.
Любой долг можно какое‑то время игнорировать без последствий — не платить по кредитной карте, не отдавать деньги друзьям, не выполнять обязательства перед партнёрами. Однако в какой‑то момент настанет развязка: по заявлению из банка к вам придут судебные приставы, друзья перестанут с вами общаться, а партнёры разорвут отношения.
См. также
Зачем следить за качеством кода?
То же самое и с техническим долгом — какое‑то время можно его не обслуживать: просто задачи будут занимать всё больше и больше времени, а программисты — всё сильнее и сильнее страдать. Потом настанет развязка: конкурент выкатит фичу, которую вы в принципе не сможете повторить, или ваше приложение сломается так, что потеряет пользовательские данные и вы несколько дней не сможете их восстановить.
См. также
Зачем следить за качеством кода?
Когда обслуживают обычные денежные долги, часто строят простые системы — к примеру, решают, что 30% всего поступающего дохода будут расходовать на досрочное погашение ипотеки. Чтобы не было соблазна купить на эти деньги новый айфончик — настраивают автоматические платежи, чтобы банк сам отнимал от любой входящей суммы нужную часть и отправлял в счёт погашения долга.
Сделайте то же самое и с техническими долгами — не договаривайтесь о каждом улучшении, а введите «программистский налог»: отнимите от каждого спринта по два дня, на которые не планируйте вообще ничего, кроме исправления техдолга.
Мне нравится, как эту проблему решили в Бейскемпе — спринты у них длятся 6 недель, но между ними есть двухнедельный период тишины, в котором вообще нет запланированной работы: они планируют следующие циклы и занимаются тем, чем сами считают важным.
P. S. Это был совет об управлении разработкой. Хотите больше знать о планировании спринтов, управлении продуктом или о настройке инфраструктуры? Присылайте вопросы.