аналитик виноват когда себя поставил в команде как козёл отпущения
по теме же, вы всё смешали в одну большую кучу, где перемешались заказчики и программисты, в то время как существуют разные документы, предназначенные для:
1. заказчика
2. для имплементации бизнес-логики в системе.
3. сношений с тестированием
4. приёмок и прочего.
любой документ имеет цель: согласовать бизнес логику проекта, согласовать архитектуру разрабатываемого решения, согласовать низкоуровневые архитектурные моменты как методы и интерфейсы взаимодействия, сценарии приёмочных тестирований и прочее.
общая мысль следующая: каждый документ имеет цель, и от неё нужно плясать. для заказчика писать доки в удобном для него формате, для разрабов - в удобном им формате. никогда не будет одного документа, эффективно читаемого как заказчиком, так и разработкой, потому что и те, и другие имеют под собой инкрементную природу (количество согласующих имеет свойство постоянно увеличиваться с обеих сторон)
вопрос формализации обсосан очень и очень много раз. может, конечно, я не правильно понял вопрос темы.
а что до взаимных обвинений в кривомозгости, то я с вами не соглашусь - в ЛЮБОМ сложном проекте с внешним заказчиком, наступает момент таких обвинений. он обусловлен рамками реализации и бюджета. заказчик хочет побольше, а денег заплатить поменьше, подрядчик же, наоборот. обвинения - это элемент торга :-) вариант кранча, если в терминах теории переговоров.