Основы стандартизации и сертификации программных продуктов

Лекция 4

Презентация к лекции

rkpdf


СТАНДАРТЫ ЖИЗНЕННОГО ЦИКЛА ПРОГРАММНЫХ СРЕДСТВ ДЛЯ СЕРТИФИКАЦИИ СИСТЕМ КАЧЕСТВА ПРЕДПРИЯТИЙ

Подготовка стандартов жизненного цикла программных средств для производства

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

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

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

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

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

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

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

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

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

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

Какой бы не была причина для применения процессов и стандартов ЖЦ ПС, стратегия их внедрения состоит из типовых шагов:

  • создание плана внедрения процессов и профиля стандартов жизненного цикла;
  • адаптация стандартов ЖЦ к конкретному проекту;
  • формализация метода внедрения процессов и профиля стандартов жизненного цикла;
  • утверждение метода внедрения и применения стандартов ЖЦ ПС.

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

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

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

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

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

  • по анализу модификации требований стандартов;
  • по проектированию и документированию комплекса программ;
  • по сборке комплекса программ;
  • по оценке достигнутых характеристик качества программного продукта.

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

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

Проектирование и документирование процессов ЖЦ ПС включают задачи, при решении которых разработчику следует:

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

Базовые стандарты жизненного цикла программных средств

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

 

Компоненты стандарта ISO 12207 и архитектура некоторых его разделов непосредственно использованы при детализации структуры и содержания стандартов: управления проектами ПС - ISO 16326; сопровождения комплексов программ - ISO 14764; управления конфигурацией ПС - ISO 15846. В ряде стандартов приводятся перекрестные ссылки, и рекомендуется использовать отдельные фундаментальные положения стандарта ISO 12207.

Стандарт ISO 12207:1995 - Процессы жизненного цикла программных средств - наиболее полно на уровне международных стандартов отражает жизненный цикл, технологию разработки и процессы обеспечения качества сложных программных средств. Жизненный цикл ПС представлен набором этапов, частных работ и операций в последовательности их выполнения и взаимосвязи, регламентирующих ведения разработки на всех стадиях от подготовки технического задания до завершения испытаний версий и окончания эксплуатации программного продукта. В ЖЦ включаются описания исходной информации, способов выполнения операций и работ, устанавливаются требования к результатам и правилам их контроля, а также к содержанию технологических и эксплуатационных документов. Определяется организационная структура коллективов, распределение и планирование работ, а также контроль за реализацией ЖЦ ПС.

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

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

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

Разделы 5, 6, 7 стандарта состоят из ряда подразделов, в которых подробно раскрывается содержание каждой работы и комментируются особенности их выполнения. Рекомендации к каждому подразделу состоят в среднем из 3-6 пунктов - работ (действий). Общее число работ и комментариев к ним в стандарте свыше 220.

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

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

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

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

Подготовленный специалист должен освоить все процедуры поддержки эксплуатации и применения, а также тестирования ПС при функционировании, на соответствие критериям оперативного использования документации. Работы по поддержке пользователей состоят в помощи и консультации их при обнаружении дефектов или ошибок при применении ПС в составе информационной системы. Эти работы взаимодействуют с работами, обеспечивающими сопровождение ПС. Специалисты анализируют сообщения об ошибках и предложения на модификацию ПС, селектируют их на соответствие требованиям контракта и оценивают целесообразность проведения изменений. Подготовленные изменения тестируются и проверяются по критериям, определенным в документации. Далее планируется распространение проведенных изменений или новой версии пользователям. Некоторые версии с определенной совокупностью изменений должны планироваться для ликвидации и прекращения сопровождения. Вспомогательные технологические работы, поддерживающие жизненный цикл ПС, и рекомендации по их выполнению изложены в разделе 6. Процессы документирования ПС должны охватывать планирование и обеспечение документирования, рекомендации по стандартизации, проектированию и разработке, а также по производству, конфигурационному управлению и сопровождению комплекта документации на ПС. Конфигурационное управление предлагается включать в общий план управления проектом с процедурами конфигурационной идентификации, контроля, учета, отчетности и развития конфигурации. Для обеспечения гарантий качества следует использовать планирование, методологию, процедуры и стандарты поддержки качества ПС в соответствии с контрактом с учетом доступных ресурсов. Рекомендуется планирование и выполнение работ в процессе всего жизненного цикла ПС реализовать на основе требований стандарта ISO 9001 (см. лекцию 3). Верификация ПС должна включать её организацию, планирование и техническое обеспечение. Представлена структура раздела контракта на верификацию, содержание процесса, состав требований, проектирование процесса тестирования, обобщение и документирование результатов. Валидация - удостоверение правильности (аттестация) должна гарантировать полное соответствие программного продукта спецификациям, требованиям и документации на ПС и возможность его надежного функционирования и безопасного применения пользователем. Рекомендуется ее выполнять путем тестирования и испытаний во всех возможных ситуациях исходных данных и проводить независимыми специалистами.

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

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

Изложены рекомендации по преобразованию и адаптации базовой структуры этого международного стандарта для конкретного проекта (приложение А) и руководство по их выполнению в ЖЦ ПС (приложение В).

