У нас: 141825 рефератів
Щойно додані Реферати Тор 100
Скористайтеся пошуком, наприклад Реферат        Грубий пошук Точний пошук
Вхід в абонемент





ЗАГАЛЬНА ХАРАКТЕРИСТИКА РОБОТИ

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

Національний університет “Львівська політехніка”

Говорущенко Тетяна Олександрівна

УДК 004.891.3: 004.3

ПІДВИЩЕННЯ ДОСТОВІРНОСТІ ПРОЦЕСУ ТЕСТУВАННЯ ПРОГРАМНИХ ПРОДУКТІВ НА ОСНОВІ НЕЙРОМЕРЕЖНИХ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ

05.13.06 - автоматизовані системи управління та

прогресивні інформаційні технології

Автореферат

дисертації на здобуття наукового ступеня

кандидата технічних наук

Львів - 2007

Дисертацією є рукопис.

Робота виконана у Хмельницькому національному університеті Міністерства освіти і науки України.

Науковий керівник:

доктор технічних наук, професор Локазюк Віктор Миколайович, Хмельницький національний університет, завідувач кафедри системного програмування.

Офіційні опоненти:

доктор технічних наук, професор Ткаченко Роман Олексійович, Національний університет “Львівська політехніка”, професор кафедри автоматизованих систем управління;

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

Захист відбудеться “11” жовтня 2007 р. о 16 годині на засіданні спеціалізованої вченої ради Д35.052.14 при Національному університеті “Львівська політехніка” за адресою: 79013, м.Львів, вул. С.Бандери, 12.

З дисертацією можна ознайомитись у бібліотеці Національного університету “Львівська політехніка” за адресою: 79013, м.Львів, вул.Професорська, 1.

Автореферат розісланий “6” вересня 2007 р.

Вчений секретар

спеціалізованої вченої ради

к.т.н., доцент ____________________________ А.Є.Батюк

ЗАГАЛЬНА ХАРАКТЕРИСТИКА РОБОТИ

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

Тема діагностування програмного забезпечення одержала свій розвиток в працях відомих вітчизняних та іноземних вчених: Харченка В.С., Гуляєва В.А., Локазюка В.М., Савченка Ю.Г., Согомоняна Е.С., Кривулі Г.Ф., Дрозда О.В., Ліпаєва В.В., Майєрса Г., Канера Сема, Соммервіла І., Бейзера Б.

Проведення аналізу програмного забезпечення як об’єкта діагностування дало можливість зробити наступні висновки:

1)

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

2)

існуючі діагностичні програми не завжди повністю враховують зростаючі вимоги до розроблення програм, за причини постійного ускладнення ПЗ та намагання користувачів розв’язувати за його допомогою важкоформалізовані та неформалізовані задачі;

3)

низька якість окремих діагностичних програм знижує ефективність використання існуючого ПЗ комп’ютерних систем.

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

З аналізу методів тестування ПЗ стає зрозумілим, що жоден з них не є універсальним і має певні недоліки.

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

Зв’язок роботи з науковими програмами, планами, темами. Представлені в дисертації дослідження проводились в рамках держбюджетних НДР Хмельницького національного університету № 1Б-2001 “Методологія тестового комбінованого діагностування мікропроцесорних пристроїв та систем на базі компонентів штучного інтелекту” (номер держреєстрації 0101U005058) та № 1Б-2005 “Теорія нейромережних і нечітких моделей та методологія створення інтелектуальних систем діагностування комп’ютерних пристроїв” (номер держреєстрації 0105U000725).

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

Наукова задача полягає у підвищенні достовірності процесу тестування ПЗ. Вона вирішується шляхом використання апарату штучних нейронних мереж (ШНМ).

Задачі дослідження формуються в роботі наступним чином:

1. Провести аналіз методів і підходів до тестування ПЗ та виявити напрямки їх удосконалення, в тому числі за рахунок пошуку і ідентифікації прихованих помилок.

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

3. Розробити модель ідентифікації прихованих помилок ПЗ на базі нейромережних інформаційних технологій (НІТ).

