Ассоциация, Бинарная ассоциация - Объектно-ориентированный подход и диаграммы классов в UML
Ассоциация определяет некоторую связь между классами. Когда в системе будут созданы представители ассоциированных классов, они будут связаны так, как определяет рассматриваемая ассоциация.
В UML одна ассоциация может специфицировать связь между несколькими (возможно, более чем двумя) классами. Такие ассоциации называются N-арными. Мы рассмотрим самый распространенный случай - бинарную ассоциацию.
Бинарная ассоциация
Бинарная ассоциация (binary association) - это ассоциация между ровно двумя классами. Возможна ассоциация класса с самим собой, которая называется рефлексивной ассоциацией.
Изображается ассоциация в виде сплошной ломаной линии, соединяющей два символа класса.
Конец ассоциации (т. е. место ее присоединения к классу) называется ролью (association role). Большая часть информации, касающейся ассоциации, присоединена к ее ролям.
На линии (рядом с линией), изображающей ассоциацию, могут быть следующие пометки:
- - - определяет необязательное имя ассоциации; - - класс, уточняющий свойства данной ассоциации (соединяется с линией ассоциации пунктирной линией).
Роль
Роль (association role) - это неотделимая часть ассоциации, описывающая некоторые свойства ее "соединения" с классом (роль класса в данной ассоциации).
У роли могут быть следующие свойства:
Имя роли - строка, стоящая рядом с концом ассоциации. Поле не обязательное, но если имя задано, оно должно отображаться на диаграмме;
Множественность (multiplicity) - количество представителей (конкретных объектов), которые могут быть связаны с одним партнером ассоциации;
Упорядочение - если множественность больше одного, то множество связанных объектов может быть упорядочено. Варианты:
Unordered - неупорядочено (по умолчанию);
Ordered - упорядочено (задан линейный порядок) задается пометкой {ordered};
Квалификатор (qualifier) - список атрибутов класса c противоположного конца ассоциации, по значениям которых можно однозначно разбить множество его объектов на подмножества. Используется для связи объекта класса-партнера ассоциации с группой объектов другого класса-партнера ассоциации;
Навигация (navigability) - если в направлении, соответствующим роли, поддерживается навигация, на конце линии может быть изображена стрелка. Возможность навигации в направлении роли означает, что партнеры ассоциации могут просматривать объекты, соответствующие этой роли;
Агрегирование (aggregation) - показывает, что ассоциация является отношением типа целое/часть;
Спецификатор интерфейса - имя типа или интерфейса в следующей форме:
':' <имя>
Это свойство указывает поведение, ожидаемое от объектов ассоциированного класса. Другими словами, спецификатор интерфейса задает поведение, необходимое для удовлетворения требований ассоциации. Реальные классы, как правило, обеспечивают большую функциональность, чем требуется партнерам ассоциации. Указав интерфейс или тип партнера, можно ограничить доступ к его свойствам рамками указанного интерфейса или типа. Если спецификатор интерфейса не указан, то партнеры имеют доступ ко всей функциональности класса;
Изменяемость - если связь изменяема, то есть может быть добавлена, удалена и перемещена, то никаких дополнительных пометок не нужно. В противном случае в строке свойств могут присутствовать:
{frozen} - связи не могут добавляться, удаляться и перемещаться;
Ordered - упорядочено (задан линейный порядок) задается пометкой {ordered};
Похожие статьи
-
Класс ассоциации, Агрегирование - Объектно-ориентированный подход и диаграммы классов в UML
Такой класс является обычным классом, присоединенным пунктирной линией к ассоциации. Его имя должно совпадать с именем ассоциации. Содержащаяся в нем...
-
Операция - Объектно-ориентированный подход и диаграммы классов в UML
Операция (operation) - это сущность, определяющая некоторое действие, которое может быть выполнено представителем класса. У операции есть имя и список...
-
Утилиты, Объект - Объектно-ориентированный подход и диаграммы классов в UML
В некоторых случаях при описании классов приходится часто пользоваться некоторыми глобальными функциями и переменными. Поэтому для удобства...
-
Атрибут - Объектно-ориентированный подход и диаграммы классов в UML
Атрибут (attribute) - это инкапсулируемый элемент данных класса, т. е. элемент данных, который содержится в объекте, принадлежащем описываемому классу. У...
-
Параметризованные классы (шаблоны) - Объектно-ориентированный подход и диаграммы классов в UML
В некоторых случаях в модели необходимы классы со схожей структурой, которые отличаются некоторыми параметрами. Например, имеется описание нескольких...
-
Зависимость - Объектно-ориентированный подход и диаграммы классов в UML
В некоторых случаях два и более элемента модели могут быть семантически связаны. Например, класс A использует методы класса B. Тогда при изменении класса...
-
Стадии разработки ПО - Объектно-ориентированный подход и диаграммы классов в UML
В [4] так определяются этапы объектно-ориентированного подхода к разработке ПО: Объектно-ориентированный анализ (analysis) - способ анализа, изучающий...
-
Наследование - Объектно-ориентированный подход и диаграммы классов в UML
Наследование - это отношение типа общее-частное между элементами модели. Наследование пакетов означает, что в пакете-наследнике все сущности...
-
Заключение - Объектно-ориентированный подход и диаграммы классов в UML
В заключение скажем несколько слов о применении модели классов UML. Особое место этой модели среди других моделей UML определяется тем, что основная цель...
-
Основные принципы Первая и главная идея, лежащая в основе объектно-ориентированного подхода такова: программная система представляется в виде множества...
-
Введение - Объектно-ориентированный подход и диаграммы классов в UML
Психологи уже давно показали, что средний человек может одновременно воспринимать адекватно в пределах десятка единиц информации. Таким образом, при...
-
Каждая диаграмма состояний в UML описывает все возможные состояния одного экземпляра определенного класса и возможные последовательности его переходов из...
-
Объектно-ориентированная модель - Система управления базами данных
В объектно-ориентированной модели при представлении данных имеется возможность идентифицировать отдельные записи базы данных. Между записями и функциями...
-
Объектно - ориентированное программирование - Модульное и объектно-ориентированное программирование
Объектно-ориентированное программирование является в настоящее время наиболее популярной технологией программирования. Объектно-ориентированными языками...
-
Построение ER диаграмм - Модернизация структуры базы данных на основе анализа требований предприятия
При построении моделей информационных систем важнейшей методикой является ER-моделирование или построение диаграмм сущность-связь. Сущность представляет...
-
ER - диаграмма базы данных была представлена на рис. 2. Рис.2. ER-диаграмма базы данных. Таблица admin - содержит два столбца login и password которые...
-
Диаграмма классов, Разработка пользовательского интерфейса - Основы технологии программирования
На основе построенных диаграмм взаимодействия и переходов состояний можно построить диаграмму классов информационной системы. Рис. 5 Диаграмма классов...
-
Описание состава автоматизируемых бизнес-процессов Бизнес-процессы компании, подлежащие автоматизации, приведены в следующей таблице: Название...
-
Среда объектно-ориентированного программирования Delphi Delphi - это комбинация нескольких важнейших технологий, высокопроизводительный компилятор в...
-
ДИНАМИЧЕСКИЕ СТРУКТУРЫ ОБЪЕКТОВ - Программирование, ориентированное на объекты
Связанная организация памяти. - Ассоциативные структуры. - Списки. - Очереди. - Рекурсивные структуры. - Наборы. - Деревья. Связанная организация памяти...
-
Цель Работы - изучить приемы создания и использования шаблонов классов. - Теоретические сведения Достаточно часто встречаются классы, объекты которых...
-
Переход от концептуальной модели к объектной - База данных отеля
Элемент Концептуальной модели Элемент объектной модели Объект: БД Невизуальный класс HotelBDCore. Объект: Администратор Пользователь системы. В объектной...
-
Цель Работы - изучить одну из базовых концепций ООП, наследование классов в С++, заключающуюся в построении цепочек классов, связанных иерархически,...
-
Комплексный подход к обеспечению информационной безопасности, Основные понятия - Защита информации
Основные понятия Под информацией, применительно к задаче ее защиты понимается сведения о лицах, предметах, фактах, событиях явлениях и процессах...
-
Синтаксис объявления класса в языке С++ имеет следующий вид: Class<имя класса>: <спецификатор доступа><имя базового класса> { Элементы класса...
-
Системный подход к анализу информационной сферы предприятия Сущность системного подхода может быть определена путем обобщения его свойств и...
-
Предложенный подход к решению задач исследования Используя в качестве основы присутствующее в наличии программное обеспечение, которое применимо к...
-
Объектно-ориентированные языки - Инструментальные средства разработки экспертных систем
В главе 12 мы уже обращали ваше внимание на то, что формат правил хорошо согласуется с представлением знаний в форме "при выполнении условий СЬ ..., С"...
-
Технологии объектного связывания данных - Теоретические основы информационных технологий
Унификация взаимодействия прикладных компонентов с ядром информационных систем в виде SQL-серверов, наработанная для клиент-серверных систем, позволила...
-
Класс "HotelBDAddUser" - База данных отеля
Является визуальным классом, содержащим оконный пользовательский интерфейс (рис.11). Рис.11 Связи. 1. Связь "событие-действие" между событием "clicked"...
-
Запуск модели, Графики и диаграммы - Построение модели сердца
Щелкнув на кнопке запуска модели, после компиляции откроется окно презентации эксперимента. Запустив эксперимент, увидим структуру активного объекта:...
-
Объекты управления и их свойства - Visual Basic. Основы программирования
Объектом называется некая сущность, которая, во-первых, четко проявляет свое поведение, а во-вторых, является представителем некоторого класса подобных...
-
Даталогическое проектирование - Банки и базы данных. Системы управления базами данных
Даталогической моделью БД называется модель логического уровня, построенная в рамках конкретной СУБД, в среде которой проектируется БД. Описание...
-
Инфологическое моделирование - Банки и базы данных. Системы управления базами данных
Инфологическое проектирование является вторым этапом проектирования БД, который следует непосредственно после анализа предметной области. Эта стадия...
-
В ходе разработки программы было использовано программное обеспечение Microsoft® Windows® "Подключение к удаленному рабочему столу" для извлечения...
-
ClassBase_Korabl {:Color;:_Korabl();Prorisovka(short x, short y); } В этом листинге в производном классе был переопределен метод Prorisovka() для...
-
Все рассмотренные ранее диаграммы отражали концептуальные аспекты построения модели системы и относились к логическому уровню представления. Особенность...
-
Кибернетический подход - Проблема искусственного интеллекта
Попытки построить машины, способные к разумному поведению, в значительной мере вдохновлены идеями профессора МТИ Норберта Винера. Винер был убежден, что...
-
Электронный подход - Проблема искусственного интеллекта
Однако только после второй мировой войны появились устройства, казалось бы, подходящие для достижения заветной цели - моделирования разумного поведения;...
-
Проектирование класса - Разработка программы на языке C++, реализующей игру "Морской бой"
В данной курсовой работе были созданы следующие классы: Kletka - класс клетка: Свойства: - Pustaya_kletka - пустая или не пустая клетка, - Vistrel -...
Ассоциация, Бинарная ассоциация - Объектно-ориентированный подход и диаграммы классов в UML