Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции кошкин.doc
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
667.65 Кб
Скачать

Автоматизация процедуры компиляции.

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

Тестовое по. Основные принципы построения тестового по.

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

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

  2. Планирование тестирования на всех уровнях развития программы. Каждый этап при разработке программы должен учитывать возможность тестирования в разрабатываемой программе. Т. е. если программа уже создана начинать тестирование поздно. Разработка тестовых программ начинается одновременно с разработкой программы. Используют специальные языки для автоматизации разработки тестовых программ. В целом процедуры написания тестовых программ пока не формализованы.

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

  4. Логическое упрощение программ. Проверить работоспособность программы возможно путем испытаний ее, то есть выполнения. В сложных программах для проверки применяют упрощенный алгоритм работы программ. Обычно схемы редактирования предусматривают те же блок-схемы, таблицы, на основании которых просматривается рабочая программа. До конца процесс не формализован. Основной критерий при использовании упрощенных программ — статистика.

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