4. Розробити метод та алгоритми ідентифікації прихованих помилок ПЗ на основі НІТ.

5. Розробити і впровадити у виробництво автоматизовану систему тестування ПЗ з можливістю ідентифікації прихованих помилок.

Об’єкт дослідження – це процес повторного тестування, спрямований на ідентифікацію прихованих помилок ПЗ.

Предмет дослідження – метод, алгоритми та засоби ідентифікації прихованих помилок ПЗ на основі ШНМ.

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

Наукова новизна одержаних результатів:

1)

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

2)

вперше одержано:

-

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

-

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

3)

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

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

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

Основні результати дисертації знайшли застосування при викладанні на кафедрі системного програмування навчальних дсициплін “Технічна діагностика обчислювальних пристроїв та систем”, “Надійність, контроль та експлуатація ЕОМ”, “Верифікація і тестування програмного забезпечення” та при розробці системи ідентифікації прихованих помилок програмного забезпечення на підприємствах ЦІТТЗ ВАТ “Укртелеком” та ТОВ “СТУ-Електронікс”.

Особистий внесок здобувача. Всі основні результати дисертаційного дослідження, представлені до захисту, одержані автором особисто. У друкованих працях, опублікованих у співавторстві, автору належить: визначення переваг та недоліків відомих методів тестування прикладного програмного забезпечення [1, 2, 14, 15]; концепція категорійності прихованих помилок та категорійна модель повторного тестування програмного забезпечення [3, 16]; модель процесу тестування прикладного програмного забезпечення [6, 18]; запропоновано метод та алгоритм повторного тестування прикладного ПЗ на базі ШНМ, на основі яких побудовано структурну схему системи повторного тестування [16]; архітектура ШНМ в пакеті Matlab [9].

Апробація результатів дисертації. Основні положення та результати проведених досліджень у дисертаційній роботі доповідалися та обгоорювалися на Міжнародних та Всеукріїнських конференціях, а саме: Міжнародна наукова конференція “Політ-2003” (м.Київ), Міжнародна науково-практична конференція “Мікропроцесорні пристрої та системи в автоматизації виробничих процесів” 2003 та 2004 років (м.Хмельницький), 7-а і 8-а Міжнародна науково-технічна конференція “Контроль і управління в складних системах” 2003 та 2005 років (м.Вінниця), Міжнародна науково-практична конференція “Комп’ютерні системи в автоматизації виробничих процесів” 2005 та 2007 років (м.Хмельницький), Third IEEE Workshop on Intelligent Data Acquisition and Advanced Computing Systems: Technology and Applications IDAACS-2005 (м.Софія, Болгарія), Міжнародна науково-технічна конференція “Інтегровані комп’ютерні технології в машинобудуванні ІКТМ-2005” (м.Харків), 1-а Міжнародна науково-технічна конференція “Гарантоспособные и безопасные системы, сервисы и технологии DeSSerT-2006” (м. Полтава), 9-а Міжнародна конференція TCSET-2006 (м.Славське-Львів), 7-а Міжнародна науково-практична конференція “Современные информационные и электронные технологии” (м.Одеса), 7-а Міжнародна науково-технічна конференція “Искусственный интеллект. Интеллектуальные и многопроцессорные системы. ИИ ИМС-2006” (м.Кацивелі), 2-а Міжнародна науково-технічна конференція “Гарантоспособные и безопасные системы, сервисы и технологии DeSSerT-2007” (м. Кіровоград), 8-а Міжнародна науково-практична конференція “Современные информационные и электронные технологии” (м.Одеса), а також на міжкафедральних семінарах факультету комп’ютерної інженерії та радіоелектроніки, факультету комп’ютерних систем та програмування.

Публікації. Основні матеріали дисертації викладено в 23 наукових публікаціях, серед яких 12 статей у фахових виданнях, що входять до переліку фахових видань ВАК України.

Структура дисертації. Дисертація складається зі вступу, чотирьох розділів та висновків, викладених на 120 сторінках основного тексту, списку використаних джерел (132 найменування). Робота містить 48 рисунків; 7 таблиць та 5 додатків.

