ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ВСТРОЕННЫХ СИСТЕМ. Общие требования к разработке и документированию — страница 16 из 22

— описание интерфейсов между компонентами;

— анализ трассируемости проекта системы к системным требованиям.

Данный документ содержит обоснование выбора конкретной системы/подсистемы с учетом требований интерфейса, заданных характеристик входов и выходов, физической модели системы, выбранных соотношений/алгоритмов/правил и обработки недопустимых входных данных или условий.

12.16 Описание проекта ПО

Документ «Описание проекта ПО» содержит описание архитектуры и требований нижнего уровня к ПО, которые должны удовлетворять требованиям верхнего уровня к ПО. Этот документ должен включать в себя:

— детализированное описание того, как ПО удовлетворяет специфицированным требованиям верхнего уровня к ПО, включая алгоритмы, структуры данных, и описание распределения по процессорам и задачам требований к ПО;

— описание архитектуры ПО, которая определяет структуру ПО, предназначенного для реализации заданных требований;

— описание входных/выходных данных (например, словарь данных) для внутренних и внешних интерфейсов архитектуры ПО;

— описание потока данных и потока управления;

— ограничения на использование ресурсов, стратегию для управления каждым ресурсом, границы рабочего диапазона и методы измерения этих границ, например времени выполнения и памяти;

— процедуры планирования и механизмы межпроцессорной и межзадачной связей, включая жесткую временную последовательность, приоритетное планирование, механизмы рандеву в языке Ада и прерывания;

— методы, используемые в проекте, и детали их реализации, например загрузку данных ПО, модифицируемое пользователем ПО или многоверсионное неидентичное ПО;

— методы разбиения ПО и средства обеспечения целостности при разбиении;

— описания компонентов ПО с указаниями о том, являются ли они вновь создаваемыми или ранее разработанными и, если они ранее разработаны, делаются ли ссылки на базовую линию;

— производные требования, полученные в процессе проектирования ПО;

— для отключенного кода описание средств, гарантирующих невозможность его непреднамеренного выполнения;

— обоснование тех решений проекта, которые относятся к требованиям, связанным с безопасностью системы.

12.17 Описание проекта интерфейса

Описание проекта интерфейса содержит описание характеристик интерфейсов одной или более систем, подсистем, элементов конфигурации аппаратуры и ПО и других системных компонентов. Данный документ включает в себя:

— идентификацию и диаграммы всех интерфейсных связей;

— приоритеты и типы интерфейсов;

— характеристики передаваемых данных, методов коммуникации, протоколов.

12.18 Описание проекта базы данных

Описание проекта базы данных включает в себя описание базы данных, рассматриваемой как набор связанных данных, хранящихся в одном или более компьютерных файлах, доступ к которым пользователем осуществляется через систему управления базами данных.

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

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

В данном документе должна быть показана трассируемость проектных требований к системным требованиям и требованиям к ПО.

12.19 Исходный код ПО

Этот документ содержит код ПО, написанный на исходном(ых) языке(ах) программирования, и команды компилятора, генерирующие объектный код из исходного текста, а также информацию для редактирования связей и загрузки. Документ должен содержать идентификацию ПО, включая идентификатор и дату создания версии.

12.20 Исполняемый объектный код ПО

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

12.21 Процедуры верификации ПО

Процедуры верификации ПО детально описывают выполнение работ процесса верификации ПО. Данный документ должен включать в себя следующие описания:

— процедуры выполнения просмотра и анализа: детализация информации Плана верификации ПО в части области действия, глубины методов просмотров или анализа;

— тестовые варианты: назначение каждого тестового варианта, набор входных данных, условия, ожидаемые результаты, требуемые критерии покрытия и критерии прохода/невыполнения тестов;

— процедуры тестирования: пошаговые инструкции того, как каждый тестовый вариант должен быть инициирован и выполнен, как должны быть оценены результаты тестирования и какая среда тестирования должна быть использована.

12.22 Описание квалификационного тестирования ПО

Данный документ описывает организацию квалификационного тестирования (испытаний), тестовые варианты и процедуры тестирования, которые используют для выполнения квалификационного тестирования системы или подсистемы ПО.

Организация тестирования: каждый тест должен иметь уникальный для данного проекта идентификатор; должны быть представлены инструкции для проведения тестирования, описание аппаратуры и ПО тестирования, а также инструкции для выполнения повторного тестирования.

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

Допускается включение перечисленной в данном подразделе информации в документ «Процедуры верификации ПО» (см. 12.21), если заказчик не требует разработки отдельного документа, описывающего квалификационное тестирование.

12.23 Результаты верификации ПО

Документ «Результаты верификации ПО» описывает выходные результаты процесса верификации ПО. Результаты верификации ПО должны:

— указать результат выполнения (прошел/не прошел) для каждого просмотра, анализа и выполненного теста и заключительный результат верификации;

— идентифицировать элемент конфигурации и/или версию ПО, которые прошли просмотр, анализ или тестирование;

— содержать результаты анализа покрытия и анализа трассируемости для тестов, просмотров и анализов, выполненных в процессе верификации.

12.24 Отчет о квалификационном тестировании ПО

Отчет о тестировании ПО — отчет о квалификационном тестировании (испытаниях), выполненном для системы или подсистемы ПО. Данный документ должен включать в себя:

— общую оценку результатов тестирования, идентификацию всех несоответствий и ограничений;

— описание возможных различий тестовой и эксплуатационной сред;

— описание рекомендуемых улучшений в тестируемом ПО;

— детальные результаты тестирования;

— описание обнаруженных дефектов.

Допускается включение перечисленной в данном разделе информации в документ «Результаты верификации ПО» (12.23), если заказчик не требует разработки отдельного документа, описывающего результаты квалификационного тестирования.

12.25 Указатель конфигурации среды жизненного цикла ПО

Документ «Указатель конфигурации среды жизненного цикла ПО» идентифицирует конфигурацию среды жизненного цикла ПО, определяет аппаратную и программную среду разработки для регенерации ПО, повторной верификации или модификации ПО. Этот указатель должен идентифицировать:

— аппаратную среду и системное ПО, используемые для разработки ПО на протяжении всего жизненного цикла;

— инструментальные средства разработки ПО, такие как компиляторы, редакторы связей и загрузчики, средства обеспечения целостности данных (такие, как средства вычисления контрольных сумм или циклического избыточного кода);

— среду тестирования, используемую для верификации программного средства, например инструментальные средства верификации ПО;

— аттестованные инструментальные средства и соответствующие документы об аттестации этих средств.

Примечание. Данный документ может быть включен в Указатель конфигурации ПО как его часть.

12.26 Указатель конфигурации ПО

Указатель конфигурации ПО определяет конфигурацию программного средства. Указатель конфигурации ПО должен идентифицировать:

— программное средство;

— исполняемый объектный код;

— каждый компонент исходного кода;

— ранее разработанное ПО, если оно используется в данном программном средстве;

— документы жизненного цикла ПО;

— носители данных для архива и выпуска версии;

— инструкции для компоновки исполняемого объектного кода, включая, например, инструкции и информацию для компилирования и редактирования связей; процедуры, используемые для восстановления ПО при регенерации, тестировании или модификации;

— ссылку на Указатель конфигурации среды жизненного цикла ПО (12.25), если он оформлен как отдельный документ;

— способ контроля целостности данных для исполняемого объектного кода, если он используется.