Я ограничусь ответом только на самую существенную часть Вашего вопроса, которая показалась мне наиболее интересной:
"Может просто не повезло IDEF? Появился UML и другие передовые нотации, в этом может дело?"
Нет. UML - не замена IDEF, и он не "более прогрессивен".
Просто у IDEF и UML - разные задачи. IDEF - это функциональный подход. В фокусе процесс, а не объект (за исключением разве что IDEF1x). Понятно, что для проектирования системной архитектуры такой подход мало пригоден. Но для того, скажем, чтобы быстро оценить масштабы разрабатываемой системы (понять, что туда входит, а что остается за кадром), выделить ее основные функции, проследить связи между ними, определить, какие ресурсы при этом используются и какие ограничения ставятся, оптимизировать процессы прежде чем приступать к проектированию системы - IDEF незаменим (особенно в коллективной работе).
Это первый этап анализа. Архитектура системы здесь остается за рамками модели, причем она совершенно осознанно остается за рамками.
Далее, не всегда функциональное моделирование имеет перед собой цель создать какую-то информационную систему. Возможно, мы всего лишь решили повысить эффективность работы какого-либо бизнес-подразделения, оптимизировав бизнес-процессы - например, исключив лишние операции, разбив один сложный и запутанный процесс на несколько простых, объединив используемые источники данных по принципу общих потребителей и общей информации, которая им необходима, и т.д. Во всех этих случаях нам может помочь IDEF.
Когда мы переходим к проектированию системы, в фокусе уже не процессы, а объекты и взаимодействия между ними. UML возник тогда, когда объектно-ориентированный подход к программированию стал нормой, и предназначен именно для того, чтобы строить архитектурные модели. Использовать его в каких-то других целях, наверное, можно, но лично мне представляется нецелесообразным.
Я видела, разумеется, попытки использовать UML (точнее, Use Cases) для функционального описания системы, но...
В фокусе Use Case - не функция. В фокусе Use Case - цель, ради которой выполняется то-то и то-то. Попытки подменить одно другим, как правило, приводят к очень печальному результату.