Ногами сильно не пинайте. Я только встал на путь анализа и проектирования. До этого заказы мы выполняли "по наитию".
То что ЮзКейс - это цель - я понял из книги Коберна (хотя книга далась тяжело). Но почему не возможна декомпозиция цели - я не понимаю. Допустим Цель - "Учет товаров переданных контрагенту". Что бы достичь данной цели пользователь должен 1."Передавать товары контрагенту" и т.д.
Чем не декомпозиция?
Цель декомпозируема - это факт. Но ВИ не функция, ВИ отражает цель пользователя, а не является ее сам по себе. ВИ это способ использования системы для достижения ЦЕЛИ. Естественно возможны варианты. Эти варианты и описывает ВИ. Такие варианты называются для ВИ сценариями. Сценарий может быть успешным - цель достигнута, и не успешным - цель не достигнута или достигнута лишь частично. ВИ - это соглашение о том, как пользователь использует систему, чтобы достичь своих целей - в данном случае выполнить свои функциональные обязанности. Можно ли назвать целью Напечать отчет? А зачем? не есть ли отчет результат достижения цели?
ВИ - можно сказать транзакция - она или выполняется или не выполняется. В ходе транзакции выполняются разные ФУНКЦИИ, обладающие АЛГОРИТМАМИ. Вот функции можно декомпозировать, а как декомпозировать ВИ - на шаги? А разве шаг есть часть цели (подцель)? Конечно нет!
НО Ви могут быть разных уровней. Создается впечатление у начинающих, что если цель высокго уровня разбивается на цели низкого, то это применимо и к ВИ. Но на самом деле нет.
ВИ в первую очередь ориентированы на цели пользователя - т.е. как пользователь двигается к цели, используя систему.
Если вы используете понятие бизнес ВИ, то по сути описываете вариант использования бизнес-системы, т.е. некоторый бизнес-процесс. Описываете как складывается взаимодействие.
Бизнес ВИ не декомпозируется - а реализуется через часть пользовательских ВИ, задает для них контекст
Пока писал ответ - пришла в голову мысль: "А можно ли назвать "Учет товаров переденных контрагенту" целью?
Цель имеет два состояния - (ничего не напоминает) соответственно - задайте себе вопрос достигнута цель: Учета товаров переданных контрагенту или нет. Каков критерий измерения достижения цели?
Или задайте вопрос, а зачем учитывать товары переданные контрагенту, каков интерес?
На мой взгляд - учет - это некоторая деятельность, она протяженна, она осуществляется как сумма усилий в течение большого периода, она включает факт передачи, факт регистрации этой передачи, факт контроля по передачи
Отсюда возможен ВИ цели пользователя: Зарегистрировать факт передачи товаров контрагенту!
Задайте вопрос: если сотрудник целый день занимается регистрацией фактов передачи - это хорошо? это входит в его обязаности, это то за что собственно ему платят деньги ?будет ли доволен руковдитель, если его работник регистрирует это? Мне кажется вполне
А что значит Зарегистрировать факт передачи? - вот тут вы и описываете некую последовательность действий которая приводит вас к появлению факта регистрации:
Пользователь делает
Система реагирует
Пользователь вводит
Система подтвержает
и т.д
Мы описываем путь продвижения пользователя к цель - Зарегистрировать факт передачи. И она либо завершается успешно или нет, если нет пишите почему, и как разрешить конфликт
например, данные по контрагенту не внесены, что делать? запустить ВИ - создать нового контрагента
или передаваемые товары отсутсвуют, что делать, запустить ВИ - ввести новый товар
ну и так далее...