7.4.2.3. Тестируемость и способность к безопасной модификации должны быть предусмотрены на этапе проектирования для того, чтобы облегчить реализацию этих характеристик в окончательной версии системы, связанной с безопасностью.
Примечание. Примеры включают в себя эксплуатационные режимы в машиностроении и на обрабатывающих предприятиях.
7.4.2.4. Выбранный метод проектирования должен обладать характеристиками, которые облегчают модификацию программного обеспечения. К числу таких характеристик относят модульность, скрытие информации и инкапсуляцию.
7.4.2.5. Представление проекта должно основываться на нотации, которая является однозначно определенной или ограничена до однозначно определенных свойств.
7.4.2.6. Проект должен минимизировать настолько, насколько это возможно, ту часть программного обеспечения, которая относится к безопасности.
7.4.2.7. Если программное обеспечение должно реализовать функции как относящиеся, так и не относящиеся к безопасности, оно в целом должно рассматриваться как относящееся к безопасности, если только в проекте не продемонстрирована достаточная независимость между этими функциями.
7.4.2.8. Если программное обеспечение должно реализовать функции безопасности, имеющие различный уровень полноты безопасности, то следует считать, что все программное обеспечение имеет наивысший среди этих уровней, если только в проекте не будет продемонстрирована достаточная независимость функций, имеющих различный уровень полноты безопасности. Обоснование независимости должно быть документировано.
Примечание. Уровень полноты безопасности программного обеспечения должен быть не ниже, чем уровень полноты функции безопасности, к которой оно относится. Однако уровень полноты безопасности компонента программного обеспечения может быть ниже, чем уровень полноты функции безопасности, к которой он относится, если этот компонент используется в сочетании с другими аппаратными компонентами, такими, что уровень полноты безопасности сочетания компонентов, по меньшей мере, равен уровню полноты безопасности функции безопасности.
7.4.2.9. В той степени, насколько это возможно, проект должен включать функции, выполняющие проверки и все диагностические тесты для того, чтобы обеспечить соблюдение требований к полноте безопасности E/E/PE системы, связанной с безопасностью (как установлено в МЭК 61508-2).
7.4.2.10. Проект программного обеспечения должен включать соразмерно требуемому уровню полноты безопасности средства самоконтроля потоков управления и потоков данных. При обнаружении ошибки должны быть выполнены соответствующие действия [см. таблицы A.2 и A.4 (Приложение A)].
7.4.2.11. Если стандартное или ранее разработанное программное обеспечение должны использоваться как часть проекта [см. таблицы A.3 и A.4 (Приложение A)], они должны быть четко идентифицированы. Способность программного обеспечения удовлетворять требованиям спецификации по отношению к безопасности программных систем (см. 7.2) должна быть обоснована. Эта способность должна основываться на данных по удовлетворительной работе в схожем приложении или быть предметом тех же самых процедур верификации и подтверждения соответствия, которые подразумеваются для любого вновь разрабатываемого программного обеспечения. Следует оценить ограничения, связанные с условиями, в которых работало программное обеспечение (например, зависимость от операционной системы и компилятора).
Примечание. Такое обоснование может быть разработано при планировании безопасности (см. раздел 6).
7.4.2.12. Настоящий подраздел (7.4) должен в той мере, насколько это возможно, применяться к данным, включая любой язык генерации данных.
2. Архитектура программного обеспечения определяет основные компоненты и подсистемы программного обеспечения, их взаимосвязь, способ реализации необходимых характеристик и, в частности, полноты безопасности. Примеры основных компонентов программного обеспечения включают операционные системы, базы данных, подсистемы ввода и вывода производственных данных, коммуникационные подсистемы, прикладные программы, инструментальные средства программирования и диагностики и т.п.
3. В некоторых отраслях промышленности архитектура программного обеспечения может называться описанием функций или спецификацией функций проекта (хотя эти документы могут также включать вопросы, относящиеся к аппаратным средствам).
4. Для пользовательского прикладного программирования в языках с ограниченной изменчивостью, в частности в языках, используемых в ПЛК (МЭК 61508-6, приложение E), архитектура определяется поставщиком как стандартная характеристика ПЛК. Однако в рамках настоящего стандарта к поставщику может быть предъявлено требование гарантировать пользователю соответствие поставляемого продукта требованиям 7.4. Пользователь приспосабливает ПЛК, используя стандартные возможности программирования, например многозвенные логические схемы. Требования 7.4.3 - 7.4.8 сохраняют свою силу. Требование определения и документирования архитектуры может рассматриваться как информация, которую пользователь может использовать при выборе ПЛК (или эквивалентного ему устройства) для приложения.
5. В другом крайнем случае, в некоторых встроенных приложениях, использующих язык с полной изменчивостью, например в машине, управляемой микропроцессором, архитектура должна создаваться поставщиком специально для приложения (или класса приложений). Пользователь обычно не имеет инструментария для программирования. В этих условиях ответственность за обеспечение соответствия 7.4 ложится на поставщика.
6. Имеются системы, попадающие в промежуток между типами, упомянутыми в примечаниях 4 и 5, в таких случаях ответственность за соответствие разделяется между пользователем и поставщиком.
7. С точки зрения безопасности стадия разработки архитектуры программного обеспечения соответствует периоду, когда разрабатывается базовая стратегия безопасности для программного обеспечения.
7.4.3.1. В зависимости от характера разработки программного обеспечения ответственность за соответствие 7.4.3 может лежать только на поставщике, только на разработчике или на обеих сторонах (см. примечания, приведенные выше). Распределение ответственности должно быть документировано во время планирования безопасности (см. раздел 6).
7.4.3.2. Предлагаемый проект архитектуры программного обеспечения должен быть создан поставщиком программного обеспечения и/или разработчиком, описание архитектуры должно быть подробным. Описание должно:
a) содержать выбор и обоснование интегрированного набора методов и мероприятий, которые будут необходимы в течение жизненного цикла модулей безопасности для того, чтобы удовлетворить требования к безопасности программного обеспечения на заданном уровне полноты безопасности (см. 7.2). Эти методы и мероприятия включают стратегию проектирования программного обеспечения для обеспечения устойчивости к отказам (совместимую с аппаратными средствами) и для избежания отказов, в том числе (при необходимости) избыточность и разнообразие;
b) основываться на разделении на компоненты/подсистемы, для каждой из которых должна предоставляться следующая информация:
- являются ли они вновь разработанными, уже существующими или находящимися в частной собственности,
- проводилась ли верификация, и если проводилась, то при каких условиях,
- связан ли каждый из этих компонентов/подсистем с безопасностью или нет,
- уровень полноты безопасности для компонента/подсистемы;
c) определять все взаимодействия между программными средствами и аппаратным обеспечением, а также оценивать и детализировать их значение;
d) использовать для представления архитектуры нотацию, которая является однозначно определенной или ограничена до подмножества однозначно определенных характеристик;
e) содержать набор проектных характеристик, которые должны использоваться для поддержания полноты безопасности всех данных. В число таких данных допускается включать входные и выходные производственные данные, коммуникационные данные, данные интерфейса оператора, данные сопровождения и данные, хранящиеся во внутренних базах данных;
f) определять тесты интеграции архитектуры программного обеспечения для того, чтобы обеспечить выполнение спецификации требований к безопасности программного обеспечения на заданном уровне полноты безопасности (см. 7.2).
7.4.3.3. Любые изменения, которые может потребоваться внести в специфицированные требования к E/E/PE системе, связанной с безопасностью, после использования мероприятий 7.4.3.2 должны быть согласованы с разработчиком E/E/PE систем и документированы.
Примечание. Итерационное взаимодействие между архитектурой аппаратных средств и программного обеспечения является неизбежным (см. рисунок 5), поэтому существует необходимость в обсуждении с разработчиком аппаратуры таких вопросов, как спецификация тестирования интеграции программируемой электронной аппаратуры и программного обеспечения (см. 7.5).
Примечания. 1. См. также таблицу A.3 (Приложение A).
2. Выбор инструментов для разработки зависит от характера процессов разработки программного обеспечения и его архитектуры (см. 7.4.3).
Если пользовательское прикладное программирование выполняется на языке с ограниченной варьируемостью при низких уровнях полноты безопасности, то круг необходимых инструментов и языков программирования может быть ограничен стандартными языками ПЛК, редакторами и загрузчиками. Ответственность за соответствие 7.4.4 будет лежать, следовательно, главным образом на поставщике.
При более высоких уровнях полноты безопасности могут потребоваться ограниченные подмножества языка ПЛК, а также средства верификации и отладки, такие как анализаторы кода и имитаторы. В этих условиях ответственность лежит и на поставщике, и на пользователе.
Инструментарий для встраиваемых приложений, использующий языки с полной варьируемостью, должен быть более разнообразным даже в случае низких уровней полноты безопасности. Ответственность за соответствие 7.4.4 будет лежать, главным образом, на разработчиках программного обеспечения. В их число входит поставщик ПЛК, который может использовать языки с полной варьируемостью в языке с низким уровнем варьируемости для обеспечения пользовательского прикладного программирования.
7.4.4.1. В зависимости от характера программного обеспечения ответственность за соответствие 7.4.4 может лежать только на поставщике, только на пользователе или на обеих сторонах (см. 7.4.4, примечание 2). Разделение ответственности должно быть документировано во время планирования безопасности (см. раздел 6).
7.4.4.2. Должен быть выбран набор интегрированных инструментальных средств, соответствующий требуемому уровню полноты безопасности и включающий языки программирования, компиляторы, средства управления конфигурацией и, при необходимости, автоматизированные средства тестирования. Следует учитывать способность инструментальных средств (необязательно тех, которые использовались при первоначальной разработке системы) выполнять необходимые задачи на протяжении всего жизненного цикла E/E/PE систем, связанных с безопасностью.
7.4.4.3. В той степени, в которой этого требует уровень полноты безопасности, выбранные языки программирования должны:
a) иметь транслятор/компилятор, который либо обладает сертификатом, подтверждающим соответствие национальному или международному стандарту, либо должен быть оценен для проверки его пригодности;
b) быть полностью и однозначно определенными либо ограниченными до подмножества однозначно определяемых элементов;
c) соответствовать характеристикам приложения;
d) обладать свойствами, облегчающими обнаружение ошибок программирования;
e) поддерживать характеристики, соответствующие методу проектирования.
7.4.4.4. Если требования 7.4.4.3 не могут быть выполнены, то при описании проекта архитектуры программного обеспечения (см. 7.4.3) следует документировать обоснование использования альтернативного языка программирования. В обосновании должны быть подробно рассмотрены пригодность языка программирования, а также дополнительные мероприятия, относящиеся к известным недостаткам языка.
7.4.4.5. Стандарты составления программ должны быть:
a) рассмотрены экспертом на предмет определения пригодности и
b) использованы при разработке всего программного обеспечения, связанного с безопасностью.
7.4.4.6. Стандарты составления программ должны определять правильные методы программирования, запрещать использование небезопасных возможностей языка (например, неопределенных особенностей языка, неструктурированных конструкций и т.п.) и определять процедуры для документирования исходного текста. Документация, относящаяся к исходному тексту, должна содержать, по меньшей мере, следующую информацию:
a) юридическое лицо (например, компания, авторы и т.п.);
b) описание;
c) входные и выходные данные;
d) историю изменения конфигурации.
2. Под детальным проектированием здесь понимается разделение основных компонентов архитектуры на систему программных модулей, проектирование отдельных программных модулей и их программирование. В небольших приложениях проектирование программных систем и архитектуры могут быть объединены.
3. Характер детального проектирования и разработки может изменяться в зависимости от характера процессов разработки программ и архитектуры программного обеспечения (см. 7.4.3). Когда прикладное программирование выполняет пользователь, использующий языки с ограниченной варьируемостью, например языки многозвенных логических схем и языки функциональных блоков, детальное проектирование может рассматриваться скорее как конфигурирование, чем как программирование. Тем не менее, хороший стиль программирования состоит в структурировании программного обеспечения, включая организацию модульной структуры, которая выделяет (настолько, насколько это возможно) блоки, связанные с безопасностью; в использовании проверок на попадание в интервал допустимых значений и других возможностей защиты от ошибок при вводе исходных данных; в использовании ранее верифицированных программных модулей; в применении конструкций, которые облегчают выполнение будущих модификаций программного обеспечения.
7.4.5.1. В зависимости от характера программного обеспечения ответственность за соответствие 7.4.5 может лежать только на поставщике, только на пользователе или на обеих сторонах (см. примечание 3). Разделение ответственности должно быть документировано во время планирования безопасности (см. раздел 6).
7.4.5.2. До начала детального проектирования должна быть следующая информация:
- спецификация требований к безопасности программного обеспечения (см. 7.2);
- описание проекта архитектуры (см. 7.4.3);
- план проверки безопасности (см. 7.3).
7.4.5.3. Программное обеспечение следует разрабатывать таким образом, чтобы достигалась модульность, тестируемость и способность к безопасной модификации.
7.4.5.4. Дальнейшее уточнение проекта для каждого главного компонента/подсистемы в описании проекта архитектуры программного обеспечения (см. 7.4.3) должно основываться на разделении на программные модули (т.е. на спецификации конструкции программной системы). Необходимо определить конструкцию каждого программного модуля и проверки, которые должны использоваться для этих модулей.
Примечание. Для стандартных или ранее разработанных компонентов программных модулей не требуется проекта или спецификации тестирования, если может быть показано, что они удовлетворяют требованиям 7.4.2.11.
7.4.5.5. Должны быть определены соответствующие проверки интеграции программных систем, показывающие, что программные системы удовлетворяют требованиям к безопасности программного обеспечения для заданного уровня полноты безопасности (см. 7.2).
7.4.6.1. Исходные тексты программ должны:
a) быть читаемыми, понятными и пригодными к проверке;
b) удовлетворять специфицированным требованиям к конструкции программного модуля (см. 7.4.5);
c) удовлетворять специфицированным требованиям к стандартам составления программ (см. 7.4.4);
d) удовлетворять всем требованиям, определенным при планировании безопасности (см. раздел 6).
7.4.6.2. Каждый модуль программного обеспечения должен быть просмотрен.
Примечание. Просмотр кода относится к процессам верификации (см. 7.9).
2. Процесс проверки того, что программный модуль корректно выполняет все требования, содержащиеся в спецификации тестирования, относится к процессам верификации (см. 7.9). Сочетание просмотра исходных текстов и тестирования программных модулей дает гарантию того, что программный модуль удовлетворяет требованиям своей спецификации, т.е. верифицирует модуль.
7.4.7.1. Каждый программный модуль должен быть протестирован в соответствии со спецификацией, разработанной при проектировании программного обеспечения (см. 7.4.5).
7.4.7.2. Эти проверки должны продемонстрировать, что каждый программный модуль выполняет функции, для которых он предназначен, и не выполняет функции, которые не были для него предусмотрены.
Примечания. 1. Сказанное выше не означает тестирования всех комбинаций входных данных и всех комбинаций выходных данных. Достаточным может быть тестирование всех классов эквивалентности (МЭК 61508-7, пункт C.5.7 приложения C) или структурное тестирование (МЭК 61508-7, пункт C.5.8 приложения C). Анализ граничных значений (МЭК 61508-7, пункт C.5.4 приложения C), анализ управляющей логики (МЭК 61508-7, пункт C.5.9 приложения C) или анализ скрытых путей выполнения программы (МЭК 61508-7, пункт C.5.11 приложения C) могут уменьшить количество проверок до приемлемого уровня. Программы, пригодные для анализа (МЭК 61508-7, пункт C.2.7 приложения C), могут позволить достичь более быстрого выполнения требований.
2. Если при разработке используются формальные методы (МЭК 61508-7, пункт C.2.4 приложения C), формальные доказательства (МЭК 61508-7, пункт C.5.13 приложения C) или операторы проверки условий (МЭК 61508-7, пункт C.3.3 приложения C), область применения подобных проверок может быть уменьшена.
3. Допускается использовать также статистические данные (МЭК 61508-7, приложение D).
7.4.7.3. Результаты тестирования программных модулей должны быть документированы.
7.4.7.4. Должны быть определены процедуры для коррекции при непрохождении теста.
2. Проверка того, что интеграция программного обеспечения является корректной, относится к процессам верификации (см. 7.9).
7.4.8.1. Проверки интеграции программного обеспечения должны разрабатываться на этапе проектирования и разработки.
7.4.8.2. Проверки интеграции программного обеспечения должны определять следующее:
a) разделение программного обеспечения на контролируемые интегрируемые подмножества;
b) контрольные примеры и контрольные данные;
c) типы проверок, которые должны быть выполнены;
d) условия тестирования, используемые инструменты, конфигурацию и программы;
e) условия, при которых проверка считается выполненной, и
f) процедуры, которые необходимо выполнить, если проверка дала отрицательный результат.
7.4.8.3. Программное обеспечение должно быть проверено в соответствии с заранее определенными тестами интеграции программ. Эти тесты должны продемонстрировать, что все программные модули и программные компоненты/подсистемы корректно взаимодействуют для выполнения функций, для которых они предназначены, и не выполняют непредусмотренных функций.
Примечания. 1. Сказанное выше не означает тестирования всех комбинаций входных данных и всех комбинаций выходных данных. Достаточным может быть тестирование всех классов эквивалентности (МЭК 61508-7, пункт C.5.7 приложения C) или структурное тестирование (МЭК 61508-7, пункт C.5.8 приложения C). Анализ граничных значений (МЭК 61508-7, пункт C.5.4 приложения C), анализ управляющей логики (МЭК 61508-7, пункт C.5.9 приложения C) или анализ скрытых путей выполнения программы (МЭК 61508-7, пункт C.5.11 приложения C) могут уменьшить количество проверок до приемлемого уровня. Если выполняемая разработка ведет к созданию программ, пригодных для анализа (МЭК 61508-7, пункт C.2.7 приложения C), то можно достичь более быстрого выполнения требований.
2. Если при разработке используются формальные методы (МЭК 61508-7, пункт C.2.4 приложения C), формальные доказательства (МЭК 61508-7, пункт C.5.13 приложения C) или операторы проверки условий (МЭК 61508-7, пункт C.3.3 приложения C), область применения подобных проверок может быть уменьшена.
3. Допускается использовать также статистические данные (МЭК 61508-7, приложение D).
7.4.8.4. Результаты проверки интеграции программного обеспечения должны быть документированы; в документации должны быть сформулированы результаты проверки и должно быть указано, были ли выполнены цели и критерии проверки. Если тестирование окончилось неудачно, должны быть описаны причины этого.
7.4.8.5. При интеграции программного обеспечения все модификации или изменения должны быть объектом анализа влияния, который должен определить, какие программные модули затрагиваются изменениями, и установить необходимость повторной верификации и проектирования.
2. Эта стадия представлена на рисунке 3 (см. 9.4).
7.5.1. Цели
7.5.1.1. Первой целью требований настоящего подраздела является интеграция программного обеспечения с используемой программируемой электронной аппаратурой.
7.5.1.2. Второй целью требований настоящего подраздела является объединение программного обеспечения и аппаратных средств в программируемый электронный комплекс, связанный с безопасностью, проверка их совместимости и выполнения требований назначенного уровня полноты безопасности.
Примечания. 1. Проверка корректности интеграции программного обеспечения с аппаратными средствами программируемой электроники относится к процессам верификации (см. 7.9).
2. В зависимости от характера приложения эти проверки могут быть объединены с проверками, описываемыми в 7.4.8.
7.5.2.1. Проверки интеграции должны быть определены на этапе проектирования и разработки, их целью является проверка совместимости программного обеспечения и аппаратных средств в программируемом электронном устройстве, связанном с безопасностью.
Примечание. При разработке проверок интеграции может потребоваться тесная кооперация с разработчиком E/E/PES систем.
7.5.2.2. Тесты интеграции для программируемой электроники (аппаратные средства и программное обеспечение) должны определять следующее:
a) разбиение системы на уровни интеграции;
b) тестовые примеры и тестовые данные;
c) типы выполняемых проверок;
d) условия тестирования, используемые инструменты, конфигурацию и программы;
e) условия, при которых проверка считается выполненной.
7.5.2.3. Тесты интеграции программируемой электроники (аппаратные средства и программное обеспечение) должны различать операции, которые выполняются разработчиком на его оборудовании, и операции, требующие доступа к пользовательскому оборудованию.
7.5.2.4. Тесты интеграции программируемой электроники (аппаратные средства и программное обеспечение) должны различать следующие процессы:
a) включение программного обеспечения в целевое программируемое электронное оборудование;
b) интеграцию E/E/PE систем, т.е. добавление интерфейсов, таких как датчики и устройства привода;
c) полную интеграцию EUC и E/E/PE систем, связанных с безопасностью.
Примечание. Перечисления b) и c) охватываются МЭК 61508-1 и МЭК 61508-2, они включены в контекст перечисления a) для полноты.
7.5.2.5. Программное обеспечение должно быть интегрировано с программируемой электронной аппаратурой, связанной с безопасностью, в соответствии со специфицированными тестами интеграции для программируемой электроники (аппаратные средства и программное обеспечение).
7.5.2.6. При тестировании интеграции программируемой электроники, связанной с безопасностью (аппаратных средств и программного обеспечения), все модификации или изменения должны быть объектом анализа влияния, который должен определить, какие программные модули затрагиваются изменениями, и установить необходимость повторной верификации.
7.5.2.7. Тестовые примеры и результаты их выполнения должны быть документированы для последующего анализа.
7.5.2.8. Результаты проверки интеграции программируемой электроники (аппаратных средств и программного обеспечения) должны быть документированы, в документации должны быть сформулированы результаты проверки, а также указано, были ли выполнены цели и критерии проверки. Если тестирование окончилось неудачно, должны быть описаны причины этого. Все модификации или изменения, являющиеся результатом тестирования, должны быть объектом анализа влияния, который должен определить, какие программные модули затрагиваются изменениями, и установить необходимость повторной верификации и проектирования.
7.6. Работа программного обеспечения и процедуры модификации
Примечания. 1. См. также таблицу A.8 (Приложение A).
2. Эта стадия представлена на рисунке 3 (см. 9.5).
7.6.1. Цели
Целью требований настоящего подраздела является представление информации и процедур, касающихся программного обеспечения, необходимых для того, чтобы убедиться в том, что функциональная безопасность E/E/PE систем, связанных с безопасностью, сохраняется при работе и модификациях.
Требования приведены в МЭК 61508-2, пункт 7.6 и в 7.8 настоящего стандарта.
Примечание. В настоящем стандарте программное обеспечение (в отличие от аппаратных средств) не может поддерживаться, оно всегда модифицируется.
2. Данная стадия представлена на рисунке 3 (см. 9.6).
7.7.1. Цели
Цель требований настоящего подраздела - гарантировать соответствие интегрированной системы специфицированным требованиям к безопасности программного обеспечения (см. 7.2) на заданном уровне полноты безопасности.
7.7.2.1. Если соответствие требованиям к безопасности программного обеспечения уже было установлено для E/E/PE системы, связанной с безопасностью (МЭК 61508-2, пункт 7.7), проводить повторное подтверждение соответствия не требуется.
7.7.2.2. Операции подтверждения соответствия должны выполняться в соответствии со спецификациями, разработанными при планировании подтверждения соответствия безопасности программного обеспечения (см. 7.3).
7.7.2.3. Результаты подтверждения соответствия безопасности программного обеспечения должны быть документированы.
7.7.2.4. При проведении подтверждения соответствия безопасности программного обеспечения для каждой функции безопасности должны быть документированы следующие результаты:
a) хронологический перечень операций подтверждения соответствия;
b) используемая версия плана подтверждения соответствия безопасности программного обеспечения (см. 7.3);
c) подтверждаемые функции безопасности (с использованием тестирования или анализа), со ссылками на план подтверждения соответствия безопасности программного обеспечения (см. 7.3);
d) использованные инструменты и оборудование, а также данные калибровки;
e) результаты операций подтверждения соответствия;
f) расхождения между ожидаемыми и фактическими результатами.
7.7.2.5. При наличии расхождений между ожидаемыми и фактическими результатами проводится анализ и принимается решение, продолжать ли проверку или подготовить запрос на изменение и вернуться к более ранней стадии жизненного цикла разработки. Это решение должно быть документировано как часть результатов подтверждения соответствия безопасности программного обеспечения.
Примечание. Требования 7.7.2.2 - 7.7.2.5 основываются на общих требованиях МЭК 61508-1 (пункт 7.14).
7.7.2.6. Подтверждение соответствия программного обеспечения, связанного с безопасностью, должно удовлетворять следующим требованиям:
a) основным методом подтверждения соответствия для программного обеспечения должно быть тестирование; анимацию и моделирование допускается использовать как дополнительные методы;
b) прогон программного обеспечения должен выполняться путем имитации:
- входных сигналов в нормальном режиме работы,
- предполагаемых случаев,
- нежелательных условий, требующих вмешательства системы;
c) поставщик и/или разработчик должны предоставить документированные результаты подтверждения соответствия безопасности программного обеспечения и всю имеющую отношение к этой операции документацию в распоряжение разработчика системы для того, чтобы дать ему возможность выполнить требования МЭК 61508-1 и МЭК 61508-2.
7.7.2.7. К качеству программных средств предъявляют следующие требования:
a) все программные средства, используемые при подтверждении соответствия, должны быть квалифицированы в соответствии со спецификациями, разработанными на основе международного стандарта (если таковой имеется) или национального стандарта (если таковой имеется), либо в соответствии с общепринятой процедурой;
b) оборудование, используемое при подтверждении соответствия, должно быть соответствующим образом квалифицировано, должна быть продемонстрирована пригодность для подтверждения соответствия всех используемых программных и аппаратных средств.
Примечание. В настоящем стандарте квалификация представляет собой операцию, которая демонстрирует выполнение конкретной спецификации, в отличие от базовых процедур проверки соответствия, которые могут использоваться по отношению к любой спецификации.
7.7.2.8. К результатам подтверждения соответствия программного обеспечения предъявляются следующие требования:
a) проверки должны показать, что все требования, предъявляемые к безопасности программного обеспечения (см. 7.2), выполняются правильно и что программная система не выполняет непредусмотренных функций;
b) тестовые примеры и их результаты должны быть документированы для последующего анализа и независимой экспертизы в соответствии с требованиями уровня полноты безопасности (МЭК 61508-1, пункт 8.2.12);
c) документированные результаты подтверждения соответствия безопасности программного обеспечения должны содержать утверждение о том, что программа прошла подтверждение соответствия, либо причины, по которым она не прошла его.
Примечания. 1. См. также таблицу A.8 (Приложение A).
2. Эта стадия представлена на рисунке 3 (см. 9.5).
7.8.1. Цели
Целью требований настоящего подраздела является внесение корректировок, улучшений или изменений в принятое программное обеспечение, гарантирующих сохранение уровня полноты безопасности программного обеспечения.
Примечание. В настоящем стандарте программное обеспечение (в отличие от аппаратного обеспечения) не может поддерживаться, оно всегда модифицируется.
7.8.2.1. Перед выполнением какой-либо модификации программного обеспечения должны быть подготовлены процедуры модификации (МЭК 61508-1, пункт 7.16).
Примечания. 1. Требования 7.8.2.1 - 7.8.2.9 относятся, в первую очередь, к изменениям, выполняемым на этапе работы программного обеспечения. Они могут также применяться во время интеграции программируемой электроники, а также во время общей установки и ввода в эксплуатацию (МЭК 61508-1, пункт 7.13).
2. Пример модели процедуры модификации приведен в МЭК 61508-1 (рисунок 9).
7.8.2.2. Процесс модификации может начинаться только после появления запроса на санкционированную модификацию программного обеспечения в рамках процедур, определенных на этапе планирования безопасности (см. раздел 6), в котором приведена подробная информация:
a) об опасностях, на которые могут повлиять изменения;
b) о предлагаемых изменениях;
c) о причинах изменений.
Примечание. Причины появления запроса на модификацию могут быть, например, связаны с:
- тем, что функциональная безопасность оказалась ниже той, которая была определена в спецификациях;
- систематическими отказами;
- появлением нового или изменением действующего законодательства, относящегося к безопасности;
- модификацией EUC или способа его использования;
- модификацией общих требований к безопасности;
- анализом характеристик работы и обслуживания, который показывает, что эти характеристики имеют значения ниже запланированных;
- текущим аудитом функциональной безопасности.
7.8.2.3. Должен быть выполнен анализ влияния предлагаемых модификаций программного обеспечения на функциональную безопасность E/E/PE систем, связанных с безопасностью:
a) определить, необходим или нет анализ рисков;
b) определить, какие фазы жизненного цикла модулей безопасности следует повторить.
7.8.2.4. Результаты анализа влияния, полученные в 7.8.2.3, должны быть документированы.
7.8.2.5. Все модификации, оказывающие влияние на функциональную безопасность E/E/PE систем, связанных с безопасностью, должны приводить к возврату на соответствующую стадию жизненного цикла модулей безопасности. Все последующие стадии должны выполняться в соответствии с процедурами, определенными для отдельных стадий в соответствии с требованиями настоящего стандарта. При планировании безопасности (см. раздел 6) должны быть подробно описаны все последующие процессы.
Примечание. Может потребоваться выполнение полного анализа рисков и опасностей, в результате которого может появиться потребность в иных уровнях полноты безопасности, чем те, которые определены для систем, связанных с безопасностью, и внешних средств уменьшения риска.
7.8.2.6. Планирование безопасности для модификации программного обеспечения, связанного с безопасностью, должно включать в себя следующую информацию:
a) идентификацию персонала и определение требований к его квалификации;
b) подробную спецификацию модификации;
c) планирование верификации;
d) область применения операций повторного подтверждения соответствия и тестирования модификации в той степени, в которой этого требует уровень полноты безопасности.
7.8.2.7. Модификация должна быть выполнена в соответствии с разработанным планом.
7.8.2.8. Все модификации должны быть подробно документированы, включая:
a) запрос на модификацию/корректировку;
b) результаты анализа влияния, которое окажут предлагаемые модификации программного обеспечения на функциональную безопасность, и принятые решения с их обоснованием;
c) сведения об изменениях конфигурации программного обеспечения;
d) отклонения от нормальной работы и нормальных условий работы;
e) все документы, которые затрагиваются процессами модификации.
7.8.2.9. Информация (например, хронологическая) о деталях всех выполненных модификаций должна быть документирована. Документация должна включать в себя данные и результаты повторной верификации и повторного подтверждения соответствия.
Примечание. Требования 7.8.2.1 - 7.8.2.9 относятся, в первую очередь, к изменениям, выполняемым на этапе работы программного обеспечения. Они могут также применяться во время интеграции программируемой электроники, а также во время общей установки и ввода в эксплуатацию (МЭК 61508-1, пункт 7.13).
7.8.2.10. Оценка необходимых модификаций или корректировок должна зависеть от результатов анализа влияния модификаций и уровня полноты безопасности программного обеспечения.
7.9.1. Цели
Цель требований настоящего подраздела - подтвердить в соответствии с требуемым уровнем полноты безопасности, что результаты, полученные на заданной стадии жизненного цикла модулей безопасности, являются корректными и соответствуют требованиям и стандартам, использовавшимся в качестве исходной информации для соответствующей стадии.
Примечания. 1. Настоящий подраздел учитывает базовые аспекты верификации, которые являются общими для нескольких стадий жизненного цикла модулей безопасности. Настоящий подраздел не предъявляет дополнительных требований к элементам проверки верификации 7.4 (проверка программных модулей), 7.4.8 (интеграция программного обеспечения) и 7.5 (интеграция программируемой электроники), которые сами по себе представляют процессы верификации. Данный подраздел не требует также дополнительной верификации для процессов подтверждения соответствия программного обеспечения (см. 7.7), которое в настоящем стандарте определяется как демонстрация соответствия спецификации требований к безопасности (конечная верификация). Проверка того, является ли корректной сама спецификация, выполняется специалистами по предметным областям.
2. В зависимости от архитектуры программного обеспечения ответственность за проведение верификации программного обеспечения может быть разделена между всеми организациями, вовлеченными в разработку и модификацию программного обеспечения.
7.9.2.1. Верификация программного обеспечения для каждой стадии жизненного цикла модулей безопасности должна планироваться (см. 7.4) одновременно с разработкой; вся информация, относящаяся к этому вопросу, должна документироваться.
7.9.2.2. Планирование верификации программного обеспечения должно касаться критериев, методов и инструментария, используемого при верификации, в ходе его должны быть рассмотрены:
a) оценка требований полноты безопасности;
b) выбор и документирование стратегии, процессов и методов верификации;
c) выбор и использование инструментов верификации (тестовая программа, специальные программные средства для тестирования, имитаторы ввода/вывода и т.п.);
d) оценка результатов верификации;
e) исправления, которые должны быть сделаны.
7.9.2.3. Верификация программного обеспечения должна быть выполнена в соответствии с планом.
Примечание. Выбор методов и средств, предназначенных для верификации, а также степень независимости процессов верификации определяются рядом факторов и могут быть определены в стандартах для прикладных отраслей. К числу таких факторов относятся, например:
- размер проекта;
- степень сложности;
- степень новизны проекта;
- степень новизны технологии.
7.9.2.4. Должны быть документированы свидетельства того, что верифицируемая стадия завершена удовлетворительно во всех отношениях.
7.9.2.5. Документация, составляемая после каждой верификации, должна включать в себя:
a) перечень пунктов, подлежащих верификации;
b) идентификацию информации, по отношению к которой выполняется верификация;
c) перечень несоответствий.
Примечание. Примерами несоответствий являются программные модули, структуры данных и алгоритмы, которые плохо адаптированы к задаче.
7.9.2.6. Вся существенная информация, относящаяся к стадии N жизненного цикла модулей безопасности, которая необходима для правильного выполнения следующей стадии N + 1, должна быть доступна и верифицирована. К выходной информации стадии N относятся:
a) информация об адекватности спецификации описания проекта либо исходного текста программ, разработанных в ходе стадии N:
- функциональности,
- полноте безопасности, характеристикам и другим требованиям планирования безопасности (см. раздел 6),
- требованию понятности для коллектива разработчиков,
- безопасной модификации, допускающей дальнейшее развитие;
b) информация об адекватности планирования подтверждения соответствия и проверок, определенных для стадии N, определению и описанию проекта стадии N;
c) результаты несоответствия между:
- проверками, определенными для стадии N, и проверками, определенными для предыдущей стадии N - 1,
- выходными данными стадии N.
7.9.2.7. С учетом 7.1.2.1 должны быть выполнены следующие операции верификации:
a) верификация требований к безопасности программного обеспечения (см. 7.9.2.8);
b) верификация архитектуры программного обеспечения (см. 7.9.2.9);
c) верификация проекта системы программного обеспечения (см. 7.9.2.10);
d) верификация проектов программных модулей (см. 7.9.2.11);
e) верификация исходных текстов программ (см. 7.9.2.12);
f) верификация данных (см. 7.9.2.13);
g) тестирование программных модулей (см. 7.4.7);
h) тестирование интеграции программного обеспечения (см. 7.4.8);
i) тестирование интеграции программируемой электроники (см. 7.5);
j) тестирование требований к безопасности программного обеспечения (подтверждение соответствия программного обеспечения) (см. 7.7).
Когда определены требования к безопасности программного обеспечения (см. 7.2) и перед следующей стадией начато проектирование и разработка программного обеспечения, верификация должна проверять:
a) соответствуют ли требования к безопасности программного обеспечения (см. 7.2) требованиям к безопасности E/E/PES систем (МЭК 61508-2) в отношении функциональности, безопасности, полноты, характеристик и других требований к планированию безопасности;
b) соответствует ли планирование подтверждения соответствия программ для обеспечения безопасности (см. 7.3) требованиям к безопасности программного обеспечения (см. 7.2);
c) наличие несоответствия между:
- специфицированными требованиями к безопасности программного обеспечения (см. 7.2) и специфицированными требованиями к безопасности E/E/PE систем (МЭК 61508-2),
- специфицированными требованиями к безопасности программного обеспечения (см. 7.2) и планированием подтверждения соответствия безопасности программного обеспечения (см. 7.3).
После того, как установлена спроектированная архитектура программного обеспечения, верификация должна проверить:
a) удовлетворяет ли описание проекта архитектуры программного обеспечения (см. 7.4.3) специфицированным требованиям к безопасности программного обеспечения (см. 7.2);
b) адекватны ли специфицированные проверки интеграции архитектуры программного обеспечения (см. 7.4.3) описанию проекта архитектуры программного обеспечения (см. 7.4.3);
c) адекватность атрибутов каждого основного компонента/подсистемы по отношению к:
- реализуемости требуемых характеристик безопасности,
- возможности проверки при последующей верификации,
- пониманию персоналом, выполняющим разработку и верификацию,
- безопасной модификации, позволяющей выполнять дальнейшее развитие программы;
d) наличие несовместимости между:
- описанием проекта архитектуры программного обеспечения (см. 7.4.3) и специфицированными требованиями к безопасности программного обеспечения (см. 7.2),
- описанием проекта архитектуры программного обеспечения (см. 7.4.3) и специфицированными тестами интеграции архитектуры программного обеспечения (см. 7.4.3),
- специфицированными тестами интеграции архитектуры программного обеспечения (см. 7.4.3) и планированием подтверждения соответствия безопасности программного обеспечения (см. 7.3).
После завершения спецификации системы программного обеспечения верификация должна проверить:
a) удовлетворяет ли специфицированный проект системы программного обеспечения (см. 7.4.5) проекту архитектуры программного обеспечения (см. 7.4.3);
b) удовлетворяют ли специфицированные тесты интеграции системы программного обеспечения (см. 7.4.5) проекту системы программного обеспечения (см. 7.4.5);
c) адекватность атрибутов каждого основного компонента проекта системы программного обеспечения (см. 7.4.5) по отношению к:
- реализуемости требуемых характеристик безопасности,
- возможности проверки при последующей верификации,
- пониманию персоналом, выполняющим разработку и верификацию,
- безопасной модификации, позволяющей выполнять дальнейшее развитие программы;
Примечание. Проверки интеграции системы программного обеспечения могут быть определены как часть проверок интеграции архитектуры программного обеспечения.
d) наличие несоответствий между:
- специфицированным проектом системы программного обеспечения (см. 7.4.5) и описанием проекта архитектуры программного обеспечения (см. 7.4.3),
- описанием проекта системы программного обеспечения (см. 7.4.5) и специфицированными тестами интеграции системы программного обеспечения (см. 7.4.5),
- тестами интеграции системы программного обеспечения (см. 7.4.5) и специфицированными тестами интеграции архитектуры (см. 7.4.3).
После того, как определен проект каждого программного модуля, верификация должна проверить:
a) удовлетворяет ли специфицированный проект программного модуля (см. 7.4.5) проекту системного программного обеспечения (см. 7.4.5);
b) адекватны ли специфицированные проверки каждого программного модуля (см. 7.4.5) проекту программного модуля (см. 7.4.5);
c) адекватность атрибутов каждого программного модуля по отношению к:
- реализуемости требуемых характеристик безопасности (см. 7.2),
- возможности проверки при последующей верификации,
- пониманию персоналом, выполняющим разработку и верификацию,
- безопасной модификации, позволяющей выполнять дальнейшее развитие программы;
d) наличие несоответствий между:
- специфицированным проектом программного модуля (см. 7.4.5) и специфицированным проектом системы программного обеспечения (см. 7.4.5),
- специфицированным проектом каждого программного модуля (см. 7.4.5) и специфицированными проверками программных модулей (см. 7.4.5),
- специфицированными проверками программных модулей (см. 7.4.5) и специфицированными проверками интеграции системы программного обеспечения (см. 7.4.5).
Исходный текст должен быть верифицирован статическими методами для того, чтобы гарантировать соответствие специфицированным проектам программных модулей (см. 7.4.5), необходимым стандартам кодирования (см. 7.4.4) и требованиям планирования безопасности (см. 7.3).
Примечание. На ранних стадиях жизненного цикла безопасности программного обеспечения верификация является статической (например, изучение, просмотр, формальная проверка и т.п.). Верификация исходного текста включает такие методы, как просмотр и прогон программного обеспечения. Сочетание результатов верификации исходных текстов и проверок программного обеспечения гарантирует, что каждый программный модуль будет удовлетворять своей спецификации.
a) Структуры данных, специфицированные во время проектирования, должны быть проверены на:
- полноту;
- согласованность;
- защиту от изменения или повреждения;
- соответствие функциональным требованиям системы, управляемой данными.
b) Прикладные данные должны быть проверены на:
- соответствие структурам данных;
- полноту;
- совместимость с базовым программным обеспечением (например, последовательность исполнения, совместимость на этапе исполнения и др.) и
- правильность значений данных.
Примечание. Примером прикладных данных являются программы для станков с числовым программным управлением. Системное программное обеспечение (обычно представляющее собой набор подпрограмм) действует как интерпретатор по отношению к прикладным данным. В других контекстах такие прикладные данные могут рассматриваться как прикладные программы.
c) Все параметры, которые могут быть изменены, должны быть проверены на защиту от:
- неверных и неопределенных начальных значений;
- ошибочных, несовместимых или необоснованных значений;
- несанкционированных изменений;
- повреждения данных.
d) Все промышленные интерфейсы и соответствующее программное обеспечение (т.е. датчики и устройства привода, а также автономные интерфейсы: см. 7.2.2.11) должны быть проверены на:
- выявление предполагаемых отказов интерфейса;
- устойчивость по отношению к предполагаемым отказам интерфейса.
e) Все коммуникационные интерфейсы и соответствующее программное обеспечение должны быть проверены на наличие адекватного уровня:
- обнаружения ошибок;
- защиты от повреждения;
- подтверждения данных.
8.1. Цели и требования раздела 8 МЭК 61508-1 относятся к оценке программного обеспечения, связанного с безопасностью.
8.2. Если иное не оговорено в международных стандартах для прикладной отрасли, минимальный уровень безопасности для выполняющих оценку функциональной безопасности должен быть по МЭК 61508-1, пункт 8.2.12.
8.3. Оценка функциональной безопасности может использовать результаты процессов, приведенных в таблице A.10 (Приложение A).
Примечание. Выбор методов, приведенных в Приложениях A и B, не гарантирует, что будет достигнута необходимая полнота безопасности (см. 7.1.2.6). Лицо, выполняющее оценку, должно также рассмотреть:
- совместимость и взаимное дополнение выбранных методов, языков и инструментов для всего цикла разработки;
- полностью ли понимают разработчики методы, языки и инструменты, которые они используют;
- насколько хорошо адаптированы методы, языки и инструменты к конкретным проблемам, с которыми приходится сталкиваться при разработке.
(обязательное)
Некоторые из подразделов настоящего стандарта имеют ассоциированные с ними таблицы, например подраздел 7.2 связан с таблицей A.1. Более подробные таблицы, содержащиеся в Приложении B, раскрывают содержание некоторых элементов таблиц Приложения A, например таблица B.2 раскрывает содержание динамического анализа и тестирования из таблицы A.5.
Обзор методов и средств, упоминаемых в Приложениях A и B, приведен в МЭК 61508-7. Для каждого из них даны рекомендации по уровню полноты безопасности, изменяющемуся от 1 до 4. Эти рекомендации обозначаются следующим образом:
HR: настоятельно рекомендуется использовать этот метод или средство для данного уровня полноты безопасности. Если метод или средство не используются, то на этапе планирования безопасности этому должно быть дано подробное объяснение, которое должно быть согласовано с экспертом.
R: метод или средство рекомендуется использовать для данного уровня полноты безопасности, но степень обязательности рекомендации ниже, чем в случае рекомендации HR.
-: для данного метода или средства не даются рекомендации ни за, ни против.
NR: данный метод или средство определенно не рекомендуется для этого уровня полноты безопасности. Если данный метод или средство используются, то на стадии планирования безопасности этому должно быть дано подробное обоснование, которое следует согласовать с экспертом.
Методы и средства следует выбирать в соответствии с уровнем полноты безопасности. Альтернативные или эквивалентные методы и средства обозначаются буквой, следующей за номером. Следует выполнять только один из альтернативных или эквивалентных методов/средств.
Ранжирование методов и средств связано с концепцией эффективности, используемой в МЭК 61508-2. При прочих равных условиях методы, имеющие ранг HR, будут более эффективны в предотвращении внесения систематических ошибок при разработке программного обеспечения либо (при разработке архитектуры программ) будут более эффективны при выявлении ошибок, оставшихся необнаруженными на этапе выполнения, по сравнению с методами, имеющими ранг R.
При большом числе факторов, влияющих на полноту безопасности программного обеспечения, невозможно дать алгоритм, определяющий такую комбинацию методов и средств, которая была бы корректной для любого заданного приложения. Тем не менее, руководство по использованию этих таблиц, иллюстрированное двумя рабочими примерами, приведено в МЭК 61508-6.
В случае конкретного приложения соответствующая комбинация методов или средств должна быть сформулирована при планировании безопасности, при этом методы и средства должны использоваться, если примечания к таблице не налагают иных требований.
Предварительное руководство по интерпретации таблиц для прикладного программирования приведено в МЭК 61508-6.
Примечание. Ссылки указывают на подробные описания методов/средств, приведенные в МЭК 61508-7.
Таблица A.1
программного обеспечения (см. 7.2)
Таблица A.2
проектирование архитектуры программ (см. 7.4.3)
Таблица A.3
инструментальные средства поддержки
и языки программирования (см. 7.4.4)
Таблица A.4
Таблица A.5
тестирование программных модулей и интеграция
Таблица A.6
(программное обеспечение и аппаратные средства) (см. 7.5)
Таблица A.7
Проверка безопасности программного обеспечения (см. 7.7)
Таблица A.8
Модификация (см. 7.8)
Таблица A.9
Верификация программного обеспечения (см. 7.9)
Таблица A.10
Оценка функциональной безопасности (см. раздел 8)
(обязательное)
Примечание. Ссылки указывают на подробные описания методов/средств, приведенные в МЭК 61508-7.
Таблица B.1
(указанные в таблице A.4, Приложение A)
Таблица B.2
(упоминаемые в таблицах A.5 и A.9, Приложение A)
Таблица B.3
методом черного ящика (упоминаемые
???????????????????????????????????????????????????????????????????????????
? Метод/средство <1> ?Ссылка ?SIL1?SIL2?SIL3?SIL4?
???????????????????????????????????????????????????????????????????????????
? 1. Выполнение контрольного примера, начиная ?8.6.6.2? - ? - ? R ? R ?
?с причинно-следственных диаграмм ? ? ? ? ? ?
???????????????????????????????????????????????????????????????????????????
? 2. Макетирование/анимация ?C.5.17 ? - ? - ? R ? R ?
???????????????????????????????????????????????????????????????????????????
? 3. Анализ граничных значений ? C.5.4 ? R ? HR ? HR ? HR ?
???????????????????????????????????????????????????????????????????????????
? 4. Разделение входных данных на классы ? C.5.7 ? R ? HR ? HR ? HR ?
?эквивалентности ? ? ? ? ? ?
???????????????????????????????????????????????????????????????????????????
? 5. Моделирование процесса ?C.5.18 ? R ? R ? R ? R ?
???????????????????????????????????????????????????????????????????????????
?безопасности. ?
? ?
? Примечания. 1. Анализ с использованием контрольных примеров?
?выполняется на уровне систем программного обеспечения и основывается?
?только на спецификациях. ?
? 2. Полнота моделирования будет зависеть от уровня полноты?
?безопасности, сложности и применения. ?
???????????????????????????????????????????????????????????????????????????
Таблица B.4
(упоминается в таблице A.10, Приложение A)
???????????????????????????????????????????????????????????????????????????
? Метод/средство <1> ?Ссылка ?SIL1?SIL2?SIL3?SIL4?
???????????????????????????????????????????????????????????????????????????
? 1а. Причинно-следственные диаграммы ?B.6.6.2? R ? R ? R ? R ?
???????????????????????????????????????????????????????????????????????????
ИС NORMPROD: примечание.
Обозначение пункта дано в соответствии с официальным текстом документа.
? 1в. Анализ методом дерева событий ?B.6.6.3? R ? R ? R ? R ?
???????????????????????????????????????????????????????????????????????????
? 2. Анализ методом дерева отказов ?B.6.6.5? R ? R ? HR ? HR ?
???????????????????????????????????????????????????????????????????????????
? 3. Анализ режимов, последствий и критичности?B.6.6.4? R ? R ? HR ? HR ?
?отказов ? ? ? ? ? ?
???????????????????????????????????????????????????????????????????????????
? 4. Моделирование методом Монте-Карло ? C.6.6 ? R ? R ? R ? R ?
???????????????????????????????????????????????????????????????????????????
?безопасности. Альтернативные или эквивалентные методы/средства обозначают?
?буквами, следующими за числом. Следует выполнять только один из?
?альтернативных или эквивалентных методов/средств. ?
? ?
? Примечание. Предварительно должен быть выполнен анализ рисков для?
?отнесения программного обеспечения к соответствующему уровню полноты?
?безопасности. ?
???????????????????????????????????????????????????????????????????????????
Таблица B.5
(упоминается в таблице A.7, Приложение A)
Таблица B.6
(упоминается в таблицах A.5 и A.6, Приложение A)
Таблица B.7
???????????????????????????????????????????????????????????????????????????
? Метод/средство <1> ? Ссылка ?SIL1?SIL2?SIL3?SIL4?
???????????????????????????????????????????????????????????????????????????
? 1. Логические/функциональные блок-схемы ? См. ? R ? R ? HR ? HR ?
? ?примечание ? ? ? ? ?
? ? ниже ? ? ? ? ?
???????????????????????????????????????????????????????????????????????????
? 2. Диаграммы последовательности ? См. ? R ? R ? HR ? HR ?
? ?примечание ? ? ? ? ?
? ? ниже ? ? ? ? ?
???????????????????????????????????????????????????????????????????????????
? 3. Диаграммы потоков данных ? C.2.2 ? R ? R ? R ? R ?
???????????????????????????????????????????????????????????????????????????
? 4. Конечные автоматы/диаграммы переходов? 8.2.3.2 ? R ? R ? HR ? HR ?
???????????????????????????????????????????????????????????????????????????
? 5. Метод сетей Петри ? B.2.3.3 ? R ? R ? HR ? HR ?
???????????????????????????????????????????????????????????????????????????
? 6. Таблицы решений, таблицы истинности ? C.6.1 ? R ? R ? HR ? HR ?
???????????????????????????????????????????????????????????????????????????
?безопасности. ?
? ?
?последовательности описаны в МЭК 61131-3. ?
???????????????????????????????????????????????????????????????????????????
Таблица B.8
(упоминается в таблице A.9, Приложение A)
Таблица B.9
(упоминается в таблице A.4, Приложение A)
(справочное)
НАЦИОНАЛЬНЫХ СТАНДАРТОВ РОССИЙСКОЙ ФЕДЕРАЦИИ
ССЫЛОЧНЫМ МЕЖДУНАРОДНЫМ СТАНДАРТАМ
Таблица C.1
???????????????????????????????????????????????????????????????????????????
? Обозначение ссылочного ? Обозначение и наименование соответствующего ?
? международного стандарта ? национального стандарта ?
???????????????????????????????????????????????????????????????????????????
ИС NORMPROD: примечание.
ГОСТ Р МЭК 61508-1-2007 утратил силу с 01.08.2013 в связи с введением в
N 586-ст).
?МЭК 61508-1:1998 ?ГОСТ Р МЭК 61508-1-2007. Функциональная ?
? ?безопасность систем электрических, ?
? ?электронных, программируемых электронных, ?
? ?связанных с безопасностью. Часть 1. Общие ?
? ?требования ?
???????????????????????????????????????????????????????????????????????????
?МЭК 61508-2:2000 ? <*> ?
???????????????????????????????????????????????????????????????????????????
?МЭК 61508-4:1998 ?ГОСТ Р МЭК 61508-4-2007. Функциональная ?
? ?безопасность систем электрических, ?
? ?электронных, программируемых электронных, ?
? ?связанных с безопасностью. Часть 4. Термины и?
? ?определения ?
???????????????????????????????????????????????????????????????????????????
?МЭК 61508-5:1998 ?ГОСТ Р МЭК 61508-5-2007. Функциональная ?
? ?безопасность систем электрических, ?
? ?электронных, программируемых электронных, ?
? ?связанных с безопасностью. Часть 5. ?
? ?Рекомендации по применению методов ?
? ?определения уровней полноты безопасности ?
???????????????????????????????????????????????????????????????????????????
?МЭК 61508-6:2000 ? <*> ?
???????????????????????????????????????????????????????????????????????????
?МЭК 61508-7:2000 ? <*> ?
???????????????????????????????????????????????????????????????????????????
?ИСО/МЭК Руководство 51:1999?ГОСТ Р 51898-2002. Аспекты безопасности. ?
? ?Правила включения в стандарты ?
???????????????????????????????????????????????????????????????????????????
?МЭК Руководство 104:1997 ? <*> ?
???????????????????????????????????????????????????????????????????????????
?утверждения рекомендуется использовать перевод на русский язык данного?
?международного стандарта. Перевод данного международного стандарта?
?находится в Федеральном информационном фонде технических регламентов и?
?стандартов. ?
???????????????????????????????????????????????????????????????????????????
МЭК 61151:1992. Приборы атомной промышленности. Усилители и предварительные усилители, используемые с детекторами ионизирующего излучения. Процедуры проверки
ИСО/МЭК 12207:1995. Информационные технологии. Процессы в жизненном цикле программного обеспечения
ANSI/ISA S84:1996. Применение систем, оснащенных средствами обеспечения безопасности в обрабатывающих отраслях.
Вернуться в "Каталог нормативных документов"
Источник информации: https://internet-law.ru/documents/prod/gost-r_gosudarstvennyj-standart/13/gost_80207.html
На правах рекламы:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||