Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шаврин С.М. Моделирование и проектирование ИС.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.47 Mб
Скачать

Ассоциации

Ассоциации используются для связывания понятий между собой. В подавляющем большинстве случаев диаграмма понятий представляет собой граф, вершинами которого являются понятия, а дугами – ассоциации (рис. 47). Повторим определение ассоциации.

Рис. 47. Пример ассоциации

Определение. Ассоциация – это устойчивое структурное отношение между сущностями (в данном случае ­­– понятиями).

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

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

Таблица 2. Стандартные категории ассоциаций

Категория ассоциации

Пример

А является физической частью В

Крыло – Самолет

А является логической частью В

Товарная позиция – Продажа

А физически содержится в/на В

Товар – Полка, Пассажир – Самолет

А логически содержится в В

Описание товара – Каталог

А является описанием В

Описание товара – Товар

А известен / зарегистрирован / записан / включен в отчет / содержится в В

Продажа – Система розничной торговли

А является членом В

Ученик – Класс, Игрок – Команда

А является организационной единицей В

Отдел – Магазин

А использует или управляет В

Кассир – Система розничной торговли, Пилот – Самолет

А взаимодействует с В

Покупатель – Кассир

А связан с транзакцией В

Покупатель – Платеж

А является транзакцией, которая связана с другой транзакцией В

Платеж – Продажа

А следует за В

Остановка – Остановка

А является собственностью В

Самолет – Авиакомпания, Система розничной торговли – Магазин

Из приведенного выше списка особую важность имеют следующие категории ассоциаций:

  • A является физической или логической частью B;

  • A физически или логически содержится в B;

  • A записан в B.

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

Рис. 48. Именование ассоциаций

Роли

Каждый конец ассоциации называется ролью. Роль имеет две базовые характеристики: имя и кратность. Имя определяет название роли, в которой выступает понятие в данной ассоциации. Если имя роли не указано, то считается, что оно совпадает с именем понятия. В примере на рис. 49 человек, выступая в роли классного руководителя, руководит классом. Данную ассоциацию следует читать следующим образом: «Классный руководитель руководит классом». Аналогичным образом читается и вторая ассоциация.

Рис. 49. Роли ассоциации

Кратность роли определяет, сколько экземпляров понятия, соответствующего данной роли, может быть одновременно связано с одним экземпляром понятия, соответствующего противоположной роли. Из примера на рис. 45 следует, что классом одновременно может руководить только один руководитель, но учиться в нем могут сразу несколько учеников (символ «*» означает «много»). Кратность роли может задаваться числом, промежутком (пример: 3..5), перечислением (пример: 2,5,7) или произвольной комбинацией указанных способов.

При поиске ассоциаций следует придерживаться следующих рекомендаций:

  1. Гораздо важнее идентифицировать понятия, чем ассоциации.

  2. Изучение ассоциаций не должно отнимать слишком много времени, но должно приносить максимальный эффект.

  3. Избегайте использования избыточных ассоциаций.