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