Тема: СИНТАКСИС ДІАГРАМ
Як вже наголошувалося, кожна SADT-діаграма містить блоки і дуги. Блоки зображають функції системи, дуги зв'язують блоки і відображають взаємодії і взаємозв'язки між ними. Діаграмі дається назва, яка розташовується внизу. Функціональні блоки зображають прямокутниками. Оскільки блоки відображають функції системи, то в назві блоків використовують дієслова (розрахувати, виконати завдання і т.д.). Блоки на SADT-діаграмі ніколи не розміщуються випадковим чином. Вони розміщуються по ступеню важливості, як її розуміє автор діаграми. У SADT цей відносний порядок називається домінуванням. Під домінуванням розуміється вплив одного блоку на інші блоки діаграми. Наприклад, самим домінуючим блоком діаграми може бути перший з необхідної послідовності функцій. Найбільш домінуючий блок зазвичай розташовується у верхньому лівому кутку діаграми, а найменш домінуючий – в правому нижньому кутку діаграми. В результаті маємо ступінчасту схему. Блоки в SADT повинні бути пронумеровані. Номери блоків служать однозначними ідентифікаторами для системних функцій і автоматично організовують ці функції в ієрархію моделі. Дуги на SADT-діаграмі зображуються одинарними лініями із стрілками на кінцях. Дуги зображують об'єкти (або дані), тому вони описуються іменниками або іменниками з визначеннями (набір інструментів, креслення і т.д.) Між об'єктами і функціями можливі 4 відношення: вхід, керування, вихід і механізм. Кожне з цих відношень зображується дугою і пов'язано з певною стороною блоку (ліва сторона – вхідні дуги, права сторона – вихідні дуги, верхня сторона – керуючі дуги, нижня сторона – дуги механізму). Вхідні дуги зображують об'єкти, які використовуються і перетворюються функціями. Керуючі дуги представляють інформацію, яка керує діями функцій. Зазвичай керуючі дуги несуть інформацію, яка вказує, що повинна виконувати функція. Вихідні дуги зображають об'єкти, в які перетворяться вхідні. Дуги механізмів відображують, принаймні частково, як функції реалізуються, за допомогою чого або кого. Таким чином, SADT-діаграма складена з блоків, зв’язаних дугами, які визначають, як блоки впливають один на одного. Цей вплив може бути вираженим або в передачі вихідної інформації до другої функції для подальшого перетворення, або в виробництві керуючої інформації, яка вказує, що саме повинна виконувати друга функція. Тому SADT-діаграми неможливо відносити до блок-схем або діаграм потоків даних. Скоріш за все, це наказуючі діаграми, які показують вхідні-вихідні перетворення і вказують правила цих перетворень. У функціональних діаграмах SADT розрізняють п'ять типів впливів блоків один на одного: • вхід – вихід блоку подається на вхід блоку з меншим домінуванням, тобто Наступного (рис. 15.1, а); • керування – вихід блоку використовується як керування для блоку з меншим домінуванням (наступного) (рис. 15.1, б); • зворотній зв'язок по входу – вихід блоку подається на вхід блоку з великим домінуванням (попереднього) (рис. 15.1, в); • зворотній зв'язок по керуванню — вихід блоку використовується як керуюча інформація для блоку з більшим домінуванням (попереднього) (рис. 15.1, г); • вихід-механізм – вихід блоку використовується як механізм для іншого блоку (рис. 15.1, д).
Рисунок 15.2 – приклад типів впливів блоків один на одного
Зв'язки по керуванню і входу є простими, оскільки вони відображують прямі дії, які інтуїтивно зрозумілі і дуже прості. Відношення керування виникає тоді, коли вихід одного блоку безпосередньо впливає на блок з меншим домінуванням. Приклад: Блок " Керувати виконанням завдання" впливає на блок " Виконати завдання " відповідно до плану виконання завдання (рис.15.2). Відношення входу виникає тоді, коли вихід одного блоку стає входом для блоку з меншим домінуванням. Приклад: вихід " Завершене або незавершене завдання" є входом функції " Контролювати якість виконання " при виконанні функції " Виконати завдання ". Зворотній зв'язок по керуванню і зворотній зв'язок по входу є складнішими, оскільки вони є ітерацією або рекурсією. А саме виходи однієї функції впливають на майбутнє виконання інших функцій, які надалі впливають на початкову функцію. Зворотній зв’язок по керуванню виникає тоді, коли вихід деякого блока впливає на блок с більшим домінуванням. Приклад: функція " Керувати виконанням завдання " обмежує дію функції " Контролювати якість виконання " за допомогою креслення, в якому вказані дозволені допуски. Крім цього, дуга штамп " прийнято", яка є виходом блока " контролювати якість виконання " організовує роботу блока " керувати виконанням завдання ", оскільки саме штамп " прийнято" вказує, що завдання завершене. Таким чином, штамп " прийнято" впливає на майбутню діяльність блока " керувати виконанням завдання ", тому відповідна дуга направлена назад. Зв'язок по вхідному зворотному зв'язку має місце тоді, коли вихід одного блоку стає входом іншого блоку з великим домінуванням. Приклад: завдання, знехтувані функцією " контролювати якість виконання", відсилаються на вхід блоку " виконати завдання " як брак. Зв'язки " вихід-механізм" зустрічаються рідко. Вони відображують ситуацію, коли вихід однієї функції стає засобом досягнення мети іншої функції. Зв'язки " вихід-механізм" характерні при розподілі джерел ресурсів (наприклад, необхідні інструменти, навчений персонал, фізичний простір, устаткування, фінансування і т. д.). Дуга в SADT рідко зображає один об'єкт. Зазвичай вона символізує набір об'єктів. Наприклад, дуга " робочий комплект" відображує " технічне завдання ", " креслення ", " план-графік ", деяка " сировина і заготовки ". Оскільки дугами є набори об'єктів, вони можуть мати безліч початкових точок (джерел) і кінцевих точок (призначень). Тому дуги можуть розгалужуватися і з'єднуватися різними складними способами. Приклад: дуга “ прийняте завдання” розгалужується на дугу “ штамп прийнято ", яка є керуючою інформацією для блоку " керувати виконанням завдання " і дугу “деталь з біркою”, яка є вхідною для того ж блоку. Бувають варіанти, коли дві різні дуги об'єднуються і утворюють більший набір об'єктів. Для пояснення того, як дуги представляють роз'єднання і з'єднання наборів об'єктів, в SADT були розроблені спеціальні угоди.
|