2.3.1. Структурно-орієнтований підхід
2.3.1.1. Структурні методи аналізу
Структурним аналізом називають метод дослідження системи, який починається із загального огляду її і потім деталізується, набуваючи ієрархічної структури з дедалі більшим числом рівнів. Таким методам притаманне:
1) розбиття на рівні абстракції з обмеженням числа елементів на кожному з рівнів (зазвичай від 3 до 7, при цьому верхня межа відповідає можливостям людського мозку сприймати певну кількість взаємопов’язаних об’єктів, а нижня вибрана з міркувань здорового глузду);
2) обмежений контекст, що включає лише істотні на кожному рівні деталі;
3) використання суворих формальних правил запису;
4) послідовне наближення до кінцевого результату.
Методи структурного аналізу дозволяють подолати складність великих систем розчленуванням їх на частини («чорні скриньки») та ієрархічної організації цих «чорних скриньок». Це є першим принципом структурного аналізу. Перевага використання «чорних скриньок» полягає в тому, що їхньому користувачеві не потрібно знати, як вони працюють, — треба знати лише його входи й виходи, а також його призначення (тобто функцію, що її він виконує). У навколишньому світі «чорні скриньки» трапляються у великій кількості: магнітофон і телевізор на побутовому рівні, підприємство з позицій клієнта тощо. Проілюструємо переваги систем, складених з них, на прикладі музичного центру.
· Конструювання системи «чорних скриньок» істотно спрощується. Набагато легше розробити магнітофон або програвач, якщо не дбати про створення вбудованого підсилювального блоку.
· Полегшується тестування таких систем. Якщо з’являється поганий звук однієї з колонок, можна поміняти колонки місцями. Якщо несправність перемістилася з колонкою, то саме вона підлягає ремонту; якщо ні, тоді проблема — в підсилювачі, магнітофоні або місцях їх поєднання.
· Є можливість простого реконфігурування системи «чорних скриньок». Якщо колонка несправна, то можна віддати її в ремонтну майстерню і продовжувати слухати записи в монорежимі.
· Полегшується доступність для розуміння і освоєння. Можна стати фахівцем з магнітофонів без поглиблених знань про колонки.
· Підвищується зручність при модифікації.Можна придбати колонки більш високої якості і більш потужний підсилювач, але це зовсім не означає, що потрібен програвач великих розмірів.
Таким чином, першим кроком спрощення складної системи є її поділ на «чорні скриньки» (принцип «розділяй і володарюй» — принцип розв’язання важких проблем розбиттям їх на безліч незалежних задач, легких для розуміння і вирішення), при цьому цей поділ повинен задовольняти такі критерії:
а) кожна «чорна скринька» має реалізовувати одну єдину функцію системи;
б) функція кожної «чорної скриньки» повинна бути легко зрозумілою незалежно від складності її реалізації (наприклад, у системі управління ракетою може бути «чорна скринька» для розрахунку місця її приземлення: незважаючи на складність алгоритму, функція «чорної скриньки» є очевидною — розрахунок точки приземлення);
в) зв’язок між «чорними скриньками» повинен вводитися тільки за наявності зв’язку між відповідними функціями системи (наприклад, у бухгалтерії одна «чорна скринька» необхідна для розрахунку загальної заробітної плати службовця, а інша — для розрахунку податків; необхідний зв’язок між цими «чорними скриньками»: розмір заробітної плати потрібен для розрахунку податків);
г) зв’язки між «чорними скриньками» мають бути якомога простішими для забезпечення незалежності між ними.
Другою важливою ідеєю, що лежить в основі структурних методів, є ідея ієрархії. Для розуміння складної системи недостатньо розбити її на частини, треба ці частини організувати певним чином, а саме — як ієрархічні структури. Всі складні системи Всесвіту — галактики, зоряні системи, планети, молекули, атоми, елементарні частки — організовані в ієрархію. Створюючи складні системи, людина також йде за природою. Будь-яка організація має директора, заступників із напрямів, ієрархію керівників підрозділів, рядових службовців. Таким чином, другий принцип структурного аналізу (принцип ієрархічного упорядкування) на доповнення до того, що легше розуміти проблему, коли вона розбита на частини, декларує, що упорядкування цих частин також є істотним для розуміння проблеми. Останнє різко підвищується за організації її частин у деревоподібні ієрархічні структури, тобто система може бути зрозумілою і побудованою по рівнях, кожен з яких додає нові деталі.