Липаев В.В. Программная инженерия
.pdfЛекция 14. Интеграция, квалификационное тестирование и испытания комплексов...
—анализ и использование результатов испытаний;
—содержание и оформление отчетов по выполнению испытаний;
—дополнительные требования по технике, инструментальным сред ствам и методам обслуживания испытаний, по соответствию стандартам и организационной поддержке измерений и экспертиз.
Испытатель должен обеспечить входные данные для процесса оцени вания: предопределенные спецификации оценивания; методы и инстру ментарий. Процесс оценивания — испытаний рекомендуется в стандар те из следующих действий:
—анализ оценочных требований, при котором выделяются для иден тификации реальные требования заказчика на испытания;
—спецификация процессов и возможных результатов, при которой вырабатывается спецификация оценивания на основе требований и описа ния программного продукта, предоставляемых заказчиком;
—проект процессов испытаний, при котором вырабатывается план на основе спецификации оценивания, компонентов ПС и методов, предла гаемых испытателем;
—процесс выполнения плана оценивания, который состоит из моде лирования, экспертизы, измерения и испытания компонентов ПС в соот ветствии с планом, с использованием программного инструментария, а также действия, осуществляемые испытателем, которые фиксируются и результаты заносятся в отчет;
—заключение по оцениванию, которое состоит в предоставлении отчета о результатах испытаний компонентов и ПС.
В процессе испытаний может потребоваться использование программ ных инструментов для сбора обработанных данных или для осуществле ния интерпретации промежуточных данных. Штат оценщиков должен быть обучен пользоваться соответствующими инструментами. При оценивании должны быть получены, зафиксированы и предъявлены заказчику следу
ющие данные:
—требования, которые описывают цели оценивания, в частности, требуемая критичность и безопасность испытанного продукта;
—спецификация оценивания, которая определяет весь анализ и вы полняемые измерения, и все компоненты ПС, которые должны анализиро ваться и измеряться;
420
14.1.Процессы оценивания характеристик и испытания программных средств
—план оценивания, который описывает операционные процедуры, необходимые для выполнения спецификации оценивания, в частности, все методы и инструменты, используемые при оценивании;
—записи об оценивании, которые состоят из плана оценивания и детальных действий оценщика при выполнении плана;
—отчет по оцениванию характеристики, который содержит требова ния, спецификацию оценивания, результаты измерений и анализа, а также любую другую информацию, необходимую для возможности повторения или воспроизведения оценивания, а также обобщенный отчет заказчику.
Цель заключения состоит в обзоре отчета об испытаниях и передаче данных оценивания заказчику. Следует организовывать совместный обзор
ианализ отчета заказчиком и испытателем. Заказчику следует дать воз можность сделать комментарии по отчету. Если такие комментарии сдела ны, то их следует внести в специальный раздел отчета, после чего он должен быть передан испытателю и заказчику.
С позиций разных потребителей результатов измерения и оцени вания качества ПС построены третья, четвертая и пятая части стан дарта ISO 14598:1-6 — соответственно для:
—разработчиков — оценивание внутренних и внешних характерис тик качества (ч. 3);
—оперативных пользователей — измерение внешних метрик и мет рик в использовании (ч. 4);
—заказчиков и испытателей — определение метрик в использовании
(ч. 5).
В каждой части выделены и детализированы подобные разделы:
особенности и потребности конкретных пользователей в результатах ис пытаний и номенклатуре требуемых характеристик ПС; концепция прове дения испытаний и оценивания качества; определение требований к про цессам испытаний характеристик программ; идентификация характерис тик и атрибутов качества ПС для конкретных пользователей результатов испытаний.
Результаты оценки характеристик предлагается отражать с позиции: процессов жизненного цикла; продуктов и их компонентов; функциониро вания и применения ПС. Требования к процессам o\xQшлвдiYi\iя рекоменду ется структурировать на главные (функциональные), организационные, проектные, а также выделять внутренние и внешние метрики качества и
421
Лекция 14. Интеграция, квалификационное тестирование и испытания комплексов...
ИХ измерение, ориентируясь на субхарактеристики и их атрибуты в соот ветствующих частях стандарта ISO 9126:1-4. Реализация процессов испыта ний программного продукта по требованиям стандарта должна проводить ся квалифицированными и аттестованными специалистами, независимы ми от разработчиков проекта, процессов создания ПС и его компонентов, однако коррелированно с этапами жизненного цикла конкретного проекта в соответствии с применяемой адаптированной версией стандарта ISO
12207.
Обращается внимание на целесообразность учета и использования истории развития и изменений эксплуатационных требований заказчиковпотребителей к определенному проекту и функциональному назначению ПС. В отчете об испытаниях рекомендуется представлять характеристики качества в соответствии с номенклатурой и мерами субхарактеристик и атрибутов, адаптированными к назначению, функциям и особенностям конкретного проекта ПС и потребителей результатов измерений.
Конфиденциальность всех компонентов и документов испытаний ПС должна защищаться оценщиком. Требования конфиденциальности ох ватывают многие аспекты оценочной работы: включая получение, управ ление, хранение и передачу всей информации, касающейся характеристик продукта. Конфиденциальность промежуточных данных испытаний долж на защищаться, так же как и конфиденциальность оригиналов компонен тов и документов. Испытатель должен приложить усилия, чтобы предотв ратить любые случайные, ошибочные или злоумышленные модификации этих данных.
14.2. Организация и методы оценивания характеристик сложных комплексов программ
Характеристики качества функционирования программных средств зависят не только от их внутренних свойств, но и от свойств внешней cpedbij в которой они применяются (см. ISO 12119). Для сокращения не определенностей и прямых ошибок при оценивании качества ПС необхо димо до начала испытаний определить основные параметры внешней сре ды, при которых должен функционировать комплекс программ с требуе мыми характеристиками при оценивании его качества и эксплуатации.
422
14.2. Организация и методы оценивания характеристик сложных комплексов программ
Для этого заказчик и разработчик совместно должны структурировать, описать и согласовать модель внешней среды и ее параметры в среднем, типовом режиме применения ПС, а также в наиболее вероятных и крити ческих режимах, в которых должны обеспечиваться требуемые характери стики качества функционирования ПС. Такая модель должна отражать
ификсировать характеристики:
—внешних потоков информации, в том числе их распределение по видам источников, характеристикам качества данных и возможности их дефектов;
—интенсивность и структуру типовых сообщений от оперативных пользователей и администраторов и их необходимую квалификацию, отра жающуюся вероятностью ошибок и качеством выдаваемой информации;
—возможных негативных и несанкционированных воздействий от внешней среды при применении ПС;
—необходимые характеристики вычислительных средств, на кото рых предназначено функционировать комплексу программ с требуемым качеством.
При сопоставлении результатов оценивания характеристик качества с требованиями технического задания и спецификаций разработчик или по ставщик обязан удовлетворять требования заказчиков только в преде лах согласованных параметров модели внешней среды. Оценивание ка чества ПС за этими пределами должно дополнительно согласовываться испытателями с разработчиком. При этом невыполнение требований мо жет квалифицироваться как их расширение за пределы, ограниченные кон трактом, и не учитываться при оценивании заказчиком характеристик ка чества ПС, или как дополнительные работы, подлежащие соответствую щему финансированию со стороны заказчика, для доработки программ с целью удовлетворения этих требований.
Внутренние квалификационные испытания качества программ ных средств (испытания главного конструктора), которые зачастую совме щаются с завершением комплексной отладки, должны оформляться документально и являются основанием при предъявлении ПС заказчику на квалификационные испытания для завершающего оценивания характе ристик качества программного продукта (см. ISO 12207, ISO 15504, ISO 16326). Разработчик должен реализовать и оценить проект, комплекс про-
423
Лекция 14. Интеграция, квалификационное тестирование и испытания комплексов...
грамм, тесты, результаты тестирования и документацию для пользователя, учитывая:
—полноту охвата испытаниями всех требований спецификаций к компонентам и к ПС в целом;
—согласованность с требуемыми заказчиком и ожидаемыми резуль татами применения ПС;
—возможность интеграции и тестирования ПС в составе системы;
—возможность функционирования и сопровождения версий ПС в соответствии с требованиями контракта.
Любые испытания ограничены допустимым количеством и объе мом проверок, а также длительностью работы комиссии испытателей, по этому не могут гарантировать абсолютную проверку качества продукта. Для повышения достоверности определения и улучшения оценивания ха рактеристик ПС после внутренних испытаний комплекс программ целесо образно передавать некоторым пользователям на опытную эксплуата цию в типовых условиях. Это позволяет более глубоко оценить эксплуа тационные характеристики созданного комплекса и устранить некоторые дефекты и ошибки. Опытную эксплуатацию целесообразно проводить раз работчиками с участием испытателей-заказчиков и некоторых пользовате лей, назначаемых заказчиком. Результаты и характеристики качества опыт ной эксплуатации после испытаний главного конструктора могут учиты ваться при проведении заказчиком квалификационных испытаний для их сокращения.
В лекции 13 рассмотрены этапы тестирования компонентов и ПС в целом с позиции последовательного увеличения функциональной сложно сти тестов и взаимодействия с объектами внешней среды. При этом не учитывались организационные этапы испытаний в соответствии со стан дартами и их подотчетность разработчикам-поставщикам и заказчикам. Этапы и процессы квалификационного тестирования ПС с целью фор мального удостоверения для заказчика достигнутых характеристик
качества комплекса программ и его компонентов в составе системы регла ментированы в стандартах ISO 12207, ISO 15504. В них выделены три основных, функциональных этапа реализации квалификационного тес тирования и испытаний (рис. 14.2):
— квалификационное тестирование функциональных компонентов и ПС в целом вне аппаратуры системы;
424
14.2.Организация и методы оценивания характеристик сложных комплексов программ
—интеграция и тестирование программного средства в целом в со ставе аппаратуры системы;
—квалификационное тестирование и полные испытания системы в комплексе с программным средством.
Квалификационное тестирование программного средства вне системы:
—испытания выполнения всех требований контракта и спецификаций к комплексу программ;
—подготовка к интеграции комплекса программ и аппаратуры системы;
—оценка достигнутого качества и возможности автономного применения программного продукта по назначению
т
Интеграция и тестирование комплекса программ в составе аппаратуры системы:
—испытания интерфейсов комплекса программ на соответствие требова ниям к системе;
—оценка реализуемости и планирование испытаний комплекса программ в составе системы;
—анализ полноты и корректности документации на комплекс программ
Квалификационное тестирование системы с комплексом программ:
—установление соответствия характеристик качества системы и про граммного продукта требованиям контракта и спецификаций;
—удостоверение адекватности и качества технологической и эксплуатаци онной документации на систему и программный продукт;
—оформление акта о завершении работ и контракта на создание версии программного продукта и системы
±
Документация, поддерживающая квалификационное тестирование и испытания комплекса программ:
—требования контракта, технического задания и спецификаций на систему и программный продукт;
—профиль и комплект стандартов и нормативных документов;
—Программа испытаний комплекса программ;
—методики испытаний на соответствие требованиям контракта, специфи каций и программы испытаний;
—протоколы испытаний по разделам Программы;
—комплект адекватной эксплуатационной и технологической документа ции;
—акт о завершении испытаний и выполнении условий контракта на систему и программный продукт
Рис. 14.2
425
Лекция 14. Интеграция, квалификационное тестирование и испытания комплексов...
Квалификационное тестирование функциональных компонентов и ПС в целом выполняется для того, чтобы продемонстрировать заказчи ку, что реализованы все требования контракта и достигнуто необходимое качество функционирования комплекса программ. Квалификационное те стирование должно покрывать все требования к компонентам в специфи кации требований к ПС и в спецификациях требований к интерфейсам. Тестирование компонентов для каждой конфигурации должно показать, что полностью удовлетворены требования к компонентам, которые долж ны быть реализованы в данной конфигурации. Ответственными за квали фикационное тестирование компонентов не должны быть лица, осуще ствившие выполнение рабочего проекта или программирование соответ ствующего компонента. Это не исключает возможность оказания помощи в проведении квалификационного тестирования со стороны лиц, выпол нявших рабочий проект или программы, например, путем предоставления тестовых вариантов, основанных на знании ими внутренней реализации компонента или ПС.
Разработчик должен определить и зарегистрировать процесс подго товки к тестированию, тестовые варианты, сценарии и процедуры, кото рые должны использоваться для квалификационного тестирования компо нента и проследить соответствие между тестовыми вариантами и требова ниями контракта. Он должен подготовить тестовые данные, необходимые для выполнения тестовых вариантов, и предварительно уведомить пред ставителя заказчика о времени и месте проведения квалификационного тестирования. Если испытание компонента должно быть засвидетельство вано представителем заказчика, то до его проведения разработчик должен проверить тестовые варианты и тестовые процедуры, чтобы гарантиро вать, что они полны и точны и что ПС готово для проведения тестирова ния в присутствии представителя заказчика. Результаты этих проверок должны быть зарегистрированы в файлах разработки ПС, а тестовые вари анты и процедуры соответствующим образом модифицированы для устра нения выявленных дефектов. Следует выполнить все необходимые изме нения в ПС, предварительно уведомив об этом представителя заказчика, осуществить повторное тестирование в необходимом объеме, модифици ровать файлы разработки ПС и другие программные продукты, основыва ясь на результатах интеграции и тестирования модулей и компонентов.
426
14.2. Организация и методы оценивания характеристик сложных комплексов программ
Результаты этих действий должны быть включены в отчет для заказчика о проведенных разработчиком предварительных испытаниях.
Интеграция и тестирование ПС в составе аппаратуры системы
содержит их объединение, тестирование полученного в результате комп лекса с целью определения, работают ли они вместе, как требуется по контракту, и должно продолжать этот процесс до тех пор, пока интеграция и тестирование не будут выполнены для всех компонентов программ и аппаратуры. Тестовые варианты должны покрывать все аспекты систем ного уровня и требуемые характеристики качества проекта. Разработчик должен выполнить необходимые корректировки программ, принять учас тие в повторном тестировании в необходимом объеме и модифицировать файлы разработки ПС и другие программные компоненты, основываясь на результатах интеграционного тестирования.
Квалификационное тестирование системы и программного про дукта в целом выполняется, чтобы продемонстрировать представителю заказчика, что удовлетворены все требования технического задания и ха рактеристики качества соответствуют условиям контракта. Оно должно покрывать все требования в спецификациях системы и подсистем, а также требования к интерфейсу с внешней средой. Испытания должны включать тестирование на объектной вычислительной системе или на альтернатив ной модели системы, одобренной представителем заказчика. Разработчик должен участвовать в разработке и регистрации процесса подготовки к тестированию, тестовых вариантов, сценариев и тестовых процедур, кото рые нужно использовать для полного испытания системы, и в прослежива нии соответствия между тестовыми вариантами и требованиями к харак теристикам качества системы. Каждое проверяемое требование должно соответствовать конкретным обоснованным характеристикам системы, иметь уникальный для проекта идентификатор, чтобы можно было прове сти тестирование и проследить его выполнение с помощью объективного теста. Для каждого требования должны выбираться квалификационные методы для подсистем и компонентов ПС, которые необходимо прослежи вать в требованиях к системе. Степень детализации требований следует выбирать, учитывая в первую очередь те характеристики качества, кото рые внесены в условия приемки системы, и отдавать приоритет тем из них, которые заказчик требует обеспечить обязательно.
427
Лекция 14. Интеграция, квалификационное тестирование и испытания комплексов...
Все полученные результаты должны быть включены в отчет о тести ровании ПС и системы. Если квалификационное тестирование системы должно быть засвидетельствовано представителем заказчика, то до его проведения разработчик должен проверить тестовые варианты и тестовые процедуры, чтобы гарантировать, что они полны и точны и что система готова для проведения тестирования в присутствии представителя заказ чика. Испытания должны быть выполнены в соответствии с утвержденны ми заказчиком тестовыми вариантами, сценариями и процедурами.
Оценивание качества программного продукта при квалификацион ных, приемо-сдаточных испытаниях проводится комиссией заказчика, в которой участвуют руководитель (главный конструктор) разработки и не которые ведущие разработчики или аттестованная сертификационная ла боратория. Комиссия при испытаниях дол:н€на руководствоваться следующими документами (см. рис. 14.2):
—утвержденными заказчиком и согласованными с разработчиком контрактом, техническим заданием и спецификациями требований на ПС;
—действующими государственными и ведомственными стандартами на жизненный цикл и испытания программ, на технологическую и эксплуа тационную документацию, а также стандартами де-факто, согласованны ми с заказчиком для использования, — профилем стандартов и норматив ных документов;
—Программой испытаний по всем требованиям контракта, техничес кого задания и спецификаций;
—методиками испытаний, охватывающими каждый раздел требова ний технического задания, спецификаций и Программы испытаний;
—комплектом адекватной эксплуатационной и технологической до кументации на комплекс программ.
Программа испытаний является планом проведения серии экспери ментов и должна разрабатываться с позиции допустимой минимизации объема тестирования в процессе проведения испытаний для проверки вы полнения требований технического задания и соответствия предъявлен ной документации. Программа испытаний, методики их проведения и оцен ки результатов, разработанные совместно заказчиком и разработчиком, должны быть согласованы и утверждены. Они должны содержать уточ нения и детализацию требований технического задания и спецификаций для данного ПС, а также гарантировать корректную проверку всех задан-
428
14.2. Организация и методы оценивания характеристик сложных комплексов программ
ных характеристик качества. Программа испытаний доллсна codepjtcantb
следующие четко сформулированные разделы:
—объект испытаний, его назначение и перечень основных документов, определивших его разработку;
—цель испытаний с указанием всех требований технического зада ния, характеристик и атрибутов качества, подлежащих проверке, и огра ничений на проведение испытаний;
—собственно Программу испытаний, содержащую проверку комп лектности спроектированного ПС в соответствие с техническим заданием
иплан проведения тестирования для проверки по всем разделам техни ческого задания и дополнительных требований, формализованных отдель ными решениями разработчиков и заказчика;
—методики испытаний, однозначно определяющие все понятия про веряемых характеристик качества, условия и сценарии тестирования, ин струментальные средства, используемые для испытаний;
—методики обработки и оценки результатов тестирования по каждо му разделу Программы испытаний.
Методика испытаний должна содержать: описание организации про цесса тестирования, тестовые варианты, сценарии и процедуры, которые используются при испытаниях отдельного компонента или ПС в целом. Каждый тест должен иметь уникальный для данного проекта идентифика тор; должны быть представлены инструкции для проведения тестирова ния; описание аппаратуры и ПС для реализации тестирования, а также инструкции для повторного тестирования. Кроме того, должны быть при ведены ссылки на проверяемые требования, указаны условия выполнения (конфигурация аппаратуры и компонентов ПС), входные данные, эталон ные и ожидаемые результаты, критерии оценки качества результатов, про цедура проведения тестирования для каждого тестового варианта, допу щения и ограничения.
План испытаний ПС должен описывать порядок квалификационно го тестирования компонентов и подсистем, тестовую внешнюю среду, ко торая будет использоваться при тестировании, идентифицировать выпол няемые тесты и указывать план-график тестовых действий. Для каждой предполагаемой тестовой реализации должны быть указаны: используе мые версии аппаратных средств; интерфейсное оборудование; дополни тельные внешние устройства; генераторы тестовых сообщений; устрой-
429