Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Липаев В.В. Программная инженерия

.pdf
Скачиваний:
724
Добавлен:
02.05.2014
Размер:
10.14 Mб
Скачать

Лекция 14. Интеграция, квалификационное тестирование и испытания комплексов...

ющей ЭВМ, либо на отдельной ЭВМ после записи на промежуточные носители вне реального времени.

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

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

Имитация эталонных характеристик объектов внешней среды

служит для определения качества функционирования ПС в идеальных ус­ ловиях — при отсутствии искажений исходных данных, ошибок в измере­ ниях их параметров, сбоев и предумышленных отказов. Проверка при таких исходных данных позволяет оценить характеристики дефектов и ошибок результатов, обусловленные недостаточным качеством ПС. Затем эталонные данные объединяются с определенными калиброванными иска-

440

14.3. Средства для испытаний и определения характеристик сложных комплексов...

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

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

Повторяемость сеансов испытаний при автоматической имитации тестов обеспечивается фиксированием всех исходных данных и при­ менением программного формирования псевдослучайных чисел. При на­ дежной работе аналогов реальных объектов и моделирующей ЭВМ, в прин­ ципе, можно добиться почти абсолютной повторяемости весьма длитель­ ных экспериментов и сценариев тестирования. Некоторая неидентичность результатов при повторных экспериментах может быть обусловлена сбоя­ ми и частичными отказами аппаратуры. Труднее обеспечивать повторяе­ мость сценариев испытаний, в которых активно )^аствует оператор-пользо­ ватель. В этом случае необходимо регистрировать действия оператора в зависимости от времени, а затем повторять их в соответствии с записан­ ным сценарием. При необходимости временная диаграмма может соблю­ даться с точностью около 0,5—1 с, однако ошибки в действиях оператора и вводимых им параметрах могут отличаться в каждом сценарии тестиро­ вания. Вследствие этого повторяемость тестов реализуется только статис­ тически.

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

441

Лекция 14. Интеграция, квалификационное тестирование и испытания комплексов...

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

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

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

442

14.3. Средства для испытаний и определения характеристик сложных комплексов...

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

группы:

данные, характеризующие исходную тестовую информацию и вы­ ходные результаты тестирования;

маршруты исполнения программных компонентов и их операто­ ров при некоторых фиксированных тестовых данных;

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

характеристики использования различных ресурсов объектной

ЭВМ.

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

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

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

443

Лекция 14. Интеграция, квалификационное тестирование и испытания комплексов...

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

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

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

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

444

14.3. Средства для испытаний и определения характеристик сложных комплексов...

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

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

Примером сложного испытательного стенда и моделей внешней среды является комплекс для проверки программ управления полетами

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

445

Лекция 14. Интеграция, квалификационное тестирование и испытания комплексов...

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

чивающие:

генерацию тестовых наборов или хранения тестов для контроля работоспособности, сохранности и целостности ПС при функционировании

иприменении;

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

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

мониторинг, накопление и хранение данных о выявленных дефек­ тах, сбоях и отказах в процессе исполнения программ и обработки данных.

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

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

446

14.3. Средства для испытаний и определения характеристик сложных комплексов...

Важной функцией испытательных стендов является их использование в качестве трена:н€еров для операторов-пользователей. Так как каче­ ство функционирования ПС может существенно зависеть от характерис­ тик конкретного человека, участвующего в обработке информации, то необходимо измерять эти характеристики. Необходимо также иметь воз­ можность их улучшать до уровня, обеспечивающего выполнение задан­ ных требований к ПС. Поэтому в процесс испытаний ПС органически входит процесс тренировки и измерения характеристик реальной реакции операторов, а также использование МИС для обучения и регулярной под­ готовки операторов-пользователей в процессе тиражирования и эксплуа­ тации ПС. Кроме того, испытательный стенд может служить прототипом для разработки тренажеров в серийных системах обработки информации.

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

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

адекватностью имитатора моделируемому объекту внешней среды или источнику информации;

инструментальной точностью средств, реализующих имитатор внешней среды;

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

точностью дискретизации имитаторами реальных непрерывных процессов в моделируемых объектах внешней среды.

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

447

Лекция 14. Интеграция, квалификационное тестирование и испытания комплексов...

ИСТОЧНИКОВ информации, при создании их моделей. Точность моделей на ЭВМ прежде всего определяется алгоритмами, на которых они базируют­ ся, и полнотой учета в них всех особенностей моделируемых объектов. Кроме того, на адекватность имитации влияют качество программирова­ ния и уровень дефектов и ошибок в программах имитации. Каждый не учитываемый в имитаторе элемент или фактор моделируемой системы необходимо оценивать путем сопоставления частных имитируемых дан­ ных с результатами аналитических исследований или с данными, получен­ ными на реальных системах, и определять его возможное влияние на пол­ ную требуемую точность модели и генерируемых тестов с учетом других составляющих, отражающихся на достоверности имитации.

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

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

448

14.4. Оценивание надежности и безопасности функционирования...

ния взаимодействия по типовым каналам связи с опытными образцами компонентов систем и их комплексами программ. Такой подход оказался

наиболее целесообразным, способствующим повышению эффективно­ сти опытно-конструкторских разработок для ПС реального времени,

14.4. Оценивание надежности и безопасности функционирования сложных программных средств

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

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

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

449