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

       

Верификация и формализация требований


 

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

Фиксация требований (Requirement Capturing), с одной стороны, определяется желаниями заказчика в реализации того или иного свойства. С другой стороны в процессе сбора требований может обнаружиться ошибка, которая приведет к определенным последствиям, устранение которых заберет непредвиденные ресурсы – дополнительное кодирование, перепланирование.

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

Автоматизированная верификация требований может производиться  лишь после спецификации или формализации требований.

Спецификация требований к ПО

процесс формализованного описания функциональных и нефункциональных требований, требований к характеристикам  качества   в соответствии со стандартом  качества  ISO/IEC 12119-94, которые будут учитываться при создании программного продукта  на этапах ЖЦ ПО. В спецификации требований отражается структура ПО, требования к функциям, показателям  качеству, которых необходимо достигнуть,  и к документации. В спецификации  задается в общих чертах  архитектура системы и ПО, алгоритмы, логика управления и структура данных. Специфицируются также системные требования, нефункциональные требования и требования к взаимодействию с другими   компонентами (БД, СУБД, протоколы сети и др.).  

Формализация

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

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

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


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