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

ГОСТ Р ИСО 26262-6-2014 Дорожные транспортные средства. Функциональная безопасность. Часть 6. Разработка программного обеспечения изделия

     5.4 Требования и рекомендации

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

5.4.2 Должна быть выполнена настройка жизненного цикла разработки программного обеспечения изделия в соответствии с требованиями 6.4.5 ИСО 26262-2, на основе базовой модели стадии, приведенной на рисунке 2.

5.4.3 В случае создания конфигурируемого программного обеспечения применяется приложение С.

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

Примечание - Последовательность стадий, задач и действий, включая итерации, для программного обеспечения устройства является гарантией обеспечения согласованности соответствующих результатов разработки аппаратных средств изделия (см. ИСО 26262-5) и результатов разработки на уровне системы (см. ИСО 26262-4).

Примечание - На рисунке конкретные разделы каждой части настоящего стандарта указаны следующим образом: "m-n", где "m" представляет собой номер части настоящего стандарта, а "n" указывает на номер ее раздела, например, 4-7 представляет раздел 7 ИСО 26262-4.

Рисунок 2 - Базовая модель стадии разработки программного обеспечения (ПО)

5.4.5 Для каждой подстадии разработки программного обеспечения должны быть выбраны, включая руководство по их применению,

a) методы и

b) соответствующие инструментальные средства.

5.4.6 Критериями выбора подходящего языка моделирования или программирования являются:

a) однозначность определения;

Пример - Синтаксиса и семантик языка.

b) поддержка встроенного программного обеспечения систем реального времени и обработка ошибок во время выполнения;

c) поддержка модульности, абстракции и структурированных конструкций.

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

Примечания

1 Выбранный язык программирования (например, ADA, С, С + +, Java, Ассемблер или графический язык моделирования) поддерживает свойства, приведенные в 5.4.7. Для выполнения этих свойств могут использоваться соответствующие рекомендации по программированию или моделированию.

2 Для тех частей программного обеспечения, где использование языков высокого уровня программирования не подходит, таких как низкоуровневое программное обеспечение интерфейса с техническими средствами, обработчики прерываний или критические по времени алгоритмы, могут быть использованы языки Ассемблера.

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

Примечания

1 Руководства по кодированию, как правило, различны для различных языков программирования.

2 Руководства по кодированию могут отличаться для разработки на основе модели.

3 Существующие руководства по кодированию могут быть модифицированы для разработки конкретного устройства.


Пример - MISRA С [3] и MISRA AC AGC [4] являются руководствами по кодированию для языка программирования С.


Таблица 1 - Вопросы, которые должны быть рассмотрены в руководствах по моделированию и кодированию