ОСНОВНИЙ ЗМІСТ РОБОТИ

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

В першому розділі проведено аналіз процесу діагностування програмного забезпечення (ПЗ), розглянуто складові діагностування ПЗ; виділено особливості і виконано порівняльний аналіз методів діагностування ПЗ.

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

Детально розглянуто типи і методи тестування ПЗ. Виділено переваги та недоліки кожного з методів тестування ПЗ. Розглянуто типи помилок, які виявляються при тестуванні тим чи іншим методом.

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

В другому розділі викладено концепцію підвищення достовірності тестування ПЗ та категорійну модель процесу повторного тестування ПЗ на базі НІТ.

Спираючись на проведений в першому розділі аналіз механізму виникнення відмов ПЗ на основі прихованості помилок, було введено наступні визначення.

Визначення 1. Прихованою помилкою назвемо будь-яку помилку ПЗ, що залишилась у програмному продукті після його тестування у процесі розроблення та налагодження.

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

Визначення 2. Основним тестуванням вважатимемо тестування дефектів (помилок), яке здійснюється на етапах розроблення та налагодження ПЗ і є частковою складовою цих процесів.

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

Основні задачі повторного тестування ПЗ:

1)

виявлення максимальної кількості прихованих помилок з метою їх подальшого усунення. Приховані помилки виявляються відомими методами тестування;

2)

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

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

Проведемо уточнення розподілу помилок ПЗ щодо опису прихованих помилок. Всі приховані помилки розподілимо за видами на незначні (НПП), помірні (ППП), серйозні (СПП) та катастрофічні (КПП).

Визначення 4. Незначними прихованими помилками (НПП) програмного забезпечення вважатимемо такі, що не впливають на дії користувача, програмний продукт з їх наявністю придатний для використання.

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

Визначення 6. Серйозними прихованими помилками (СПП) програмного забезпечення вважатимемо такі, що призводять до помилкових результатів, внаслідок чого програмний продукт непридатний до використання.

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

Незначним прихованим помилкам присвоїмо найнижчий рівень категорійності – перший. Помірним прихованим помилкам присвоїмо, відповідно, рівень 2; серйозним – рівень 3. Найвищим рівнем вважатимемо катастрофічний – рівень 4. Таким чином, рівнів прихованих помилок буде чотири.

Припустимо, що певна множина незначних помилок (НПП) призводить до появи підмножини окремих типів помірних помилок (ППП), які, в свою чергу, призводять до появи певної підмножини серйозних помилок (СПП), а вони, відповідно, до - катастрофічних помилок (КПП).

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

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

На основі запропонованої концепції підвищення достовірності тестування розробимо математичну модель процесу повторного тестування, поклавши в її основу штучну нейронну мережу (ШНМ) типу прямонапрямленого персептрону.

Вибір апарату ШНМ мотивований тим, що штучні нейронні мережі дають можливість враховувати важливість (ваги) кожного типу неприхованих та прихованих помилок, пороги граничної кількості допустимих помилок кожної категорії, взаємний вплив прихованих помилок одних типів на помилки інших типів.

Задачею повторного тестування є визначення ваг впливу помилок різних типів однієї категорії на помилки іншої категорії, причиною яких є помилки попередніх категорій. Ця задача вирішена методом навчання ШНМ.

Відобразимо зазначений підхід узагальненою складною ШНМ, в якій структура багатошарового персептрона типу MLP (multi-layer-perceptron) поєднується зі структурою простого персептрона Розенблатта. Структура цієї ШНМ представлена на рис.1.

Число нейронів (і відповідно входів) ефекторного шару, які зв’язані з сумуючим нейроном персептрона Розенблатта, визначено множиною , де - -й нейрон (вхід) ефекторного шару.

Число нейронів першого асоціативного (прихованого) шару прямонапрямленого персептрона визначено множиною: , де - -й нейрон шару . Кількість рецепторних входів цього шару визначено множиною: , де - -й вхід, пов’язаний з -м нейроном.

Ваги зв’язків відображено ваговими матрицями:

,

де - ваговий коефіцієнт зв’язку між -м нейроном і нейроном ; - кількість нейронів, що мають зв’язок з нейроном .

