Методы и средства инженерии программного обеспечения

       

МЕТОДЫ ВЕРИФИКАЦИИ И ТЕСТИРОВАНИЯ ПРОГРАММ И СИСТЕМ


         

В фундаментальную концепцию проектирования ПС входят базовые положения,  стратегии, методы, которые применяются на процессах ЖЦ и обеспечивают верификацию, проверку правильности путем доказательства и тестирование на множестве тестовых наборов данных. К методам проектирования ПС относятся   структурные, объектно–ориентированные и др. Их основу составляют  теоретические, инструментальные   и прикладные средства, применяемые на процессах тестирования.

Теоретические средства определяют процесс программирования  и тестирования программного продукта. Это  методы верификации и доказательства правильности составленной спецификации программ, метрики  (Холстеда, цикломатичная сложность Маккейба и др.) измерения отдельных характеристик, и выступают они в роли формализованных элементов теории определения   правильности и гарантии свойств конечного ПО. Например, концепция «чистая комната» базируется на некоторых формализмах доказательства и изучения свойств процессов кодирования и тестирования программ. Что касается тестирования, то это проверка спецификации нотаций программ, используемых при описании тестов и покрытия соответствующих критериев программ [1–7].

Инструментальные средства – это такие способы поддержки кодирования и тестирования (компиляторы, генераторы программ, отладчики и др.), а также организационные  средства планирования и отбора тестов для программ, которые обеспечивают обработку текста на ЯП и подготовку для них соответствующих тестов.

Для  проверки правильности программ и систем  используются следующие  основные направления обеспечения правильности ПС.

1. Формальное доказательство

корректности программ осуществляется с помощью теоретических методов, основанные на задании формальных  систем правил и утверждений, используемых при доказательстве правильности операторов программы и результатов их выполнения в режиме интерпретации [5, 8–11]. К средствам формальной проверки правильности относятся верификация и валидация ПС, которые  вошли в состав регламентированных процессов ЖЦ стандарта ISO/IEC 12207.    

2. Тестирование  – это системный метод  обнаружения ошибок в ПО путем  исполнения выходного кода ПС  на  тестовых данных, сбор рабочих характеристик в динамике выполнения ПС в конкретной операционной среде [1–7]. Методы  тестирования позволяют  выявить в процессе  выполнения ПС различные ошибки,  дефекты  и изъяны, вызванные аномальными ситуациями, сбоями оборудования и аварийным прекращением работы ПО.

3. Организационные аспекты  проверки правильности.

Далее  излагаются  последовательно эти  направления.



Содержание раздела