Главная страница Анализ эмпирических данных дартам программирования. По экспериментальным данным, такие ошибки в Проекте 3 составили 26,3%. Анализатор согласованности единиц измерения. Это средство обеспечивает проверку согласованности (и совместимости) единиц измерения, фигурирующих в тех или иных математических выражениях, с заранее заданными стандартными системами единиц. Область применения этого средства может быть расширена до масштабов проверки соответствия определений глобальных переменных нормам, установленным определенными стандартами проектирования, и хотя ошибки, поддающиеся обнаружению с помощью этого средства, составляют в Проекте 3 всего лишь 2,0%, оно особенно привлекательно потому, что в принципе может предотвращать ошибки и в то же самое время заставлять разработчиков более тщательно продумывать вопрос об определении данных. Опреде.гитель присваиваний и обращений. Основное назначение этого средства состоит в идентификации точек, в которых присваиваются значения определенным элементам данных, и выявлении пpoгpa , которые эти данные используют. Оно обеспечивает также получение информации о том, в каких программах имеются обращения к другим программам, и выдачу списков программ, обращающихся к данной. Кроме того, определитель присваиваний и обращений выявляет и идентифицирует переменные (как глобальные, так и локальные), которые объявлены, но не используются или которым не присвоены начальные значения, а также переменные, которые используются, не будучи объявленными. Это средство чрезвычайно полезно для обнаружения ошибок манипулирования данными (что-то похожее использовалось в Проектах 2 и 3). Фиксатор согласованности элементов. Любое средство, с помощью которого проверяется согласованность двух элементов программы (например, определений вызывающей последовательности), может быть названо фиксатором согласованности. Согласно полученной оценке, проверка согласованности элементов программы способна обеспечить устранение 10,7% всех ошибок. Динамический анализатор ветвей. Данное средство позволяет осуществлять идентификацию и выделение сегментов и ветвей программы и прослеживать ее исполнение с тем, чтобы определить, какие части программы участвуют в работе. Ценность этого вспомогательного средства становится особенно очевидной, если учесть, что с его домощью могут быть решены следующие задачи: - определение степени полноты тестирования; .- минимизация избыточности испытаний; - установление соответствия сегментов и ветвей программы конкретным функциям и требованиям; - определение необходимого объема повторных испытаний после исправления дефекта. Выше было показано, что такое средство следует применять в процессе всесторонних стендовых испытаний программного уровня, т. е. когда имеются наи-более богатые возможности для обнаружения программных ошибок. Использование динамического анализатора ветвей может оказаться особенно ценным на этапе компоновочных и системных испытаний, так как это позволяет установить степень полноты проведенных испытаний. Кроме того, применение данного средства крайне эффективно при проведении гарантийных испытаний, которые следуют за внесением изменений в программное обеспечение и имеют целью проверку правильности внесенных изменений, а также демонстрацию того факта, что прежние возможности конкретной программы не утрачены. Генератор тестовых данных. Стратегия всесторонних испытаний, предполагающая использование динамического анализатора ветвей, требует, чтобы были проверены все сегменты (линейные участки программы между точками разветвлений) и все ветви программы. Для некоторых коротких несложных подпрограмм возможно прохождение всех путей - в этом, в частности, состояла цель испытаний программного уровня в Проекте 5. Одним из недостатков такого подхода является то, что разработчик должен тщательно изучить свою программу с целью определения условий (представленных данными), от которых *) Живые протоколы исполнения контрольных примеров были частью того скоропортящегося материала, который был уничтожен после завершения проекта. По заниженной оценкее каждый контрольный пример выполнялся 3 раза. зависит ХОД исполнения по конкретным сегментам или путям. Средство, обеспечивающее автоматизацию такого процесса генерации данных, может значительно сократить объем работ, необходимый для подготовки и проведения испытаний. Монитор контрольных примеров. При аттестационных и системных испытаниях обслуживание испытуемой системы и испытательных средств, а также ведение протоколов испытаний становится делом достаточно трудоемким, если выполнять эти работы вручную. Так, в Проекте 3 в ходе испытаний подсистем и системы в целом использовалось свыше 200 контрольных примеров. Каждый пример повторялся много раз), и каждый раз требовалось оформлять полный протокол, содержащий характеристики условий испытаний и данные относительно успешности или неуспешности испытания. Если использовать монитор контрольных примеров, управляющий загрузкой и прогоном тестовых данных с ленты или диска, то можно автоматически регистрировать: - состав контрольного примера и конфигурацию программного обеспечения; - количество прогонов каждого теста и факт его успешного или неуспешного прохождения; - текущее состояние соответствующих Уведомле-нпй о проблемах; - степень удовлетворения программных требований. По-видимому, с помощью этого монитора мохно было бы также встраивать отладочные операторы в контрольные точки исходной программы, управлять ее компилированием и опробованием на определенных наборах данных. Такое средство эффективно используется персоналом испытателей в Проекте 5. Универсальные средства конструирования базы данных. Лица, занимающиеся испытаниями системы программного обеспечения, всегда предпочитают иметь
|
© 2000 - 2024 ULTRASONEX-AMFODENT.RU.
Копирование материалов разрешено исключительно при условии цититирования. |