ГОСТ Р МЭК 62279—2016
Объектный кол. произведенный компилятором, был подвергнут комбинации тестов, проверок и иссле
дований. которые способны обеспечить правильность кода до такой степени, что он соответствует целево му
уровню полноты безопасности. В частности ко всем тестам, проверкам и исследованиям применяется
следующее:
- должно быть показано, что тестирование имеет достаточно высокий охват реализованного кода. Если
существует какой-либо код. недостижимый тестами, то должно быть показано проверками или исследования ми.
что функция, в реализации которой применяется этот код. выполняется правильно, если код достигнут на цели;
- проверки и исследования были применены к объектному коду и было показано, что они способны к обна
ружению типов ошибок, которые могли появиться в результатедефекта в компиляторе;
- после тестирования, проверки и анализа транслятор и компилятор не применялись;
- если будет выполнена еще одна компиляция или трансляция, то все тесты, проверки и исследования будут
выполнены повторно.
67.4.7 Выбранное представление программного обеспечения или проекта (включая язык про
граммирования) должно;
a) иметь транслятор, который был оценен на пригодность для определенной цели, включая, где
это необходимо, несоответствие с международными или национальными стандартами;
b
) соответствовать характеристикам применения.
c) содержать функции, которые упрощают обнаружение ошибок в проекте или в программе;
d) поддерживать функции, которые соответствуют методу разработки.
Язык программирования — это одно из класса представлений программного обеспечения или
проекта. Транслятор преобразует представление программного обеспечения или проекта (например,
текст или схему) из одного уровня абстракции к другому уровню. Примеры трансляторов включают;
инструментальные средства усовершенствования проекта, компиляторы, ассемблеры, компоновщики,
редакторы связей, загрузчики и инструментальные средства генерации кода.
Оценка транслятора может быть выполнена для конкретного проекта применения или для клас
са применений. В последнем случае вся необходимая информация об инструментальном средстве,
связанная с намеченным и надлежащим использованием инструментального средства, должна быть
доступна пользователю инструментального средства. Оценка инструментального средства для кон
кретного проекта может в таком случае быть сокращена до проверки общей пригодности инструмен
тального средства для проекта и соответствия со «спецификацией или руководством» (т. е. надле
жащее использование инструментального средства). Надлежащее использование могло бы включать
дополнительные действия проверки в конкретном проекте.
Для подтверждения соответствия может использоваться набор тестов, чтобы оценить пригод
ность для определенной цели некоторого транслятора согласно заданным критериям, которые должны
включать функциональные и нефункциональные требования. Для функциональных требований транс
лятора основным методом подтверждения соответствия может быть динамическое тестирование. Если
возможно, должен использоваться автоматический набор тестов.
67.4.8 Если требования 6.7.47 не могут быть полностью выполнены, то пригодность для опреде
ленной цели языка и любые дополнительные меры, которые разрешают вопросы с любыми идентифи
цированными недостатками языка, должны быть обоснованы и оценены.
П р и м е ч ан и е — См. 67.4.6, примечание 2.
67.4.9 Если выполняется автоматическая генерация кода или подобная автоматическая транс
ляция. то пригодность автоматического транслятора для разработки связанного с безопасностью про
граммного обеспечения должна быть оценена на стадии жизненного цикла разработки, где выбираются
инструментальные средства обеспечения разработки.
6.7.4.10 Управление конфигурацией должно гарантировать, что для инструментальных средств
классов Т2 и ТЗ используются только обоснованные версии.
6.7.4.11 Каждая новая версия используемого инструментального средства должна быть обоснова
на (см. таблицу 1). Это обоснование может полагаться на доказательство, предусмотренное для более
ранней версии, если используются достаточные доказательства того, что:
a) функциональные различия (если таковые имеются) не будут влиять на совместимость инстру
ментального средства с остальной частью комплекса инструментальных средств;
b
) новая версия вряд ли будет содержать существенно новые, неизвестные отказы.
25