Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

Теоретические сведения. Лабораторная работа

Лабораторная работа

«ПРОЕКТИРОВАНИЕ СТРУКТУРЫ

СИСТЕМЫ В ВИДЕ ДИАГРАММЫ КЛАССОВ»

Цель работы

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

Задание: спроектировать структуру информационной системы в соответствии с выбранной предметной областью в виде диаграммы классов и построить диаграммы состояний объектов сложных классов.

 

Теоретические сведения

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

Имеется два вида основных статических отношений:

ассоциации (человек может сделать покупку в магазине);

подтипы (корпоративный клиент является разновидностью клиента).

На диаграммах классов изображаются также атрибуты классов, операции классов и ограничения, которые накладываются на связи между объектами (рис.7).

Рис. 7. Элементы диаграммы классов

На рис. 8 представлен пример диаграммы классов.

Рис. 8. Пример диаграммы классов

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

В общем случае кратность указывает верхнюю и нижнюю границы количества объектов, которые могут участвовать в отношении. Часто используемые варианты кратности:

1 – означает, что в ассоциации участвует один и только один экземпляр класса, с которым связана ассоциация;

* – в ассоциации может участвовать неограниченное число экземпляров класса;

0..1 – в ассоциации участвует либо один, либо ни одного экземпляра класса;

0..N – в ассоциации участвует от 0 до N экземпляров класса.

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

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

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

Атрибуты являются элементами класса, определяющими его сущность. В синтаксисе UML описание атрибута выглядит следующим образом: <видимость><имя>:<тип>=<значение по умолчанию>. В примере на рис. 8 атрибутами являются: «Имя», «Адрес», «ЛимитКредита» и др.

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

<видимость><имя>(<список параметров>):<выражение, возвращающее значение типа>(<строка свойств>), где:

видимость – принимает одно из трех значений: «+» – общедоступная (public), «#» – защищенная (protected) либо «-» – закрытая (private);

имя – строка символов;

список параметров – содержит перечисленные через запятую параметры, которые описываются так же, как и атрибуты;

выражение, возвращающее значение типа – содержит перечисленные через запятую значения типов;

строка свойств – указывает свойства, которые имеются у данной операции.

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

Диаграмма состояний

Диаграмма состояний (state machine diagram) отражает внутренние состояния объекта в течение его жизненного цикла от момента создания до разрушения, позволяя описать поведение объекта в различных прецедентах. Обычно диаграммы состояний строятся для единственного класса, чтобы показать динамику поведения единственного объекта. На рис. 9 представлен пример диаграммы состояний.

Рис. 9. Пример диаграммы состояний

Диаграмма состояний – это конечный автомат, реализованный средствами UML. Существует несколько разновидностей диаграмм состояний, в UML принята нотация Дэвида Харела. Рассмотрим основные элементы диаграммы состояний (рис. 10).

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

входное воздействие – поведение, которое наступает при переходе объекта в данное состояние. Входное действие не прерывается и всегда выполняется до конца;

деятельность – поведение, которое реализует объект, находящийся в данном состоянии;

выходное действие – действие, которое выполняется при выходе объекта из текущего состояния.

Входные и выходные действия отображаются внутри графического элемента State под горизонтальной чертой, а друг от друга отделяются наклонной чертой «/» или двоеточием.

Рис. 10. Элементы диаграммы состояний

Переход (Transition) объекта из одного состояния в другое отображается направленной стрелкой. Синтаксис метки перехода состоит из трех частей, каждая из которых является необязательной: Событие:[Сторожевое условие]/Действие.

Событие (Event) – это некоторый факт, который инициирует переход из одного состояния в другое. События отображаются в виде поясняющей надписи около стрелки перехода.

Начальное состояние (Initial) – это состояние, в котором объект находится непосредственно после его создания. Начальное состояние – это обязательный элемент диаграммы, причем на диаграмме может быть только один такой элемент (изображается черным кружком), стрелка перехода соединяет его с первоначальным состоянием объекта.

Конечное состояние (Final) – состояние, в котором объект пребывает непосредственно перед его уничтожением. Это необязательный элемент, причем количество таких элементов на диаграмме не ограничено.

 

 

Содержание отчета

1. Цель работы.

2. Краткое описание разрабатываемой системы (в соответствии с выданным индивидуальным заданием).

3. Диаграмма классов с краткими пояснениями.

4. Диаграммы состояний с пояснениями.

5. Вывод.

 

 




Поиск по сайту:

©2015-2020 studopedya.ru Все права принадлежат авторам размещенных материалов.