Проектирование Use Case диаграммы. Определение функциональных возможностей системы

Программные решения для бизнеса

Пришло время начать наше путешествие! Сегодня поговорим о диаграмме вариантов, или Use-Case, узнаем, какие типы диаграмм встречаются, и попробуем создать одну из них самостоятельно.
Глоссарий
Для успешного освоения материала рекомендуем вам изучить следующие понятия:
Use Case Diagram
Диаграмма вариантов использования. Диаграмма, отражающая отношения между актерами и прецедентами и являющаяся составной частью модели прецедентов, позволяющей описать систему на концептуальном уровне
Предметная область
Часть реального мира, рассматриваемая в пределах данного контекста
UML
Unified Modeling Language (унифицированный язык моделирования).

Язык графического описания для объектного моделирования в области разработки программного обеспечения, для моделирования бизнес-процессов, системного проектирования и отображения организационных структур
ТЗ
Техническое задание. Документ, содержащий требования заказчика к объекту закупки, определяющие условия и порядок ее проведения для обеспечения государственных или муниципальных нужд, в соответствии с которым осуществляются поставка товара, выполнение работ, оказание услуг и их приемка
Actor
Актер (Use Case). Роль объекта вне системы, который прямо взаимодействует с ее частью — конкретным элементом
Use Case
Вариант использования (прецедент). Описание поведения системы, когда она взаимодействует с кем-то (или чем-то) из внешней среды
Hot Keys
Горячие клавиши. Комбинация клавиш на клавиатуре, нажатие на которые позволяет выполнять различные действия в операционной системе и программах, не прибегая к использованию мыши и не вызывая меню действий
Видеолекция
Конспект

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

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

В рамках курса для демонстрации основных модулей было выбрано туристическое агентство. Давайте проанализируем вводное описание и определим данные, которые действительно необходимы для нашей системы. Перед вами описание предметной области (важные данные мы будем отмечать маркерами: красным  — роль пользователя, желтым  — важные действия, которые могут совершать пользователи)
Итак, мы выделили:
  • Администратор — создание новых туров и редактирование существующих
  • Менеджер — регистрация клиента в системе
  • Менеджер — подбор тура для клиента + 4 дополнительных действия
  • Менеджер — регистрация заявки на клиента + включение в заявку дополнительных услуг
  • Клиент и менеджер — отслеживание актуальной информации по заявке
  • Клиент — сохранение ваучеров на свое устройство
  • Менеджер — подача запроса на формирование ваучеров
  • Клиент — возможность оставить отзыв об отеле
Ревью возможностей MS Visio для создания диаграмм
После определения требований переходим к этапу проектирования. В ходе проектирования архитектором создается проектная документация, включающая:
  • текстовые описания
  • диаграммы
  • модели будущей программы

Для этого используется графический язык для визуализации, описания параметров, конструирования и документирования различных систем UML. Для визуализации модели существуют различные типы диаграмм:

  • Диаграмма вариантов использования (use case diagram)
  • Диаграмма классов (class diagram)
  • Диаграмма состояний (statechart diagram)
  • Диаграмма последовательности (sequence diagram)
Остановимся на диаграмме вариантов использования. Она достаточно проста, это позволяет использовать ее для согласования технического задания с заказчиком
Создание диаграммы для турагенства
1. Определение рамок системы согласно заданию

Для этого используем элемент subsystem, там будут располагаться прецеденты (функционал, реализуемый системой)
2. Определение основных групп пользователей (ролей) и размещение на диаграмме

Это те, кто будет использовать систему, и в нашем случае, как следует из тех. задания, — это клиент, менеджер и администратор. После размещения будет наглядно видно, что разные группы пользователей имеют доступ только к определённому функционалу
3. Определение вариантов использования (прецедентов), размещение их на диаграмме
А) Для администратора:
  • создать новый тур
  • редактировать существующий тур

Б) Для менеджера:

  • зарегистрировать клиента
  • подобрать тур: выбрать даты тура, указать предпочтения клиента, указать границы стоимости, выбрать отель
  • зарегистрировать заявку: выбрать дополнительные услуги
  • сформировать ваучер

В) Для клиента и менеджера:

  • получить информацию по заявке

Г) Для клиента:
  • сохранить ваучер на устройство
  • оставить отзыв об отеле
Горячие клавиши (Hot Keys) для переключения инструментов
  • Ctrl + 1 — выделить элемент
  • Ctrl + 2 — добавить комментарий
  • Ctrl + 3 — добавить связь между актером и прецедентом
Разграничение прецедентов между актерами
и размещение отношений
Отношение ассоциации — отражает возможность использования актером прецедента
Отношение включения — поведение одного прецедента включается в другой в качестве составного, причем дополняемый вариант использования не сможет выполняться без основного
Отношение расширения — отражает возможное присоединение одного использования к другому, при этом расширяющий вариант использования выполняется лишь при определенных условиях и не является обязательным для выполнения основного прецедента
Формат сохранения диаграммы
На этом проектирование диаграммы завершено, и мы можем перейти к ее сохранению. Созданная диаграмма по умолчанию хранится в формате .vsdx, но для гарантированного запуска файла на других устройствах рекомендуется сохранять диаграмму еще и в .pdf формате
Мы проанализировали вводную часть задания, изучили предметную область, познакомились с основными типами диаграмм и самостоятельно создали диаграмму вариантов использования. Это уже сейчас позволит вам достаточно подробно проработать техническое задание, чтобы оценить сроки и стоимость его выполнения, описать конкретные случаи взаимодействия пользователей с системой, которые лягут в основу тестов и документации, и согласовать все это с заказчиком.
А теперь проверьте полученные знания на практике.
Интерактивное задание
Тест
Для закрепления полученных знаний пройдите тест
Стартуем!
Какой графический язык рекомендуется использовать для визуализации, описания параметров, конструирования и документирования различных систем (программ в частности) в рамках данного курса?
Дальше
Проверить
Узнать результат
Какое отношение отражает возможность использования прецедента актером?
Дальше
Проверить
Узнать результат
Кто или что НЕ отображается на Use-Case диаграмме?
Дальше
Проверить
Узнать результат
К сожалению, вы ответили неправильно
Прочитайте лекцию и посмотрите видео еще раз
Пройти еще раз
Неплохо!
Но можно лучше. Прочитайте лекцию и посмотрите видео еще раз
Пройти еще раз
Отлично!
Вы отлично справились. Теперь можете ознакомиться с другими компетенциями
Пройти еще раз