надо. Информационных систем
Скачать 0.73 Mb.
|
9. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ В данном разделе более подробно рассмотрен ГОСТ Р 51904-2002 «Программное обеспечение встроенных систем. Общие требования к разработке и документированию» в части подготовки документов, создаваемых в процессах жизненного цикла программного обеспечения. 9.1. Процессы жизненного цикла ПО Жизненный цикл (ЖЦ) ПО состоит из: Процесса планирования. Процесса разработки, который включает: процесс определения требований к ПО; процесс проектирования ПО; процесс кодирования ПО; процесс интеграции. Интегральных процессов, к которым относятся: процесс верификации ПО; процесс управления конфигурацией ПО; процесс обеспечения качества ПО; процесс сертификационного сопровождения. Документы создают в течение всего ЖЦ ПО, чтобы планировать требуемые действия, управлять ими, объяснять, определять, регистрировать выполнение требуемых действий или обеспечивать доказательство процессов. 65 Характеристиками документов ЖЦ ПО являются: однозначность (информация является однозначной, если она написана в терминах, которые допускают только единственную интерпретацию); полнота (информация является полной, если она включает в себя необходимые требования и/или описательные материалы, определяет ответную реакцию для всего диапазона входных данных, используемые рисунки и таблицы сопровождаются необходимыми обозначениями); верифицируемость (информация является верифицируемой, если она может быть проверена на корректность человеком или инструментальным средством); согласованность (информация является согласованной, если не существует противоречий внутри нее); модифицируемость (информация является модифицированной, если она структурирована и имеет такой стиль, что изменения могут быть выполнены в необходимом объеме, согласовано и корректно без нарушения структуры); трассируемость (информация является трассируемой, если для каждого ее компонента может быть определен первоисточник). Документы ЖЦ ПО могут иметь различные формы (компьютерный файл или отображение на удаленном терминале). Документация может быть оформлена в виде отдельных документов, может объединять несколько документов или быть разделена на несколько документов. 66 Согласно ГОСТ Р 51904-2002 в рамках каждого процесса ЖЦ необходимо разработать и оформить соответствующий план. 9.2. План разработки ПО План разработки ПО содержит описание целей, стандартов и моделей ЖЦ ПО, которые должны быть использованы в процессах разработки ПО. Данный план должен включать в себя следующие разделы: Стандарты: идентификация стандартов на разработку требований к ПО, стандартов на процесс проектирования ПО, стандартов кодирования ПО. Жизненный цикл ПО: описание процессов ЖЦ ПО, которые должны быть использованы для формирования конкретного ЖЦ данного проекта, включая критерии переходы между процессами ПО. Среда разработки ПО: обоснование выбора используемой среды разработки ПО в аппаратной и программной частях, включая: выбор методов и средств разработки требований; выбор методов и средств проектирования ПО; выбор языков программирования, средств кодирования, компиляторов, редакторов связей и загрузчиков; аппаратную поддержку для инструментальных средств. 67 9.3. План верификации ПО План верификации ПО включает в себя описание процедур верификации, удовлетворяющих целям процесса верификации. Данный план должен включать следующие разделы: Организация: организационная ответственность внутри процесса верификации ПО интерфейсы с другими процессами ЖЦ ПО. Независимость: описание методов для обеспечения независимости верификации, когда это требуется. Методы верификации: описание методов верификации, которые будут использованы на каждом этапе процесса верификации ПО. Среда верификации: описание оборудования для тестирования, инструментальных средств тестирования и анализа, а также руководств по применению этих средств и аппаратного тестового оборудования. Критерии перехода: критерии перехода к процессу верификации ПО, определяемому в этом плане. Проверка разбиения: если используется разбиение на части, то описывают метод верификации целостности. Руководство по повторной верификации: повторная верификация должна гарантировать, что ранее зарегистрированные ошибки или классы ошибок были устранены. Ранее разработанное ПО: если для базовой линии ранее разработанного ПО требования к процессу верификации не согласуются с требованиями данного документа, приводят 68 описание методов верификации, удовлетворяющих этим требованиям. Многоверсионное ПО: при использовании многоверсионного ПО необходимо описание работ процесса верификации для него. 9.4. План квалификационного тестирования ПО План квалификационного тестирования ПО содержит информацию для проведения квалификационного тестирования (испытаний) систем и подсистем ПО, описание тестовой среды, которая будет использована при тестировании, идентифицирует выполняемые тесты и указывает план-график выполнения тестирования. Для каждой предполагаемой тестовой установки должны быть указаны: Идентификация, перечень и используемые версии ПО, для которых будет выполнено тестирование на данной установке, их назначение. Идентификация, перечень и используемые виды аппаратных средств, интерфейсного оборудования, устройств связи, дополнительных внешних устройств, генераторов тестовых сообщений, устройств синхронизации тестов и т. п. Права собственности и лицензирование. Кроме того, в данном документе должны быть представлены план-график тестирования и матрица трассирования тестов к требованиям к ПО. 69 9.5. План управления конфигурацией ПО План управления конфигурацией ПО устанавливает методы, используемые для достижения целей процесса управления конфигурацией ПО на протяжении жизненного цикла ПО. Разделы плана следующие: Среда: описание среды управления конфигурацией, которая будет использована, включая процедуры, инструментальные средства, методы, стандарты, организационную ответственность и интерфейсы. Состав работ: описание работ процесса управления конфигурацией в жизненном цикле ПО, которые обеспечат реализацию целей данного процесса. Идентификация конфигурации: элементы конфигурации, которые должны быть идентифицированы; срок, когда они будут идентифицированы; методы идентификации документов жизненного цикла ПО (например, регистрационные номера) и связь идентификации ПО и системы. Базовая линия и трассируемость: средства установки базовой линии, как базовая линия будет установлена, когда эта базовая линия будет установлена, средства управления библиотекой ПО и трассируемость элементов конфигурации и базовой линии. Отчетность о дефектах: содержание и идентификация сообщений о дефектах для программного средства и процессов жизненного цикла, в каких случаях они должны быть оформлены, процедуры закрытия сообщений о 70 дефектах и взаимодействие отчетности о дефектах с контролем изменений. Контроль изменений: элементы конфигурации и базовая линия, которые следует контролировать, в каких случаях они должны быть проконтролированы, работы по контролю дефектов/изменений, предсертификационный и постсертификационный контроль, средства, обеспечивающие целостность элементов конфигурации и базовой линии. Просмотр изменений: метод установления обратной связи с процессами жизненного цикла ПО; методы оценки и определения приоритетности в устранении дефектов, утверждение изменений, реализация решений об изменениях и связь этих методов с отчетностью о дефектах и работами по контролю за изменениями. Отчет о состоянии конфигурации: информация, которая должна быть зарегистрирована, чтобы можно было осуществлять отчетность о состоянии управления конфигурацией, определение места хранения информации, как она будет воспроизведена для отчетности и когда она будет доступна. Архивирование, получение из архива и выпуск официальной версии: контроль целостности, способы внесения информации в архив и получения из архива, метод и полномочия для выпуска версии. Контроль загрузки ПО: описание защиты и регистрации контроля загрузки ПО. Контроль среды жизненного цикла ПО: контроль инструментальных средств, используемых для разработки, 71 комплексирования, верификации и загрузки ПО. Кроме того, в раздел должен быть включен контроль аттестованных инструментальных средств. Контроль документов жизненного цикла ПО: средства контроля документов, требуемые для категорий контроля 1 и 2. Критерии перехода: критерии перехода для начала процесса управления конфигурацией. Документы управления конфигурацией: определение документов жизненного цикла ПО, генерируемых в процессе управления конфигурацией, включая отчеты управления конфигурацией, указатель конфигурации ПО и указатель среды жизненного цикла ПО. 9.6. План обеспечения качества ПО План обеспечения качества ПО устанавливает методы, которые должны быть использованы для того, чтобы достичь цели процесса обеспечения качества ПО. Содержание плана следующее: Среда: описание среды обеспечения качества, включая область действия, организационную ответственность и интерфейсы, стандарты, процедуры, инструментальные средства и методы. Полномочия: утверждение полномочий службы обеспечения качества, ответственности и независимости, включая полномочия на утверждение (одобрение) программных средств. 72 Состав работ: работы обеспечения качества, которые должны быть выполнены для каждого процесса жизненного цикла ПО и на протяжении всего жизненного цикла ПО. Критерии перехода: критерии перехода для начала процесса обеспечения качества. Синхронизация: синхронизация работ процесса обеспечения качества относительно работ других процессов жизненного цикла ПО. Отчеты обеспечения качества: определение отчетов, которые будут произведены процессом обеспечения качества. 9.7. План сертификации в части ПО План сертификации в части ПО, в первую очередь, предназначен для использования сертифицирующей организацией с целью определения того, что предлагаемый соискателем жизненный цикл ПО соответствует требованиям для разработки ПО указанного уровня. Этот план должен иметь следующие разделы: Обзор системы: обзор системы, включающий в себя описание ее функций и их распределения между аппаратным и программным обеспечением, архитектуры, используемых процессоров, аппаратно-программных интерфейсов и особенностей обеспечения безопасности. Обзор ПО: краткое описание функций ПО, включая предлагаемые концепции обеспечения безопасности и разбиения структуры. 73 Вопросы сертификации: описание сертификационного базиса, включая средства доказательства соответствия разработки ПО требованиям сертификации ПО; установление предлагаемых уровней ПО (уровни критичности). Жизненный цикл ПО: раздел определяет используемую модель жизненного цикла ПО, которая должна быть выполнена и которую контролируют процессы жизненного цикла ПО. Документы жизненного цикла ПО: раздел точно специфицирует документы жизненного цикла ПО, которые должны быть разработаны и должны контролироваться процессами жизненного цикла ПО, описывает отношения между этими документами или другими документами, определяющими систему, документами жизненного цикла, представляемыми на рассмотрение сертифицирующей организации, форму документов и способ, посредством которого документы жизненного цикла становятся доступными для сертифицирующей организации. План-график: раздел описывает средства соискателя, которые должны обеспечивать прозрачность работ процессов жизненного цикла ПО для сертифицирующей организации (в целях планирования просмотров). Дополнительные вопросы. Этот раздел описывает специфические особенности, которые могут влиять на процесс сертификации, например: альтернативные методы согласования; аттестация инструментальных средств; 74 использование ранее разработанного ПО; использование ПО, разработанного в необязательном порядке; использование модифицируемого пользователем ПО; использование коммерчески доступного ПО; использование ПО, загружаемого в полевых условиях; использование многоверсионного неидентичного ПО. 9.8. План установки ПО План установки ПО содержит описание работ для установки ПО на пользовательских местах, включая подготовку, обучение пользователей и адаптацию существующих систем. Данный план необходим, когда разработчик должен выполнить установку ПО на пользовательских местах и когда процесс установки ПО настолько сложен, что без оформленного в виде документа плана обойтись невозможно. План установки ПО включает в себя: Перечень пользовательских мест, на которых должно быть установлено ПО. Запланированные сроки установки ПО. Методы установки ПО. Организационные сведения: номер телефона, факс, официальное наименование организации, осуществляющей установку, и т. д. Технические средства поддержки: перечень всех типов, характеристик и источников средств, необходимых для установки ПО (диски, бумага для принтера и т. д.). 75 Организация процесса обучения персонала: классные комнаты, расписание теоретических и практических занятий и т. д. 9.9. План передачи ПО План передачи ПО определяет аппаратное и программное обеспечение, а также другие ресурсы, необходимые для поддержки жизненного цикла передаваемого ПО, и описывает планы разработчиков для поставки передаваемых элементов через организации, осуществляющие поддержку. Данный план разрабатывают в том случае, если используют концепцию передачи ПО отдельной организации, осуществляющей поддержку. План должен содержать: Краткий обзор системы и документов, относящихся к передаваемому ПО, общий обзор разработки системы и сопровождения. Детальное описание ресурсов, необходимых для поддержки передаваемого ПО. Перечень рекомендуемых мероприятий, в том числе консультации и лекции, которые должен проводить разработчик в целях поддержки передаваемого ПО и соответствующей среды поддержки. В плане должны быть указаны предполагаемые области изменений передаваемого ПО. Кроме рассмотренных планов, документация, согласно ГОСТ Р 51904-2002, должна включать ряд описаний. 76 9.10. Описание проекта ПО Документ «Описание проекта ПО» содержит описание архитектуры и требований нижнего уровня к ПО, которые должны удовлетворять требованиям верхнего уровня к ПО. Этот документ должен включать в себя: Детализированное описание того, как ПО удовлетворяет специфицированным требованиям верхнего уровня к ПО, включая алгоритмы, структуры данных, и описание распределения по процессорам и задачам требований к ПО. Описание архитектуры ПО, которая определяет структуру ПО, предназначенного для реализации заданных требований. Описание входных/выходных данных (например, словарь данных) для внутренних и внешних интерфейсов архитектуры ПО. Описание потока данных и потока управления. Методы разбиения ПО и средства обеспечения целостности при разбиении. Производные требования, полученные в процессе проектирования ПО. Для отключенного кода описание средств, гарантирующих невозможность его непреднамеренного выполнения. Обоснование тех решений проекта, которые относятся к требованиям, связанным с безопасностью системы. 77 9.11. Описание проекта интерфейса Описание проекта интерфейса содержит описание характеристик интерфейсов одной или более систем, подсистем, элементов конфигурации аппаратуры и ПО и других системных компонентов. Данный документ включает в себя: идентификацию и диаграммы всех интерфейсных связей; приоритеты и типы интерфейсов; характеристики передаваемых данных, методов коммуникации, протоколов. 9.12. Описание проекта базы данных Описание проекта базы данных включает в себя описание базы данных, рассматриваемой как набор связанных данных, хранящихся в одном или более компьютерных файлах, доступ к которым пользователем осуществляется через систему управления базами данных. В данном документе должны быть описаны проектные решения, связанные с базой данных, поведение базы данных с точки зрения пользователя, способы доступа к базе данных, интерфейсы базы данных с другими системами, элементами конфигурации ПО и аппаратуры. Определяется реакция базы данных на входные запросы, включая действия, время реакции и другие эксплуатационные характеристики, выбранные соотношения / алгоритмы / правила / обработка недопустимых входных данных. 78 9.13. Итоговый документ разработки ПО Итоговый документ разработки ПО – основной документ по демонстрации соответствия Плану сертификации в части ПО. Этот документ должен содержать следующие разделы: Краткий обзор системы. Данный раздел содержит краткий обзор системы, включая описание ее функций и их распределение на программную и аппаратную реализацию, архитектуру, используемые процессоры, интерфейсы аппаратных средств/ПО, требования по обеспечению безопасности. Этот раздел также описывает все отличия от краткого обзора системы в Плане сертификации в части ПО. Краткий обзор ПО. Этот раздел кратко описывает функции ПО с акцентированием на обеспечении безопасности и используемой концепции разбиения и объясняет отличия от краткого обзора ПО в Плане сертификации в части ПО. Вопросы сертификации. Этот раздел вновь рассматривает вопросы сертификации, определенные в Плане сертификации в части ПО, и объясняет все существующие от указанного плана отличия. Характеристики ПО. В этом разделе указаны размер исполняемого объектного кода, ограничения по времени и памяти, ограничения ресурсов и способы измерения каждой характеристики. Жизненный цикл ПО. Этот раздел описывает фактически используемую модель жизненного цикла ПО и объясняет ее отличия от предложенной в Плане сертификации в части ПО. 79 Документы жизненного цикла ПО. В этом разделе даны ссылки на документы жизненного цикла ПО, являющиеся выходными результатами процессов разработки ПО и интегральных процессов. Здесь описаны связь между представляемыми документами и другими документами, определяющими систему, а также способы передачи документов жизненного цикла ПО сертифицирующей организации. В этом разделе также рассмотрены любые отклонения в описании документов от Плана сертификации в части ПО. Идентификация ПО. Этот раздел идентифицирует конфигурацию ПО посредством указания регистрационного номера и версии. Хронология изменения. В случае необходимости этот раздел включает в себя резюме изменений ПО с указанием изменений, вызванных отказами, влияющими на безопасность, и идентификацией изменений, выполненных после предыдущей сертификации. Текущее состояние ПО. Этот раздел содержит резюме сообщений о дефектах, не устраненных ко времени сертификации, включая заявления о функциональных ограничениях. Утверждение о соответствии. Этот раздел включает в себя утверждение о соответствии требованиям стандарта ГОСТ Р 51904 и резюме методов, позволяющих показать выполнение критериев, определенных в планах ПО. Этот раздел также указывает дополнительные соглашения и отклонения от требований планов, стандартов разработки и настоящего стандарта. 80 Вопросы для самоконтроля: 1. Из каких процессов состоит жизненный цикл программного обеспечения? 2. Что содержит план обеспечения качества ПО? 3. Что включает в себя итоговый документ разработки ПО? 4. Что определяет план передачи ПО? 5. Для чего необходим план установки ПО? |