Что такое диаграмма вариантов использования

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

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

Unified Modeling Language (унифицированный язык моделирования).

Язык графического описания для объектного моделирования в области разработки программного обеспечения, для моделирования бизнес-процессов, системного проектирования и отображения организационных структур

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

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

В рамках курса для демонстрации основных модулей было выбрано туристическое агентство. Давайте проанализируем вводное описание и определим данные, которые действительно необходимы для нашей системы. Перед вами описание предметной области (важные данные мы будем отмечать маркерами: красным — роль пользователя, желтым — важные действия, которые могут совершать пользователи)

Источник

UML — диаграмма вариантов использования (use case diagram)

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

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

Вариант использования (use case)

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

В данном примере вариант использования Part включается в вариант использования Base.

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

В данном примере вариант использования Base расширяется вариантом использования Another.

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

В данном примере вариант использования Child обобщает вариант использования Base.

Действующее лицо (actor)

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

Действующие лица представляют не физических людей или системы, а их роли. Эти означает, что когда человек взаимодействует с системой различными способами (предполагая различные роли), он отображается несколькими действующими лицами. Например, человек, работающий в службе поддержки и принимающий от клиентов заказы, будет отображаться в системе как «участник отдела поддержки» и «участник отдела продаж».

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

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

Описания вариантов использования являются текстовыми пояснениями. Они обычно принимают форму заметки или документа, который каким-то образом прикрепляется к варианту использования и описывает процесс или активность.

Источник

Основы UML — диаграммы использования (use-case)

Это первая статья из цикла про методологию ICONIX, посвящена UML-диаграммам вариантов использования. В публикациях и книгах по ICONIX, use-case диаграммы обычно описываются очень бегло, а в книгах по UML — слишком подробно. Я постараюсь сделать это настолько подробно, чтобы можно было приступить к использованию диаграмм, но при этом не было скучно. Важно, что до тех пор, до знакомства с ICONIX я не считал use-case диаграммы хоть сколько-нибудь полезными, поэтому в статье я попробую сконцентрироваться на том, что они могут принести проекту.

Вне зависимости от методологии разработки, которую вы применяете, первым этапом разработки будет являться формулировка требований к продукту (Градди Буч описывает Rational Unified Process [1], а Розенберг — ICONIX [2]). Набор требований к продукту представляет собой техническое задание, при этом требования делятся на функциональные (то, что система позволяет сделать, желаемая функциональность) и нефункциональные (требования к оборудованию, операционной системе и т.п.). В языке UML для формализации функциональных требований применяются диаграммы использования.

Диаграмму вариантов использования есть смысл строить во время изучения технического задания, она состоит из графической диаграммы, описывающей действующие лица и прецеденты, а также спецификации, представляющего собой текстовое описание конкретных последовательностей действий (потока событий), которые выполняет пользователь при работе с системой. Спецификация затем станет основой для тестирования и документации, а на следующих этапах проектирования она дополняется и оформляется в виде диаграммы (в рамках ICONIX используется диаграмма последовательности, но в UML для этого имеются также диаграммы деятельности). Кроме того, use-case диаграмма достаточно проста, чтобы ее мог понять заказчик, следовательно вы можете использовать ее для согласования ТЗ (ведь диаграмма описывает функциональные требования к системе).

На диаграмме использования изображаются:

На мой взгляд, наиболее правильный порядок построения диаграммы следующий:

Сценарии являются очень важной частью диаграмм использования, хотя их формат и не регламентирован. Ряд авторов предлагает использовать псевдокод для представления сценария и даже сразу строить диаграммы деятельности или взаимодействия, но на мой взгляд, наиболее предпочтительным вариантом на этапе построения use-case диаграмм является текстовый, описывающий систему с точки зрения пользователя (т.к. именно этот формат будет наиболее понятен заказчику, с которым вам предстоит согласовывать техническое задание).

Рассмотрим разработку диаграмм вариантов использования на примере — пусть заказчик дал нам следующее техническое задание:

Цель — развитие у детей математических навыков.
Платформа: Linux, Windows, Android.
Функциональность:

При первом запуске система должна позволять ввести пароль учителя. Задания представляют собой математические задачи на сложение, вычитание, умножение и деление. В блоке задач могут быть задачи различных типов (указывается количество). Помимо ввода типа выполняемой в примере операции необходимо указывать допустимые диапазоны чисел (или даже отдельные числа, т.к. при изучении таблицы умножения часто сначала учат умножение на 2, затем на 5, а только потом все остальное). Кроме того, для операции вычитания необходимо иметь возможность установить вычитаемое меньше уменьшаемого (т.к. в противном случае результат будет отрицательным, а отрицательные числа в школе проходят гораздо позже).

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

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использованияПример диаграммы использования

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

Название прецедента: регистрация ученика

Действующее лицо: учитель

Цель: добавить ученика в систему, получив его пароль

Предусловия: учитель осуществил вход в систему

Главная последовательность:

Альтернативная последовательность (возврат в главное меню без добавления ученика):

Альтернативная последовательность (добавление ученика, уже имеющегося в системе):

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

Несмотря на простоту приведенного сценария, в его последовательностях можно найти дублирование, если оно имеет место в ваших сценариях — вы можете выделить некоторые фрагменты описания в отдельные прецеденты (которые могут быть как самостоятельными, так и являться лишь частью других вариантов использования). При этом между прецедентами появится либо отношение расширения (extend), либо включения (include), которые отображаются на диаграммах (в UML также существует отношение обобщения, а в OML — вызова и предшествования).

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

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использованияОтношение включения на диаграмме использования

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

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использованияОтношение расширения на диаграмме использования

