![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Краткие теоретические сведения. Диаграммы вариантов использования описывают функциональное назначение системы или то, что система должна делать в процессе своего функционирования.
Диаграммы вариантов использования описывают функциональное назначение системы или то, что система должна делать в процессе своего функционирования. Диаграмма вариантов использования (use case diagram) — диаграмма, на которой изображаются отношения между актерами и вариантами использования. Создание диаграммы вариантов использования имеет следующие цели: - определить общие границы и контекст моделируемой предметной области на начальных этапах проектирования системы; - сформулировать общие требования к функциональному поведению системы; - разработать исходную концептуальную модель системы для ее последующей детализации в форме логических и физических моделей; - подготовить исходную документацию для взаимодействия разработчиков системы с ее заказчиками и пользователями. Назначение диаграммы: проектируемая программная система представляется в форме вариантов использования, с которыми взаимодействуют внешние сущности или актеры. Диаграмма вариантов использования представляет собой граф специального вида, который является графической нотацией для представления конкретных вариантов использования, актеров и отношений между этими элементами. Базовыми элементами диаграммы вариантов использования являются вариант использования и актер. Вариант использования (use case) — внешняя спецификация последовательности действий, которые система или другая сущность могут выполнять в процессе взаимодействия с актерами. Вариант использования представляет собой спецификацию общих особенностей поведения или функционирования моделируемой системы без рассмотрения внутренней структуры этой системы. Каждый вариант использования определяет последовательность действий, которые должны быть выполнены проектируемой системой при взаимодействии ее с соответствующим актером, сами эти действия не изображаются на рассматриваемой диаграмме. Содержание варианта использования может быть представлено в форме дополнительного пояснительного текста, который раскрывает смысл или семантику действий при выполнении данного варианта использования. Такой пояснительный текст получил название текста-сценария или просто сценария. Вариант использования обозначается на диаграмме эллипсом, внутри которого содержится его имя в форме существительного (рис. 2, а) или глагола (рис. 2, б) с пояснительными словами. Сам текст имени должен начинаться с заглавной буквы.
Рис. 2 Графическое обозначение варианта использования
Каждый вариант использования соответствует отдельному сервису, который предоставляет моделируемая система по запросу актера, т. е. определяет один из способов применения системы. Сервис, который инициализируется по запросу актера, должен представлять собой законченную последовательность действий (после того как система закончит обработку запроса актера, она должна возвратиться в исходное состояние, в котором снова готова к выполнению следующих запросов). Диаграмма вариантов использования содержит конечное множество вариантов использования, которые в целом должны определять все возможные стороны ожидаемого поведения системы. Для удобства множество вариантов использования может рассматриваться как отдельный пакет. Актер (actor) — согласованное множество ролей, которые играют внешние сущности по отношению к вариантам использования при взаимодействии с ними. Актер представляет собой любую внешнюю по отношению к моделируемой системе сущность, которая взаимодействует с системой и использует ее функциональные возможности для достижения определенных целей или решения задач. Каждый актер может рассматриваться как некая отдельная роль относительно конкретного варианта использования. Стандартным графическим обозначением актера на диаграммах является фигурка " человечка", под которой записывается имя актера (рис. 3).
В некоторых случаях актер может обозначаться в виде прямоугольника класса со стереотипом < < actor> > и обычными составляющими элементами класса. Имена актеров должны начинаться с заглавной буквы и следовать рекомендациям использования имен для типов и классов модели. При этом символ отдельного актера связывает соответствующее описание актера с конкретным именем. Актеры используются для моделирования внешних по отношению к проектируемой системе сущностей, которые взаимодействуют с системой. В качестве актеров могут выступать другие системы, в том числе подсистемы проектируемой системы или ее отдельные классы. Наиболее наглядный пример актера — конкретный посетитель web-сайта в Интернет со своими параметрами аутентификации. Актеры взаимодействуют с системой посредством передачи и приема сообщений от вариантов использования. Сообщение представляет собой запрос актером сервиса от системы и получение этого сервиса. Это взаимодействие может быть выражено посредством ассоциаций между отдельными актерами и вариантами использования. Кроме этого, с актерами могут быть связаны интерфейсы, которые определяют, каким образом другие элементы модели взаимодействуют с этими актерами (например, датчик, устройство считывания штрих-кода и т.д.). Интерфейс обозначается в виде маленького круга, рядом с которым записывается его имя. В качестве имени может быть существительное или строка текста. Если имя записывается на английском языке, то оно начинается с заглавной буквы I. Графический символ интерфейса соединяется с тем вариантом использования, который его поддерживает, на диаграмме двумя способами: - сплошной линией (указывает, что связанный с интерфейсом вариант использования должен реализовывать все необходимые для него сервисы); - пунктирной линией со стрелкой (означает, что вариант использования предназначен для спецификации только того сервиса, который необходим для реализации данного интерфейса). Примечание (note) предназначено для включения в модель произвольной текстовой информации, имеющей непосредственное отношение к контексту разрабатываемого проекта (комментарии разработчика - дата; ограничения - на значения отдельных связей или экземпляры сущностей; помеченные значения). Графически обозначаются прямоугольником с " загнутым" верхним правым уголком (рис. 4). Примечание может относиться к любому элементу диаграммы, в этом случае их соединяет пунктирная линия. Если примечание относится к нескольким элементам, то от него проводятся несколько линий.
Отношение (relationship) — семантическая связь между отдельными элементами модели. Между элементами диаграммы вариантов использования могут существовать различные отношения, которые описывают взаимодействие экземпляров одних актеров и вариантов использования с экземплярами других актеров и вариантов. Один актер может взаимодействовать с несколькими вариантами использования. В свою очередь один вариант использования может взаимодействовать с несколькими актерами, предоставляя для всех них свой сервис. В языке UML имеется несколько стандартных видов отношений между актерами и вариантами использования: - ассоциации (association relationship); - включения (include relationship); - расширения (extend relationship); - обобщения (generalization relationship). Общие свойства вариантов использования могут быть представлены тремя различными способами: с помощью отношений включения, расширения и обобщения. Отношение ассоциации используется при построении всех графических моделей систем. Применительно к диаграммам вариантов использования ассоциация служит для обозначения конкретной роли актера при его взаимодействии с отдельным вариантом использования. На диаграмме вариантов использования, так же как и на других диаграммах, отношение ассоциации обозначается сплошной линией между актером и вариантом использования. Эта линия может иметь некоторые дополнительные обозначения, например, имя и кратность (рис. 5).
Рис. 5 Пример графического представления отношения ассоциации между актером и вариантом использования
Отношение включения (include) — это разновидность отношения зависимости между базовым вариантом использования и его специальным случаем. Отношение включения устанавливается между двумя вариантами использования и указывает на то, что заданное поведение для одного варианта использования включается в качестве составного фрагмента в последовательность поведения другого варианта использования. Графически отношение включения обозначается в форме пунктирной линии со стрелкой, направленной от базового варианта использования к включаемому варианту использования. При этом данная линия помечается стереотипом < < include> >, как показано на рис. 6.
Рис. 6. Пример графического изображения отношения включения между вариантами использования
Отношение включения, направленное от варианта использования " Предоставление кредита в банке" к варианту использования " Проверка платежеспособности клиента", указывает на то, что каждый экземпляр первого варианта использования всегда включает в себя функциональное поведение или выполнение второго варианта использования. В этом смысле поведение второго варианта использования является частью поведения первого варианта использования на данной диаграмме. Один вариант использования может входить в несколько других вариантов, а также содержать в себе другие варианты. Включаемый вариант использования является независимым от базового варианта в том смысле, что он предоставляет последнему инкапсулированное поведение, детали реализации которого скрыты от последнего и могут быть легко перераспределены между несколькими включаемыми вариантами использования. Базовый вариант зависит только от результатов выполнения включаемого в него варианта использования, но не от структуры включаемых в него вариантов. Отношение расширения (extend) определяет взаимосвязь базового варианта использования с другим вариантом использования, функциональное поведение которого задействуется базовым не всегда, а только при выполнении дополнительных условий. Графически обозначается в форме пунктирной линии со стрелкой, направленной от того варианта использования, который является расширением для базового варианта использования. Данная линия со стрелкой должна быть помечена стереотипом < < extend> >, как показано на рис. 7.
В изображенном фрагменте имеет место отношение расширения между базовым вариантом использования " Предоставление кредита в банке" и вариантом использования " Предоставление налоговых льгот". Это означает, что свойства поведения первого варианта использования в некоторых случаях могут быть дополнены функциональностью второго варианта использования. Для того чтобы это расширение имело место, должно быть выполнено определенное логическое условие данного отношения расширения. Если базовый вариант использования выполняет некоторую последовательность действий, которая определяет его поведение, и при этом имеется точка расширения на экземпляр другого варианта использования, то проверяется логическое условие данного отношения. Если это условие выполняется, исходная последовательность действий расширяется посредством включения действий другого варианта использования. Условие отношения расширения проверяется один раз — при первой ссылке на точку расширения, и если оно выполняется, то все расширяющие варианты использования вставляются в базовый вариант. Отношение обобщения используется тогда, когда два и более актера могут иметь общие свойства, т. е. взаимодействовать с одним и тем же множеством вариантов использования одинаковым образом. Такая общность свойств и поведения представляется в виде отношения обобщения с другим актером, который моделирует соответствующую общность ролей. Графически обозначается сплошной линией со стрелкой в форме не закрашенного треугольника, которая указывает на родительский вариант использования (рис. 8). Эта линия со стрелкой имеет специальное название — стрелка-обобщение.
Рис. 8. Пример графического изображения отношения обобщения между вариантами использования
В данном примере отношение обобщения указывает на то, что вариант использования " Предоставление кредита корпоративным клиентам" - специальный случай варианта использования " Предоставление кредита клиентам банка". Другими словами, первый вариант использования является специализацией второго варианта использования. Вариант использования " Предоставление кредита клиентам банка" еще называют предком или родителем по отношению к варианту использования " Предоставление кредита корпоративным клиентам", а последний - потомком по отношению к первому варианту использования. Потомок наследует все свойства поведения своего родителя, а также может обладать дополнительными особенностями поведения. Отношение обобщения между вариантами использования применяется в том случае, когда необходимо отметить, что дочерние варианты использования обладают всеми особенностями поведения родительских вариантов и участвуют во всех отношениях родительских вариантов. Язык UML включает в себя еще и дополнительные графические обозначения, ориентированные для решения задач из определенной предметной области. Примеры подобных обозначений, которые используются для моделирования бизнес-систем и могут быть изображены на диаграммах вариантов использования: бизнес-актер, сотрудник и бизнес - вариант использования.
Применение этих элементов графической нотации иллюстрирует пример представления диаграмм вариантов использования для системы продажи товаров в супермаркете. Одно из главных назначений диаграммы вариантов использования заключается в формализации функциональных требований к системе. Общее количество актеров в модели не должно превышать 20, а вариантов использования -50, в противном случае модель теряет свою наглядность. Для разработки диаграммы вариантов использования рекомендуется некоторая последовательность действий: - определить главных и второстепенных актеров; - определить цели главных актеров по отношению к системе; - сформулировать основные варианты использования, которые специфицируют функциональные требования к системе; - упорядочить варианты использования по степени убывания риска их реализации; - рассмотреть все базовые варианты использования в порядке убывания их степени риска; - выделить участников, интересы, условия выполнения выбранного варианта использования; - написать сценарий реализации выбранного варианта использования; - определить исключения в выполнении сценария варианта использования; - написать сценарии для всех исключений; - выделить общие варианты использования и изобразить их взаимосвязи с базовыми со стереотипом < < include> >; - выделить варианты использования для исключений и изобразить их взаимосвязи с базовыми со стереотипом < < extend> >; - проверить диаграмму на отсутствие дублирования вариантов использования и актеров. Пример: Программное средство представляет собой базу данных «Автоматизация процесса составления расписания в учебном заведении». Программное средство обеспечивает корректировку данных, а именно в БД «Группы» может изменяться перечень предметов в соответствие с курсом группы и отделением; в БД «Предметы» могут изменяться номера аудиторий и фамилии преподавателей; осуществляет поиск по ФИО преподавателя, номеру аудитории, названию предмета и номеру группы. Программное средство составляет расписание работы для конкретного преподавателя на неделю; для группы на неделю; для группы по конкретному предмету, а также отчет о загрузке аудиторий на каждый день.
Рис. 10. Пример диаграммы вариантов использования
|