21. Комплексная отладка АЭИС

Скачать доклад: 21. Комплексная отладка АЭИС

Комплексная отладка АЭИС; задачи комплексной отладки; статическая и динамическая комплексная отладка; регистрация и обработка данных при отладке программ (28.1).

Основная задача комплексной отладки программ состоит в завершении разработки всей АЭИС и в доведении ее характеристик до значений, заданных требованиями ТЗ. Должны быть: - завершены и проверены сопряжение и взаимодействие по передаче управления и по информации всех компонент, входящих в АЭИС; - проверена возможность получения в процессе рабочего функционирования АЭИС всех характеристик, заданных требованиями ТЗ, а также вспомогательных, обоснованных в техническом проекте; - проверены полнота и состав технической документации, а также точное соответствие ее изделию - АЭИС.

Наиболее сложным является обеспечение возможности функционирования АЭИС с характеристиками, заданными требованиями ТЗ и нормативными документами. Система должна гарантированно удовлетворять всем требованиям не только в диапазоне типичных условий функционирования, но и при предельных, критических сочетаниях значений всех параметров. Это обеспечивает надежность функционирования программ при разнообразных произвольных, в т.ч. искаженных сочетаниях исходных данных. В процессе комплексной отладки должна быть обеспечена и проверена модернизируемость системы и отработаны технические условия, обеспечивающие полный контроль АЭИС при серийном производстве. Каждая функционально законченная группа программ проходит отладку "от простого к сложному" до уровня, позволяющего проверить удовлетворение требований ТЗ.

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

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

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

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

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

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

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

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

Программные имитаторы внешней среды в зависимости от типа (П)ЭВМ, на которой они реализуются, подразделяются на совмещенные с отлаживаемой программой в одной ЭВМ и разделенные. Наиболее сложными являются являются  1генераторы тестовых данных для отладки и испытаний комплексов программ в реальном времени. Такие программные имитаторы дают возможность создания тестов во всем многообразии поведения объектов внешней среды данной АЭИС.

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

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

Совмещение двух способов взаимодействия генераторов тестов с тестируемыми АЭИС позволяет заранее имитировать основные потоки тестовых данных с высокой интенсивностью и дополнительно учитывать обратные связи от тестируемой АЭИС.

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

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

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

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

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

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

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

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

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

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

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

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

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

Обработка результатов отладки АЭИС может быть разделена на две автономные части: оперативную и обобщенную.

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

Обобщающая обработка накопленных результатов отладки может производиться вне реального времени после завершения одного или серии экспериментов. Основная задача при этом состоит в расчете различных интегральных характеристик функционирования АЭИС. Некоторые эталонные данные могут быть получены от генераторов тестов.

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