Page 29 - 4190
P. 29
зує потрібні функції цього сценарію. Спробуємо з’ясувати, чи можна
вважати об’єднання сукупностей об’єктів для всіх визначених сцена-
ріїв системи складовими архітектури цільової системи? Інакше кажу-
чи, чи можемо ми вважати, що такі об’єкти належать то третього ша-
ру компонент і їхня композиція є наочним представленням архітекту-
ри системи.
Відповідь на ці запитання негативна з таких міркувань: для скла-
дних систем кількість виділених об’єктів може налічувати сотні, і їх-
ня композиція не буде мати виразного та зрозумілого подання, навіть
з урахуванням тієї обставини, що об’єкти, багатьох сценаріїв можуть
збігатися, тому буде потрібний додатковий аналіз для ототожнення
їх.
Згадаємо основні принципи, напрацьовані як рекомендації для
декомпозиції складної системи на компоненти або модулі:
для компоненти має бути чітко визначена мета, щоб можна бу-
ло перевірити, чи вона її виконує;
для компоненти має бути чітко визначено всі її входи та вихо-
ди;
компоненти мають утворювати ієрархію, кожний рівень якої
відповідає рівню абстракції розгляду системи і дозволяє приховувати
певні деталі, які буде відпрацьовано на наступних рівнях. Така по-
крокова деталізація прийняття рішень не стільки розподіляє вирішен-
ня складного завдання на кілька вирішень простіших завдань, скільки
дозволяє відкласти детальні розв’язання проблем, щоб зосередитися
на розв’язанні загальних рішень;
робота над компонентами може вестися окремими членами ко-
манди із застосуванням кількох інструментальних засобів для кількох
компонент, що суттєво впливає на ефективність роботи; але при цьо-
му інтерфейси між компонентами мають бути прозорими й узгодже-
ними, щоб інтеграція компонент в єдину структуру була можливою і
базувалася на спільному розумінні проблеми. При цьому ключова
якість об’єктного підходу - інкапсуляція внутрішніх дій і прихову-
вання всіх подробиць, які не стосуються правил використання компо-
ненти - має діяти і для підсистеми як композиції об’єктів.
Враховуючи зазначене вище, можна дійти до висновку, що отри-
мані нами сукупності об’єктів доцільно об’єднувати в підсистеми.
При цьому необхідно керуватися такими міркуваннями:
29