Множина вихідних функціоналів другого шару персептрона Розенблатта: , а множина вихідних функціоналів ефекторного шару MLP дорівнює: , де - -й функціонал ефекторного шару багатошарового прямонапрямленого персептрону.

Функціонал ШНМ визначиться за формулою:

.

Рис.1. Категорійна модель на базі ШНМ, що відображає зв’язок

помилок ПЗ різних категорій

Визначимо функціонал ШНМ:

де - активаційна функція нейронів прихованого шару ; - вихідне значення активності -го нейрона прихованого шару ; - ваговий коефіцієнт зв’язку між -ми нейронами прихованого шару ШНМ і прихованого шару ; - -й вхід ШНМ, який безпосередньо пов’язаний з -м нейроном шару ; - ваговий коефіцієнт зв’язку між входом і -м нейроном шару ; - ваговий коефіцієнт зв’язку між -м нейроном шару і нейроном .

Активаційною функцією нейронів прихованих (асоціативних) шарів є функція гіперболічного тангенсу. Активаційною функцією нейронів ефекторних шарів є лінійна функція. Результати лінійної активаційної функції нейронів ефекторних шарів лежать в інтервалі [-1; 1]. Нас цікавлять результати у вигляді 1 або 0 (відповідно є помилка і-го рівня категорійності чи немає), тому здійснюється перетворення (заокруглення) результатів наступним чином:

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

За критерій достовірності процесу ідентифікації помилок ПЗ приймемо кількість виявлених помилок згідно запропонованої моделі. Тоді загальна кількість помилок N визначиться як сума всіх виявлених помилок:

.

Достовірність процесу ідентифікації прихованих помилок ПЗ шляхом повторного тестування дорівнюватиме:

,

де - множина коефіцієнтів нормування категорійності прихованих помилок.

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

Для згаданих раніше чотирьох рівнів категорійності:

.

З -ї вибірки одержано наступні значення величин для визначення достовірності процесу повторного тестування (табл. 2).

Таблиця 2

Значення величин для визначення достовірності повторного тестування

№ експ.

1 | 28 | 16 | 10 | 4 | 6 | 4 | 2

2 | 32 | 20 | 10 | 6 | 8 | 6 | 2

3 | 46 | 28 | 14 | 8 | 10 | 6 | 4

4 | 50 | 30 | 18 | 10 | 12 | 8 | 2

Експертним шляхом присвоїмо наступні значення коефіцієнтам нормування категорійності прихованих помилок: ; ; ; .

Достовірність процесу виявлення прихованих помилок при повторному тестуванні з -ї вибірки представлена на графіку (рис.2).

Підвищення достовірності процесу ідентифікації прихованих помилок дорівнюватиме:

Рис.2. Гістограма підвищення достовірності

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

Врахування впливу помилок попередніх рівнів категорійності підвищило достовірність процесу виявлення прихованих помилок на 15-28%.

В третьому розділі розроблено метод ідентифікації прихованих помилок ПЗ на основі ШНМ, алгоритм ідентифікації прихованих помилок ПЗ, методику формування бази знань, метод та алгоритм формування висновку про необхідність та метод повторного тестування ПЗ. Описано структуру та програмну реалізацію моделі ШНМ в пакеті Matlab, досліджено процес навчання і тестування ШНМ.

Метод ідентифікації прихованих помилок ПЗ на основі нейромережних інформаційних технологій. Вхідними даними для реалізації повторного тестування є інформація про типи помилок (множина ), виявлених під час основного тестування, та методи (множина ) і операції, що були застосовані для їх виявлення (множина ). Ця інформація береться із звітів про результати основного тестування, які надаються тестувальником у вигляді журналу “Метод тестування – Операція, яка виконується під час тестування – Результат операції (тип виявленої помилки)”.

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

Далі аналогічним чином піддаються перетворенню в кількісне представлення -й та -й елементи матриці .

