Инструментальные средства могут быть классифицированы одним из двух типов:
— Инструментальные средства разработки ПО: инструментальные средства, выходные данные которых являются частью прикладного ПО и которые, таким образом, могут внести ошибки в разрабатываемое программное средство. Например, инструментальное средство, генерирующее исходный текст непосредственно из требований нижнего уровня, должно быть аттестовано, если генерируемый исходный текст не верифицируется, как установлено в разделе 8.
— Инструментальные средства верификации ПО: инструментальные средства, которые не могут внести ошибки, но могут пропустить последние при их выявлении. Например, статический анализатор, который автоматизирует работы процесса верификации ПО, должен быть аттестован, если функции, которые он выполняет, не верифицируются другим способом; средства контроля типов данных, средства анализа и средства тестирования являются другими примерами подобных инструментальных средств.
Требования к аттестации инструментальных средств:
— инструментальные средства должны быть аттестованы в соответствии с их типом, определенным выше;
— комбинированные инструментальные средства разработки и верификации должны быть аттестованы в соответствии с требованиями 13.2.1, даже если может быть продемонстрировано разделение этих двух функций;
— все виды работ процессов управления конфигурацией и обеспечения качества обязательно выполняются для прикладного ПО, а также и для аттестуемых инструментальных средств.
Цели процесса верификации для инструментальных средств разработки ПО представлены в 13.2.1, перечисление г).
Инструментальные средства могут быть аттестованы только для использования конкретными системами, для которых использование данных средств включено в План сертификации в части ПО. Использование этих средств другими системами может потребовать дополнительной аттестации.
13.2.1 Критерии аттестации для инструментальных средств разработки ПО
Критерии аттестации для инструментальных средств разработки ПО следующие:
а) если инструментальное средство разработки ПО должно быть аттестовано, то процессы разработки ПО для этого средства должны удовлетворять тем же самым целям, что и процессы разработки прикладного ПО, при разработке которого предполагается использовать это инструментальное средство;
б) уровень ПО, назначенный инструментальным средствам, должен быть таким же, как и для прикладного ПО, которое с их помощью разрабатывают, за исключением тех случаев, когда соискатель может обосновать для сертифицирующей организации возможность снижения уровня ПО для этих средств.
Примечание — Возможность снижения уровня ПО для инструментальных средств разработки зависит от значимости работ процессов верификации ПО, которые будут исключены, сокращены или автоматизированы в результате применения данного средства, в сравнении с полным набором всех работ по верификации. Значимость является функцией:
— вида работ процесса верификации ПО, которые могут быть устранены, сокращены или автоматизированы. Например, работы верификации по проверке согласования исходного текста со стандартами по структурированному представлению текста являются менее важными, чем работы верификации, направленные на определение соответствия исполняемого объектного кода требованиям верхнего уровня;
— вероятности того, что другие верификационные работы выявят те же самые ошибки;
в) соискатель должен продемонстрировать, что средства соответствуют эксплуатационным требованиям к инструментальным средствам (13.2.3); эта демонстрация может включать в себя период испытаний, во время которого выполняют верификацию выходных результатов инструментального средства и анализируют, регистрируют и корректируют ошибки, связанные с работой средства;
г) инструментальные средства разработки ПО должны быть верифицированы, чтобы проконтролировать корректность, согласованность и полноту эксплуатационных требований к этим средствам и продемонстрировать соответствие этим требованиям. Цели процесса верификации инструментальных средств отличаются от аналогичных целей для прикладного ПО, так как требованиями верхнего уровня для инструментальных средств являются их эксплуатационные требования вместо системных требований, как в случае прикладного ПО. Цели верификации инструментальных средств разработки ПО могут быть достигнуты с помощью:
Читать дальше