category

FAQ — UC

Здесь Вы найдете ответы на часто задаваемые вопросы, связанные с использованием Use-Cases (Вариантов Использования) из спецификации UML (Unified Modeling Language). Обсуждение этого раздела происходит в Форуме. Данный раздел FAQ оформлен участником Сообщества Системных Аналитиков, Александром Байкиным.

Отношение «extend»

В двух ситуациях создание расширяющих вариантов использования оправдано.

Наиболее распространенная ситуация — когда пользователь может применить много асинхронных или прерывающих выполнение услуг, которые не должны мешать базовому варианту использования. Часто эти услуги разрабатываются разными командами и проявляют себя при работе с «коробочным» программным продуктом, таким как текстовый редактор.

..

Включение вариантов использования

Иногда в вариантах использования присутствует многократное описание одних и тех же действий.
Рассмотрим, к примеру, систему «Кадры» (рис.1)

Рис.1. Фрагмент функциональности системы «Кадры»

Практически любое действие системы начинается с получения данных о конкретном служащем. Если бы эту последовательность событий приходилось писать каждый раз, когда необходимы данные служащего, варианты использования имели бы повторяющиеся части...

Обобщение вариантов использования

В ходе моделирования вариантов использования может возникнуть ситуация, когда обнаруживается, что несколько ВИ демонстрируют очень схожее поведение. В этом случае можно использовать обобщение ВИ. Такой прием следует использовать крайне осторожно и только в том случае, если он упрощает модель.

Если обобщение действующих лиц достаточно часто применяется правильно даже новичками, то обобщение ВИ зачастую вызывает затруднение или используется неверно...

Как моделировать альтернативные потоки?

В предыдущей статье я предложил некоторые рекомендации по написанию спецификации вариантов использования. Статья вызвала бурные дискуссии на форуме. Среди прочих поднимался вопрос о том, что считать альтернативными потоками и как их записывать. Действительно, что мы считаем альтернативными потоками? Если существует альтернатива чему-либо, то, очевидно, существует что-то, что мы считаем главным или исходным по отношению к ней...

Обобщение действующих лиц

Обобщение действующих лиц (actors) обеспечивает возможность вынести поведение, общее для двух и более действующих лиц, в действующее лицо-родителя

  • ДЛ-родитель является более обобщенным, чем его потомки, а ДЛ-потомки — более специализированными, чем их родитель
  • Дочернее ДЛ везде может заменять ДЛ-родителя — это принцип замещаемости
  • ДЛ-родитель обычно абстрактный — он определяет абстрактную роль
  • Дочерние ДЛ конкретны — они определяют конкретные роли
  • Обощение ДЛ может упрощать диаграммы вариантов использования

Рассмотрим простой, но достаточно показательный пример...

Рекомендации по написанию спецификаций вариантов использования

UML не определяет единых правил для создания спецификации вариантов использования или прецедентов (кому, что нравится). Однако существует ряд шаблонов, которыми Вы можете воспользоваться. Шаблон от Алистера Коберна. Шаблон от Карла Вигерса. Шаблон от RUP. Шаблон от ICONIX. Шаблон от OpenUP...

Какую литературу порекомендуете по ВИ?

Выпущено множество книг как на английском языке, так и на русском: 

  • А. Коберн, Современные методы описания функциональных требований к системам
  • М. Фаулер, UML. Основы. 3-е издание
  • Л. Мацяшек, Анализ требований и проектирование систем. Разработка информационных систем с использованием UML
  • К.  Ларман, Применение UML и шаблонов проектирования (2-е или 3-е издание)
  • А.  Леоненков, Самоучитель UML — 2 издание, переработанное и дополненное
  • Г.
..

Какие встречаются основные ошибки при работе с ВИ?

1. Отсутствие системы или действующего лица

Это одна из самых распространенных ошибок. Возможная причина невнимательность и избыточная торопливость. Однако я обнаружил и другие более глубинные причины. Даже после четкого объяснения, что вариант использования показывает возможное взаимодействие, по крайней мере, между ДВУМИ действующими лицами, где одно из них – это система по умолчанию, все равно ошибки, связанные с  отсутствием системы превалируют...

Какие есть основные особенности ВИ?

ВИ – это цель
ВИ должен иметь хотя бы одного актера
ВИ – это описание (сценарий)
ВИ имеет один успешный сценарий (С)
ВИ имеет множество альтернативных С
С ВИ должен иметь не более 10 шагов
Сложный С делится на подВИ (sub use cases)
ДВИ должна содержать 5-10 ВИ..

Почему ВИ – это не функция?

ВИ – это не функция, это некая последовательность действий, которая приносит пользу для основного актера, инициирующего данный ВИ. ВИ – это скорее цель Пользователя, чем отдельная функция. ВИ теоретически может быть разбит на несколько функций, и как правило не является одной лишь функцией...

Что такое сценарий ВИ?

Сценарий или спецификация ВИ (use case scenario or specification) – текстовое формальное описание последовательности действий, которые происходят внутри ВИ для достижения некой цели актера.

Принята следующая структура описания спецификации ВИ:

1.   Название
Это уникальное название ВИ. Оно должно быть написано в виде глагол-существительное, например «Получить книги», «Снять наличные».Лучше написать «Регистрировать пользователя», чем «Регистрация пользователя».  Оно должно описывать конечную цель актера и чтобы было понятно – о чем данный ВИ...

Что необходимо сделать, чтобы правильно построить ДВИ?

Общая схема:

1.   Выделить действующих лиц (ДЛ). Если это СДВИ, то нужно выделить внутренних Пользователей Системы и внешнее (другое) ПО. Если это БДВИ, то нужно понять – кто может являться Клиентом вашей организации, и с какими другими организациями взаимодействует ваша компания, например, налоговая или РАО ЕЭС...

Чем отличается диаграммы Бизнес ВИ и Системных ВИ?

На Бизнес Диаграмме ВИ (БДВИ) отображается, как взаимодействуют внешние пользователи с вашей организацией для достижения бизнес целей. На ней обычно показывают внешних по отношению к вашей организации актеров, например, клиентов и  внешние организации. Старайтесь на этом этапе избегать связей <include> и <extend>...

Что такое актер (actor)?

Актер (действующее лицо или actor) — это пользователь, который взаимодействует с Системой. Актером может быть так же конечный пользователь (внешний к вашей организации) или внешняя система. ..

Что такое Вариант Использования (прецедент или Use Case)?

Вариант Использования (ВИ, прецедент или Use Case) — это последовательность некоторых событий, показывающих как Система должна взаимодействовать с Пользователями (называющимися актером или actor) для достижения какой-то цели. Различают два вида ВИ – это бизнес ВИ (БВИ) и системный ВИ (СВИ). ..