Після одержання кількісного представлення значень кожного елемента матриці формується набір вхідних векторів для ШНМ. На вхід подається 1, якщо використовувався відповідний для -го рівня категорійності метод основного тестування. На вхід подається номер -ї операції основного тестування (-й елемент матриці ), на вхід подається номер -го типу виявленої під час основного тестування помилки (-й елемент матриці ). На всі інші входи подається “0”.

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

На основі представленого методу ідентифікації прихованих помилок побудовано алгоритм ідентифікації прихованих помилок програмного забезпечення, блок-схема якого представлена на рис.3.

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

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

Правило 2. Якщо висновок про необхідність повторного тестування прийнятий по перевищенню порога кількістю помилок -го рівня категорійності, то повторне тестування слід здійснювати методами і операціями, які виявляють помилки типу .

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

Аналіз правил формування висновку про необхідність повторного тестування відбувається наступним чином. В множині правил типу “якщо-то” шукаємо правило для кожного з елементів множини . Якщо значення елемента множини задовольняє умові лівої частини правила, то це правило заноситься в множину обраних правил . Якщо кількість відібраних правил , то робиться висновок про те, що повторне тестування необхідне.

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

ні

так

Рис. 3. Алгоритм повторного тестування прикладного програмного забезпечення

В пакеті Matlab було виконано програмну реалізацію моделі ШНМ. Оператор gensim(net) дає змогу одержати модель в пакеті Simulink (рис.4).

Рис. 4. Структурна схема шарів ШНМ в пакеті Simulink

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

Мінімальна похибка, яку було досягнуто при використанні комбінованого критерію якості навчання та масштабованої навчальної вибірки з 2250 векторів, становить 0.448359. Меншої похибки навчання досягати не потрібно, оскільки виходи мережі, які знаходяться в інтервалі [-1; 1] перетворюються для представлення цілими значеннями 1 або 0 (є чи немає помилки і-го рівня категорійності відповідно).

Для тестування ШНМ було побудовано тестову вибірку з 200 векторів, яка також підлягала масштабуванню. Процес навчання і тестування різними алгоритмами навчання з використанням комбінованого критерію якості відображається на рис. 5, 6. На рисунках нижня крива відображає графік навчання, а верхня крива відображає графік тестування ШНМ.

Аналізуючи графіки навчання і тестування ШНМ, можна зробити висновок, що для навчання мережі найкраще підходить алгоритм навчання CGB на основі метода спряженого градієнта з оберненим поширенням і рестартами в модифікації Пауела-Біеле та його модифікації (алгоритм навчання Флетчера-Рівса або алгоритм навчання Полака-Рібейри) з використанням комбінованого критерію оцінки якості навчання.

Рис. 5. Графіки навчання і тестування ШНМ за алгоритмом навчання SCG

 

Рис. 6. Графіки навчання і тестування ШНМ за алгоритмом навчання CGB

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

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

Систему ідентифікації прихованих помилок програмного забезпечення було реалізовано в Borland C++ Builder 6.0.

ВИСНОВКИ

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

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

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

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

4. Вперше одержано категорійну модель підвищення достовірності процесу тестування ПЗ на базі ШНМ, котра відрізняється від відомих тим, що в ній враховується вплив прихованих помилок різних типів попередньої категорії на виникнення помилок наступної категорії. Це дає можливість оцінити сумарний вплив помилок цієї категорії на якість ПЗ і зробити висновок щодо необхідності повторного тестування ПЗ.

5. Удосконалено метод оцінки достовірності ідентифікації прихованих помилок ПЗ. Досліджено, що підвищення достовірності буде тим більше, чим більше буде виявлено прихованих помилок, що впливають на виникнення помилок на наступному рівні категорійності. У розглянутому в дисертаційній роботі прикладі підвищення достовірності склало від 15 до 28%.

6. Вперше одержано метод ідентифікації прихованих помилок ПЗ на основі НІТ, суть якого полягає у виявленні множини типів прихованих помилок різних рівнів категорійності та аналізу цієї множини на предмет необхідності повторного тестування. Метод відрізняється від відомих тим, що вхідна інформація про результати основного тестування опрацьовується ШНМ, яка відповідає моделі процесу повторного тестування.

