Главная страница
Навигация по странице:

  • "МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ (НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ)" (МАИ)

  • 2.Верификация

  • 3. Цели и задачи процесса верификации

  • 4.Заключение

  • Список литературы

  • отчет. отчет НИР. "Верификация программного обеспечения"


    Скачать 24.04 Kb.
    Название"Верификация программного обеспечения"
    Анкоротчет
    Дата27.07.2022
    Размер24.04 Kb.
    Формат файлаdocx
    Имя файлаотчет НИР.docx
    ТипОтчет
    #636899

    МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ

    РОССИЙСКОЙ ФЕДЕРАЦИИ

    ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮЖДЕТНОЕ

    ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

    "МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ

    (НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ)"

    (МАИ)

    Институт № 2 "Авиационные, ракетные двигатели и энергетические установки"

    Кафедра 207 "Метрология, стандартизация и сертификация"

    Отчет НИР

    на тему "Верификация программного обеспечения"

    Выполнил: студент группы М2О - 105М - 19

    Салихов А.Р.

    Проверила: к.т.н., профессор каф. 207

    Монахова В.П.

    Работа зачтена с оценкой “______________”

    /дата, подпись /

    Москва

    2019 год

    Содержание

    1.Введение…………………………………………………………………………3

    2.Верификация…………………………………………………………………….4

    3.Цели и задачи процесса верификации…………………………………………5

    4.Заключение………………………………………………………………………8

    5.Список литературы……………………………………………………………...9

    1. Введение

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

    2.Верификация

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

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

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

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

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

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

    3. Цели и задачи процесса верификации

    Основная цель процесса – доказательство того, что результат разработки соответствует предъявленным к нему требованиям. Обычно процесс верификации проводится сверху вниз, начиная от общих требований, заданных в техническом задании и/или спецификации на всю информационную систему до детальных требований на программные модули и их взаимодействие. В состав задач процесса входит последовательная проверка того, что в программной системе:

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

    • требования высокого уровня правильно переработаны в архитектуру ПО и в спецификации требований к функциональным компонентам низкого уровня, которые удовлетворяют требованиям высокого уровня;

    • спецификации требований к функциональным компонентам ПО, расположенным между компонентами высокого и низкого уровня, удовлетворяют требованиям более высокого уровня;

    • архитектура ПО и требования к компонентам низкого уровня корректно переработаны в удовлетворяющие им исходные тексты программных и информационных модулей

    • исходные тексты программ и соответствующий им исполняемый код не содержат ошибок.

    Кроме того, верификации на соответствие спецификации требований на конкретный проект программного средства подлежат требования к технологическому обеспечению жизненного цикла ПО, а также требования к эксплуатационной и технологической документации.

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

    На выбор эффективных методов верификации и последовательность их применения в наибольшей степени влияют основные характеристики тестируемых объектов:

    • класс комплекса программ, определяющийся глубиной связи его функционирования с реальным временем и случайными воздействиями из

    внешней среды, а также требования к качеству обработки информации и надежности функционирования;

    • сложность или масштаб (объем, размеры) комплекса программ и его функциональных компонентов, являющихся конечными результатами разработки;

    • преобладающие элементы в программах: осуществляющие вычисления сложных выражений и преобразования измеряемых величин или обрабатывающие логические и символьные данные для подготовки и отображения решений.

    Определим некоторые понятия и определения, связанные с процессом тестирования, как составной части верификации. Майерс дает следующие определения основных терминов:

    • тестирование - процесс выполнения программы с целью обнаружения ошибки.

    • тестовые данные – входы, которые используются для проверки системы.

    • тестовая ситуация (test case) – входы для проверки системы и предполагаемые выходы в зависимости от входов, если система работает в соответствии с ее спецификацией требований.

    • хорошая тестовая ситуация – та ситуация, которая обладает большой вероятностью обнаружения пока еще необнаруженной ошибки.

    • удачный тест - тест, который обнаруживает пока еще необнаруженную ошибку.

    • ошибка - действие программиста на этапе разработки, которое приводит к тому, что в программном обеспечении содержится внутренний дефект, который в процессе работы программы может привести к неправильному результату.

    • отказ – непредсказуемое поведение системы, приводящее к неожидаемому результату, которое могло быть вызвано дефектами, содержащимся в ней.

    Таким образом, в процессе тестирования программного обеспечения, как правило, проверяют следующее:

    • Проверка того, что программное обеспечение соответствует требованиям на него,

    • Проверка того, что в ситуациях, не отраженных в требованиях, программное обеспечение ведет себя адекватно, то есть не происходит отказ системы.

    • Проверка программного обеспечения на предмет типичных ошибок, которые делают программисты.

    4.Заключение

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

    Список литературы

    1. https://www.ispras.ru/publications/methods_of_software_verification.pdf

    2. https://www.studmed.ru/download/sinicyn-sv-nalyutin-nyu-verifikaciya-programmnogo-obespecheniya_5bed68048a6.html

    3. https://habr.com/ru/post/244337/


    написать администратору сайта