SADT – технологія структурного аналізу і проектування
Методології структурного аналізу Йодана/Де Марко і Гейна-Сарсона
Як вже неодноразово наголошувалося, структурний аналіз – це систематичний покроковий підхід до аналізу вимог і проектування специфікацій системи незалежно від того, чи система існує або створюється знов.
Обидві методології фокусують увагу на потоках даних, їх головне призначення – створення базованих на графіці документів за функціональними вимогами. Методології підтримуються традиційними низхідними методами проектування специфікацій і забезпечують один з кращих способів зв'язку між аналітиками, розробниками і користувачами системи. При цьому використовуються наступні засоби:
1) DFD-діаграми потоків даних. Являють собою графічні ієрархічні специфікації, що описують систему з позицій потоків даних.
2) Словники даних. Являють собою каталоги всіх елементів даних, присутніх в DFD, включаючи групові і індивідуальні потоки даних, сховища і процеси, а також всі їх атрибути.
3) Мініспецифікації обробки, що описують DFD-процеси нижнього рівня, що і є базою для кодогенерації. Фактично мініспецифікаціями є алгоритми опису завдань, що виконуються процесами. Безліч всіх мініспецифікацій є повною специфікацією системи.
Відмітим, що DFD моделюють функції, які система повинна виконувати, але нічого (або майже нічого) не інформують про відношення між даними, а також про поведінку системи в залежності від часу – для цих цілей методології використовують діаграми "сутність-зв’язок" і діаграми переходів станів.
Головною відмінною рисою методології Гейна-Сарсона є наявність етапу моделювання даних, що визначає вміст сховищ даних (БД і файлів) в DFD. Цей етап включає побудову списку елементів даних, розташованих в кожному сховищі даних; аналіз відношень між даними і побудову відповідної діаграми зв'язків між елементами даних; представлення всієї інформації по моделі у вигляді зв'язаних нормалізованих таблиць.
SADT – одна з найвідоміших методологій аналізу і проектування інформаційних систем, введена в 1973 році Росом [11].
З точки зору SADT модель може ґрунтуватися або на функціях системи, або на її предметах (планах, даних, устаткуванні, інформації і так далі). Відповідні моделі прийнято називати функціональними моделями і моделями даних. Функціональна модель представляє з потрібним ступенем деталізації систему активностей, які у свою чергу відображають свої взаємини через предмети системи. Моделі даних дуальні до функціональних моделей і є докладним описом предметів системи. Повна методологія SADT полягає в побудові моделей обох типів для точнішого опису складної системи. Проте, в даний час широке застосування знайшли тільки функціональні моделі.
Методологія SADT є сукупністю методів, правил і процедур, призначених для побудови функціональної моделі об'єкту якої-небудь наочної області. Функціональна модель SADT відображає функціональну структуру об'єкту, тобто всі дії, які може виконувати об’єкт, і зв'язки між цими діями. Основні елементи цієї методології ґрунтуються на наступних концепціях:
· графічне представлення блочного моделювання. Графіка блоків і дуг SADT-діаграми показує функцію у вигляді блока, а інтерфейси входу/виходу представлені дугами, які відповідно входять в блок і виходять з нього. Взаємодію блоків один з одним описують за допомогою інтерфейсних дуг, які виражають "обмеження", а ті в свою чергу показують, коли і яким чином функції виконуються і піддаються керуванню;
· строгість і точність. Виконання правил SADT вимагає достатньої строгості і точності, не накладаючи в той же час надмірних обмежень на дії аналітика. Правила SADT включають:
· обмеження кількості блоків на кожному рівні декомпозиції (правило 3-6 блоків);
· зв'язність діаграм (номери блоків);
· унікальність імен (відсутність імен, що повторюються);
· синтаксичні правила для графіки (блоків і дуг);
· розділення входів і керувань (правило визначення ролі даних).
· відділення організації від функції, тобто виключення впливу організаційної структури на функціональну модель.
Методологія SADT може використовуватися для моделювання широкого спектру систем і визначення вимог і функцій, а потім для розробки системи, яка задовольняє цим вимогам і реалізує ці функції. Для вже існуючих систем SADT може бути використана для аналізу функцій, що виконуються системою, а також для визначення механізмів, за допомогою яких вони здійснюються.
Результатом застосування методології SADT є модель, яка складається з діаграм, фрагментів текстів і глосарію, що мають посилання один на одного. Діаграми - головні компоненти моделі, всі функції ІС і інтерфейси на них представлені як блоки і дуги. Місце з'єднання дуги з блоком визначає тип інтерфейсу. Керуюча інформація входить в блок зверху, тоді як інформація, яка піддається обробці, показана з лівого боку блоку, а результати виходу показані з правого боку. Механізм (людина або автоматизована система), який здійснює операцію, показаний дугою, що входить в блок знизу (рис.14.1).
Однією з найбільш важливих особливостей методології SADT є поступове введення все більших рівнів деталізації у міру створення діаграм, що відображають модель.
На рис.14.2, де приведено чотири діаграми і їх взаємозв'язки, показана структура SADT-моделі. Кожен компонент моделі може бути підданим декомпозиції на іншій діаграмі. Кожна діаграма ілюструє "внутрішню будову" блоку на батьківській діаграмі.
Рисунок 14.2 – Структура SADT-моделі.
Декомпозиція діаграм