Метод прогнозирования дефектов в компонентах программного обеспечения на основе метрик исходного кода

Метод прогнозирования дефектов в компонентах программного обеспечения на основе метрик исходного кода

Автор: Кирносенко, Семён Игоревич

Шифр специальности: 05.13.01

Научная степень: Кандидатская

Год защиты: 2012

Место защиты: Волгоград

Количество страниц: 169 с. ил.

Артикул: 5501723

Автор: Кирносенко, Семён Игоревич

Стоимость: 250 руб.

Метод прогнозирования дефектов в компонентах программного обеспечения на основе метрик исходного кода  Метод прогнозирования дефектов в компонентах программного обеспечения на основе метрик исходного кода 

Оглавление
Введение .
Глава 1. Методы прогнозирования дефектов
1.1. Методы на основе теории наджности.
1.1.1. Модель Миллса.
1.1.2. Модель Нельсона.
1.1.3. Модел и роста наджности
1.1.4. Общие недостатки .
1.2. Методы на основе статистических моделей
1.2.1. Регрессионные модели
1.2.2. Методы на основе алгоритмов машинного обучения . .
1.2.3. Методы на основе нечткой логики и нейронных сетей .
1.2.4. Общие недостатки .
1.3. Методы на основе специфичных источников данных.
1.3.1. Общие недостатки .
1.4. Дефекты и их причины.
1.5. Подходы к прогнозированию дефектов.
1.6. Источники данных
1.7. Актуальные проблемы .
1.8. Выводы.
Глава 2. Новый метод прогнозирования дефектов.
2.1. Требования к методу
2.2. Математическая модель
2.3. Базовый метод прогнозирования дефектов.
2.4. Модификации базового метода
2.4.1. Оценка вероятности Р0чЬ
2.4.2. Оценка вероятности Ррр
2.4.3. Получение распределения времени жизни дефектов . .
2.4.4. Учт метрик отдельных подмножеств исходного кода .
2.4.5. Учт числа необнаруженных дефектов
2.5. Выводы
Глава 3. Программная реализация.
3.1. Промежуточное представление данных
3.1.1. Требования к промежуточному представлению.
3.1.2. Ранее предложенные промежуточные представления . .
3.1.3. Проектирование нового промежуточного представления
3.2. Извлечение информации из систем контроля версий
3.3. Формирование сущностей промежуточного представления .
3.3.1. Перевод информации об изменении.
3.3.2. Перевод информации об исправлении
3.3.3. Перевод информации о файлах.
3.3.4. Перевод информации о модификациях.
3.3.5. Перевод информации о блоках кода .
3.3.6. Контроль корректности
3.4. Расчт метрик.
3.4.1. Количество строк исходного кода.
3.4.2. Количество строк дефектного исходного кода
3.4.3. Количество исправленных дефектов
3.4.4. Плотность дефектов
3.4.5. Время жизни дефекта.
3.4.6. Время стабилизации исходного кода.
3.4.7. Востребованность исходного кода.
3.4.8. Специализация разработчика.
3.5. Набор утилит .
3.6. Выводы.
Глава 4. Эксперимент
4.1. Методика эксперимента
4.1.1. Экспериментальные данные.
4.1.2. Оценка точности прогнозирования
4.1.3. Формулирование и проверка статистических гипотез . .
4.2. Оценка точности прогнозирования базового метода
4.3. Модификации базового метода
4.3.1. Оценка вероятности .
4.3.2. Оценка вероятности i.
4.3.3. Получение распределения времени жизни дефектов . .
4.3.4. Учт метрик отдельных подмножеств исходного кода .
4.3.5. Учт числа необнаруженных дефектов.
4.3.6. Выбор порога отсечения.
4.4. Результирующий метод.
4.4.1. Сравнение с существующими методами
4.4.2. Ограничения применения
4.4.3. Перспективы дальнейшего улучшения метода.
4.4.4. Выводы о точности
4.5. Выводы.
Заключение
Список литературы


