Вступ до інженерії програмного забезпечення | страница 25
Загальна схема SDE моделі така:
SDE Model =( {Структури},
{Механізми},
{Управління}).
Структури - це об'єкти і агрегати об'єктів, на які впливають механізми в процесі розробки програмного забезпечення.
Прості структури - файлові. Складніші будуються на основі абстрактних синтаксичних дерев, графів, баз даних. Основні функції структур такі:
- підтримувати інтеграцію інструментів у SDE;
- мати достатньо інформації, необхідної для роботи механізмів І виконання управління;
- забезпечувати управління змінами програмного забезпечення, що розробляється.
Зазвичай, для вирішення завдань у SDE пропонується використовувати різні типи структур.
Механізми - це мови, інструменти і фрагменти інструментів, які маніпулюють структурами в SDE. Стосовно програміста, механізми можуть бути видимі і приховані.
Якщо детальніше вивчені механізми, то більше вони мають тенденцію вбудовуватися всередину середовища і складати основу генераторної частини інструментів. Наприклад, Jass - генератор синтаксичних аналізаторів. До того ж, чим більш узгоджуються механізми і структури, тим глибшим є аналіз взаємозв'язків між частинами програмного забезпечення і вірогідніша поява адекватної методології, наприклад, аналіз діаграм даних, використовуваний для управління змінами або програмно-базоване тестування.
Управління - це вимоги, що впливають на користувача SDE у процесі розробки програмного забезпечення. Виражаються вимоги у формі правил, стратегій, методик. Зазвичай інструменти і структури, створюючи SDE, визначають управління. Розрізняють типи управління: підтримуване і захищене.
Підтримуване управління припускає наявність у SDE механізмів і структур, що забезпечують підтримку управління. Наприклад, низхідна розробка програмного забезпечення - управління, яке підтримується в багатьох SDE.
Захищене управління припускає не тільки підтримку, але і не можливість порушити його в SDE. Захист може бути реалізований за допомогою механізмів і структур SDE або організаційно - зовні в SDE у формі певного консенсусу розробників.