ГОСТРМЭК 62061—2013
- указания, позволяющие проверить все связанные с безопасностью функции управления во время рабо
ты систем (например тестирование в неавтономном режиме, время захвата для быстрых сигналов, совмещение
со скоростью сканирования).
П р и м е ч а н и е — Указания для самоконтроля программного обеспечения, разработанные с учетом целей
безопасности и операционных ограничений (продолжительность непрерывной работы и т. д.). могул включать ис
пользование таких устройств, как сторожевые устройства, контроль загрузки центрального процессора, обратной
связи от выхода ко входу. Для контроля аппаратных средств, процессора, памяти, и т. д. должны быть включены в
спецификации указания по верификации связанной с безопасностью функции управления: например, возмож
ность периодической проверки правильности работы устройств безопасности.
Необходимо, чтобы функциональные требования были определены для каждого режиме функционирования.
Должен быть указан переход от одного режима к другому.
П р и м е ч а н и е — Функциональные режимы могут включать номинальный и один или более ухудшенных
режимов. Цель состоит в том. чтобы указать поведение во всех ситуациях и избежать неожиданного поведения в
неноминальных режимах.
С.2.3 Уже существующее программное обеспечение
Термин «уже существующее» программное обеспечение относится к исходным модулям, которые не были
разработаны специально для данной системы и будут интегрированы в созданное программное обеспечение.
Оно включает в себя элементы программного обеспечения, созданного разработчиком для предыдущих проектов, или
является коммерчески доступным программным обеспечением (например, модули для расчетов, алгоритмы
сортировки данных).
При работе с таким типом программного обеспечения, особенно в случае элементов коммерческих про
грамм. разработчик не всегда имеет доступ ко всем элементам, которые были необходимы для предыдущего удов
летворения требований (например, какие тесты были выполнены, доступна ли проектная документация). Поэтому
может быть необходимо в самый кратчайший момент конкретное взаимодействие с аналитиком.
Разработчик должен показать аналитику, как используется уже существующее программное обеспечение,
а также продемонстрировать, что оно имеет такой же уровень, как и другие элементы программного обеспечения.
Такая демонстрация должна быть выполнена:
a) с помощью тех же мероприятий по верификации уже существующего программного обеспечения,
как и для остальной части программного обеспечения;
b
) и/или с использованием практического опыта, где уже существующее программное обеспечение функци
онирует в аналогичной системе в сопоставимой окружающей среды (например, может быть необходимо оценить
последствия изменения компилятора или другого формата архитектуры программного обеспечения).
П р и м е ч а н и е — Цель взаимодействия с аналитиком по вопросам применения уже существующего про
граммного обеспечения — начать с ним как можно раньше консультации о любых возможных трудностях, к кото рым
может привести применение этого типа программного обеспечения. Интеграция уже существующих исходных
модулей может быть причиной некоторых аномалий или небезопасного поведения, если они не были разработаны с
той же строгостью, как и остальное программное обеспечение.
Уже существующее программное обеспечение должно быть определено с помощью тех же принципов управ
ления конфигурацией и управления версиями, которые применяются к остальному программному обеспечению.
П р и м е ч а н и е — Управление конфигурацией и управление версиями должны осуществляться для всех
компонентов программного обеспечения независимо от их происхождения.
С.2.4 Проектирование программного обеспечения
Описание программного обеспечения должно включать в себя описание:
- программной архитектуры, которая определяет структуру, удовлетворяющую спецификациям;
- входов и выходов (например, в форме внутреннего и внешнего словаря данных) для всех модулей, состав
ляющих архитектуру программного обеспечения;
- прерываний;
- глобальных данных:
- каждого программного модуля (входы/выходы, алгоритм, особенности проектирования и т. д.);
- используемого модуля или библиотеки данных;
- уже используемого программного обеспечения.
Программное обеспечение должно быть модульным и написано в логическом порядке, чтобы упростить его
проверку и техническое обслуживание:
- каждый модуль или группа модулей должны соответствовать, если это возможно, некоторой функции
в спецификации(ях);
- необходимо, чтобы интерфейсы между модулями были как можно более простыми.
П р и м е ч а н и е — Обобщенную характеристику корректной архитектуры программного обеспечения мож
но сформировать следующим образом: модуль должен обладать высоким уровнем функциональной связности
и простым интерфейсом с внешней средой.
62