Липецк: Издательский центр «Де-факто», . С. -. Кирносенко, С. И. Классификация ревизий в системах контроля версий // Теоретические вопросы разработки, внедрения и эксплуатации программных средств: материалы Всероссийской научно-практической конференции. Орск: Издательство ОГТИ, . С. -. Структура и объем диссертации. Диссертация состоит из введения, четырёх глав и заключении. Содержание работы изложено на 9 страницах машинописного текста. Работа иллюстрирована рисунками и содержит таблиц. Список литературы включает 1 наименование, в том числе отечественных. Существует множество методов, которые в том или ином виде ПОЗВОЛЯЮТ получать прогностическую информацию о дефектах. Обычно эти методы позволяют с некоторой точностью ответить на два наиболее важных вопроса: сколько в программном обеспечении осталось необнаруженных дефектов и каково их распределение между отдельными программными компонентами. Ответ на первый вопрос важен для принятия решения о завершении стадии тестирования. Ответ на второй позволяет выбрать стратегию распределения ресурсов тестирования таким образом, чтобы наилучшему тестированию подвергались те компоненты, для которых наиболее высока вероятность наличия дефектов. Классификация существующих методов прогнозирования дефектов может быть выполнена различными способами. Другой способ классификации заключается в разделении на методы, в основе которых измерение метрик исходного кода, метрик тестирования или метрик организации процесса разработки [3]. Также классификация может быть выполнена по различным классифицирующим признакам, таким как структура программы, сложность реализации, структура пространства входных данных [4]. В данной работе классификация методов прогнозирования дефектов осуществляется натри класса в зависимости от особенностей и ограничений применения конкретных методов. Эти три класса включают методы на основе теории надёжности, методы на основе статистических моделей и методы на основе специфичных источников данных. Сразу после того, как проблема оценки надёжности программного обеспечения и в частности прогнозирования дефектов стала актуальна, был предложен ряд методов, которые в том или ином виде позволяли делать прогнозы относительно дефектов. Обычно эти методы основывались либо на простых и интуитивных математических моделях, либо на известных моделях из теории надёжности аппаратуры [5]. Для применения этой модели, сначала программа «засоряется» некоторым количеством известных дефектов. Эти дефекты вносятся в программу случайным образом, а затем делается предположение, что для её собственных и внесённых дефектов вероятность обнаружения при последующем тестировании одинакова и зависит только от их количества. Тестируя программу в течение некоторого времени можно оценить N — изначальное число дефектов в программе. Пусть в программу было внесено 5 дефектов, после чего было начато тестирование. Пусть при тестировании было обнаружено п + V дефектов, причём п — число обнаруженных собственных дефектов, а V — число обнаруженных внесённых дефектов. Вторая часть модели связана с выдвижением и проверкой гипотез об N. Пусть в программе имеется не более к собственных дефектов. Внесём в неё ещё 5 дефектов. Теперь программа тестируется, пока не будут обнаружены все внесённые дефекты, причём в этот момент подсчитывается число обнаруженных собственных дефектов п. ЗТШ при п < к. Величина С является мерой доверия к модели; это вероятность того, что модель будет правильно отклонять ложное предположение. Например, если утверждается, что в программе нет дефектов (к = 0) и внесённые в программу 4 дефекта были обнаружены, а исходных дефектов обнаружено не было, то С = 0. Чтобы достичь уровня в % понадобилось бы внести в программу дефектов. Формулы 1. Модель Миллса одновременно математически проста и интуитивно привлекательна. Процесс внесения дефектов является её самым слабым местом, поскольку предполагается, что для собственных и внесённых дефектов вероятность обнаружения одинакова, что трудно гарантировать на практике [5].

Рекомендуемые диссертации данного раздела

28.06.2016

+ 100 бесплатных диссертаций

Дорогие друзья, в раздел "Бесплатные диссертации" добавлено 100 новых диссертаций. Желаем новых научных ...

15.02.2015

Добавлено 41611 диссертаций РГБ

В каталог сайта http://new-disser.ru добавлено новые диссертации РГБ 2013-2014 года. Желаем новых научных ...


Все новости

Время генерации: 0.223, запросов: 244