Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lekcii_OPI_2sem.doc
Скачиваний:
154
Добавлен:
23.02.2016
Размер:
3.72 Mб
Скачать

3.5.2. Словник термінів

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

Зазвичай описання терміналу в словнику виконують за наступною схемою:

  • термін;

  • категорія (поняття предметної області, елемент даних, умовне позначення і т.д.);

  • коротке описання.

Приклад:

Термін Web-сайт

Категорія Інтернет-програмування

Описання Сукупність Web-сторінок з повторюваним дизайном, об’єднаних по змісту, які навігаційно і фізично знаходяться на одному сервері.

      1. Діаграми переходів станів (STD)

STD демонструє поведінку розроблюваної програмної системи при отриманні керуючих впливів (ззовні).

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

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

На рис. 3.21 представлена діаграма переходів торгового автомата, який активно взаємодіє з покупцем [55].

3.5.4. Функціональні діаграми

Функціональними називають діаграми, які в першу чергу відображають взаємозв’язок функцій взаємозв’язку функцій програмного забезпечення [53].

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

В якості прикладу розглянемо методологію SADT, запропоновану Дугласом Россом. На основі неї розроблена, відома методологія IDEF() (Icam DEFinition). Методологія SADT представляє собою набір методів, правил і процедур, призначених для побудови функціональної моделі об’єкту деякої предметної області.

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

  • графічне представлення блочного моделювання. На SADT-діаграмі функції представляються у вигляді блоку, а інтерфейси входу-виходу – у вигляді дуг, які відповідно входять у блок і виходять з нього. Інтерфейсні дуги відображають взаємодію функцій одна з одною;

  • строгість і точність відображення.

Правила SADT включають:

  • унікальність міток і найменувань;

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

  • синтаксичні правила для графіки;

  • зв’язність діаграм;

  • відділення організації від функції;

  • розділення входів і керувань.

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

Діаграми – головні компоненти моделі, всі функції програмної системи та інтерфейси на них представлені як блоки і дуги. Місце з’єднання дуги з блоком визначає тип інтерфейсу. Дуга, яка означає керування, входить в блок зверху, в той час як інформація, яка підлягає обробці, представляється дугою з лівої сторони блоку, а результати обробки – дугами з правої сторони. Механізм (людина чи автоматизована система), який здійснює операцію, представляється у вигляді дуги, яка входить у блок знизу (рис. 3.22).

Блоки на діаграмі розміщуються по «сходинковій» схемі у відповідності з послідовністю їх роботи чи домінуванням, яке розуміється як вплив одного блоку на інші. У функціональних діаграмах SADT розрізняють п’ять типів впливів блоків один на одного [1]:

  • вхід-вихід блоку подається на вхід з меншим домінуванням, тобто наступного (рис 3.23, а);

  • управління. Вихід блоку використовується як управління для блоку з меншим домінуванням (рис 3.23, б);

  • зворотній зв’язок по виходу. Вихід блоку подається на вхід блоку з більшим домінуванням (рис 3.23, в);

  • зворотній зв’язок по керуванню. Вихід блоку використовується як керуюча інформація для блоку з більшим домінуванням (рис 3.23, г);

  • вихід-виконавець. Вихід блоку використовується як механізм для другого блоку (рис 3.23, д).

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

На рис. 3.24 приведено чотири діаграми та їх взаємозв’язки, які рлказують структуру SADT-моделі. Кожен компонент моделі може бути декомпозований на іншій діаграмі. Детальна діаграма ілюструє внутрішню будову «батьківської» діаграми.

Ієрархія діаграм

Перш за все, вся система представляється у вигляді простої компоненти – одного блоку і дуг, які представляють собою інтерфейси із зовнішніми по відношенню до даної системи функціями. Ім’я блоку є загальним для всієї системи [53].

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

Всі діаграми зв’язують одна з одною ієрархічною нумерацією блоків: перший рівень – А0, другий А1, А2 і т.д., третій А11, А12, А13 і т.д., де перші цифри – номер батьківського блоку, а остання – номер конкретного блоку детальної діаграми.

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

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

На рис. 3.25–3.27 наведено різні варіанти виконання функцій і з’єднання дуг з блоками.

Послідовність операцій, час їх виконання не вказуються на SADT-діаграмах. Зворотні зв’язки, ітерації, процеси і функції які перекриваються (по часу) можуть бути зображені з допомогою дуг. Зворотні зв’язки можуть виступати у вигляді коментаріїв, зауважень, виправлень і т.д. (рис. 3.27).

Приклад 3.1. Розробку функціональних діаграм продемонструємо на прикладі уточнення специфікацій програми сортування одновимірного масиву з використанням декількох методів.

Діаграма, представлена на рис. 3.28, а, є діаграмою верхнього рівня. Вона ілюструє початкові дані програми та очікувані результати.

Діаграма, представлена на рис. 3.28, б, деталізує функції програми. На ній показано три блоки: Меню, Сортування, Вивід результату. Для кожного блоку визначені початкову дані, керуючі впливи і результати. На деталізуючій діаграмі використовуються наступні позначення:

І1 – розмір масиву;

І2 – масив;

C1 – вибір методу;

R1 – вивід описання методу;

R2 – відсортований масив.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]