- •Понятие программного обеспечения
- •Понятие программного изделия
- •Требования к программному изделию
- •Жизненнный цикл программного продукта
- •Метод декомпозиции модулей
- •Отладка и сопровождение программных продуктов ошибки программного обеспечения
- •Методы отладки
- •Интегрированный отладчик delphi
- •Тестирование. Принципы тестирования
- •Тестирование правильности
- •Системное тестирование
- •Метод покрытия условий
- •Анализ граничных значений
- •Система классификации информации
- •3 Уровень-
- •Комерч-й
- •Классификация методов кодирования информации
- •Классификаторы и их применение
- •Постановка задачи
- •Роль пользователя в создании аис и аит и постановке задач
- •План постановки задачи
- •Концептуальная структура предметной области
- •Инструментальные средства для поддержки методологий проектирования
Отладка и сопровождение программных продуктов ошибки программного обеспечения
Отладка - локализация и устранение ошибок. Отладка - следствие успешного тестирования. Это значит, что если тестовый вариант (тест) обнаружит ошибку, то процесс отладки уничтожает ее.
Т. е. процессу отладки предшествует выполнение тестового варианта. Его результаты оцениваются, регистрируются несоответствия между ожидаемыми и реальными результатами. Несоответствие - симптом скрытой причины. Процесс отладки пытается сопоставить симптом с причиной, вследствие чего ошибка устраняется.
2 исхода процесса отладки:
причина, найдена, исправлена, уничтожена;
причина не найдена.
Во 2-м случае отладчик может предполагать причину, для проверки которой он просит разработать дополнительный тестовый вариант, который поможет проверить предположение.
Способы проявления ошибок:
- программа завершается нормально, но выдает неверные результаты;
- программа зависает;
- программа завершается по прерыванию;
- программа завершается, выдает ожидаемые результаты, но хранимые/данные испорчены.
Характер проявления ошибок также может меняться. Симптом ошибок может быть:
постоянный
мерцающий
пороговый (проявляется при превышении некоторого порога в обработке)
отложенный (проявляется только после исправления маскирующих ошибок).
В ходе отладки мы встречаем ошибки в широком диапазоне: от мелких неприятностей до катастроф. Следствие увеличения ошибок - усиление давления на отладчика. Из-за этого давления разработчик устраняет одну ошибку и вносит две новые
Методы отладки
Существуют 2 метода отладки: аналитический и экспериментальный.
Аналитические методы базируются на анализе выходных данных для тестовых прогонов. Экспериментальные базируются на использовании вспомогательных средств отладки позволяющие уточнить характер поведения программы при тех или иных исходных данных.
Общая стратегия отладки - обратное прохождение от замеченного симптома ошибки к исходной аномалии (месту в программе, где ошибка была совершена). В простейшем случае место проявления симптома и ошибочный фрагмент совпадают. Но чаще они далеко отстоят друг от друга.
Цель отладки - найти оператор программы, при исполнении которого правильные аргументы приводят к неправильным результатам.
Если место проявления симптома ошибки не является искомой аномалией, то один из аргументов оператора должен быть неверным. Поэтому надо перейти к исследованию предыдущего оператора, выработавшему неверный аргумент. В итоге пошаговое обратное прослеживание приводит к искомому ошибочному месту. В разных методах прослеживание организуется по-разному:,
В аналитических методах - на основе логических заключений о поведении программы. Цель –шаг за шагом уменьшать область программы, подозреваемую в наличии ошибки. Здесь определяется корреляция между значениями выходных данных и особенностями поведения (программы). Основное достоинство аналитических методов отладки в том, что исходная программа остается без изменений.
В экспериментальных методах для прослеживания выполняется следующее:
выдача значений переменных в указанных точках
трассировка переменных (т.е. выдача их значений при каждом изменении)
трассировка потоков управления (имен вызываемых процедур меток, на которые передается управление, номера операторов перехода).
Преимущество экспериментальных методов отладки: основная рутинная работа по анализу процесса вычислений перекладывается на компьютер. Многие трансляторы имеют встроенные средства отладки для получения информации о ходе выполнения программы. Недостаток: в программу вносятся изменения, при исключении которых могут появиться ошибки.
Систематизируя ошибки в программе, их можно разделить на 2 больших класса: ошибки компиляции и времени исполнения.
Ошибки компиляции - как правило, ошибки синтаксические. Синтаксические ошибки обнаруживаются на этапе компиляции. Они возникают как результат невнимательности или технической погрешности (пропущена буква в идентификаторе, незакрытая кавычка, сдвоенные символы и т.д.). для исправления этих ошибок необходимо хорошо знать синтаксис языка. Гораздо труднее обнаружить и исправить ошибку, которая возникает во время исполнения программы. Такого рода ошибка может появиться в результате невнимательности программиста, но ее причиной может стать и различие в способах «мышления» машины и человека. Технические ошибки связаны с поставленными не в том месте знаками закрытия скобок или блоков, когда число открывающих и закрывающих символов совпадает. {Распространены ошибки копирования.}
Трассировка – пошаговое исполнение программы, при котором за один шаг выполняется все оператор одной строки с последующим ожиданием. Эффективнее работает для исходного текста, в котором в строке помещается не более 1 оператора
Могилев А.В,. с 301
Информатика