Жизненный цикл безопасности программного обеспечения
Таблица А.1 - Этапы жизненного цикла безопасности ПО
Этап цикла обеспечения безопасности ПО | Цель | Входные данные | Выходные данные |
1 Спецификация требований по безопасности программного обеспечения | Составить спецификацию требований безопасности ПО в отношении требуемых функций безопасности и соответствия уровню полноты безопасности ПО. Составить спецификацию требований к функциям безопасности ПО для каждой ПЭС безопасности для выполнения требуемых функций безопасности. Составить спецификацию требований соответствия ПО уровню полноты безопасности для каждой ПЭС, необходимой для достижения уровня полноты безопасности, заданного для каждой функции безопасности, адресованной этой ПЭС безопасности | Спецификация требований по безопасности Э/Э/ПЭС [2] | Спецификация требований безопасности ПО |
2 Планирование аттестации ПО | Разработать план аттестации программного обеспечения | Спецификация требований безопасности ПО | План аттестации программного обеспечения |
3 Проектирование и разработка программного обеспечения | Архитектура: - создать архитектуру ПО, отвечающую заданным требованиям безопасности ПО в отношении требуемого уровня полноты безопасности; - рассмотреть и оценить требования, возлагаемые на ПО архитектурой ПЭС безопасности, включая значение взаимодействия аппаратуры и ПО ПЭС для безопасности контролируемых технических средств (КТС) | Спецификация требований безопасности ПО. Конструкция архитектуры аппаратуры ПЭС [3] | Описание конструкции архитектуры ПО. Спецификация компоновочных испытаний архитектуры ПО. Спецификация компоновочных испытаний ПО ПЭС [3] |
4 Проектирование и разработка ПО | Средства инструментальной поддержки и языки программирования: выбрать подходящий комплект инструментальных средств, включая языки и компиляторы, на протяжении всего цикла обеспечения безопасности ПО, который способствует верификации, аттестации, оценке и модификации | Спецификация требований безопасности ПО. Описание конструкции архитектуры ПО | Инструментальные средства разработки и стандарты кодирования. Выбор инструментальных средств разработки |
5 Проектирование и разработка ПО | Рабочий проект и разработка системы ПО. Спроектировать и изготовить ПО, соответствующее заданным требованиям безопасности ПО в отношении заданного уровня полноты безопасности, поддающееся анализу и верификации, которое можно безопасно модифицировать | Описание архитектуры ПО. Средства инструментальной поддержки и стандарты кодирования | Спецификация конструкции системы программного обеспечения. Спецификация компоновочных испытаний системы ПО |
6 Проектирование и разработка ПО | Рабочий проект и разработка отдельных модулей ПО: спроектировать и изготовить ПО, соответствующее заданным требованиям по безопасности ПО в отношении заданного уровня полноты безопасности, которое поддается анализу и верификации и которое можно модифицировать | Спецификация конструкции системы ПО. Средства инструментальной поддержки и стандарты кодирования | Спецификация конструкции модуля ПО. Спецификация испытаний модуля ПО |
7 Проектирование и разработка ПО | Детальное кодирование: спроектировать и изготовить ПО, соответствующее заданным требованиям безопасности ПО в отношении заданного уровня полноты безопасности, которое поддается анализу и верификации и может быть безопасно модифицировано | Спецификация конструкции модуля ПО | Перечень исходных кодов. Отчет с обзором кодов |
8 Проектирование и разработка ПО | Испытания модуля ПО: верификацией установить, что требования по безопасности ПО (в отношении требуемых функций безопасности ПО) достигнуты, показать, что каждый модуль ПО выполняет предназначенные функции и не выполняет непредназначенные | Спецификация испытаний модуля ПО. Перечень исходных кодов. Отчет с обзором кодов | Результаты испытаний модуля ПО. Проверенные и испытанные модули ПО |
9 Проектирование и разработка ПО | Компоновочные испытания ПО: верификацией установить, что требования по безопасности ПО (в отношении требуемых функций безопасности ПО) достигнуты - показать, что все модули, компоненты и подсистемы ПО взаимодействуют правильно и выполняют предназначенные им функции и не выполняют непредназначенные функции | Спецификация компоновочных испытаний системы ПО | Результаты компоновочных испытаний системы ПО. Поверенная и испытанная система ПО |
10 Компоновка ПЭС (аппаратуры и ПО) | Установить ПО на аппаратуру ПЭ. Объединить ПО и аппаратуру в ПЭС, обеспечивающую безопасность, для подтверждения их совместимости и соответствия требованиям заданного уровня полноты безопасности | Спецификация компоновочных испытаний архитектуры ПО. Спецификация компоновочных испытаний ПЭС. Скомпонованная ПЭС | Результаты компоновочных испытаний архитектуры ПО. Результаты компоновочных испытаний ПЭ. Поверенная и испытанная ПЭС |
11 Процедуры эксплуатации и модификации ПО | Обеспечить информацию и процедуры, относящиеся к ПО, обеспечивающему поддержание функциональной безопасности ПЭС при эксплуатации и модификации | Поверенная и испытанная ПЭС | Процедуры эксплуатации и обслуживания ПО |
12 Аттестация ПО | Убедиться, что скомпонованная система соответствует заданным требованиям безопасности ПО при заданном уровне полноты безопасности | План аттестации ПО | Результаты аттестации ПО. Аттестованное ПО |
13 Модификация ПО | Провести исправление, улучшение или адаптацию аттестованного ПО для обеспечения поддержания заданного уровня полноты безопасности | Процедуры модификации ПО. Заявка на модификацию ПО | Результаты анализа влияния модификации ПО. Журнал регистрации модификации ПО |
14 Верификация ПО | В объеме, соответствующем уровню полноты безопасности, испытать и оценить выходные данные этапа цикла обеспечения безопасности ПО для проверки их правильности и согласованности с выходными данными и стандартами, являвшимися входными данными на этом этапе | Соответствующий план верификации (зависит от этапа) | Отчет о верификации (зависит от этапа) |
15 Оценка функциональной безопасности ПО | Исследовать и прийти к заключению о функциональной безопасности, достигнутой ПЭС безопасности | План оценки функциональной безопасности ПО | Отчет об оценке функциональной безопасности ПО |