22 февраля 2016г.
Повышение сложности и необходимость обеспечения качества современных бортовых авиационных систем требуют принятия и внедрения передовых инженерных практик, таких как модельно-ориентированное проектирование.
Модельно-ориентированное проектирование – это способ разработки систем управления, основанный на использовании математических и визуальных методов.
Обновленные стандарты безопасности ARP 4754А и DO-178C,пришедшие на смену устаревшим ARP 4754 и DO-178В, включают аспекты, касающиеся современных подходов к разработке программного обеспечения. Они определяют еще более строгие правила проектирования и разработки систем. Помимо этого было еще разработано четыре приложения к стандарту DO-178C:
· DО-330 - Вопросы квалификации программных средств;
· DО-331 – Разработка и верификация на основании модели;
· DО-332 – Вопросы объектно-ориентированного программирования;
· DО-333 –Формальные методы.
Оптимизировать процесс разработки систем автоматического управления позволяет использование модельно-ориентированных средств разработки критических систем для системных инженеров и разработчиков ПО.
Применение модельно-ориентированного проектирования позволяет разрабатывать бортовые авиационные системы и запускать симуляцию моделей, описывающих аппаратные и программные составляющие системы. Графически модель выглядит как диаграмма, состоящая из блоков, как показано на Рисунках 1 и 2.
Современные инструменты дают возможность разработчикам бортовых систем автоматически генерировать, развертывать и проводить верификацию кода на встраиваемых системах. Используя языки более высокого уровня и инструменты моделирования блочных диаграмм,
можно сгенерировать код на языках С, С++, Verilog и VHDL, чтобы получить
реализации на микроконтроллерах, интегральных схемах, программируемых логистических микросхемах (ПЛИС) и сигнальных процессорах (ЦСП). Данный метод дает возможность программистам, системным инженерам и разработчикам аппаратной части работать
совместно, используя одни и те же инструменты и окружение для разработки, реализации и верификации систем.
Тестирование на стендах
с использованием симуляции позволяет
существенно сократить
денежные расходы.
В модельно-ориентированном проектировании верификация начинается, когда модель создается и запускается для симуляции. Тестовые
векторы, созданные в соответствии с требованиями высокого
уровня, формализуют тестирование в процессе симуляции.
Работы по верификации с повторным использованием тестов проводятся в течение
всего процесса проектирования. Модель превращается из системной в модель ПО, а далее в исходный код и объектный код с помощью
генераторов кода и кросс-компиляторов.
В нормативных документах ARP 4754А, DO-178C и DO-331 описывается подход к тестированию на основании требований с повторным использованием тестов для моделей и кода.[3]
ARP 4754А
Документ ARP 4754А регламентирует деятельность по разработке воздушного судна, начиная с требований и заканчивая интеграцией через верификацию, и описывает три уровня
абстракции: воздушное
судно, система,
компонент. Часто возникают
споры по поводу того,
что считать компонентом. ARP 4754А трактует компонент как аппаратный или программный элемент,
который ограничен и имеет строго определенные интерфейсы. А требования к воздушному судну относятся к системным требованиям, которые, в свою очередь, назначаются требованиям к компоненту. Таким образом, системные требования должны трассироваться наПО и аппаратную часть.
Сотрудничество рабочих групп по созданию стандартов ARP 4754А и DO-178Cпозволило обеспечить соответствие терминов
и подходов, используемых в данных документах, что, в с вою очередь,
проясняет взаимосвязь между системами, аппаратным обеспечением и ПО.
DO-178С
На первый взгляд новая редакция стандарта DO-178 не претерпела существенных изменений, но в действительности
различия все-таки
есть. Например, с целью синхронизации
документов, появилось упоминание о ARP 4754А в разделе 2, посвященному системным аспектам, связанным с разработкой ПО, а также, замечание в разделе 1.4 «Как использовать этот документ», в котором говориться о том, что если для конкретной
методики существует дополнение, то оно должно применяться. Самые существенные изменения отражены
в дополнениеDO-331 «Модельно-ориентированное проектирование и верификация».[1]
Для уровней ПО А и. В стандарт
ARP4754A предписывает анализ, моделирование и симуляцию для валидации требований. Для уровня С моделирование так же рекомендуется. В ARP4754A говорится, что репрезентативная модель окружения
является существенной частью системной модели.
При моделировании для валидации требований используют модель окружения разрабатываемой системы, сообщающейся с прототипом проекта ПО для этих требований. Модель окружения
является репрезентативным представлением окружения разрабатываемой системы, осуществляет покрытие во время симуляции и во время работы реальной
системы.
Графическое представление модели может использоваться для привязки системных требований. В соответствии
с ARP4754A модель может быть повторно
использована для разработки
аппаратного и программного
обеспечения.
В стандарте ARP4754A даны следующие рекомендации относительно использования модели для привязки требований:
·
Определить стандарты моделирования и библиотеки;
·
Идентифицировать использование моделей/моделирования;
·
Идентифицировать предполагаемые инструменты и их использование в процессе разработки.
Применение модельно-ориентированного проектирования при создании бортовых
авиационных систем позволяет автоматизировать и ускорить процесс верификации, сократив, таким образом,
частоту появления ошибок,
связанных с ручными методами. В частности дает возможность осуществлять трассировку требований, проверку структурной эквивалентности модели и кода, проверку
на стандарты моделирования по DO-178C, а также анализ робастности с использованием формальных методов.
Главной целью рабочей группы по созданию
документа DO-178CSG-4 было создание привязки целей DO- 178В к артефактам модельно–ориентированного проектирования. В DO-331 приведены 2 основные
концепции привязок:
·
Модель спецификации, которая является отдельной
моделью относительно модели
для разработки и генерации кода;
·
Модель дизайна, которая служит в качестве
детализированных требований, использующихся при генерации кода.
Модель дизайна может применяться для разработки бортовой
системы или ПО и должна
разрабатываться с помощью требований, которые являются
внешними относительно модели.
Например, текстовые
требования или база данных с требованиями.
Исходный код вручную или автоматически может быть сгенерирован непосредственно из
модели дизайна. [2]
В приложение
DO-331 так же
описан
подход, заключающийся в том, что модель,
использованная первоначально для разработки системы, может быть расширена
и повторно использована для разработки ПО и генерации кода. Этот подход связывает
документы DO-178C и ARP4754A, позволяет работать
сообща разработчикам систем и ПО, применяющим в своих разработках модельно-ориентированное проектирование, повышает качество
бортовых авиационных систем.
Список литературы
1.
DO-178C, Software Considerations in Airborne Systems and Equipment Certification,2011
2.
DO-331, Model-Based Development and Verification Supplement to DO-178C
and DO-278A, 2011
3.
ТомErkkinen. Ttansitioning to DO-178C and ARP4754A
for UAV Software Development Using Model-Based. http://mil-embedded.com/