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