Основные недостатки: (1) Высокая
совокупная стоимость владения — цена поддержки, доработок и исправления
ошибок кратно превышает стоимость лицензий и обновлений коробки, причём расходы растут нелинейно со временем. (2) Невозможность использовать инновации вендора — принципиальное обновление
системы становится технически сложным или требует полной пересборки. (3)
Зависимость от ключевых людей — знание о системе находится в головах конкретных разработчиков, их уход парализует развитие. (4)
Технический долг — каждая нестандартная доработка становится кирпичиком в стене будущих
проблем, добавление функциональности превращается в многонедельное копание в чужом коде. (5) Высокие
риски проекта — долгострой, срыв сроков, архитектурные ошибки, слабое документирование.