
Липаев В.В. Программная инженерия
.pdfЛекция 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