Таким образом можно показать, что у учителя появляется возможность (но не обязанность) удалить набор задач при просмотре отчетов если все ученики выполнили этот набор.

На последней диаграмме используется символ комментария для задания условий расширения, при этом комментарий связывается пунктирной линией с отношением расширения, т.к. относится к нему. В ряде публикаций по UML и ICONIX предлагается описывать с помощью комментариев на диаграмме прецедентов:

Наиболее типичными ошибками при построении этого вида диаграмм являются:

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

Стоит отметить, что нет единого мнения по поводу использования в текстах сценария условных операторов или циклов. Ряд аналитиков считают, что наличие слов типа «если» в сценарии является ошибкой, которая исправляется добавлением альтернативной последовательности. Другие — допускают использование 1-2 ветвлений в сценарии, при этом отмечают, что такой подход улучшает читабельность сценариев.

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

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

Источник

Проектирование программного обеспечения

Диаграмма вариантов использования (use case diagram)

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

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

Диаграмма классов (class diagram)

Диаграмма классов служит для представления статической структуры модели системы в терминологии классов объектно-ориентированного программирования. Диаграмма классов может отражать, в частности, различные взаимосвязи между отдельными сущностями предметной области, такими как объекты и подсистемы, а также описывает их внутреннюю структуру (поля, методы…) и типы отношений (наследование, реализация интерфейсов … ). На данной диаграмме не указывается информация о временных аспектах функционирования системы. С этой точки зрения диаграмма классов является дальнейшим развитием концептуальной модели проектируемой системы. На этом этапе принципиально знание ООП подхода и паттернов проектирования.

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

Диаграмма состояний (statechart diagram)

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

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

Диаграмма последовательности (sequence diagram)

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

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

Диаграмма кооперации (collaboration diagram)

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

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

Диаграмма компонентов (component diagram)

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

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

Диаграмма развертывания (deployment diagram)

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

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования

На этом закончим обзорный экскурс по диаграммам в частности и проектированию в общем. Стоит отметить, что процесс проектирования уже давно стал стандартом разработки ПО, но часто приходится сталкиваться с великолепно написанной программой, которая из за отсутствия нормальной документации обрастает ненужным побочным функционалом, костылями, становится громоздкой и теряет былое качество. =(

Я убежден, что программист в первую очередь это кодер – он НЕ должен общаться с заказчиком, НЕ должен задумываться об архитектуре системы, не должен изобретать интерфейс к программе, он только должен кодировать – реализовывать алгоритмы, функционал, внешний вид, юзабилити, но не более…. Проектировщик же должен начиная от абстрактных диаграмм (описывающих предметную область) до диаграмм представляющих структуру данных, классов и процессов их взаимодействия, детально шаг за шагом все расписать. То есть сложность работы и зарплата проектировщика должна быть на порядок выше чем у программиста == кодера. Простите за крамолу.

Источник

7) Диаграмма вариантов использования UML

Что такое диаграмма вариантов использования?

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

В этом уроке UML Diagram вы узнаете больше о:

Зачем нужна схема использования?

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

Обозначения диаграмм вариантов использования

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

Использование регистра:

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

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования UML UseCase Нотация

Актер:

Он используется внутри диаграмм вариантов использования. Актер — это сущность, которая взаимодействует с системой. Пользователь — лучший пример актера. Актер — это сущность, которая инициирует вариант использования вне области использования. Это может быть любой элемент, который может инициировать взаимодействие со случаем использования. Один субъект может быть связан с несколькими вариантами использования в системе. Обозначение актера в UML приведено ниже.

Как нарисовать диаграмму вариантов использования?

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

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

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

Следующие правила должны соблюдаться при рисовании сценария использования для любой системы:

Советы по составлению схемы использования

Пример диаграммы варианта использования

Следующая схема использования представляет работу системы управления студентами:

Что такое диаграмма вариантов использования. Смотреть фото Что такое диаграмма вариантов использования. Смотреть картинку Что такое диаграмма вариантов использования. Картинка про Что такое диаграмма вариантов использования. Фото Что такое диаграмма вариантов использования UML UseCase Diagram

На приведенной выше диаграмме сценариев использования есть два актера: ученик и учитель. Всего существует пять вариантов использования, которые представляют специфическую функциональность системы управления студентами. Каждый актер взаимодействует с конкретным вариантом использования. Студент-актер может проверить посещаемость, расписание, а также тестовые отметки в приложении или системе. Этот субъект может выполнять только эти взаимодействия с системой, даже если в системе остаются другие варианты использования.

Не обязательно, чтобы каждый актер взаимодействовал со всеми вариантами использования, но это может произойти.

Второй актер по имени учитель может взаимодействовать со всеми функциями или вариантами использования системы. Этот актер также может обновлять посещаемость ученика и оценки ученика. Эти взаимодействия как студента, так и актера-учителя вместе подводят итог всего приложения управления студентами.

Когда использовать диаграмму прецедентов?

Вариант использования — это уникальная функциональность системы, которую выполняет пользователь. Цель диаграммы вариантов использования состоит в том, чтобы охватить основные функциональные возможности системы и визуализировать взаимодействия различных вещей, называемых субъектами варианта использования. Это общее использование диаграммы вариантов использования.

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

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

В общем случае сценарии использования используются для:

Варианты использования предназначены для передачи желаемой функциональности, поэтому точная область применения может варьироваться в зависимости от системы и цели создания модели UML.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *