Page 23 - 4190
P. 23
звичай зв’язок матеріалізується за допомогою додаткових атрибутів
даних або навіть структур даних.
Будемо розрізняти статичні, сталі зв’язки, котрі не змінюються
або змінюються досить рідко (наприклад, чоловік - дружина, батько -
син, фірма - адреса) та динамічні зв’язки, які мають певні стани, що
можуть змінюватися протягом робочого сеансу системи.
Статичні зв’язки реалізуються шляхом додавання спеціальних
атрибутів для об’єктів, котрі беруть участь у зв’язку. Беручи до уваги,
що переважною моделлю подання даних на сьогодні є реляційна мо-
дель, в якій не дозволяється мати множинні (повторювані) значення
атрибутів, згадане додавання виконується за такими правилами:
при зв’язку,, один до дного” додатковий атрибут може визнача-
тися для одного будь-якого з пов’язаних об’єктів і містити ідентифі-
катор екземпляра, який бере участь у зв’язку. Наприклад, якщо мова
йде про паркування автомобілів у боксах гаража, то ідентифікатор
бокса може вказуватися як атрибут автомобіля, при цьому ідентифі-
катор автомобіля не буде належати до атрибутів бокса; можливий і
варіант навпаки, коли додатковий атрибут для подання зв’язку нада-
ється боксу;
при зв’язку,, один до багатьох N ” додатковий атрибут нада-
ється об’єкту, N екземплярів якого можуть брати участь у зв’язку.
Наприклад, якщо працівник має кілька станків, то такий зв’язок є
шляхом надання об’єкту "станок" додаткового атрибута "власник";
при зв’язку,, один до декілька” утворюється додатковий об’єкт,
так званий асоціативний об’єкт, який фіксує два екземпляри (по од-
ному для кожного з об’єктів), котрі беруть участь у зв’язку. Такий
об’єкт, окрім своєї назви, має першим атрибутом ідентифікатор пер-
шого з пов’язаних екземплярів об’єктів, а другим атрибутом - іденти-
фікатор екземпляра другого.
Приклади зображення зв’язків а, б, в наведено на рис. 3.1.
Для певних завдань зв’язки між об’єктами можуть еволюціонува-
ти із часом, і фаза еволюції може суттєво впливати на хід виконання
відповідного завдання. Для таких видів зв’язку обов’язково будується
асоціативний об’єкт, для якого визначається модель станів. Для по-
дання стану асоціативного об’єкта до складу його атрибутів додаєть-
ся атрибут, який фіксує його поточний стан. Нехай для прикладу на
рис..1, в замовлення може перебувати в станах: "отримано", "готуєть-
ся", "чекає розрахунку", "сплачено", "готове" тощо, тоді до атрибутів
асоціативного об’єкта додається, крім зазначених на рис. 1., в, ще й
23