7. Розроблено алгоритм ідентифікації прихованих помилок програмного забезпечення, який базується на методі ідентифікації прихованих помилок ПЗ, розробленому на основі ШНМ, і надає висновок щодо необхідності та методу повторного тестування на основі звіту про основне тестування.

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

9. На підставі евристичних оцінок визначено величини порогових значень кількостей помилок рівнів категорійності: 1-й рівень категорійності – 75% і більше від загальної кількості виявлених помилок; 2-й рівень категорійності – 50% і більше від загальної кількості виявлених помилок; 3-й рівень категорійності – 2 і більше помилок; 4-й рівень категорійності – 1 і більше помилок.

10. На основі методу та алгоритмів ідентифікації прихованих помилок розроблено програмну реалізацію системи ідентифікації прихованих помилок програмного забезпечення, котра дає рекомендації користувачу щодо доцільності та методів повторного тестування ПЗ. Результати дослідження впроваджені на ВАТ “Укртелеком”, ТОВ “СТУ-Електронікс” та в навчальному процесі на кафедрі системного програмування Хмельницького національного університету.

СПИСОК ОПУБЛІКОВАНИХ ПРАЦЬ ЗА ТЕМОЮ ДИСЕРТАЦІЇ

1. Локазюк В.М., Пантелєєва Т.О. Аналіз методів тестування та модель життєвого циклу прикладного програмного забезпечення // Вісник ВПІ – Вінниця, 2003. – №6, с. 311 – 317

2. Локазюк В.М., Пантелєєва Т.О. Методи діагностування програмного забезпечення сучасних комп’ютерних систем // Міжнародний науково-технічний журнал “Вимірювальна та обчислювальна техніка в технологічних процесах” – Хмельницький, 2003. - №2, с. 122 – 128

3. Локазюк В.М., Пантелєєва Т.О. Категорійна модель процесу повторного тестування дефектів програмного забезпечення // Вісник ТУП – Хмельницький: ТУП, 2004. – ч.1, т.1, с. 53 – 58.

4. Говорущенко Т.О. Оцінка ефективності виявлення прихованих помилок у програмному забезпеченні // Вісник Хмельницького національного університету – Хмельницький, 2005. – ч.1, т.2, с. 190 – 195

5. Говорущенко Т.О. Система повторного тестування програмного забезпечення // Радіоелектронні і комп’ютерні системи (РЕКС) – Харків: НАУ “ХАІ”, 2005. - №4, с.120-126

6. Локазюк В.М., Говорущенко Т.О. Моделювання процесу повторного тестування програмного забезпечення // Інформаційні технології та комп’ютерна інженерія – Вінниця: ВНТУ, 2005. - №3, с.234-240

7. Govoruschenko T.O. Determination of Necessity and Advisable Method(s) of Repeated Application Software Testing // Радіоелектронні і комп’ютерні системи (РЕКС) – Харків: НАУ “ХАІ”, 2006 – №6, с.136-141

8. Говорущенко Т.О. Інтелектуальна система визначення необхідності повторного тестування програмного забезпечення // Искусственный интеллект – Донецьк: ІПШІ, 2006. - №4, с.706-712

9. Локазюк В.М., Поморова О.В., Говорущенко Т.О. Імітаційна модель системи повторного тестування програмного забезпечення // Вісник ХНУ – Хмельницький: ХНУ, 2006. – № 6, с.65-72

10. Govoruschenko T.O. Model of decision maker of repeated application software testing system // Радіоелектронні і комп’ютерні системи (РЕКС) – Харків: НАУ “ХАІ”, 2007 – № 7, с.191-198

11. Говорущенко Т.О. Дослідження моделі вирішувача системи повторного тестування прикладного програмного забезпечення // Вісник ХНУ – Хмельницький: ХНУ, 2007 - №3, т.1, с.236-244

12. Говорущенко Т.О. Реалізація та функціювання системи повторного тестування прикладного програмного забезпечення // Вісник ХНУ – Хмельницький: ХНУ, 2007 - №2, т.2, с. 113-120

