Если честно - зависит от ситуации. Надо смотреть в каждом конкретном случае: что займет больше времени, что будет дороже, что нужно клиенту, условия лицензирования готового решения, условия поддержки.
Основная проблема в том что когда берёшь готовое решение и день разбираешься в его архитектуре, что как ему надо подавать вечером думаешь "блиииин я бы уж успел всё написать за это время" но сначала это не очевидно, кажется всё несложно.
Я предпочитаю что попроще брать и встраивать в крупную систему а что посложнее сам писать что бы потом чёрного ящика не было.
Archusha: посложнее это если она делает всё за меня и выдаёт мне готовый итоговый ответ. Т.е. я от внешнего решения полностью зависим. Или она диктует мне строго какие данные и в каком формате на вход давать. А если она делает одну операцию обработки, то это нормально, можно брать. Короче вот формат вывода есть, я смогу формат вывода у этого решения поменять если клиент попросит? Если нет тогда нафиг её.
"Хочу реализовать проект. Можно найти специалиста-архитектора, под чьим наблюдением это делать?" Робот: "Пишите по архитектуре подскажу что смогу, с бекендом у меня лучше чем с фронтом ))"
Подскажите, а куда обращаться, если что? е-маил оставите?
Всё проще: надо поднять красную линию до уровня конца желтой (там, где написано "старт готового решения"), и там, где красная и зелёная линия пересекутся - будет точка выбора: если она выше требуемого функционала, надо брать готовое, а если ниже - писать своё.
Но такая диаграмма получится слишком простой...