Резюме

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

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

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

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

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

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

Глава 5. Изучение взаимодействия объектов

Реализация прецедентов

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

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

Каждый прецедент — это сплетение первичных (нормальный поток для прецедента) и вторичных сценариев (логика ЧТО-ЕСЛИ в прецеденте). Это значит, что существует множество сценариев для системы — первичные и вторичные сценарии для всех прецедентов. На этапе анализа уже можно сказать, что определение первичного сценария для каждого выбранного прецедента будет достаточным. Когда вы обнаружите, что каждый новый сценарий повторяет большинство шагов из предыдущего, то вы добились цели. Данная фаза анализа должна завершаться по мере того, как разработчики продумают приблизительно 80 % первичных сценариев и выборочно коснутся вторичных. Если проработать больше сценариев, результаты анализа, вероятно, окажутся хуже; если меньше — не будет достаточного понимания поведения системы, чтобы правильно оценить риски.

По методологии Rational Unified Process реализации прецедентов (use case realizations) отражаются в логическом представлении модели. Обратимся к концепции стереотипов, чтобы показать, что прецеденты, созданные в логическом представлении, являются реализациями прецедентов из представления use case. Другими словами, прецеденты в логическом представлении имеют те же имена, что и в представлении use case, а также стереотип, указывающий на реализацию. В языке UML реализация прецедентов изображается в виде пунктирного овала (см. рис. 5.1). Логическое представление прецедентов обычно отображается на диаграмме прецедентов (или наборе диаграмм), содержащейся в логическом представлении модели.

Рис. 5.1. Нотация языка UML для реализации прецедента

Создание диаграммы прецедентов в логическом представлении модели в программе Rational Rose состоит из следующих шагов:

1. Щелкните правой кнопкой мыши по папке Logical View (Логическое представление) в окне браузера.

2. В появившемся контекстно-зависимом меню выберите команду New => Use Case (Создать => Прецедент). В раздел логического представления модели будет добавлена новая диаграмма прецедентов с названием New Diagram.

3. Введите для новой диаграммы название Realizations.

Окно браузера с диаграммой прецедентов Realizations показано на рис. 5.2.

Рис. 5.2. Окно браузера с диаграммой реализаций прецедентов

Последовательность создания реализаций прецедентов в программе Rational Rose:

1. Дважды щелкните по диаграмме прецедентов Realizations в списке браузера, чтобы открыть диаграмму.

2. Щелкните по кнопке Use Case (Прецедент) на панели инструментов.

3. Щелкните по диаграмме прецедентов. В диаграмму и список браузера будет добавлен новый прецедент.

4. Дважды щелкните по изображению прецедента. На экране появится диалоговое окно Use Case Specification (Параметры прецедента).

5. Введите название прецедента (такое же, как у модели) в поле ввода Name (Имя). Заметьте, что вы должны указать название в диалоговом окне параметров прецедента или в браузере, чтобы сообщить программе Rational Rose об использовании другого пространства имен (namespace). Если вы введете название прецедента непосредственно на диаграмме, программа Rational Rose будет считать, что это тот же прецедент, что и в представлении use case.

6. В открывающемся списке Stereotype (Стереотип) выберите стереотип use-case realization.

7. Щелкните по кнопке ОК, чтобы закрыть диалоговое окно.

Диаграмма прецедентов Realizations показана на рис. 5.3.

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

На рис. 5.4 показана связь реализаций с представлением прецедентов на диаграмме функций Realizations.

Рис. 5.3. Диаграмма реализаций прецедентов

Рис. 5.4. Связь реализаций с представлением прецедентов

Документирование сценариев

Поток событий для прецедента описывается словами, тогда как сценарии отображаются с помощью

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

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

Отметить Добавить цитату