Роль тестирования в сертификации ПО систем с высокими требованиями к надежности и безопасности Алексей Николаев. ООО НПП «ЭКРА»
Системы с высокими требованиями к надежности и безопасности Это системы, в которых сбой или крах могут: Привести к смерти либо серьезному ущербу для здоровья людей; Привести к разрушению либо серьезным повреждениям дорогостоящего оборудования; Нанести ущерб окружающей среде.
Особенность систем с высокими требованиями к надежности и безопасности Отличительная особенность таких систем: Известный заказчик Относительно узкая сфера применения Присутствует управление планами поставки Ограничения в сроках поставки готовых испытанных продуктов заказчику Изменения в коде, как правило, выполняются с санкции заказчика Производство таких систем с соблюдением определенных стандартов и правил Оформление на них достаточно полной технологической документации
Надежность – одна из характеристик качества ПО согласно ГОСТ Р ИСО/МЭК 9126-93
Взаимосвязь характеристик качества ПО Источник: С. Макконнелл
Оценка надежности ПО Надежность функционирования программ – динамическое понятие, проявляющееся во времени и существенно отличающееся от понятия корректности программ. При оценке качества программ по показателям надежности регистрируются только такие искажения в процессе динамического тестирования с исполнением программ, которые приводят к потере работоспособности программ или их крупных компонентов .
Стандарты на жизненный цикл ПО в каждой из отрасли Стандарты в отраслях: Транспорт Автомобильный (ISO 26262) Авиационный (DO-178) Медицина (IEC 62304) Атомная энергетика (IEC 60880, IEC 62138) Космос (ECSS-E-ST-40C)
Общие черты для большинства стандартов жизненного цикла ПО Базовым стандартом для ПО такого класса является: IEC 61508 «Функциональная безопасность систем электрических, электронных, программируемых электронных, связанных с безопасностью» Если в какой-то отрасли еще не созданы специфические для нее стандарты, то используется IEC 61508.
Управление качеством разрабатываемого ПО Высокая функциональная безопасность и надежность ПО достигается и определяется преимущественно за счет технологий обеспечения качества на всех этапах жизненного цикла (ЖЦ) ПО . Во всех стандартах значительное внимание уделяется технологическим процессам и инструментальным системам обеспечения безопасности и качества ЖЦ ПО .
Взаимосвязь наиболее признанных и применяемых в мире стандартов в области разработки ПО