ГОСТ Р 53195.4—2010
- использование проверок на попадание в интервал допустимых значений идругих возможностей защиты от
ошибок при вводе исходных данных;
- использование ранее верифицированных программных модулей;
- применение конструкций, которые облегчают выполнение будущих модификаций ПО-
3Методы/средства, рекомендуемые при детальном проектировании ПО. приведены а таблице А.4 прило
жения А и таблицах Б.1. 6.7 и 6.9 приложения Б.
5.6.7.3 В зависимости от характера ПО ответственность за выполнение требований 5.6.7 может
быть возложена только на поставщика, только на пользователя или на обе стороны. Разделение ответ
ственности должно быть документировано во время планирования безопасности (см. 5.5.2).
5.6.7.4 Для начала детального проектирования должна быть использована следующая инфор
мация:
- спецификация требований к безопасности ПО (см. 5.6.2);
- описание проекта структуры (см. 5.6.5.3);
- план подтверждения соответствия ПО требованиям безопасности (см. 5.7.3).
5.6.7.5 Разработка ПО должна осуществляться таким образом, чтобы обеспечивались модуль
ность, тестируемость и способность к безопасной модификации ПО.
5.6.7.6 Дальнейшее уточнение проекта для каждого главного компонента/подсистемы в описа
нии проекта структуры ПО (см. 5.6.5.3) должно быть основано на разделении ПО на программные моду
ли (т. е. на спецификации проекта программной системы). Должны быть разработаны
каждый программный модуль и тесты, которые необходимо использовать для проверки этих модулей.
.
П р и м е ч а н и е — Дпя стандартных или ранее разработанных компонентов программных модулей не тре
буются проект или спецификации тестирования, если может быть показано, что они удоапетаоряют требованиям
5
.
6 4
.
11
.
5.6.77 Должны быть установлены соответствующие тесты интеграции программных систем для
удостоверения того, что программные системы удовлетворяют требованиям к безопасности ПО для
установленного уровня полноты безопасности (см. 5.4).
5.6.8 Требования к реализации исходных текстов программ
5.6.8.1 Исходные тексты программ должны:
- быть читаемыми, понятными и пригодными к тестированию;
- удовлетворять установленным требованиям к программным модулям (см. 5.6.7);
- удовлетворять установленным требованиям к стандартам программирования;
- удовлетворять всем требованиям, установленным при планировании безопасности (см. 5.4.2).
5.6.8.2 Каждый модуль должен быть просмотрен.
П р и м е ч а н и я
1 Просмотр модуля относится к процессам верификации.
2 Методы/средства, рекомендуемые при подготовке текстов программ, приведены в таблице А.4 приложе
ния А й в таблицах 6.1. 6.7 и 6.9 приложения Б.
5.6.9 Требования к тестированию программных модулей
5.6.9.1 Тестирование программных модулей следует проводить в сочетании с просмотром
исходных текстов для удостоверения в том. что программный модуль корректно выполняет все требо
вания. содержащиеся в спецификации тестирования и в спецификации модуля, что эквивалентно
верификации модуля.
5.6.3.2 Каждый программный модульдолжен быть протестирован в соответствии со специфика
цией. разработанной при детальном проектировании ПО (см. 5.6.7).
5.6.9.3 Тестирование должно продемонстрировать, что каждый программный модуль выполняет
функции, для которых он предназначен, и не выполняет не предусмотренные для него функции.
П р и м е ч а н и я
1 Тестирование программных модулей не означает тестирование всех комбинаций входных данных и всех
комбинаций выходных данных. Достаточным может быть тестирование всех классов эквивалентности или струк
турное тестирование. Анализ граничных значений, анализ управляющей логики или анализ скрытых путей выпол
нения программы может уменьшить количество проверок до приемлемого уровня. Программы, пригодные дпя
анализа, могут позволить достичь более быстрого выполнения требований.
2 Если при разработке используются формальные методы, формальные доказательства или операторы
проверки условий, область применения подобных проверок может быть уменьшена.
3 Допускается использовать также статистические данные.
4 Методы/средства. рекомендуемые для тестирования программных модулей, приведены а таблице А.5
приложения А й в таблицах 6.2. 6.3 и 6.6 приложения Б.
15