Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектування інформаційних систем.doc
Скачиваний:
95
Добавлен:
21.09.2019
Размер:
28.77 Mб
Скачать

5.3. Структурне проектування

Структурний підхід до проектування ІС (структурний аналіз/структурне проектування SA/SD — Structure Analyses & Structure Design) – метод визначення вхідних даних, процесів та вихідних даних системи і поділ систем на підсистеми або модулі, що показують логічну графічну модель потоків інформації.

Методологія SADT розроблена Дугласом Россом і отримала подальший розвиток в роботі [4]. На її основі розроблена, зокрема, відома методологія IDEF0 (розглянуто нижче).

Методологія SADT є сукупністю методів, правил і процедур, призначених для побудови функціональної моделі предметної області. Функціональна модель SADT відображує функціональну структуру об'єкту, тобто дії, що ним виконуються, і зв'язки між цими діями. Основні елементи цієї методології ґрунтуються на наступних концепціях.

  • Графічне представлення блокового моделювання. Графіка блоків і дуг SADT-діаграми відображує функцію у вигляді блоку, а інтерфейси входа/выхода представляються дугами, що відповідно входять в блок і виходять з нього. Взаємодія блоків один з одним описуються за допомогою інтерфейсних дуг, що виражають "обмеження", які у свою чергу визначають, коли і яким чином функції виконуються і управляються.

  • Строгість і точність. Виконання правив SADT вимагає достатньої строгості і точності, не накладаючи в той же час надмірних обмежень на дії аналітика. Правила SADT включають:

  • обмеження кількості блоків на кожному рівні декомпозиції (правило 15.6 блоків);

  • зв'язність діаграм (номери блоків);

  • унікальність міток і назв (відсутність імен, що повторюються);

  • синтаксичні правила для графіки (блоків і дуг);

  • розділення входів і управлінь (правило визначення ролі даних);

  • відділення організації від функції, тобто виключення впливу організаційної структури на функціональну модель.

Методологія SADT може використовуватися для моделювання широкого кола систем і визначення вимог і функцій, а потім для розробки системи, яка задовольняє цим вимогам і реалізує ці функції. Для вже існуючих систем SADT може бути використана для аналізу функцій, що виконуються системою, а також для вказівки механізмів, за допомогою яких вони здійснюються.

Результатом методології SADT є модель, яка складається з діаграм, фрагментів текстів і глосарію, що мають посилання один на одного. Діаграми - головні компоненти моделі, усі функції ІС й інтерфейси на них представлені як блоки і дуги. Місце з'єднання дуги з блоком визначає тип інтерфейсу. Керівна інформація в блок зверху, тоді як інформація, яка піддається опрацюванню, показана з лівого боку блоку, а результати виходу показані з правого боку. Механізм (людина або автоматизована система), який здійснює операцію, представляється дугою, що входить в блок знизу.

Однією з найважливіших особливостей методології SADT є поступове введення усе більших рівнів деталізації у міру створення діаграм, що відображують модель.

Кожен компонент моделі може бути декомпозиціонований на іншій діаграмі. Кожна діаграма ілюструє "внутрішню будову" блоку на батьківській діаграмі.

Побудова SADT-моделі починається з представлення усієї системи у вигляді простої компоненти - одного блоку і дуг, що відображають інтерфейси з функціями поза системою. Оскільки єдиний блок представляє усю систему як єдине ціле, назва, вказана у блоці, є загальною.

Потім блок, який представляє систему як єдиний модуль, деталізується на іншій діаграмі за допомогою декількох блоків, сполучених інтерфейсними дугами. Ці блоки представляють основні підфункції вихідної функції. Ця декомпозиція виявляє повний набір підфункцій, кожна з яких представлена як блок, межі якого визначені інтерфейсними дугами. Кожна з цих підфункцій може бути декомпозиційована так само для детальнішогої представлення.

У всіх випадках кожна підфункція може містити лише ті елементи, які входять у вихідну функцію. Крім того, модель не може опустити якісь елементи, тобто, як вже наголошувалося, батьківський блок і його інтерфейси забезпечують контекст. До нього не можна нічого додати, і з нього не може бути нічого знищено.