7.1 Общие положения
7.1.1 Цели
Целью требований, излагаемых в настоящем подразделе, является разделение процесса разработки программного обеспечения на этапы и процессы (см. таблицу 1 и рисунки 3-6).
Таблица 1 - Жизненный цикл программного обеспечения (ПО) системы безопасности: обзор
Стадия жизненного цикла ПО системы безопасности (номер стадии соответствует номеру блока на рисунке 3) | Задача | Область применения | Номер пункта или раздела | Входные данные | Выходные данные |
10.1 Спецификация требований к ПО системы безопасности | Указать требования: к системе программируемой электроники (ПЭ); к ПО, связанному с безопасностью, в виде требований к функциям безопасности ПО и к стойкости к систематическим отказам ПО. | ПЭ система. | 7.2.2 | Спецификация требований к Э/Э/ПЭ системе безопасности в результате распределения (см. МЭК 61508-1) | Спецификация требований к ПО системы безопасности |
10.2 Планирование подтверждения соответствия для аспектов ПО безопасности системы | Разработать план подтверждения соответствия для аспектов ПО безопасности системы | ПЭ система. | 7.3.2 | Спецификация требований к ПО системы безопасности | План подтверждения соответствия для аспектов ПО безопасности системы |
10.3 Проектирование и разработка ПО | Архитектура: | ПЭ система. | 7.4.3 | Спецификация требований к ПО системы безопасности. | Описание проекта архитектуры ПО. |
Инструментальные средства поддержки и языки программирования: | ПЭ система. | 7.4.4 | Спецификация требований к ПО системы безопасности. | Инстру- | |
10.3 Проектирование и разработка программного обеспечения | Детальное проектирование и разработка (проект программной системы): | Проектирование архитектуры основных компонентов и подсистем ПО | 7.4.5 | Описание проекта архитектуры ПО. | Спецификация проекта системы ПО. |
Детальное проектирование и разработка (проект отдельных программных модулей): | Проект сиcтемы ПО | 7.4.5 | Спецификация проекта системы ПО. | Спецификация проекта программного модуля. | |
Детальная реализация исходного текста: | Отдельные программные модули | 7.4.6 | Спецификация проекта программного модуля. | Листинг исходного текста. | |
Тестирование программных модулей: | Программные модули | 7.4.7 | Спецификация тестирования программного модуля. | Результаты тестирования программного модуля. | |
Проверка интеграции ПО: | Архитектура ПО. | 7.4.8 | Спецификация тестирования интеграции программной системы | Результаты тестирования интеграции программной системы. | |
10.4 Интеграция программируемой электроники (аппаратные средства и программное обеспечение) | Интегрировать ПО с выбранной программируемой электронной аппаратурой. | Аппаратное обеспечение програм- | 7.5.2 | Спецификация тестирования интеграции архитектуры ПО. | Результаты тестирования интеграции архитектуры ПО. |
10.5 Процедуры эксплуатации и модификации ПО | Предоставить информацию и процедуры, относящиеся к ПО и необходимые для того, чтобы гарантировать соблюдение функциональной безопасности Э/Э/ПЭ систем, связанных с безопасностью, во время эксплуатации и модификации | Аппаратное обеспечение програм- | 7.6.2 | По необходимости вся информация, описанная выше | Процедуры эксплуатации и модификации ПО |
10.6 Подтверждение соответствия аспектов ПО безопасности системы | Обеспечить гарантию, что интегрированная система соответствует указанным требованиям к ПО, связанному с безопасностью, для заданного уровня полноты безопасности | Аппаратное обеспечение програм- | 7.7.2 | План подтверждения соответствия аспектов ПО безопасности системы | Результаты подтверждения соответствия ПО безопасности системы. |
Модификация ПО | Внести поправки, улучшения или модификации в принятое ПО, гарантируя, что требуемый уровень стойкости к систематическим отказам ПО будет сохранен | Аппаратное обеспечение програм- | 7.8.2 | Процедуры модификации ПО. | Результаты анализа влияния модификации ПО. |
Верификация ПО | Протестировать и оценить выходные данные для заданной стадии жизненного цикла ПО системы безопасности для того, чтобы гарантировать правильность и соответствие выходным данным и стандартам для этой стадии | Зависит от стадии | 7.9.2 | Соответствующий план верификации (зависит от стадии) | Соответст- |
Оценка функциональной безопасности ПО | Изучить и принять решение по функциональной безопасности аспектов ПО, которая обеспечивается Э/Э/ПЭ системами, связанными с безопасностью | Для всех стадий, перечис- | 8 | План оценки функциональной безопасности ПО | Отчет по оценке функцио- |
Рисунок 3 - Структура жизненного цикла Э/Э/ПЭ системы безопасности (стадия реализации)
Рисунок 4 - Структура жизненного цикла программного обеспечения системы безопасности (стадия реализации)
Рисунок 5 - Взаимосвязь и области применения МЭК 61508-2 и МЭК 61508-3
Рисунок 6 - Стойкость к систематическим отказам и жизненный цикл разработки программного обеспечения (V-модель)
7.1.2 Требования
7.1.2.1 В соответствии c МЭК 61508-1 (раздел 6) при планировании системы безопасности должен быть выбран и специфицирован жизненный цикл для разработки программного обеспечения системы безопасности.
7.1.2.2 Может использоваться любая модель жизненного цикла программного обеспечения системы безопасности при условии, что она соответствует всем целям и требованиям настоящего раздела.
7.1.2.3 Каждая стадия жизненного цикла программного обеспечения системы безопасности должна быть разделена на элементарные процессы. Для каждой стадии должны быть определены область применения, входные данные и выходные данные.
Примечание - См. рисунки 3, 4 и таблицу 1.
7.1.2.5 Любая настройка жизненного цикла программного обеспечения системы безопасности должна быть обоснована функциональной безопасностью.
7.1.2.6 Процедуры обеспечения качества и безопасности должны быть интегрированы в процессы жизненного цикла систем безопасности.
7.1.2.7 Для каждой стадии жизненного цикла следует использовать соответствующие методы и мероприятия. В приложениях А и В приведены рекомендации по выбору методов и средств, а также ссылки на [5] и [6]. В [5] и [6] приведены рекомендации по выбору конкретного метода для обеспечения свойств, требуемых для систематической полноты безопасности. Методы, выбранные в соответствии с этими рекомендациями, сами по себе не гарантируют достижения необходимой полноты безопасности.
Примечание - Успех в достижении систематической полноты безопасности зависит от выбора методов с учетом следующих факторов:
- согласованность и взаимодополняющий характер выбранных методов, языков и инструментов для всего цикла разработки;
- полностью ли понимают разработчики используемые ими методы, языки и инструментальные средства;