Для идентификации вариантов использования нам могут пригодиться:
· требования к системе,
· описание актеров системы,
· описание предметной области,
· глоссарий.
Чтобы понять, какие вариантов использования при работе с системой присутствуют в проектируемой системе, необходимо:
· Иметь в виду, что очень часто одно или несколько рядом стоящих требований (при соблюдении правила последовательности изложения требований) являются прообразом варианта использования. Поэтому в первую очередь рекомендуется зафиксировать возможные варианты использования, соответствующие требованиям к системе, и дать им названия. Например, если существует требование «Система должна предоставлять возможность просмотра списка чего либо», то вариант использования «Просмотреть список чего-либо» за очень редким исключением есть в системе.
· Представить себе работу каждого актера с системой и попытаться глагольной фразой назвать некоторую типичную последовательность действий. Например, типичной последовательностью действий администратора торговой точки является внесение в систему журналов продаж, это значит, что в системе существует вариант использования «Ввод нового журнала продаж».
|
|
· Попытаться применить шаблон (паттерн), связанный с полным циклом администрирования чего-либо. Изобразить на диаграмме его можно следующим образом:
Рис. П1.11. Типовая диаграмма вариантов использования, связанная с администрированием каких-либо сущностей
Зачастую такой паттерн применим, когда в системе существует некоторое понятие, к которому применимы функции просмотра списка эти понятий, создания нового понятия, редактирования этого понятия и удаление этого понятия.
В процессе выполнения действий, направленных на идентификацию вариантов использования, необходимо те из них, которые удалось выявить, показывать на диаграмме, давая им имена и обозначая отношения между ними, если они существуют, а также показывая, какие актеры инициируют выполнение варианта использования.
Имя варианта использования – это небольшая фраза, которая описывает, что делается внутри этого варианта использования. Существует несколько подходов к формированию имени варианта использования. Некоторые авторы рекомендуют использовать глагольные фразы типа «Просмотреть список товаров», «Редактировать товар», «Обновить данные». Другие авторы рекомендуют называть варианты использования с учетом имен функций системы, например «Просмотр списка товаров», «Редактирование товара», «Обновление данных». Главное, чтобы внутри проекта варианты использования назывались одинаково. Имя варианта использования должно быть понятным и однозначно интерпретируемым в контексте проектируемой системы. Недопустимыми являются однословные имена «Просмотр», «Печатать», а также слишком сложные и запутанные имена, содержащие подробности реализации, например «Просмотреть список товаров, которые поставил указанный поставщик в прошлом месяце позапрошлого года».
|
|
После того как варианты использования идентифицированы и нанесены на одну диаграмму (или во время идентификации диаграмм), можно перейти к делению этих вариантов использования на отдельные диаграммы. На отдельную диаграмму могу быть вынесены варианты использования:
· связанные между собой, но никак несвязанные с другими вариантами использования при работе с системой;
· относящиеся к работе с одной сущностью (например с товаром или продавцом);
· имеющие логически близкий смысл (например, вариант использования запуска и остановки программы).
Вот несколько общих рекомендаций по поводу диаграмм вариантов использования и вариантов использования на них:
· Нумеруйте диаграммы и варианты использования. Нумерация помогает ссылаться на варианты использования и диаграммы. Номер варианта использования необходимо складывать из номера диаграммы, на которой он находится и собственного номера. Причем, сами варианты использования лучше нумеровать через десяток по тем же соображениям что и требования.
· Один и тот же вариант использования может содержаться на разных диаграммах. При этом на какой-то диаграмме должен быть представлен вариант использования (источник) с соответствующим номером, а на остальных диаграммах ссылки на этот вариант использования.
· Если на одной диаграмме слишком много вариантов использования, разбейте ее на несколько.
· Детализируйте сложные варианты использования. Не нужно боятся использовать отношения между вариантами использования, если такая возможность присутствует. Выносите длинные последовательности шагов из вариантов использования в отдельные варианты использования. А также, если в двух разных вариантах использования выполняются одни и те же шаги – это явная причина на использование отношения расширения или включения.
· Помните про итеративность. Невозможно сразу же нарисовать правильные диаграммы вариантов использования, их создание – это процесс итеративный, то есть оценивается первая версия диаграмм и на ее основе строится вторая, оценивается вторая и строится третья и так далее, пока диаграммы не станут выглядеть законченными и полными. Кроме этого не надо боятся добавлять, изменять или удалять требования к системе, добавление, изменение или удаление которых может понадобится, в процессе построения диаграмм.
· Не пытайтесь создать одну главную диаграмму, на которой отображена работа всей системы. Такая диаграмма чаще всего не имеет никакого практического смысла. Ведь для того, чтобы понять в общем, что делает система достаточно прочитать «Видение» - документ созданный на предыдущем этапе.
Приведем несколько примеров диаграмм для информационной системы сети торговых точек.
Примеры диаграмм
Рис. П1.12. Диаграмма 01. Запуск и остановка программы
Это пример диаграммы, где варианты использования объединены скорее логически.
Рис. П1.13. Диаграмма 02. Управление товарами
Это пример диаграммы, где варианты использования объединены по принципу принадлежности к одному понятию. Обратите внимание на использование отношений включения и расширения на данной диаграмме.
Рис. П1.14. Диаграмма 05. Генерация отчетов
Это пример диаграммы, где варианты использования объединены по принципу принадлежности к одному понятию. Обратите внимание на использование отношений включения и расширения на данной диаграмме.
|
|
Без пояснений приведем фрагменты диаграмм вариантов использования для книжного Internet-магазина, поскольку эти фрагменты будут в дальнейшем использоваться при изложении некоторых шагов этапов Анализ и Проектирование.