13. Пантелєєва Т.О. Аналіз методів тестування прикладного програмного забезпечення // НАУКА І МОЛОДЬ. Збірник наукових праць міжнародної наукової конференції – Київ: НАУ, 2003. – с. 121 – 124

14. Локазюк В.М., Пантелєєва Т.О. Недоліки методів діагностування прикладних програмних додатків // Збірник наукових праць за результатами МНПК “Мікропроцесорні пристрої та системи в автоматизації виробничих процесів” – Хмельницький, 2003.– с.85–89

15. Локазюк В.М., Пантелєєва Т.О. Методи діагностування прикладного програмного забезпечення // Академический вестник КрТО МАКНС – Кривий Ріг: КрТО МАКНС, 2004. - №13, с. 53 – 57

16. Lokazyuk V.M., Govoruschenko T.O. Category Model of Process of Repeated Software Testing // Proceedings of the Third IEEE Workshop on IDAACS: Technology and Applications. – Sofia, Bulgaria, 2005. – p.241-245

17. Пантелєєва Т.О. Аналіз методів тестування та модель життєвого циклу прикладного програмного забезпечення // Контроль і управління в складних системах. Тези доповідей 7-ї МНТК – Вінниця, 2003. – с. 35

18. Локазюк В.М., Говорущенко Т.О. Імітаційне моделювання процесу повторного тестування програмного забезпечення // Контроль і управління в складних системах. Тези доповідей 8-ї міжнародної науково-технічної конференції – Вінниця: УНІВЕРСУМ-Вінниця, 2005. – с.130

19. Говорущенко Т.О. Система повторного тестування програмного забезпечення // Міжнародна науково-технічна конференція “Інтегровані комп’ютерна технології в машинобудуванні ІКТМ-2005”. Тези доповідей. – Харків: НАУ “ХАІ” – с.267-268

20. Govoruschenko T.O. Forming Logical Deduction Technique of Repeated Software Testing System // Modern Problems of Radio Engineering, Telecommunications and Computer Science. Proceedings of the IX-th International Conference TCSET’2006 – Lviv: Lviv Polytechnic, 2006. – p.580-581

21. Говорущенко Т.О. Повторне тестування програмного забезпечення // Труды 7-й МНПК “Современные информационные и электронные технологии”. – Одеса: Редакция журнала “ТКЭА”, 2006 р. – том 1, с. 158

22. Говорущенко Т.О. Інтелектуальна система підтримки прийняття рішення про необхідність повторного тестування програмного забезпечення // Материалы 7-й МНТК “ИИ ИМС - 2006”. – Таганрог: Изд-во ТРТУ, 2006. – том 2, с. 147-150

23. Говорущенко Т.О. Імітаційне моделювання вирішувача системи повторного тестування прикладного програмного забезпечення // Труды 8-й МНПК“Современные информационные и электронные технологии”. – Одеса: Редакция журнала “ТКЭА”, 2007 р. – с.65

АНОТАЦІЇ

Говорущенко Т.О. Підвищення достовірності процесу тестування програмних продуктів на основі нейромережних інформаційних технологій. – Рукопис.

Дисертація на здобуття наукового ступеня кандидата технічних наук за спеціальністю 05.13.06 – Автоматизовані системи управління та прогресивні інформаційні технології. – Національний університет “Львівська політехніка”, Львів, 2007.

Дисертація присвячена вирішенню актуальної науково-технічної задачі – підвищення достовірності процесу тестування ПЗ шляхом використання апарату штучних нейронних мереж.

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

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

Говорущенко Т.А. Повышение достоверности процесса тестирования программных продуктов на основе нейросетевых информационных технологий. – Рукопись.

Диссертация на соискание ученой степени кандидата технических наук по специальности 05.13.06 – Автоматизированные системы управления и прогрессивные информационные технологии. – Национальный университет “Львовская политехника”, Львов, 2007.

Диссертация посвящена решению актуальной научно-технической задачи – повышение достоверности процесса тестирования программного обеспечения с помощью аппарата искусственных нейронных сетей (ИНС).

В ходе исследования был проведен анализ методов и подходов к тестированию ПО и определены направления их усовершенствования, в том числе за счет поиска и идентификации скрытых ошибок.

