Порядок виконання лабораторної роботи. 1. Ознайомтеся з теоретичними відомостями

1. Ознайомтеся з теоретичними відомостями.

2. Отримайте від викладача текст досліджуваного програмного комплексу.

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

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

5. Експериментально надайте оцінку кількості помилок у досліджуваному модулі програми.

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

7. Оцініть імовірність безвідмовної роботи програмного комплексу.

8. Розрахуйте цінові параметри кортежу програми.

9. Розрахуйте витратну надійність кортежу.

10. Оцініть доцільність заміни кортежу.

11. Зробіть висновки та занотуйте їх у зошит для лабораторних робіт.

Питання та завдання

1. Що таке кортеж програми? Надайте характеристику.

2. Які моделі оцінювання та прогнозування надійності Ви знаєте? Чим вони відрізняються між собою?

3. Поясність інтуїтивну модель Х.Мілса.

4. Як розташовуються підмножини помилок за Х.Мілсом?

5. У який спосіб структуру керування програмами зображують у вигляді напрямленого графа?

6. Визначення ефективності тестування програми.

7. Як визначити ймовірність безвідмовної роботи програмного комплексу?

8. Оцінка доцільності заміни кортежу програми.

 

Лабораторна робота №3

Дослідження особливостей побудови тестів методом активізації одновимірного шляху

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

Рекомендована література: [2, 9].

 

Теоретичні відомості

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

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

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

2. Вибирається шлях, по якому ознаки несправності будуть транспортуватися на вихід у вигляді послідовності елементів, що знаходяться на ньому.

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

4. Обчислюються значення вхідних змінних схеми, що визначають умови спостереження несправності та її транспортування на вихід схеми, тобто знаходиться умова виявлення заданої несправності в термінах вхідних змінних схеми. Результатом обчислень і буде шуканий тест.

Пункти 1, 2 і 3 наведеного алгоритму часто називають прямою фазою методу активізації одновимірного шляху, а пункт 4 – його зворотною фазою.

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

 

 

Рис. 3.1. Комбінаційна схема

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

Рішення системи являє собою процедуру, що виконується в процесі зворотної фази методу активізації одновимірного шляху. Рівнянням отриманої системи будуть задовольняти два рішення: і , кожне з яких є тестовим набором, що дозволяє виявляти задану несправність. Дійсно, для змінних , що дорівнюють, наприклад, , значення на виході схеми (рис. 3.1) при наявності несправності «константна 1» дорівнює 1, а при її відсутності – 0. Це свідчить про можливість виявлення даної несправності на виході схеми.

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

Із цієї схеми видно, що для несправності «константний 0» для неможливо побудувати тестовий набір, використовуючи метод активізації одновимірного шляху. Дійсно, умовами спостереження цієї несправності в точці її виникнення є рівності і , а транспортування її ознак через елементи 6 і 8 – співвідношення і . Рівність виконується, якщо і, отже , а з урахуванням отримаємо , що суперечить умові активності шляху через елемент 8. Аналогічно можна показати, що неможливо також активізувати шлях через елементи 5 і 8. Проте очевидно, що співвідношення дозволяє одночасно активізувати два можливих шляхи для транспортування несправності, а вхідний набір є її тестом.

Наведений приклад показує необхідність одночасної активізації кількох шляхів (багатовимірного шляху) для розв’язання задачі побудови тестових впливів.