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

2. Проектування для потоку даних типу «запит»

Крок 1. Перевірка основної системної моделі.

Крок 2. Перевірки і уточнення діаграм потоків даних рівнів 1 і 2.

Крок 3. Визначення типу основного потоку діаграми потоків даних. Основна ознака – перемикання даних на один із шляхів дій.

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

Крок 5. Визначення початкової структури ПС. Структура стандартна та включає вхідну та диспетчерську гілку. Диспетчерська гілка складається з диспетчера та контролерів потоків дій.

Крок 6. Деталізація структури ПС. Здійснюється відображення в структуру кожного потоків дій.

Крок 7. Уточнення ієрархічної структури ПС. Уточнення здійснюється для підвищення якості системи.

Основні поняття та принципи тестування

Тестування — процес виконання програми з метою виявлення помилок. Тест або тестовий варіант визначає:

  • свій набір початкових даних і умов для запуску програми;

  • набір очікуваних результатів роботи програми.

Тестування забезпечує:

  1. виявлення помилок;

  2. демонстрацію відповідності функцій програми її призначенню;

  3. демонстрацію реалізації вимог до характеристик програми;

  4. відображення надійності як індикатора якості програми.

Існують 2 принципи тестування програми:

  1. Функціональне тестування (тестування «чорного ящика») – відомі функції програми, досліджується робота кожної функції на всій області застосування;

  2. Структурне тестування (тестування «білого ящика») – відома внутрішня структура програми, досліджуються внутрішні елементи програми та зв’язки між ними.

Структурне тестування

Формуються тестові варіанти, в яких:

  • гарантується перевірка всіх незалежних маршрутів програми;

  • проходяться гілки True, False для всіх логічних вирішень;

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

  • аналізується правильність внутрішніх структур даних.

Недоліки тестування «білого ящика»:

1. Кількість незалежних маршрутів може бути дуже велика.

2. Вичерпне тестування маршрутів не гарантує відповідності програми початковим вимогам до неї.

3. У програмі можуть бути пропущені деякі маршрути.

4. Не можна виявити помилки, поява яких залежить від оброблюваних даних.

Достоїнства тестування «білого ящика» пов'язані з тим, що принцип «білого ящика» дозволяє врахувати особливості програмних помилок:

1. Кількість помилок мінімальна в «центрі» і максимально на «периферії» програми.

2. Попередні припущення про вірогідність потоку управління або даних в програмі часто бувають некоректні.

3. При записі алгоритму ПЗ у вигляді тексту на мові програмування можливе внесення типових помилок трансляції (синтаксичних і семантичних).

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

1. Спосіб тестування базового шляху.

Тестування базового шляху — це спосіб, який заснований на принципі «білого ящика». Автор цього способу — Том Маккейб (1976).

Спосіб тестування базового шляху дає можливість:

  • отримати оцінку комплексної складності програми;

  • використовувати цю оцінку для визначення необхідної кількості тестових варіантів.

Для представлення програми використовується потоковий граф.

Особливості потокового графу:

1. Граф будується відображенням структури програми, що управляє. В ході відображення закриваючі дужки умовних операторів і операторів циклів (end if; end loop) розглядаються як окремі (фіктивні) оператори.

2. Вузли (вершини) потокового графа відповідають лінійним ділянкам програми, включають один або декілька операторів.

3. Дуги (орієнтоване ребро) відображають потік управління (передачі управління між операторами).

4. Розрізняють операторні (виходить одна дуга) і предикативні вузли (дві дуги).

5. Предикативні вузли відповідають простим умовам в програмі.

6. Замкнуті області, утворені дугами і вузлами, називають регіонами.

7. Що оточує граф середовище розглядається як додатковий регіон.

Цикломатична складність — метрика ПЗ, яка забезпечує кількісну оцінку логічної складності програми. У способі тестування базового шляху цикломатична складність визначає:

  • кількість незалежних шляхів в базовій безлічі програми;

  • верхню оцінку кількості тестів, яка гарантує одноразове виконання всіх операторів.

Незалежним називається будь-який шлях, який вводить нового оператора обробки або нову умову.

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

Цикломатична складність обчислюється одним з трьох способів:

  1. Цикломатична складність рівна кількості регіонів потокового графа;

  2. Цикломатична складність визначається по формулі

V(G)-E-N+2, де Е — кількість дуг, N — кількість вузлів потокового графа;

  1. Цикломатична складність формується по виразу V(G)=p+ 1, де р — кількість предикативних вузлів в потоковому графові G.

Приклад:

Предикатні вузли а і b незалежні шляхи

    1. а - х - endif V(G)=3

    2. a - b – x – endif V(G)=7-6+2=3

    3. a - b – y – endif V(G)=2+1=3

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