В диссертационной работе получила дальнейшее развитие концептуальная модель повышения достоверности тестирования ПО за счет выявления скрытых ошибок разных типов при повторном тестировании ПО.

Получена категорийная модель процесса повторного тестирования ПО на базе ИНС, которая учитывает влияние скрытых ошибок предыдущей категории на появление ошибок следующей категории.

Разработан метод идентификации скрытых ошибок ПО на основе ИНС, который отличается от известных тем, что входная информация о результатах основного тестирования обрабатывается ИНС.

Усовершенствован метод оценки достоверности выявления скрытых ошибок ПО, который учитывает количество выявленных скрытых ошибок разных типов категорийности и дает возможность определять прирост достоверности процесса тестирования в сравнении с неучитыванием количества выявленных скрытых ошибок.

Ключевые слова: тестирование ПО, скрытая ошибка, идентифкация скрытых ошибок, повторное тестирование, уровень категорийности скрытой ошибки, искусственная нейронная сеть.

Govoruschenko T.O. Software testing process reliability increasing on basis of neurоnet information technologies. – Typescript.

Thesis for candidate degree by specialty 05.13.06 – Automatic control system and progressive information technologies. – National University “Lvivska Polytechnika”, Lviv, 2007.

Dissertation is dedicated to the decision of actual scientific and technical task – software testing process reliability increasing by ANN using.

In dissertation conceptual model of software testing reliability increasing at the expense of hidden software mistakes identification by repeated software testing was developed.

Category neuronet model of repeated software testing process, which take into account influence of previous category hidden mistakes on appearance of next category hidden mistakes, was received.

Software hidden mistakes identification neuronet technique, which differs from previous techniques that, what entrance information about basic testing results being operated on artificial neural network (ANN), was developed.

Technique of evaluation of software hidden mistakes identification reliability, which takes into account finding hidden mistakes quantity of different category levels and gives a chance to determine software testing process reliability increase in comparison with finding hidden mistakes quantity non-considering, was improved.

Keywords: application software testing, hidden mistake, hidden mistakes identification, repeated software testing, hidden


Сторінки: 1 2





Наступні 7 робіт по вашій темі:

Характеристика нейрогуморального статусу і вітамінного забезпечення дітей, що перенесли гостру нейроінфекцію та особливості їх реабілітації - Автореферат - 26 Стр.
ТЕХНІЧНА ПІДГОТОВКА СПОРТСМЕНІВ-ТАНЦЮРИСТІВ НА ОСНОВІ ПІДВІДНИХ ВПРАВ ТА ОПОРНИХ ТОЧОК ФІГУР ПРОГРАМИ STUDENT - Автореферат - 27 Стр.
ОСОБЛИВОСТІ ПСИХІЧНОГО ЗДОРОВ’Я В ОСІБ ІЗ “СОМАТОГЕННОЮ ФРУСТРАЦІЄЮ” ( на прикладі хворих на остеохондроз) - Автореферат - 27 Стр.
ДЕРЖАВНЕ ГАРАНТУВАННЯ ІНОЗЕМНОГО ІНВЕСТУВАННЯ В МАШИНОБУДУВАННІ - Автореферат - 32 Стр.
РЕГУЛЯЦІЯ ФІБРИНОЛІЗУ НЕКАТАЛІТИЧНИМИ ДІЛЯНКАМИ МОЛЕКУЛ ПЛАЗМІНОГЕНУ/ПЛАЗМІНУ - Автореферат - 56 Стр.
ФОРМУВАННЯ КУЛЬТУРИ ПРОФЕСІЙНОГО МОВЛЕННЯ МАЙБУТНІХ ПРАЦІВНИКІВ ОРГАНІВ ВНУТРІШНІХ СПРАВ - Автореферат - 26 Стр.
ВЕРИФІКАЦІЯ ДИНАМІЧНИХ ПАРАМЕТРІВ ЕЛЕКТРОННИХ ПРИСТРОЇВ НА ОСНОВІ K-ЗНАЧНОГО МОДЕЛЮВАННЯ - Автореферат - 25 Стр.