- •4 Верифікація, валідація та тестування. Стандарти тестування пп
- •Тема 10 Верифікація і атестація програм
- •4.1 Методи верифікації об'єктно-орієнтованих програм
- •4.2 Тестування та налагодження програм
- •4.3 Організаційні аспекти процесу тестування
- •4.4 Класифікація помилок. Міжнародний стандарт ansi/ieee - 729-83 розділяє усі помилки в розробці програм:
- •4.5 Джерело помилок.
- •4.6 Організація підготовки тестів
- •7 Команда тестувальників
- •8 Організація процесу тестування
- •9 Організація тестування по регулюється наступними стандартами:
- •Ieee 829-1998 Standard for Software Test Documentation.
- •Ieee 1008-1987 (r1993, r2002) Standard for Software Unit Testing.
4.4 Класифікація помилок. Міжнародний стандарт ansi/ieee - 729-83 розділяє усі помилки в розробці програм:
Помилка (error) - стан програми, при якому видаються неправильні результати, причиною яких є вади (flaw) в операторах програми або в технологічному процесі її розробки, що приводить до неправильної інтерпретації початкової інформації, а отже і до невірного рішення.
Дефект (fault) в програмі є наслідком помилок розробника на будь-якому з етапів розробки і може міститися в початкових або проектних специфікаціях, текстах кодів програм, експлуатаційної документації і тому подібне. Дефект виявляється в процесі виконання програми.
Відмова (failure) - це відхилення програми від функціонування або неможливість програми виконувати функції, визначені вимогами і обмеженнями і розглядається як подія, яка сприяє переходу програми в непрацездатний стан із-за помилок, прихованих в ній дефектів або збоїв в середовищі функціонування.
Відмова може бути результатом наступних причин:
- помилкова специфікація або пропущена вимога, тобто специфікація точно не відбиває того, що допускав користувач;
- специфікація може містити вимогу, яку неможливо виконати на цій апаратурі і програмному забезпеченні;
- проект програми може містити помилки (наприклад, база даних спроектована без захисту від несанкціонованого доступу користувача);
- програма може бути неправильною, тобто вона виконує невластивий алгоритм або він зроблений не повністю.
Таким чином, відмови як правило, є результатами однієї або більше помилок в програмі, а також наявність різного роду дефектів.
Зв'язок помилки з відмовою. Наявність помилки в програмі, як правило, приводить до відмови ПВ при його функціонуванні. Для аналізу причинно-наслідкових зв'язків "помилка-відмова" існують наступні дії:
- ідентифікація вад в технологіях проектування і програмування;
- взаємозв'язок вад процесу проектування і помилок, що допускаються людиною;
- класифікація відмов, вад і можливих помилок, а також дефектів на кожному етапі розробки;
- зіставлення помилок людини, що допускаються на певному етапі розробки, і дефектів в об'єкті, як наслідків помилок специфікації проекту, моделей програм і так далі);
- перевірка і захист від помилок на усіх етапах ЖЦ, а також виявлення дефектів на кожному етапі розробки;
- зіставлення дефектів і відмов в ПВ для розробки системи взаємозв'язків і методики локалізації, збору і аналізу інформації про відмови і дефекти;
- розробка підходів до документування процесів і випробування ПВ.
Кінцева мета причинно-наслідкових зв'язків "помилка-відмова" полягає у визначенні методів і засобів тестування і виявлення помилок певних класів, а також критеріїв завершення тестування на безлічі наборів даних; у визначенні шляхів вдосконалення організації процесу розробки, тестування і супроводу ПВ.
Приведемо наступну класифікацію типів відмов :
- апаратний, при якому загальносистемне ПВ не працездатно;
- інформаційний, викликаний помилками у вхідних даних і передачі даних по каналах зв'язку, збої пристроїв введення (наслідок апаратних відмов);
- ер готичний, викликаний помилками оператора при його взаємодії з машиною (ця відмова являється вторинним відмовам і може привести до інформаційного або функціонального відмовам);
- програмний за наявності помилок в компонентах та ін.
Деякі помилки можуть бути наслідком недоробок при визначенні вимог, проекту, генерації вихідного коду або документації, З іншого боку, вони породжуються в процесі розробки програми або при розробці інтерфейсів окремих елементів програми (порушення порядку параметрів, менше або більше параметрів і тому подібне). На рис. 4.3 показані подібні випадки помилкових ситуацій і причин їх появи в кожній розробці.
нові помилки в старих правильних об’єктах
Рис. 4.3 - Види помилок на етапах ЖЦ
