Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
проект ис / Методичка по КИС.docx
Скачиваний:
158
Добавлен:
12.04.2015
Размер:
621.04 Кб
Скачать

Лабораторная работа №2. Диаграммы прецедентов (Use-Case diagram)

Общее описание

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

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

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

Результат прецедента должен быть полезен исполнителю, инициировавшему этот прецедент, либо какому-то другому исполнителю.

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

Лучший способ определения прецедентов - это опрос. При этом, важно выявить предусловия для инициализации прецедента и постусловия, реализуемые в результате выполнения прецедента.

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

Представление модели прецедентов:

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

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

Исполнители, прецеденты и соединительные линии образуют модель прецедентов.

рис.3.10.

Построение в PowerDesigner

Рассмотрим построение прецедентов на примере модели автомата по продаже карт экспресс - оплаты:

Создайте диаграмму Use-Case.

Далее создайте 3 прецедента, используя инструмент Use-Case.Чтобы "сбросить" выбранный инструмент, выберите другой инструмент или нажмите на правую кнопку мыши. Чтобы изменить имя прецедента и другие свойства, нажмите два раза левой кнопкой мыши на объект. В открывшемся окне, в полеNameвведите Покупка карты, а в полеCodeвведите название объекта, которое затем будет использоваться в программном коде (BuyCard). Остальныеuse-caseпереименуйте в соответствии с таблицей 1:

Case_1

Покупка карты

BuyCard

Case_2

Заправка автомата

Refuelling

Case_3

Сбор денег

GetMoney

Создайте 6 исполнителей, нажав на кнопку actor. Переименуйте объекты в соответствии с таблицей 2:

Actor_1

Покупатель

Customer

Actor_2

Покупатель

Customer

Actor_3

Специалист по заправке

Refueller

Actor_4

Специалист по заправке

Refueller

Actor_5

Инкассатор

Collector

Actor_6

Инкассатор

Collector

Создадим взаимосвязи между объектами. Взаимосвязи могут идти в двух направлениях:

  • От исполнителя к прецеденту (Связь Primaryactor)

  • От прецедента к исполнителю (Связь Secondaryactor)

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

рис.3.11.

Чтобы повторно использовать шаги одного прецедента в другом, применяется включение.В нашем примере тоже можно использовать включение. Рассмотримuse-caseЗаправка автомата и Сбор денег. Они оба начинаются с разблокирования и открытия автомата и заканчиваются закрытием и блокировкой. Прецедент Проникновение внутрь включает первые два шага, а Выход наружу - два остальных. Прецеденты Заправка автомата и Сбор денег включают в себя прецеденты Проникновение внутрь и Выход наружу. Графически включение обозначается в виде соединительной пунктирной линии со стрелкой, указывающей на тот класс, от которого зависит другой (вPowerDesignerиспользуется инструментDependency). В свойствах данного объекта необходимо в полеStereotype указать слово <<включает>>. Модель прецедентов с включением должна выглядеть следующим образом:

рис.3.12.

Можно расширить исходный (базовый) прецедент за счет добавления новых шагов. Данный тип взаимоотношений называется расширением. Расширение может происходить только на заданных точках последовательности шагов базового прецедента. Такие места называются точками расширения. Подобно включению, расширение отображается линией зависимости (пунктир со стрелкой) со стереотипом1<<расширяет>> (инструментDependency). Расширим прецедент "Заправка автомата": в отличие от равномерного пополнения запасов всех сортов сиропа, этот прецедент позволяет пополнять автомат с учетом спроса. Диаграмма выглядит следующим образом:

рис.3.13.

Задание для самостоятельной работы

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

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

Соседние файлы в папке проект ис