Ідеї, які лежать в основі структурного підходу

ПРИ СТРУКТУРНОМУ ПІДХОДІ

СПЕЦИФІКАЦІЙ ПРОГРАМНОГО ЗАБЕЗПЕЧЕННЯ

 

Наступним етапом розробки ПЗ є стадія «Ескізного проекту», тобто етапу аналізу вимог до майбутнього програмного продукту і розробка специфікацій.

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

В сучасній практиці проектування ПЗ широко використовуються візуальні моделі, вони являють собою засоби для опису, проектування і документації архітектури системи. Один із авторитетніших спеціалістів в галузі об’єктно-орієнтованого підходу Граді Буч стверджував, що моделювання є центральною ланкою всієї діяльності по створенню якісного ПЗ. Моделі будуються для того, щоб зрозуміти й осмислити структуру та поведінку майбутньої системи, полегшити управління процесом її створення і зменшити ризик, а також задокументовувати прийняті проектні рішення. Хороші моделі служать основою взаємодії учасників проекту і гарантують коректність архітектури [29]. Розглянемо побудову таких моделей при структурному підході.

 

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

На навколишньому світі чорні ящики зустрічаються у великій кількості. Проілюструємо переваги систем, складених з них, на прикладі музичного центру:

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

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

Є можливість простої ре-конфігурації системи чорних ящиків. Якщо колонка несправна, то Ви можете відправити її до ремонтної майстерні, а самі поки продовжувати слухати свої записи в моно-режимі.

Полегшується доступність для розуміння і освоєння. Можна стати фахівцем з магнітофонів без поглиблених знань про колонки.

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

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

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

• функція кожного чорного ящика повинна бути легко приємлива незалежно від складності її реалізації (наприклад, в системі управління ракетою може бути чорний ящик для розрахунку місця її приземлення: не дивлячись на складність алгоритму, функція чорного ящика очевидна - "розрахунок точки приземлення");

• зв'язок між чорними ящиками повинен вводитися тільки за наявності зв'язку між відповідними функціями системи (наприклад, в бухгалтерії один чорний ящик необхідний для розрахунку загальної заробітної плати службовця, а інший для розрахунку податків - необхідний зв'язок між цими чорними ящиками: розмір заробленої плати потрібний для розрахунку податків);

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

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

Третій момент: структурні методі широко використовують графічні нотації, які служать для полегшення поняття суті складних систем. Відомо, що "одна картинка вартує тисячі слів".