Стандарт ISO 12207: AMENDMENT 1:2002 - Изменения (улучшения, редакция) стандарта ISO 12207 - изложены на базе этого стандарта и набора Приложений новых процессов и рекомендаций. Все Приложения базируются на обширной таблице Е1, в которой представлены рекомендуемые источники процессов жизненного цикла ПС, их наименование и тип, детализирующиеся в последующих Приложениях F; G; H этого документа. Новые, расширенные комментарии и рекомендации к каждому процессу жизненного цикла сложных ПС структурированы и изложены в составе базовых подразделов: цель и результаты, что конкретизирует и существенно улучшает возможность и удобство применения пользователями процессов стандарта ISO 12207. В Приложении F подробно прокомментированы существующие в стандарте ISO 12207 процессы: базовые, вспомогательные и организационные. В Приложении G детально изложены рекомендуемые дополнительные новые процессы, отсутствовавшие в этих стандартах: обучение и управление специалистами, качеством и повторным использованием программных компонентов, оценка и организация человеческих ресурсов, технологическое обеспечение проектов ПС. Приложение H содержит подробные рекомендации по организации и реализации комплексирования и сборки крупномасштабных комплексов программ.

Стандарт ISO 12207:AMENDMENT 2:2004 - Изменения (улучшения, редакция) стандарта ISO 12207 - содержит редакционные изменения и дополнения описаний некоторых процессов, представленных в AMENDMENT 1. Эти корректировки в основном относятся к процессам управления: требованиями, изменениями и конфигурацией ПС, повторным применением программных компонентов и инфраструктурой процессов.

В стандарте ISO 15504:1-5:1998 - 2004 - Оценка (аттестация) процессов жизненного цикла программных средств: Ч.1. Основные понятия и вводное руководство. Ч.2. Эталонная модель процессов и их зрелости. Ч.3. Проведение аттестации. Ч.4. Руководство по прове-дению аттестации. Ч.5. Модель аттестации и руководство по показателям. На базе концепции методологии СММI (см. лекцию 3) подробно представлены оценивание и совершенствование процессов жизненного цикла программных средств. Он предназначен для предприятий, занимающихся планированием, управлением, контролем, а также совершенствованием приобретения, поставки, разработки, эксплуатации, сопровождения и оценивания качества крупномасштабных программных средств. Стандарт расширяет, детализирует и предоставляет базу для аттестации, поддержки и реализации на предприятии процессов жизненного цикла ПС, регламентированных стандартом ISO 12207. Рубрикации процессов в этих двух стандартах подобны. В стандарте ISO 15504 модернизирован и расширен состав организационных процессов и подробно детализированы работы во всех стандартизируемых процессах жизненного цикла ПС. Поэтому оба стандарта целесообразно применять совместно при конкретизации процессов жизненного цикла реальных комплексов программ. Стандарт предоставляет структурный подход к аттестации качества процессов ЖЦ ПС, проводящейся предприятием с целью:

  • выяснения состояния и качества его собственных процессов для их усовершенствования;
  • определения пригодности процессов для выполнения определенного требования или класса требований заказчика к качеству ПС;
  • определения качества и пригодности процессов конкретного предприятия для определенного договора или класса договоров на ЖЦ ПС.

Аттестация реализации ЖЦ ПС направлена на обеспечение адекватности управления процессами и должна учитывать внешнюю среду, в которой выполняются аттестуемые процессы. Чтобы предприятие могло улучшить качество своей продукции, оно должно иметь проверенный, последовательный и надежный метод для аттестации состояния своих процессов, а также иметь средства использования ее результатов как часть Программы усовершенствования процессов ЖЦ ПС. Использование аттестации процессов внутри предприятия должно способствовать выработке культуры постоянного совершенствования и повышения характеристик качества ПС, а также соответствующих механизмов поддержания этой культуры и оптимизации использования ресурсов. Это должно приводить к появлению зрелых предприятий, максимально восприимчивых к возрастающим требованиям потребителя и рынка, имеющих минимальную стоимость полного жизненного цикла своей продукции и, как результат, максимально удовлетворяющих требования конечного пользователя к характеристикам качества ПС.

Покупателям и заказчикам ПС выгодно использование аттестации процессов ЖЦ при определении зрелости поставщика, что:

  • уменьшает неопределенность при выборе поставщиков программных комплексов за счет того, что риски, связанные с реальной зрелостью подрядчика, выявляются еще до заключения договора;
  • позволяет заранее предусмотреть необходимые меры на случай возникновения рискового события;
  • предоставляет количественные критерии выбора при сопоставлении потребностей бизнеса, требований и оценочной стоимости проекта с реальной зрелостью конкурирующих поставщиков;
  • приводит к общему пониманию необходимости использования результатов аттестации для усовершенствования процессов и оценки зрелости поставщика при прогнозировании характеристик ЖЦ ПС.

Анализ результатов в свете потребностей предприятия способствует выявлению сильных и слабых сторон используемых процессов, а также присущих им рисков. Это, в свою очередь, помогает определить, эффективны ли эти процессы для достижения заданных целей проекта ПС, а также выявить существенные причины недостаточного качества продукции, риск превышения бюджет или сроков. Все вместе позволяет расставить приоритеты при совершенствовании процессов. Определение зрелости связано также с анализом и выявлением рисков, связанных с выполнением проекта, использующего выбранные процессы. Стандарт ISO 15504 связан с другими между-народными стандартами, он дополняет некоторые стандарты и другие модели для оценки зрелости, качества и эффективности предприятий и процессов ЖЦ ПС.


©  «Эксклюзивные интернет-решения для бизнеса»
© www.oknemuan.ru
2003-2024