Главная Теоретический материал Лабораторные работы Задачи Тесты Контакты

Узбекское Агентство
Связи и Информатизации



Ташкентский Университет Информационных Технологий


Кафедра
«Программное обеспечение информационных технологий»

Направления:

5521900Информатика и
информационные технологии,
5523500Защита информации,
5523600Электронная коммерция,
5811200Сервис (информационный сервис),
5811300Сервис (электронные и
компьютерные технологии),
5320200Информатика и
библиотековедение,
5140900Профессиональное образование
(по направлению
информатика и
информационные технологии).


Преподаватель дисциплины



Доцент
Чернев Дмитрий Алексеевич

Ручная прокрутка программы

Ручная прокрутка программы, или проверка программы за сто­лом является универсальным и мощным, но весьма трудоемким средством проверки программы на ошибку и принадлежит к наиболее «старым» традициям в программировании. Этот метод характеризует неавтоматизированную, ручную деятельность прог­раммиста.

К этому методу наиболее часто относят:

-   анализ листинга программы на наличие ошибок;

-   выполнение расчетов для проверки точности результатов;

-   «игру за машину», т.е. выполнение программы вручную вместо ЭВМ.

Эти три процесса позволяют уяснить и проверить логику программы (ошибки алгоритмизации) и поток данных.

Ручная прокрутка программы наиболее эффективна, когда ошибка локализована достаточно точно, но почему-то не выяв­ляется другими приемами.

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

Обратное отслеживание идентификаторов - это ответ на вопрос «где случилось?» и отчасти «почему случилось?». Ошибка проявляется между последней правильно отработавшей и первой, неправильно отработавшей печатью. Этот фрагмент программы является стартовой точкой поиска ошибки и поэтому подлежит исследованию, хотя сама ошибка чаще всего может находиться в другом месте. При отслеживании идентификаторов следует посто­янно контролировать описания, т.к. неправильное описание переменных вызывает преобразование присваиваемых значений.

Во время ручной прокрутки программы выписываются все идентификаторы, работающие в данном месте программы и их значения.

При каждом изменении значения идентификатора старое значение зачеркивается и на его месте или рядом запи­сывается новое значение. В частности, будут обнаружены неопределенные переменные, лишние переменные и неверные пре­образования их типов. Для массивов можно нарисовать рамку, содержащую нужное количество позиций. Тогда при ошибке типа выхода индекса за границу массива это будет сразу обнаружено, т.к. очередное значение придется брать или записывать за грани­цами этой рамки.

Во время анализа листинга программы необходимо придер­живаться концепций контроля утверждений. Утверждение — это предложение, устанавливающее некоторый факт. В программном смысле - это установление истины в процессе выполнения программы. «Локальное» утверждение должно быть истинным в точке его описания, «глобальное» утверждение — в любой точке программы.


Назад


Главная Теоретический материал Лабораторные работы Тесты Контакты