DDD (Domain Driven Development) - Доменный подход нужен для того, что бы при росте сложности проекта, не увеличивалась сложность внесения изменений.
Я думаю все встречались с тем, что чем больше монолитная система - тем сложнее и дольше выпускать новый функционал. Данный подход служит для того, что бы эту проблему решить.
Kanban - это подход, который основан
на выстраивании потоков задач.
Как правило, после запуска в систему реальных пользователей, задачи часто бьются на разные типы и если над ними работает одна команда, то это идеальный подход для работы в таком режиме.
Scrum - это итерационный подход, который очень удобно использовать для создания системы с нуля.
Как правило мы его используем до того как реальные пользователи падают в в cистему.
В разработке мы используем Scrum и Kanban подходы