• 12.1 План сертификации в части ПО
  • 12.2 План разработки ПО
  • 12.3 План верификации ПО
  • 12.4 План квалификационного тестирования ПО
  • 12.5 План управления конфигурацией ПО
  • 12.6 План обеспечения качества ПО
  • 12.7 План установки ПО
  • 12.8 План передачи ПО
  • 12.9 Стандарты на разработку требований к ПО
  • 12.1 Cтандарты на процесс проектирования ПО
  • 12.11 Стандарты кодирования ПО
  • 12.12 Спецификация системы/подсистемы
  • 12.13 Спецификация требований к ПО
  • 12.14 Спецификация требований к интерфейсу
  • 12.15 Описание проекта системы/подсистемы
  • 12.16 Описание проекта ПО
  • 12.17 Описание проекта интерфейса
  • 12.18 Описание проекта базы данных
  • 12.19 Исходный код ПО
  • 12.20 Исполняемый объектный код ПО
  • 12.21 Процедуры верификации ПО
  • 12.22 Описание квалификационного тестирования ПО
  • 12.23 Результаты верификации ПО
  • 12.24 Отчет о квалификационном тестировании ПО
  • 12.25 Указатель конфигурации среды жизненного цикла ПО
  • 12.26 Указатель конфигурации ПО
  • 12.27 Спецификация программного средства
  • 12.28 Сообщения о дефектах
  • 12.29 Протоколы управления конфигурацией ПО
  • 12.30 Протоколы обеспечения качества ПО
  • 12.31 Итоговый документ разработки ПО
  • 12.32 Описание эксплуатационной концепции
  • 12.33 Руководство по эксплуатации компьютера
  • 12.34 Руководство по программированию для компьютера
  • 12.35 Руководство поддержки программно-аппаратных средств
  • 12.36 Руководство оператора ПО
  • 12.37 Руководство по входной/выходной информации ПО
  • 12.38 Руководство пользователя ПО
  • 12.39 Описание версии ПО
  • 12 Документы, создаваемые в процессах жизненного цикла ПО

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

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

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

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

    — согласованность: информация является согласованной, если не существует противоречий внутри нее;

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

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

    Дополнительные требования:

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

    Примечания

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

    2 План сертификации в части ПО и Итоговый документ разработки ПО могут быть потребованы сертифицирующей организацией как отдельно напечатанные документы.

    Документы жизненного цикла ПО могут быть отнесены к одной из двух категорий контроля в соответствии с применяемыми методами управления конфигурацией: категории контроля 1 (КК1) и категории контроля 2 (КК2) (9.3). Введение различных категорий контроля позволяет снизить стоимость разработки в случаях, когда менее строгий контроль может быть применен без снижения безопасности. Минимальная категория контроля для каждого документа и ее изменения в зависимости от уровня ПО определены в приложении А. Хотя назначение и содержание этих документов могут быть разными, к ним, как минимум, следует применять метод контроля КК2.

    12.1 План сертификации в части ПО

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

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

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

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

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

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

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

    ж) Дополнительные вопросы. Этот раздел описывает специфические особенности, которые могут влиять на процесс сертификации, например:

     1) альтернативные методы согласования;

     2) аттестация инструментальных средств;

     3) использование ранее разработанного ПО;

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

     5) использование модифицируемого пользователем ПО;

     6) использование коммерчески доступного ПО;

     7) использование ПО, загружаемого в полевых условиях;

     8) использование многоверсионного неидентичного ПО.

    12.2 План разработки ПО

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

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

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

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

     1) выбор методов и средств разработки требований;

     2) выбор методов и средств проектирования ПО;

     3) выбор языков программирования, средств кодирования, компиляторов, редакторов связей и загрузчиков;

     4) аппаратную поддержку для инструментальных средств.

    12.3 План верификации ПО

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

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

    б) Независимость: описание методов для обеспечения независимости верификации, когда это требуется.

    в) Методы верификации: описание методов верификации, которые будут использованы на каждом этапе процесса верификации ПО:

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

     2) методы анализа, включающие в себя методы анализа трассируемости и оценки полноты покрытия;

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

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

    д) Критерии перехода: критерии перехода к процессу верификации ПО, определяемому в этом плане.

    е) Проверка разбиения: если используют разбиение на части, то описывают метод верификации целостности.

    ж) Допустимость использования компилятора: описание соглашений относительно корректности применения компилятора, редактора связей или загрузчика (6.4.2).

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

    и) Ранее разработанное ПО: если для базовой линии ранее разработанного ПО требования к процессу верификации не согласуются с требованиями данного документа, приводят описание методов верификации, удовлетворяющих этим требованиям.

    к) Многоверсионное ПО: при использовании многоверсионного ПО необходимо описание работ процесса верификации для него.

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

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

    Для каждой предполагаемой тестовой установки должны быть указаны:

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

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

    — права собственности и лицензирование;

    — организации, принимающие участие в квалификационном тестировании, их роли и ответственность.

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

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

    12.5 План управления конфигурацией ПО

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

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

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

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

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

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

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

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

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

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

    — Контроль загрузки ПО: описание защиты и регистрации контроля загрузки ПО.

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

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

    — Критерии перехода: критерии перехода для начала процесса управления конфигурацией.

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

    — Контроль поставщика: использование требований процесса управления конфигурацией для контроля поставщика.

    12.6 План обеспечения качества ПО

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

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

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

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

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

     2) работы, связанные с отчетностью о дефектах, трассируемостью и системой корректирующих действий;

     3) описание работ во время просмотров согласованности ПО.

    — Критерии перехода: критерии перехода для начала процесса обеспечения качества.

    — Синхронизация: синхронизация работ процесса обеспечения качества относительно работ других процессов жизненного цикла ПО.

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

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

    12.7 План установки ПО

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

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

    План установки ПО включает в себя:

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

    — запланированные сроки установки ПО;

    — методы установки ПО;

    — организационные сведения: номер телефона, факс, официальное наименование организации, осуществляющей установку, и т. д.;

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

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

    12.8 План передачи ПО

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

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

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

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

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

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

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

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

    12.9 Стандарты на разработку требований к ПО

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

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

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

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

    — метод, который должен быть применен для получения производных требований.

    12.1 Cтандарты на процесс проектирования ПО

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

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

    — соглашения по наименованию;

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

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

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

    — ограничения по сложности (например, максимальный уровень вложенности вызовов и условных структур, использование безусловных переходов, число входных/выходных точек элементов кода программы).

    12.11 Стандарты кодирования ПО

    Целью стандартов кодирования ПО является определение языков программирования, методов, правил и инструментальных средств, которые будут использованы для кодирования ПО. Стандарты кодирования должны включать в себя:

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

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

    — соглашения по наименованию для компонентов, подпрограмм, переменных, констант;

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

    — ограничения на использование инструментальных средств кодирования.

    12.12 Спецификация системы/подсистемы

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

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

    Должны быть описаны требования:

    — к режимам работы;

    — к производительности системы;

    — к внешнему интерфейсу системы;

    — к внутреннему интерфейсу системы;

    — к внутренним данным системы;

    — по адаптации;

    — по безопасности;

    — по обеспечению защиты и секретности;

    — к системному окружению (среде);

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

    — по ограничениям проекта;

    — по обучению персонала.

    Должны быть также определены:

    — относительная важность и критичность требований;

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

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

    12.13 Спецификация требований к ПО

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

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

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

    — критерии производительности, например точность представления;

    — временные требования и ограничения;

    — ограничения объема памяти;

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

    — требования к обнаружению отказов и мониторингу безопасности;

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

    12.14 Спецификация требований к интерфейсу

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

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

    — требования по типам интерфейсов;

    — характеристики передаваемых элементов данных (идентификация, типы данных, размер и формат, единицы измерений, точность, источники и приемники);

    — характеристики методов коммуникации;

    — характеристики протоколов обмена;

    — приоритеты и критичность требований;

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

    — доказательство трассируемости требований.

    12.15 Описание проекта системы/подсистемы

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

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

    — проект архитектуры системы, содержащий идентификацию компонентов системы, их назначение, статус/тип разработки, аппаратные ресурсы;

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

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

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

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

    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), если он оформлен как отдельный документ;

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

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

    12.27 Спецификация программного средства

    Спецификация программного средства содержит описание или ссылки на описания исполняемого ПО, исходных файлов и информацию о программной реализации, включая информацию проекта построения, компиляции, построения и процедуры модификации для ЭКПО.

    Спецификация программного средства должна содержать описание:

    — требований, включающих в себя обеспечение передачи ПО и обоснование требований, которым должна соответствовать достоверная копия ЭКПО;

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

    12.28 Сообщения о дефектах

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

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

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

    — описание дефекта, достаточное для его понимания и устранения;

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

    12.29 Протоколы управления конфигурацией ПО

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

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

    12.30 Протоколы обеспечения качества ПО

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

    12.31 Итоговый документ разработки ПО

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

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

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

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

    — Характеристики ПО. В этом разделе указаны размер исполняемого объектного кода, ограничения по времени и памяти, ограничения ресурсов и способы измерения каждой характеристики.

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

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

    — Идентификация ПО. Этот раздел идентифицирует конфигурацию ПО посредством указания регистрационного номера и версии.

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

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

    — Утверждение о соответствии. Этот раздел включает в себя утверждение о соответствии требованиям настоящего стандарта и резюме методов, позволяющих показать выполнение критериев, определенных в планах ПО. Этот раздел также указывает дополнительные соглашения и отклонения от требований планов, стандартов разработки и настоящего стандарта.

    12.32 Описание эксплуатационной концепции

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

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

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

    — основных компонентов системы и связей между ними;

    — внешних интерфейсов системы;

    — возможностей/функций системы;

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

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

    — критериев ремонта/замены;

    — уровней и циклов технического обслуживания;

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

    Данный документ также содержит:

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

    — концепцию поставки новой или модифицированной версии, эксплуатационный сценарий;

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

    12.33 Руководство по эксплуатации компьютера

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

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

    — процедуры обработки ошибок;

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

    — диагностические инструментальные средства.

    12.34 Руководство по программированию для компьютера

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

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

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

    12.35 Руководство поддержки программно-аппаратных средств

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

    — самих устройств — аппаратуры и ПО;

    — процедур для стирания устройств;

    — процедур для загрузки ПО в устройства;

    — процедур для контроля процесса загрузки;

    — процедур маркировки загруженных устройств.

    12.36 Руководство оператора ПО

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

    Данное руководство содержит описание аппаратных и программных средств, требуемых для работы системы:

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

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

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

    — аварийные сообщения и другие выходные данные, формируемые ПО;

    — типовые времена выполнения;

    — последовательность действий для запуска;

    — перечень требуемых библиотек поддержки, интерфейсов;

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

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

    12.37 Руководство по входной/выходной информации ПО

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

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

    — режимы работы;

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

    — терминалы, принтеры и другие входные/выходные устройства;

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

    — форматы представления входной/выходной информации, их тип, объем;

    — точность представления, скорость передачи, ожидаемое время реакции;

    — способ задания конца информации и другие требуемые соглашения;

    — ограничения и наиболее типичные ошибки задания информации;

    — описание используемой системы управления базой данных.

    12.38 Руководство пользователя ПО

    Руководство пользователя ПО описывает порядок действий пользователя ПО для установки и использования ЭКПО, группы ЭКПО или системы/подсистемы ПО.

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

    — краткое описание характеристик ПО;

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

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

    — описание программной среды;

    — организация ПО и функционирование ПО с точки зрения пользователя;

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

    — детальные, пошаговые действия пользователя при включении системы и дальнейшей работе с ней;

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

    — перечень и пояснение выводимых системой сообщений.

    12.39 Описание версии ПО

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

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

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

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

    — полную идентификацию всех компьютерных файлов, содержащих ПО;

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

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

    — инструкцию по установке ПО;

    — перечень возможных проблем и известных ошибок.







     

    Главная | В избранное | Наш E-MAIL | Добавить материал | Нашёл ошибку | Наверх