Я думаю, что BPMN может найти применение в компаниях, которые используют очень формальный подход к написанию спецификаций, такого же типа, который использовал бы UML для описания каждого аспекта простой кнопки отмены. Большинство разработчиков слышали только об UML, и даже это не очень хорошо понято и широко не используется на практике.
Как обычно, действительно важные вопросы, которые вы хотите задать:
- Что вы хотите моделировать?
- Для кого ты это пишешь?
Если вы делаете это для себя, вы также можете использовать свои собственные обозначения, составленные специально. Это будет быстрее, чем просмотр страниц спецификаций, написанных экспертами из OMG (Object Management Group, хотя «Боже мой, это тоже не плохое объяснение ;-)).
Если вам нужно поделиться документом с другими, UML кажется хорошим выбором. Сообщество понимает его, и всякую двусмысленность всегда можно переписать простым языком.
Если вашему клиенту требуется BPMN, тогда читайте и изучайте его. Может быть, нанять консультантов, чтобы проверить, правильно ли вы это делаете. Если по контракту вы не обязаны его использовать, то, ради бога, иди, напиши код и хорошо его документируй, и не трать слишком много времени на размышления о том, какая вещь моделирования сейчас наиболее модна. Нет, и никто не будет в ближайшее время.