Есть мнение - миром правит не заговор а глупость.
У меня мало опыта, 'заглядывал' в несколько мест где пахло корпоративным энтерпрайзом, хоть и мелким, и везде - энтерпрайз это страшное кошмарное поделище, которое пилится десятком поколений разработчиков, которым лень/нереально сложно лезть в старый код друг друга, и на поддержку тратится неимоверные ресурсы, на столько большие что взять и написать с нуля может оказаться дешевле, но никому не хватает духа или даже знаний чтобы это сделать, ведь нужно будет отвечать за это, если не получится (а так ответственность размазана по куче людей).
Чем сложнее и функциональнее фреймворк тем страшнее им пользоваться. Любое готовое решение фиксирует твои возможности тем что оно собой представляет, и любой шаг в сторону потребует больше сил чем должны были бы на это потрачены.
Любая крупная компания страдает последствиями закона Парето или даже
эффекта Рингельмана.
Чем больше людей задействованы в создании чего либо (а когда это что то делают долго, этого не избежать) тем больше усилий будут тратиться и в среднем эффективность каждого человека в отдельности будет уменьшаться. В конце концов старые компании со старыми продуктами вынуждены тратить огромные ресурсы просто на поддержание этого монстра на плаву.
p.s. мое мнение, использовать крупный готовый фреймворк - это мина замедленног действия, не менее страшная чем создание своего самописного движка с нуля.
Красивого ответа, а как надо, нет, на это пишут толстые книги, философы много рассуждают, созданы сложные принципы типа
TDD которые позволяют если не исключить ряд проблем, появляющимися из-за старения продукта, но хотя бы его отсрочить и облегчить работу по внесению изменений в будущем.