Типи зв'язків між функціями
Одним з важливих моментів при проектуванні ІС за допомогою методології SADT є точна узгодженість типів зв'язків між функціями. Розрізняють принайми сім типів скріплення:
-
Тип зв'язку
Випадкова
Логічна
Тімчасова
Процедурна
Комунікаційна
Послідовна
Функціональна
(0) Тип випадкової зв'язності: найменш бажаний.
Випадкова зв'язність виникає, коли конкретний зв'язок між функціями малий або повністю відсутній. Це відноситься до ситуації, коли імена даних на SADT-дугах в одній діаграмі мають малий зв'язок один з одним. Крайній варіант цього випадку показаний на малюнку 8.
Мал. 8. Випадкова зв'язність
(1) Тип логічної зв'язності. Логічне скріплення відбувається тоді, коли дані і функції збираються разом унаслідок того, що сморід потрапляють в загальний клас або набір елементів, але необхідних функціональних відносин між ними не виявляється.
(2) Тип тимчасової зв'язності. Зв'язані за годиною елементи виникають унаслідок того, що представляють функції, зв'язані в часі, коли дані використовуються одночасно або функції включаються паралельно, а не послідовно.
(3) Тип процедурної зв'язності. Процедурно-зв'язані елементи з'являються згрупованими разом унаслідок того, що вони виконуються протягом однієї і тієї ж частини циклу або процесу. Приклад процедурно-зв'язаної діаграми приведений на мал.9.
Мал.9. Процедурна зв'язність
(4) Тип комунікаційної зв'язності. Діаграми демонструють комунікаційні зв'язки, коли блоки групуються унаслідок того, що використовують одні і ті ж вхідні дані і/або проводять одні і ті ж вихідні дані (мал.10).
Мал.10. Комунікаційна зв'язність
(5) Тип послідовної зв'язності. На діаграмах, що мають послідовні зв'язки, вихід однієї функції служить вхідними даними для наступної функції. Зв'язок між елементами на діаграмі є тіснішим, ніж на розглянутих вище рівнях зв'язок, оскільки моделюються причинно-наслідкові залежності (мал.11).
Мал.11. Послідовна зв'язність
(6) Тип функціональної зв'язності. Діаграма відображає повну функціональну зв'язність, за наявності повної залежності однієї функції від іншої. Діаграма, яка є чисто функціональною, не містить чужорідних елементів, що відносяться до послідовного або слабкішому типу зв'язності. Одним із способів визначення функціонально-зв'язаних діаграм є розгляд двох блоків, зв'язаних через дуги, що управляють, як показано на мал. 12.
Мал.12. Функціональна зв'язність
У математичних термінах необхідна умова для простого типу функціональної зв'язності, показаної на мал. 12, має наступний вигляд:
C = g(B)= g(f(A))
Нижче в таблиці представлені всі типи зв'язків, розглянуті вище. Важливо відзначити, що рівні 4-6 встановлюють типи связностей, які розробники вважають найважливішими для отримання діаграм хорошої якості.
Значи мість |
Тип зв'язності |
Для функцій |
Для даних |
0 |
Віпадкова |
Віпадкова |
Віпадкова |
1 |
Логічна |
Функції однієї і тієї ж множини або типу (наприклад, "редагувати всі входь") |
Дані однієї і тієї ж множини або типу |
2 |
Тімчасова |
Функції одного і того ж періоду часу (наприклад, "операції ініціалізації") |
Дані, використовувані в якому-небудь тимчасовому інтервалі |
3 |
Процедурна |
Функції, що працюють в одній і тій же фазі або ітерації (наприклад, "перший прохід компілятора") |
Дані, використовувані під година однієї і тієї ж фази або ітерації |
4 |
Комуникаційна |
Функції, що використовують одні і ті ж дані |
Дані, на які впливає одна і та ж діяльність |
5 |
Послідовна |
Функції, що виконують послідовні перетворення одних і тихий же даних |
Дані, що перетворюються послідовними функціями |
6 |
Функціональна |
Функції, що об'єднуються для виконання однієї функції |
Дані, пов'язані з однією функцією |
Питання: