Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Ответы на экзаменационные билеты_2 / Локализация и исправ. ошибок в процессе отладки

.txt
Скачиваний:
16
Добавлен:
28.06.2014
Размер:
3.1 Кб
Скачать
Ошибки в программе могут проявиться двумя способами:
1) во время выполнения программы в виде исключительных ситуаций,
2) после выполнения программы в виде неправильного решения.
Отладка - это процесс поиска и исправления ошибок в программе
Цель отладки - получение правильной программы, т.е. программы, в которой отсутствуют ошибки проекта. Ошибки проекта включают ошибки, которые могут возникнуть на всех этапах разработки программы.
Количество ошибок можно значительно сократить, если использовать методологию нисходящей разработки программ, которая включает в себя способы предупреждения ошибок.
Процесс отладки состоит из трех этапов:
- контроль правильности программы,
- локализация ошибок, обнаруженных в процессе контроля,
- исправление ошибок.

МЕТОД ТРАССИРОВКИ:
Цель метода - локализация ошибки, т.е. обнаружение точного места в программе, где находится источник ошибки. Суть этого метода состоит в пошаговом выполнении всех действий, которые предписаны программой.
Трассировка может являться способом визуального контроля и выполняться без помощи компьютера, а также может выполняться с помощью компьютера.
При визуальном контроле все действия в программе выполняются вручную. Значения всех промежуточных переменных записывают в таблицу. Столбцы таблицы соответствуют переменным программы, их имена указывают в заголовках столбцов. Ниже, по мере выполнения программы, записываются значения, которые эти переменные получают на каждом шаге. В конце концов, в таблице окажется весь протокол состояния переменных в ходе выполнения программы.
В качестве примера рассмотрим фрагмент программы: нахождение максимального значения в последовательности, которая вводится из файла fin.

fin
3 7 4

xmax:= -99;
while not eof (fin) do
begin read (fin,x);
if x>xmax then
xmax:= x;
end;

Табличка:
xmax -> x
-99 -> 3
3 -> 7
7 -> 4
7 -> -

Для того, чтобы локализовать методом трассировки ошибку, найденную при тестировании, можно сравнить результаты ручного просчета со значениями, получаемыми с помощью компьютера. Это можно сделать двумя способами:
1. Вставка в программу отладочной печати промежуточных данных.
2. Использование средств отладки Турбо Паскаля.
Рассмотрим способ 2. Для того, чтобы провести трассировку программы, надо:
- открыть отладочное окно Watch с помощью опции Debug/Watch;
- записать в отладочное окно имена интересующих переменных: для добавления каждой переменной надо установить опцию Debug/Add Watch (или Ctrl-F7), открывающую окно Add Watch, записать имя переменной и выполнить ОК.
Теперь можно выполнять трассировку, продвигаясь по программе с использованием функциональных клавиш F7, F8, F4 и следя за изменением значений переменных в окне Watch. При каждом нажатии F7 и F8 выполняется одна строка программы, но F8 обходит процедуры. При F4 начинается или продолжается выполнение программы до той строки, на которой стоит курсор.
Для тестирования логики программы используются методы структурного тестирования. Качество структурного тестирования определяется тем, насколько полно проверена логика программы. (метод тестовых счетчиков)