Статус документа
Статус документа

ГОСТ Р МЭК 60880-2010 Атомные электростанции. Системы контроля и управления, важные для безопасности. Программное обеспечение компьютерных систем, выполняющих функции категории А

     7.2 Язык и связанные с ним трансляторы и инструментальные средства

7.2.1 Общие требования

При проектировании и реализации программного обеспечения систем класса 1 нельзя требовать использования специальных языков, однако следующие положения могут рассматриваться в качестве общих основных правил для языков, используемых в этих целях:

7.2.1.1 Используемые языки должны соответствовать строгим (или строго очерченным) правилам семантики и синтаксиса.

7.2.1.2 Синтаксис языка должен быть полностью и четко определен и оформлен документально.

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

7.2.1.4 Должны использоваться языки с тщательно проверенным транслятором.

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

7.2.1.6 Следует иметь в распоряжении инструментальные программы для автоматизированной проверки.

Рекомендуется использование автоматизированных инструментальных программ. При этом применяются требования раздела 14.

7.2.2 Универсальные языки

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

- проверка типа переменных модуля трансляции, проверка параметров подпрограммы;

- проверка границ массива рабочего модуля.

Руководство по выбору языка, транслятора и редактора связи приведено в приложении D.

7.2.3 Проблемно-ориентированные языки и соответствующая автоматизированная генерация кода

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

7.2.3.2 Должна быть проведена оценка соответствия генерируемого кода требованиям настоящего стандарта к проектированию и кодированию программного обеспечения, а несоответствия должны быть обоснованы.

7.2.3.3 Структура генерируемой программы должна быть определена в общем виде, например, должно быть определено расположение описаний по отношению к кодовым операторам.

7.2.3.4 Генерируемый код не должен изменяться в результате непосредственных действий с кодом.

7.2.3.5 При модификации спецификации входных данных код должен быть генерирован повторно, например, в результате деятельности по В&В.

Дополнительные рекомендации по автоматизированной генерации кода приведены в перечислении f) раздела В.5 приложения В.