Головна

Структурні методи аналізу і проектування ПЗ

  1. I. 2.4. Принципи та методи дослідження сучасної психології
  2. I. Методи перехоплення.
  3. I. Суб'єктивні методи дослідження ендокринної системи.
  4. I. Суб'єктивні методи дослідження кровотворної системи.
  5. I. Суб'єктивні методи дослідження органів жовчовиділення і підшлункової залози.
  6. I. Суб'єктивні методи дослідження органів сечовиділення.
  7. II. Методи несанкціонованого доступу.
 < 33.1. Технологія структурного програмування  33.3. Модульне програмування >

Однією з основних проблем, які доводиться вирішувати при створенні великих і складних систем будь-якої природи, в тому числі і ПО, є проблема складності. Жоден розробник не в змозі вийти за межі людських можливостей і зрозуміти всю систему в цілому. Єдиний ефективний підхід до вирішення цієї проблеми, який виробило людство за всю свою історію, полягає в побудові складної системи з невеликої кількості великих частин, кожна з яких, в свою чергу, будується з частин меншого розміру, і т.д., до тих пір , поки самі невеликі частини можна буде будувати з наявного матеріалу. Цей підхід відомий під різними назвами, серед них такі, як «розділяй і володарюй» (divide et imperd), ієрархічна декомпозиція та ін. По відношенню до проектування складної програмної системи це означає, що її необхідно розділити (декомпозировать) на невеликі підсистеми, кожну з яких можна розробляти незалежно від інших. Це дозволяє при розробці підсистеми будь-якого рівня має справу тільки з нею, а не з усіма іншими частинами системи [18].

Структурні методи є суворою дисципліною системного аналізу і проектування. Методи структурного аналізу і проектування прагнуть подолати складність великих систем шляхом розчленування їх на частини («чорні ящики») і ієрархічної організації цих «чорних ящиків». Вигода в використанні «чорних ящиків» полягає в тому, що їх користувачеві не потрібно знати, як вони працюють, необхідно знати лише їх входи і виходи, а також призначення (тобто функції, які вони виконує).

Таким чином, першим кроком спрощення складної системи є її розбиття на «чорні ящики», при цьому таке розбиття має відповідати таким критеріям:

- Кожен «чорний ящик» повинен реалізовувати єдину функцію системи;

- Функція кожного «чорного ящика» повинна бути легко зрозумілі незалежно від складності її реалізації;

- Зв'язок між «чорними ящиками» повинна вводитися тільки при наявності зв'язку між відповідними функціями системи;

- Зв'язки між «чорними ящиками» повинні бути простими, наскільки це можливо, для забезпечення незалежності між ними.

Другою важливою ідеєю, що лежить в основі структурних методів, є ідея ієрархії. Для розуміння складної системи недостатньо розбиття її на частини, необхідно ці частини організувати певним чином, а саме у вигляді ієрархічних структур. Всі складні системи Всесвіту організовані в ієрархії: від галактик до елементарних частинок. Людина при створенні складних систем також наслідує природі. Будь-яка організація має директора, заступників по напрямках, ієрархію керівників підрозділів, рядових службовців [18].

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

Структурним аналізом прийнято називати метод дослідження системи, що починає з її загального огляду, який потім деталізується, набуваючи ієрархічну структуру з дедалі більшим числом рівнів [18].

Для таких методів характерно:

- Розбиття системи на рівні абстракції з обмеженням числа елементів на кожному з рівнів (зазвичай від 3 до 6-7);

- Обмежений контекст, що включає лише істотні на кожному рівні деталі;

- Використання строгих формальних правил запису;

- Послідовне наближення до кінцевого результату.

У структурному аналізі основним методом розбиття на рівні абстракції є функціональна декомпозиція, яка полягає в декомпозиції (розбитті) системи на функціональні підсистеми, які, в свою чергу, діляться на підфункції, тобто - На завдання і так далі до конкретних процедур. При цьому система зберігає цілісне уявлення, в якому всі складові компоненти взаємопов'язані. При розробці системи «знизу вгору» від окремих завдань до всієї системи цілісність втрачається, виникають проблеми при описі інформаційної взаємодії окремих компонентів.

Всі найбільш поширені методи структурного підходу базуються на ряді загальних принципів. Базовими принципами є:

- Принцип «розділяй і володарюй» - принцип вирішення складних проблем шляхом розбиття їх на безліч менших незалежних завдань, легких для розуміння і вирішення;

- Принцип ієрархічного упорядкування - принцип організації складових частин системи в ієрархічні деревоподібні структури з додаванням нових деталей на кожному рівні.

Виділення двох базових принципів не означає, що інші принципи є другорядними, оскільки ігнорування кожного з них може привести до небажаних наслідків (аж до невдалого завершення проекту). Основними з цих принципів є:

- Принцип абстрагування - виділення істотних аспектів системи і відволікання від несуттєвих;

- Принцип несуперечності - обгрунтованість і узгодженість елементів системи;

- Принцип структурування даних - дані повинні бути структуровані і ієрархічно організовані.

 < 33.1. Технологія структурного програмування  33.3. модульне програмування


Попередня   35   36   37   38   39   40   41   42   43   44   45   46   47   48   49   50   Наступна

Виняток елементів масивів | Розрахунок визначника квадратної матриці | транспонування матриць | Низькорівневі мови програмування | Процедурні мови програмування | Логічні мови програмування | Вступ | Постановка і формалізація задачі | Розробка алгоритмів розв'язання задачі | HIPO - діаграма |

© 2016-2022  um.co.ua - учбові матеріали та реферати