- •Введение
- •1. Системный анализ проблемы создания специального программного обеспечения информационных систем
- •2. Концептуальные основы построения информационных систем на основе формализма синтаксически вариантных лингвистических систем и метода метауправления
- •V (кдс-прививка)
- •Модели и методики построения типовых систем обработки информации как информационных систем с метауправлением функциональностью, и примеры их применения
- •5. Технологические основы создания специального, по с применением сквозного моделирования, поддержанного синтаксически вариантными средствами
- •Заключение
5. Технологические основы создания специального, по с применением сквозного моделирования, поддержанного синтаксически вариантными средствами
5.1. Логическая структура процессов сквозного моделирования, виды и взаимосвязь моделей
Учитывая перечисле1шые в п. 1.2 специфические особенности ИУАС как систем автоматизированного управления, ориентированных на автоматизацию управления иерархически организованной распределенной гетерогенной совокупностью сил, средств и телекоммуникационной системой в реальном масштабе времени и в условиях возможных эксплуатационных отказов и деструктивных воздействий, можно предположить, что ТПППП для СПО ИУАС должна иметь ряд специфических особенностей, существенно отличающих ее от других ТПППП. Эти особенности могут проявляться как в системно-технических принципах построения соответствующей технологической системы производстна СПО, так и в частных методиках и средствах проведения отдельных технологических операций.
Синтез ТППП! 1 для С110 ИУАС должен также учитывать современные тенденции в области индустриализации технологий программирования, к которым, как показал проведенный анализ (/70/), прежде всего следует отнести: усиление роли контроля качества с одновременным переходом от попыток введения единых показателей качества ПО к сертификации систем управления качеством (см. п. 1.1);
перенос основного внимания на начальные стадии работ, характеризуемые высокими сложностью и важностью, а также стоимостью ошибок; варьирование используемых модели жизненного цикла; широкое внедрение объектного подхода и CASE-средств;
создание стандартов и технологий на уровне предприятий (корпораций, консорциумов);
переход от унификации средств разработки к стандартизации протоколов, интерфейсов и форм представления результатов работ;
усиление финансирования работ по созданию ТПППП в экономически развитых странах;
совпадение интересов государства и ведущих производителей в области создания ПО в формировании уникальных, наукоемких ТПППП как одного из перспективных средств монополизации рынка и обеспечения информационной безопасности государства.
Структуризация проблемы создания технологии промышленного производства СПО ИУАС, выполняемая с учетом описанной в п. 1.2 структурой технологической системы производства СПО, позволяет выделить три группы основных проблем (рис. 5.1): организационно-финансовые проблемы, проблемы формирования организационно - методологического базиса и проблемы создания базиса инструментальных средств технологии.
Не останавливаясь на подробном анализе содержания вышеперечисленных проблем» можно утверждать, что в содержательном плане наиболее сложным и важным является комплекс проблем формирования организационно - методологического базиса, так как решение этих проблем носит определяющий характер с точки зрения формирования элементов технологии и в наибольшей степени определяет ее свойства.
Главенствующую роль в указанном комплексе проблем играет выбор направления ориентации организационно - методологического базиса. Следует отметить, что именно недостаточное внимание данному положению в абсолютном большинстве случаев приводит к тому, что создаваемая технология оказывается нежизнеспособной или недолговечной.
Рис. 5.1. Структуризация проблемы создания ТПППП СПО ИУАС
Как отмечено в п. 1.2, одной из основных причин неудач, в области формирования ТПППП является ориентация базиса технологии, исходя из прагматических аспектов процесса создания СПО.
С этих позиций можно предположить, что указанные выше прагматические аспекты должны иметь вторичный характер, то есть носить роль ограничений. Первичным должно быть стремление к комплексному удовлетворению целевого предназначения технологии, которое должно определять целевой функционал задачи синтеза технологии. Чем сильнее выбранный целевой функционал инвариантен к прагматическим аспектам создания СПО, тем более универсальна и долговечна технология. Кроме того, целевой функционал должен быть следствием выбранного внешнего критерия организуемого технологического процесса: попытки создать ТПППП как результат совершенствования сложившийся организации работ на том или ином предприятии без анализа внешних критериев изначально обречен на провал.
Особенности СПО как продукта промышленного производства, описанные в пп. 1.1 и 1.2, позволяют утверждать, что внешним критерием создания СПО с помощью ТПППП является требуемое качество конечного продукта. Такое определение внешнего критерия ТПППП, во-первых, инвариантно к способам организации и реализации процессов создания СПО, составляющих содержание ряда тгапов его жизненного цикла в рамках той или иной технологии, а во-вторых • соответствует самому понятию ТПППП.
Очевидно, что наиболее эффективной является сквозная организация контроля качества, реализация которого требует создания возможностей оценки не только конечного продукта, но и его полуфабрикатов - как результатов выполнения отдельных стадий, этапов и технологических операций, изменяющих состояние (свойства) производимого СПО.
Учитывая, что потребительские свойства системы проявляются при ее функционировании (использовании), основным способом оценки качества
полуфабрикатов проведение моделирования с целью получения значений показателей качества, актуальных для оцениваемого полуфабриката.
С другой стороны, декомпозиция процессов создания ИУАС и их СПО приводит к получению множества иерархий целей, задач, операций, требований, ресурсов и получаемых результатов. Содержательно задачи проектирования можно определить как совокупность взаимосвязанных задач синтеза, оптимизации и анализа, решаемых в интересах формирования функциональной, организационной и технической структур (/100, 258, 280, 336 - 338/ и др.). Доминирующим инструментом решения этих задач является моделирование. Декомпозиция задач, решаемых с применением моделирования, по стадиям жизненного цикла ПО, приведена в /77, 108, 268, 271/ и др. Такое расширение области приложений и дальнейшее развитие аппарата и средств моделирования как метода познания окружающего мира связано с тем, что моделирование сохраняет спою гносеологическую функцию в условиях роста сложности, объема и разнообразия исследуемых систем и объектов, и в первую очередь - благодаря развитию и совершенствованию вычислительной техники и соответствующего математического и программного обеспечения, а также многообразию и многофункциональности способов применения моделей.
Таким образом, моделирование как метод исследования применяется как в интересах решения содержательных задач проектирования ИУАС и их СПО, так и и интересах осуществления сквозного контроля качества.
Безотносительно конкретной схемы ЖЦ СПО можно выделить следующие содержательные процессы его создания (по/102,122, 125/):
формирование замысла (концепции, или концептуальной модели); декомпозиция и выделение подсистем и организующей составляющей, формирование требований к ним;
проектирование и разработка выделенных подсистем и организующей составляющей;
комплектование разработанных подсистем и проверка качества выполненной реализации;
погружение созданной системы в среду системы более старшего уровня (на правах подсистемы), а всей системы - в среду ее функционирования.
Указанные процессы имеют иерархический характер, соответствующий структуре создаваемой системы с ее декомпозицией по функциональным, организационным и другим признакам — в том числе профилям, протоколам и очередям создания.
Решение задач проектирования, реализации, комплексирования и тестирования может быть поддержало с помощью ряда моделей, которые позволяют как повысить степень обоснованности принимаемых проектных решений, так и провести сквозной контроль качества создаваемого продукта.
Подобные модели могут быть разделены на три функциональных группы (рис. S.2):
модели обеспечения анализа альтернатив построения создаваемой системы (подсистемы);
модели поддержки разработки;
модели поддержки оценки качества.
Модели обеспечения анализа альтернатив призваны поддержать процесс формирования замысла, обоснования требований, выбора способа декомпозиции и подходов к реализации системы (подсистемы). Как правило, ка начальных этапах проектирования в качестве моделей обеспечения анализа альтернатив вариантов построения создаваемой системы выступают аналитические модели, а по мере разработки проекта и нарастания его сложности - имитационные.
Модели поддержки разработки обеспечивают проведение работ по созданию организующей подсистемы и последующему комплексированию (сборке), а модели поддержки оценки качества необходимы для прогнози
рования или проверки достижения соответствия созданной системы (подсистемы) предъявляемым к ней требованиям.
Модели второй и третьей групп представляют собой полунатурные модели, в основе которых лежат видоизмененные имитационные модели, и задача которых - не проведение статистических испытаний, а имитация внешней по отношению к создаваемому СПО среды. Причем речь идет не просто о генерации тестовых данных, а об адекватной имитации интерфейса СПО с его окружением. Изначально эти модели сопрягаются с "заглушками”, имитирующими работу создаваемых модулей СПО. По мере программной реализации модулей последние заменяют соответствующие заглушки, и по завершении реализации модельная часть заменяется реальной средой функционирования, то есть отбрасывается (рис. 5.3).
Таким образом, совокупность создаваемых модулей СПО составляет натурную часть модели, а средства имитации среды их функционирования - модельную. Последние могут быть реализованы как программно, так и программно-аппаратно, то есть могут включать в себя компоненты и фрагменты реальной среды функционирования.
Применение полунатурных моделей, в частности, позволяет (/19, 207, 339,340/ и др.):
относительно быстро получить работоспособный макет (прототип) создаваемой системы с возможностью анализа его функционирования;
оценить качество каждого модуля СПО во взаимосвязи с оценками эффективности и качества всей системы СПО в целом, в том числе с экстраполяцией оценок на момент завершения проекта;
организовать опережающее обучение обслуживающего персонала и пользователей создаваемой системы.
Поскольку при данной схеме организации работ имеют место последовательные преобразования создаваемого СПО, а также применяемых моделей
и целей их применения, можно говорить о сквозном моделировании как об отдельном технологическом процессе в рамках ТПППП.
В структуре любой ТПППП можно выделить процессы трех типов - основные (содержательные), управляющие и обеспечивающие (по ISO/IEC 12207 - базовые, организационные и поддерживающие /115/). Сквозное моделирование относится к обеспечивающим процессам - благодаря той роли, которую оно играет при решении содержательных задач проектирования и при решении задач контроля качества и управления им, то есть оно поддерживает (обеспечивает) как основной (содержательный), так и управляющий процессы
рис. 5.4.
Важнейшей особенностью сквозного моделирования является его инвариантный характер - виды и взаимосвязи моделей, цели моделирования, способы и средства реализации инструментальной поддержки не зависят от специфики СПО, содержания схемы ЖЦ и наполнения остальных компонентов технологической системы. Сквозное моделирование - это совокупность взаимосвязанных процессов, инициирующих выполнение друг друга. Данное свойство сквозного моделирования позволяет использовать для его канонизации тот же подход, который применен при составлении стандарта ISO/IEC 12207 и благодаря которому указанный стандарт имеет высокую степень адаптации и получает всеобщее признание /115,119/.
Отдельно следует отметить роль спецификаций, образующих концептуальные (информационные) модели (см. определения в п. 4.1) в сквозном моделировании. При применении сквозного моделирования относительно некоторой системы (подсистемы) требования спецификаций выступают в качестве основания для ее проектирования и эталона контроля для оценки качества результатов создания системы (подсистемы). Одновременно спецификации системы (подсистемы), расширенные и дополненные в ходе ее проектирования, служат основанием для создания ее модели и моделей составных частей (подсистем), и созданные модели выступают в качестве как средства
контроля результатов проектирования, так и средства определения (уточнения) требований спецификаций на составные части.
Рис.
5.4. Соотношение сквозного моделирования
и основного технологического процесса
Таким образом, в процессе сквозного моделирования используемые модели выступают в качестве средства представления спецификаций в форме, пригодной для их дальнейшей декомпозиции и наращивания (детализации и уточнения), для использования их в интересах контроля качества, а также для проверки адекватности самих спецификаций.
Ориентация на сквозное моделирование как средство поддержки проектирования и разработки, и одновременно - поддержки контроля качества позволяет подойти к созданию ТПППП СПО ИУАС с позиций формирования методологической и нормативно-правовой базы, регламентирующей создание СПО ИУАС в рамках размещаемых в государственном и частном секторах промышленности государственных заказов. И при этом организации- разработчики остаются потенциально свободными в выборе используемых средств реализации СПО, CASE-технологий, частных методик проектирования и разработки СПО и т. д., то есть содержательных и технологических ограничений сквозное моделирование по сути не накладывает - оно лишь требует подтверждения на моделях (или в виде моделей) наличия детальных спецификаций (в смысле их определения в п. 4.1), эффективности принимаемых проектных решений, констатирующих и прогнозных оценок показателей качества получаемых полуфабрикатов и создаваемого программного изделия в целом.
Таким образом,- сквозное моделирование может выступать в роли средства решения ряда важнейших задач, неизбежно возникающих при создании сложных программных систем в условиях рыночной экономики (подробно данная проблематика в более глобальном плане на примере реорганизации системы размещения заказов МО США в 50-х годах рассматривается в /341/- для нашей страны аналогичный кризисный период в этой сфере наступил только сейчас). Конкретные предложения по формированию отечественной
ТПППП СПО ИУАС и совершенствованию существующей системы создания, сертификации и сопровождения СПО изложены в /74,82,83, 85/.
Реализация сквозного моделирования предполагает наличие соответствующей методологии. Такая методология в завершенном виде в настоящее время отсутствует. В то же время достаточно очевидно, что сквозное моделирование только тогда будет востребовано, когда затраты на его проведение будут существенно меньше затрат на проведение работ основного (содержательного) процесса создания СПО. Главным препятствием здесь является уникальный характер подлежащих созданию моделей, что и ведет к низкой рентабельности их разработки.
С другой стороны, как отмечалось выше, сквозное моделирование предполагает широкое применение информационных, имитационных и полу- натурных моделей. Если возможности средств информационного и имитационного моделирования, имеющихся в современных CASE-технологиях, недостаточно (а это практически всегда имеет место, если речь идет о системах класса ИУАС, что и вызывает основные трудности в создании и применении требуемой иерархии моделей), то получение необходимых моделей может быть обеспечено средствами автоматизации моделирования, созданными на основе метауправления. Модели и методики построения таких средств автоматизации моделирования приведены в пп. 4.1 и 4.2. Как свидетельствует опыт практического применения этих методик, синтаксическая вариантность и метауправление в конструкции средств автоматизации информационного и имитационного моделирования позволяют существенно упростить создание уникальных моделей и снизить его стоимость. Как показано в п. 5.4, на полу- натуриое моделирование также может быть распространено понятие синтаксической вариантности.
Суммируя вышеизложенное, можно утверждать, что использование адаптируемых средств автоматизации моделирования, создаваемых по принципам
построения СВИС, позволяет ставить вопрос о возможности практического применения сквозного применения - как реальном подходе к решению проблемы, описанной в п. 1.4 для СПО ИУАС.
Задачи полунатурного моделирования среды погружения специального программного обеспечения и особенности средств его проведения
Важнейшим конструктивным критерием в процессе создания СПО является его корректность /132, 133, 342/. Данный критерий характеризуется тем, что он:
сохраняет свою доминирующую роль и на этапах эксплуатации и сопровождения;
принципиально важен с позиции прямого функционального назначения разрабатываемого СПО;
является единственным критерием, справедливым для любого проекта СПО, так как только показатели корректности рекомендуются к применению для всех классов (групп) программных средств /132/.
Понятие корректное ги (правильности) подразумевает степень соответствия проверяемого объекта некоторому эталонному объекту или системе формализованных эталонных характеристик и правил. Корректность СПО при проектировании наиболее полно определяется степенью его соответствия предъявляемым к нему формализованным требованиям - программной спецификации /260,343/.
Осознание важности корректности и достаточно универсального характера ее показателей привело к появлению понятия технологической безопасности СПО, связанного с непреднамеренными дестабилизирующими факторами, которые способны вызвать аномалии функционирования и даже катастрофические последствия, порой более тяжёлые, чем последствия злоумышленных действий /161, 165, 344/. Применительно к СПО технологическая
безопасность вырождается в алгоритмическую и программно- технологическую безопасность, различные аспекты которой подробно рассматриваются, в частности, в/161/.
Алгоритмическая и программно-технологическая безопасность являются функцией корректности, а уровень последней определяется ошибками в СПО как программном продукте.
В настоящее время основным средством контроля корректности с целью достижения его требуемого уровня является тестирование, причем программы как объект тестирования обладают рядом существенных особенностей, которые обуславливают отличие процесса тестирования от традиционного, применяемого для проверки работоспособности технических устройств (/161,260,340,343,345/ и др.).
Наиболее сложным и важным видом тестирования СПО является комплексное динамическое тестирование (КДТ), задачи, виды и особенности проведения которого рассматриваются, например, в /116, 260, 340, 346/. Там же показано, что для обеспечения полномасштабного тестирования всех вышеперечисленных видов применительно к СПО ИУАС необходимо использовать имитаторы внешней среды. Трудность адекватного моделирования некоторых объектов внешней среды, особенно если в их функционировании активно участвует оператор-пользователь, не позволяет сосредоточить и полностью автоматизировать всю имитацию тестовых данных на ЭВМ, поэтому для реализации систем обеспечения испытаний технологической безопасности комплексов СПО необходимы аналоги реальных объектов внешней среды для формирования частных данных, а также ресурсы вычислительных средств для имитации данных от остальных объектов. Разумное сочетание части реальных объектов внешней среды и имитаторов на ЭВМ позволяет создавать высоко эффективные моделирующие сте1щы с комплексными моделями совокупностей объектов, необходимых для испытаний технологической безопасности
СПО в реальном времени /161/. Такие стенды позволяют производить автоматическую генерацию тестов с помощью имитаторов на ЭВМ и аналогов реальной аппаратуры, и дополнять ее реальными данными от операторов- пол ьзовател ей, контролирующих и корректирующих функционирование системы обработки информации, СПО которой тестируется. Проведение тестирования СПО в имитируемой среде погружения представляет собой процесс полунатурного моделирования, направленный на достижение целей тестирования СПО на технологическом моделирующем стенде организации- разработчика.
В контексте методологии сквозного моделирования под полунатурной моделью (ПНМ) следует понимать совокупность взаимосвязанных по целям применения и согласованных по интерфейсам и процессам функционирования реальных (физические, натурные) и абстрактных (имитируемые, модельные) компонентов, адекватно отображающих исследуемую систему в интересах решаемой задачи исследования. В данном случае компоненты полунатурной модели определяются следующим образом (рис. S.5):
натурная часть - СПО, проходящее путь от модулей-"заглушек", простейшим образом имитирующих его функционирование, до конечного продукта • совокупности модулей, составляющих конечный продукт;
модельная часть - имитация функционирования внешней (по отношению к СПО) среды.
Натурный характер СПО обусловлен тем, что именно оно является тем компонентом ПНМ, который подлежит дальнейшему применению в составе разрабатываемой (а при реинжиниринге - модернизируемой) ИУАС после завершения полунатурного моделирования. В процессе полунатурного моделирования соотношение модельной и натурной частей может быть различным - как правило, изначально в имитируемую среду погружаются “заглушки”
м одулей СПО (что позволяет провести тестирование модельной части), а затем по мере разработки модули СПО заменяют соответствующие "заглушки- имитаторы” и становятся частью объекта тестирования (см. рис. 5.3).
Благодаря возможности управления составом полунатурной модели (соотношением модельной и натурной частей) ПНМ выступает не только средством КДТ, но и средством поддержки разработки СПО - в рамках общего процесса сквозного моделирования или вне его.
Поскольку исследования, проводимые посредством ПНМ, представляют собой разновидность вычислительного эксперимента, совместно с моделью необходимо использовать средства решения задач планирования, проведения и обработки результатов экспериментов. Совокупность полунатурной модели и средств, обеспечивающих проведение полунатурного моделирования, образует стенд полунатурного моделирования (СПНМ), состоящий из моделирующей и организующей подсистем. Моделирующая подсистема представляет собой объединение модельной части ПНМ и средств проведения моделирования (выполнения модели), а организующая — средства, обеспечивающие использование 1IHM, то есть средства планирования и подготовки экспериментов, а также обработки их результатов (см. рис. 5.5).
Содержательно основными задачами стенда в процессе полунатурного моделирования являются: реализация вычислительной схемы имитации, синхронизация компонентов модели, управление процессом выполнения модели, сбор сведений о функционировании компонентов модели.
К СПНМ предъявляется ряд требований, подробно описанных в /60/, среди которых выделяются:
реализуемость в определенной предметной области;
учет наличия обратных связей в контурах управления моделируемой ИУАС;
возможность имитации событий в реальном масштабе времени (РМВ);
необходимая степень детализации исследуемой системы и учета
внешней среды.
Следует отметить, что примеры использования программных (аппаратно - программных) имитаторов и ПНМ при разработке программного обеспечения для различных сфер приложения достаточно хорошо известны (см., например, /161, 340, 347 • 349/), однако характер и особенности областей их применения в большинстве имеющихся примеров применения полунатурного моделирования предполагал "точечный" объект погружения создаваемого СПО и "точечную" модель внешней по отношению к СПО среды (например, СПО для бортовой ЭВМ, электронной АТС. системы управления атомным реактором и т. д.). Проблемы же создания ПНМ систем распределенного преобразования информации как в общеметодолаг ическом плане, так и в частных аспектах их проявления, до настоящего времени практически не решались.
Кроме того, моделирующие стенды, создаваемые в 70 - 80-х годах, имели уникальный характер, реализовывались на базе устаревших на сегодняшний день ЭВМ, операционных систем и средств программирования; единая методология создания моделирующих стендов в интересах КДТ СПО ИУАС, учитывающая современные архитектуры вычислительных систем и технологии программирования практически отсутствует.
Необходимость учета при построении полунатурных моделей СПО функциональных подсистем ИУАС ряда специфических факторов, таких как: распределенный характер объекта управления; широкое использование распределенных информационно-управляющих сетевых структур при построении ИУАС; определенная степень автономности поведения подсистем, параллельность и асинхронность их функционирования, возможность выработки ими локальных решений; необходимость учета корреляции содержания входной и выходной (по отношению к СПО) информации и ее влияния на траекторию поведения внешней среды; необходимость реализации моделей в технологической среде проектирования -
обуславливает уникальность подобного рода полунатурных моделей и предполагает, что ПНМ, сохраняя черты оригинала, также приобретает распределенный характер. В этой ситуации наработанные для классической схемы “моделирующая ЭВМ — объектовая ЭВМ” методологический аппарат, технологические и технические решения во многом становятся непригодными /161/.
ПНМ и имитаторы внешней среды (среды погружения СПО) всегда уникальны, что объясняется уникальностью СПО и спецификой ИУАС, в состав которой оно входит. Поскольку новые ИУАС в период 60-80 годов создавались годами, апробированный аппарат полунатурного моделирования как таковой отсутствовал, а финансирование работ больших проблем не вызывало, ПНМ каждый раз разрабатывались практически заново. При этом основное внимание уделялось математическим моделям и методам адаптивной имитации объектов среды погружения, так как разработка ИУАС осуществлялась впервые, а требуемая для имитации формализация объектов среды погружения отсутствовала.
В ближайший период наметилась тенденция реинжиниринга существующих ИУАС над созданием новых /13,83/, причем формализация объектов моделирования, хах правило, либо уже выполнена при создании существующих ИУАС, либо требуется, но существенно упрощается возможностью анализа существующей системы. В этих условиях на первый план выходит стремление к минимизации затрат на создание ПМН, для чего целесообразно получить набор типовых решений по созданию распределенных ПНМ, и далее осуществлять их тиражирование с дополнением функциональными компонентами, учитывающими специфику объектов среды погружения и основанными на их функциональных моделях - как имеющихся, так и вновь разрабатываемых с использованием апробированного математического аппарата в сочетании с анализом существующих, подлежащих реинжинирингу ИУАС.
Учитывая вышеизложенное, в настоящей работе основное внимание уделено технологическим аспектам создания ПНМ, инвариантным к специфике конкретных ИУАС, и обусловленных следующими особенностями КДТ СПО ИУАС:
распределенный характер подлежащих созданию 11НМ;
целесообразность формирования базового инвариантного ядра ПНМ СПО и его тиражирования в интересах конкретных проектов по созданию или реинжинирингу СПО;
отсутствие целостного современного методологического базиса полунатурного моделирования среды погружения СПО ИУАС.
Поскольку основным требованием к разрабатываемым предложениям является ее инвариантность к конкретным реализациям процесса создания СПО, основными компонентами методологического базиса полунатурного моделирования в части построения средств имитации среды погружения СПО ИУАС должны быть (рис. 5.6):
схема формализации среды погружения СПО, позволяющая отображать результаты декомпозиции и кластеризации элементов среды погружения как объекта моделирования (имитации функционирования) в интересах решения задач синтеза модели среды погружения, и типовые решения по ее реализации в виде совокупности инвариантных архитектурных решений (структур, интерфейсов, протоколов и т. д.);
типовая схема процесса имитации функционирования модели среды погружения СПО, функциональное наполнение которой позволяет получить реализации средств имитации в рамках конкретных проектов СПО.
С позиций применения средств имитации среды погружения методики полунатурного моделирования должны обеспечивать решение двух задач:
Рис. 5.6. Рассматриваемые составляющие построения и применения средств имитации среды погружения СПО
обеспечение процесса имитации среды погружения модулей СПО в распределенной вычислительной среде полунатурной модели с адаптацией этого процесса к реальному масштабу времени и корректным учетом изменения траекторий элементов моделируемой среды при управляющих воздействиях от СПО;
определение длительности тестирования модулей СПО в имитируемой среде погружения, то есть моментов включения модулей СПО в состав модели в соответствии с выбранной последовательностью их комплексирования.
Результатом работ по формированию указанных элементов методологического базиса полунатурного моделирования в интересах проведения КДТ СПО ИУАС явились две методики, охватывающие решение указанных выше задач и описанные в пп. 5.3 и 5.4. Данные методики разработаны применительно к выбранному базовому варианту построения и организации функционирования ПНМ, который, в частности, предполагает реализацию модельной части ПНМ на базе локальной вычислительной сети (ЛВС). Классификационная схема возможных вариантов построения и организации функционирования ПНМ и описание выбранного варианта приведены в приложении 11.
Методика синтеза модельной части полунатурной модели среды погружения специального НО
Содержание процесса синтеза структуры модельной части полунатурной модели. Для модельной части ПНМ, используемой в интересах КДТ СПО ИУАС, объект моделирования определяется как среда погружения СПО. С учетом выбранного варианта построения и организации функционирования ПНМ эту среду можно рассматривать как совокупность источников и потребителей информации, внешних по отношению к совокупности управляющих комплексов, на которых функционирует СПО. Данный подход, основанный на концептуальной схеме вычислительной среды для проведения стендовых
испытаний ПО, приведен в /130/. Принципы и особенности выделения объектов имитации для построения ПНМ ИУАС рассмотрены в /60,73/.
Используя подходы, изложенные в /269/, применительно к гюлунатур- ному моделированию, внешние источники и потребители информации как объекты имитации представимы в виде совокупности функциональных действий, выполняемых компонентами моделируемой системы. Каждое функциональное действие в модельной части отображается в виде некоторой активности, обеспечивающей выполнение имитации функционального действия и модификацию своей временной координаты.
Формализованное описание совокупности компонентов и активностей, составляющих ПНМ, их взаимосвязей и взаимодействия со специфическими компонентами ПНМ, показанными на рис. 5.7, требует применения соответствующей схемы формализации. Разработка таких схем позволила сформулировать методику синтеза модельной части ПНМ в виде совокупности следующих этапов, последовательность выполнения которых показана на рис. 5.8:
анализ и описание объекта моделирования выполняется на основе методологий структурного анализа, результатом применения которых будет концептуальная (информационная) модель объекта имитации;
формализация процессов, подлежащих имитации, выполняется с использованием базовой иерархической схемы формализации с целью получения формальной иерархической модели компонент (уровней), активностей и их взаимосвязей, то есть фиксации отображения реальной среды погружения на моделирующую часть ПНМ;
разработка потоковых и сигнальных моделей, составляющих наполнение каждого уровня, осуществляется в рамках агрегативной модели и заключается в переходе от абстрактных активностей к абстрактным и физическим
компонентам ПНМ, подлежащим дальнейшей программно-технической реализации;
АК активность К - компонент
ФД - функциональное действие
Pиc. -.7. Отображение СПО и реальной средой его погружения на полунатурную моделью
Рис.
S.8.
Основные элементы методики синтеза
структуры модельной части ПНМ
Таким образом, методика синтеза структуры модельной части полунатурной модели регламентирует основные этапы проектирования модельной части, позволяя перейти от выделения объекта имитации к постановке задачи по разработке программных средств модельной части ПНМ.
Схема Формализации объекта полунатурного моделирования в виде базовой иерархической модели. Синтез структуры полунатурной модели предполагает формирование в общем случае иерархически организованной совокупности описаний структурно-функциональных компонентов, выделенных в ходе декомпозиции моделируемой системы.
Целевая установка полунатурной модели на имитацию среды погружения СПО приводит к необходимости формализации уровней и компонентов моделируемой системы в виде совокупностей потоковых и сигнальных моделей.
Потоковые модели предполагают описание стохастических процессов на основе потоков событий и сообщений различной природы. В случае, когда учету (описанию) подлежат только детерминированные процессы, можно использовать сигнальные модели, основанные на детерминированных функциях. Согласно /350/, при создании любой модели (потоковой или сигнальной) и любой степени недетерминизма моделируемых процессов всегда существует детерминированная часть любой поведенческой модели - описание моделирующего алгоритма, которое определяет последовательность исполнения и взаимодействия абстракций и может быть представлено сигнальной моделью.
В отличие от имитационных моделей, обеспечивающих проведение экспериментов путем программной имитации поведения моделируемой системы с использованием метода статистических испытаний, в полунатурных моделях сочетаются процессы имитации поведения одной части элементов исследуемой с шлемы с реальным поведением элементов другой, что приводит к наличию в структуре полунатурной модели двух иерархий уровней представления (абстрагирования).
Формой представления результатов декомпозиции и абстрагирования компонентов исследуемой системы служит базовая иерархическая модель (рис. 5.9), позволяющая перейти от спецификаций вербального и формализованного характера к абстрактным формализмам потоковых и сигнальных моделей с их последующей реализацией в виде компонентов полунатурной модели. В данном случае иерархичность отражает строение модели, а базовость
ее основополагающий характер по отношению к дальнейшим действиям по синтезу структуры ПНМ и ее программной реализации.
P.J
•ill!
Ь|Н2
Ь|2И
|S,i fs
I Sn-IM I SnH-I
! Рц-IN ' PfJN-l
Try, |
|
|
|
F*. |
|
|
|
|
Си |
|
4 |
®INJM
Рис. 5.9. Типовая структура базовой иерархической модели
Совокупность процессов функционирования компонентов (элементов и подсистем), составляющих исследуемую систему, разбивается на множества (F||, F21, Fni) в соответствии с выделенными уровнями декомпозиции. Каждое множество процессов и связей между ними представляет собой модель уровня. Принципиальной особенностью разбиения является разнесение по уровням не самих реальных элементов (устройств, блоков и т. д.), а функциональных процессов, реализуемых этими элементами. При этом один реальный элемент может быть представлен функциональными процессами на двух и более уровнях модели одновременно. Другой особенностью определения структуры уровней натурной части ПНМ является привязка к структуре создаваемого СПО и ИУАС в целом, то есть степень декомпозиции уровней находится в прямой зависимости от конструктивных единиц СПО и их взаимосвязей.
Аналогичным образом формируются множества F12, F22, для модели среды погружения СПО, однако включению в указанные множества подлежат только те процессы, которые адекватно отображают все множество процессов функционирования среды погружения СПО, непосредственно взаимодействующих с программными модулями натурной части.
Множество Тг = {Тгь Тг2,..., TrN} составляют параметры моделей уровней, а множество С = {С(, С2> ..., См} - результаты моделирования для отдельных уровней. Через Тг и С осуществляется параметрическое сопряжение полунатурной модели с общим комплексом инструментальных средств полунатурного моделирования.
Между моделями уровней имеют место параметрические связи (Р12, Р21, Р23, Р32»Pn-in, Pnn-1. S|j, $21, $?э. $»> Sn.in, Snn.i), а между моделями одного уровня как параметрические (ац2|, al2n, ai222, a22i2. auj2N, ^2nin)> так и сигнальные (Ьцп, b»211> bl222> 12- b]N2N. b2NIN)'
В общем случае модель каждого уровня может быть представлена множеством сигнальных и потоковых моделей, каждая из которых соответствует одному из процессов множества Fy, объединяемых в одну сигнальную модель, отождествляемую с алгоритмом данного уровня (см. выше). Таким образом, модель уровня Fy есть сигнальная модель (рис. 5.10), элементами которой являются сигнальные и потоковые модели, а связи имеют параметрический и сигнальный характер.
В целом базовая иерархическая модель (БИМ) среды погружения СПО, построенная на основе предложенной схемы формализации, представляет собой кортеж вида:
М = <N, F, Тг, С, А, В, Р> где N - множество уровней декомпозиции процессов функционирования компонентов;
F - множество процессов функционирования компонентов;
Рис. 5.10. Модель уровни в БИМ как сигнальная модель
Тг - множество параметров моделей уровней;
С - множество результатов моделирования для отдельных уровней;
А — множество параметрических связей между моделями одного уровня;
В - множество сигнальных связей между моделями одного уровня;
Р - множество параметрических связей между моделями уровней.
Декомпозиция функциональных действий в рамках одного уровня, разработка описаний активностей как потоковых и сигнальных моделей выполняются согласно методикам, разработанным и апробированным для имитационного моделирования вычислительных и телекоммуникационных систем, систем управления и т. д. -/350/. Поскольку на данном этапе синтеза структуры модельной части ПНМ каких-либо различий в проведении формализации отдельных процессов с позиций имитационного и полунатурного моделирования не существует, разработка моделей, являющихся частями моделей уровня, далее не рассматривается.
Агрегативная модель структуры полунатурной модели. Дальнейшая формализация структуры ПНМ предполагает выбор способа реализации функциональных компонентов ПНМ - физическая или абстрактная (программная), и формальное описание их взаимосвязей как между собой, так и с управляющим алгоритмом имитации.
Исходя из перечня элементарных схем формализации и рекомендаций по их применению, приведенных в /271/, искомое описание может быть получено в рамках A-схемы, которая дает возможность представить ПНМ в виде совокупности <A,R,M,T>, где А = {А„, А„, Аф} - множество агрегатов, R = (Rh, Rh, Rmh, Ямф» R«*} " операторы сопряжения (внутренние операторы сопряжения RM и RH агрегатов Ам и А„, и операторы сопряжения агрегатов R*,„, КмФ> Янф), М = {М«, М„, Мс) - соответственно моделирующие алгоритмы агрегатов Ам и А„, а также общий моделирующий алгоритм модели Me, Т " {Тм,Тр} - таймеры модельного и реального времени (рис. 5.11).
Агрегатная схема ПНМ обладает следующими особенностями: множество агрегатов А составляют агрегаты Аф (совокупность процессов, реализуемых физическими компонентами натурной и модельной частей полунатурной модели), А„ (совокупность процессов, реализуемых абстрактными компонентами натурной части полунатурной модели), А*, (совокупность процессов, реализуемых программно моделируемыми компонентами натурной и молельной частей полунатурной модели);
управление процессом моделирования осуществляется моделирующим алгоритмом посредством сигналов, передаваемых через операторы R^, R4H и Rflfl
сопряжение R^ и Rt„|, реализуется физически (обмен физическими сигналами), a RMH - абстрактно (путем программного моделирования);
сигнальные модели агрегатов Ам и Ам можно рассматривать как составные части общей A-схемы агрегата ПНМ, дополняющие общий модели- руюший алгоритм и реализующие внутренние операторы сопряжения RM и Re
Таймер
модельного времени
Рис.
5.11. Компоненты А-схемы ПНМ
Программная реализация агрегата А», предполагает преобразование соответствующих потоковых и сигнальных моделей функциональных процессов в алгоритмические модели, а затем - в программные.
С учетом выбранного варианта построения и организации функционирования ПНМ (см. приложение 11) приведенная обобщенная A-схема ПНМ существенно упрощается:
агрегат Ан соответствует СПО и его окружению, образуемому соответствующим сегментом ЛВС ПНМ, оператор Rii реализуется п этой ЛВС, а алгоритм Мн отсутствует;
операторы сопряжения R*,,, R,^, реализуются маршрутизатором (маршрутизаторами) и соответствующим множеством протоколов;
агрегат Аф составляют реальные (физические) источники и потребители информации, внешние по отношению к СПО, которые выполняют ряд функциональных действий, сопрягаются с ЛВС ПНМ через соответствующие устройства сопряжения (например, маршрутизаторы) и представляют собой физические модели ряда активностей из базовой иерархической модели, то есть являются реализацией подмножества потоковых и сигнальных моделей различных уровней.
Таким образом, A-схема модельной части есть <ТИ, Ам, Мм, RM, RMI)) RM*> с детализацией Ми и R - Км ^ЖМ1, vjR^i, до множества элементарных агрегатов, соответствующих абстрактно реализуемым потоковым и сигнальным моделям, имеющимся в базовой иерархической модели — рис. 5.12.
Рис.
5.12. Компоненты A-схемы
модельной части
Как отмечалось выше, потоковые и сигнальные модели, являющиеся элементами множества Мм, подлежат дальнейшей алгоритмической и программной реализации.
Алгоритмическая реализация потоковых и сигнальных моделей может быть осуществлена на основе широко известных типовых математических схем формализации /271, 274, 275/ с использованием потоковой, событийной и причинно-следственной схем задания динамики моделируемых процессов, а также схем, основанных на уравнениях движения в фазовом пространстве /213/.
Таким образом, при реализации элементов моделей уровней, составляющих агрегат Ам, имеет место цепочка преобразований "описательная модель в составе БИМ (потоковая или сигнальная) схема задания динамики математическая схема формализации алгоритмическая модель и се программная реализация".
Необходимость имитации в реальном масштабе времени приводит к тому, что выполнение всех частных моделей должно быть синхронно и синфаз- но /116, 346/, что требует полной синхронизации изменения координат в едином фазовом пространстве всех элементов ПНМ и достигается выбором соответствующего моделирующего алгоритма (вычислительного алгоритма процесса имитации), на который также возлагается задача реализации RM, RyH> Rm*
Алгоритм размещения агрегатов модельной части на рабочих станциях ЛВС является заключительным этапом синтеза структуры модельной части ПНМ. Данная задача должна решаться в стремлении к минимизации параметрических связей между агрегатами, располагаемыми на различных станциях сети, и выравниванию нагрузки на различные станции. В /67/ описана формальная постановка этой задачи, ее сведение (по аналогии с задачей зонирования сети связи в /351/) к классической NP-задаче разрезания графа, и предложен алгоритм ее решения методом случайного поиска, реализуемого коллективом вероятностных автоматов с линейной тактикой /263/. Реализация и анализ сходимости данного алгоритма описаны в /13/.
Следует учитывать, что формализация структуры модельной части ПНМ в какой-то мере аналогична объектному подходу (и отнюдь не исключает его применения» которое в данном случае весьма эффективно): абстрактные агрегаты - это аналоги объектов» а не их экземпляров» то есть в данном случае предполагается тот же подход, который использован в п. 4.2 - формализуется не структура конкретного варианта моделируемой системы, а, фактически, правила построения моделируемой системы и поведения ее компонентов. Программная реализация агрегата выполняется так, чтобы имитировать поведение всех экземпляров данного агрегата, количество которых, в свою очередь, определяется условиями проведения конкретного имитационного эксперимента. Данный эффект достигается разнесением и индексированием переменных фазового пространства экземпляров агрегата и использованием единого алгоритма имитации для агрегата (что может быть выполнено по аналогии с динамическим порождением экземпляров объектов и теми же средствами).
Так, например, по отношению к сети спутниковой связи может быть построена иерархия объектов, включающая ретрансляторы (низкоорбитальные и высокоорбитальные) и наземные станции разных вариантов. Собственно агрегатами будут только объекты нижнего уровня данной иерархии. При проведении моделирования путем варьирования исходных данных (количество и характерисгики ретрансляторов и станций и их связность) могут быть сформированы различные конфигурации сети спутниковой связи, по отношению к которым тестируется, например» СПО пункта управления сетью. Кроме того, экземпляры агрегатов могут порождаться и уничтожаться в ходе моделирования. если это предусмотрено сценарием тестирования (для приведенного выше примера — как разные варианты реконфигурации сети).
Методика проведения полунатурного моделирования с последовательным включением модулей специального ПО в состав модели
Алгоритм распределенной имитации с адаптацией к реальному масштабу времени. Исходя из описания вычислительных схем имитации, приведенного в /213/, а также рекомендаций /352,353/ и с учетом специфики имитации среды погружения СПО в интересах его КДТ в основу алгоритма распределенной имитации, являющегося инвариантным компонентом модельной части ПНМ, была выбрана динамическая абстрактно-процессная схема имитации с децентрализованным управлением структурой. Такая вычислительная схема предполагает рассмотрение агрегатов модели как объектов алгоритма имитации, а ее основными особенностями являются:
наличие переменных фазового пространства, локальных для каждого объекта и множества алгоритмов пересчета координат фазового пространства;
взаимно-однозначное соответствие между элементами фазового пространства и алгоритмами пересчета;
многофазный алгоритм пересчета координат объекта в фазовом пространстве;
порождение процессов пересчета непосредственно в алгоритмах пересчета;
порождение и уничтожения элементов фазового пространства в алгоритмах пересчета;
событийный алгоритм планирования активностей и продвижения таймера модельного времени.
Однако, поскольку данная вычислительная схема ориентирована на имитационное моделирование, ее применение для синтеза управляющего алгоритма имитации в ПНМ требует определенной модификации, а именно: введения алгоритма адаптации к реальному масштабу времени;
включения в алгоритм планирование активностей действий, связанных с реализацией прямых и обратных связей между модельной и натурными частями ПНМ.
Кроме того, специфика осуществления продвижения модельного времени с децентрализованным пересчетом временной координаты фазового пространства объектов и синхронизацией моментов свершения имитируемых событий в модельном и реальном времени потребовала разработки соответствующего механизма взаимодействия компонентов общего алгоритма имитации, выполняющихся на различных элементах распределенной вычислительной среды модельной части (узлах локальной сети). В основу разработки этого механизма были положены подходы к управлению модельным временем и обработке событий в распределенных системах имитации, описанные в /352- 366/.
Учитывая описанные в л. 5.3 схему формализации и агрегативную модель, будем называть объектами любые модели уровня и модели процессов, составляющие агрегат Лч. Каждый i-ый объект представляется парой (Xj,fj), где Xj - фазовое пространство объекта Xj= Х;|Х Xj2x...x Xj„j (где Хц - множество значений j-ой переменной фазового пространства, П{ — количество таких переменных). 1| - алгоритм пересчета координат фазового пространства i-ro элемента. Поскольку алгоритм поведения объектов в общем случае должен предусматривать многофазность вычислений, £ = Rj(f,i, fo,fin), где fji, f,2,..., f,|t - множество алгоритмов выполнения фаз, lj — количество фаз для i-ro объекта, Rj - граф управления, определяющий порядок следования фаз.
Множество алгоритмов выполнения фаз целесообразно разбить на два подмножества: {fy, j = 1,2,k} - алгоритмы выполнения фаз, предусмотренные внутренним алгоритмом поведения объекта, и {f\j, j в к+1,lj} - алгоритмы тех фаз, выполнение которых происходит вследствие поступления
сигналов от других компонентов полунатурной модели (как модельных, так и реальных).
Каждый алгоритм f(j может быть представлен в виде:
Zij,P0),
где - алгоритм вычисления фазовых координат (ф^: xtx Т Х|);
Q.j = (qij(l), qif**,q>>) - совокупность операторов порождения процессов.
Данные операторы порождают некоторые структуры данных Z,r = (af, t, D) - заявки на обработку событий, которые содержат af - идентификатор события для обработки, модельное время инициализации процесса обработки t и дополнительная информация D, выступающая в качестве исходных данных для алгоритма обработки события at-. Заявки вносятся в календарный план вычислений Z - (Z|, Z2,Zk), упорядоченный по правилу T(Z,) < T(Z|*i). Таким образом, сигнальные связи в ПНМ реализуются путем порождения и обработки заявки в Z. Если сигнальная связь несет сообщение, то оно помещается в D.
Объекты могут находиться в активном и пассивном состояниях. Активное состояние предполагает, что порожден процесс, определяемый алгоритмом поведения объекта. При отсутствии процесса объект находится в пассивном состоянии (ожидании процесса поведения).
Представление процесса функционирования полунатурной модели в виде множества взаимодействующих процессов, а также возможность влияния на поведение объектов одного агрегата модели сигналами от других агрегатов требуют предусмотреть возможность установления и снятия блокирующих условий процесса во-первых, взаимодействующим процессом, а во- вторых - управляющим воздействием от агрегатов Аи и Аф. Это может быть достигнуто посредством выделения двух типов заявок на выполнение определенной
фазы: с явным указанием модельного времени активации (a,;,t) и с неявным временем активации (ац, Pj (Х|)), где Р*(Х}) - предикат планирования.
В случае порождения заявки последнего типа данный факт рассматривается как "условное" планирование вычислительной фазы, и эта заявка помешается в кортеж неявных заявок Z*. Последний может быть представлен в виде одностороннего или двустороннего циклического списка, элементы которого помимо списковых ссылок имеют ссылку на объект, указатель фазы и указатель предиката планирования. Процедура включения в список элементов вызывается из операторов планирования t.j, являющихся последними в фазе и содержащих ссылку на предикат планирования.
Перед выбором очередной активной фазы алгоритм анализа неявных заявок G(Z*), просматривая список Z\ вычисляет предикаты планирования неявных заявок. Заявки, для которых предикат планирования имеет значение "истина", переносятся в календарный план вычислений Z (тем самым они преобразуются в заявки со временем активации tre*)-
По аналогии с /291/ список заявок Z есть список будущих событий (СБС), список заявок Z’ есть список задержанных событий (СЗС), а совокупность заявок из Z, для которых время активации совпадает с текущим значением модельного времени - список текущих событий (СТС).
Поскольку управляющие воздействия от А„ и Аф к Ам в общем случае могут не только изменять состояния имеющихся объектов, но и приводить к изменению самою состава объектов, в схеме имитации необходимо предусмотреть то, что набор объектов и (или) фазовое пространство состояний объектов агрегата Ан могут изменяться в процессе функционирования модели. Постоянными остаются набор типов объектов, типы межобъектовых связей, структура памяти, характеризующей пространство состояний объектов, и структура алгоритмов поведения объектов фиксированных типов.
Для реализации изменений в составе Ам объектов вводятся операторы порождения- исключения объектов гпп.
Вычислительная схема процесса имитации для ПНМ в описанных выше обозначениях представлена на рис. 5.13. Ее составляют:
алгоритм установления начального состава объектов (блок I), который на основании значений исходных данных (параметров полунатурного эксперимента) выполняет последовательность выловов операторов порождения объектов (ту), результатом чего является совокупность объектов определенных типов;
алгоритм инициализации переменных фазового пространства (блок 2), выполняющий определение начальных координат объектов в фазовом пространстве;
цикл моделирования, в который входят выполнение анализа неявных заявок (в ходе которого может осуществляться перенос заявок из Z в Z) (блок 3), выборка заявок из СТС (блок 5) и выполнение алгоритмов пересчета координат фазового пространства, указанных в заявках (блоки 7 и 8), проверка истинности предиката завершения моделирования (блок 9) и выполнение алгоритма адаптации к РМВ (блок 10);
алгоритм завершения работы модели (блок 11), осуществляющий уничтожение всех объектов.
Приведенная схема обеспечивает осуществление процесса имитации путем порождения и обработки событий, каждое из которых инициируется соответствующим сигналом (который может представлять собой сообщение). Алгоритмы пересчета координат объектов в фазовом пространстве составляют второй уровень общего алгоритма имитации, а вычислительная схема имитации первый.
Рис.
5.13. Вычислительная схема алгоритма
имитации модельной части ПНМ
Важнейшей частью описанной выше схемы является алгоритм адаптации процесса имитации к реальному масштабу времени, который приведен в приложении П. Там же содержится описание компонентов, реализующих данную вычислительную схему, и механизма их взаимодействия в распределенной вычислительной среде модельной части ПНМ.
Методика определения длительности этапов тестирования модулей СПО в имитируемой среде погружения. Процесс КДТ СПО в имитируемой среде погружения представляет собой управляемый динамический многошаговый процесс вида:
X**, = G(xK,иц), Uk6 Uk; k - 1,2,..., п; хо= х(0) =с, где хк - состояние СПО на k-ом шаге процесса (к-0,п), в данном случае характеризуемое количеством ошибок, имеющихся во всей совокупности модулей СПО (данная величина принципиально носит вероятностный характер); G - оператор преобразования состояния СПО за один шаг процесса; с - количество ошибок в модулях СПО до начала проведения КДТ;
Uk - управление на k-ом шаге;
Uk - пространство допустимых управлений на k-ом шаге.
Исходя из содержания процесса КДТ СПО, оператор G можно определить как совокупность двух последовательных выполняемых преобразований: G| - изменение структуры СПО, подлежащего тестированию путем добавления новых (ранее не тестировавшихся) модулей;
Оз - проведение полунатурных испытаний, фиксация отказов СПО, локализация п исправление ошибок.
Очевидно, что:
количество шагов процесса (именуемых далее этапами) п зависит от количества модулей СПО NM, то есть n = f(NM);
управлением для оператора Gi на k-ом шаге будет и( определяемое ках множество модулей СПО, "погружаемых" в среду ПНМ на k-ом шаге:
и<Пк={а(к)|, а<к)2,..., а(к)п|ч}, где a(k)j - один из модулей СПО: управление для оператора G2 на к-ом шаге будет и( определяемое как длительность этого этапа tk;
пространство допустимых управлений Uk ка каждом этапе уменьшается, и этап п с позиций выбора u0)n (а возможно - и и*2* если общий временной ресурс, выделенный на проведение КДТ, ограничен) является детерминированным, так как
где А - множество модулей СПО (IAI-N*):
Тп№) - длительность процесса КДТ.
С учетом вышеизложенного для показателя корректности СПО после проведения k-го этапа можно записать:
x,.,-K32(G,(x«, u(l,k), uft,0,
и для конечного количества ошибок в СПО Nowlc
И»»-g(U"’,U0*), .леи"'- U
/= 1
Методика проведения КДТ должна обеспечивать нахождение таких U <!> и U**2), что:
(vtf'yv 1ЯХ U0** ич,)л IЯ* U‘(2)K g(U"\ U(2))> g(U^°, и*(2)»
Таким образом, методика проведения КДТ должна содержать аппарат решения двух задач: определения последовательности тестирования модулей иФ<|), и определения длительности проведения каждого этапа КДТ U*(2>.
Первую задачу целесообразно решать статически - до начала КДТ и только на основе известных к этому моменту характеристик модулей СПО, а вторую - динамически, то есть в ходе проведения КДТ. Такой подход дает возможность:
определить последовательность погружения модулей до начала КДТ;
на основе полученного решения сформулировать план и программу проведения КДТ как совокупности действий, ориентированных на реализацию выбранной последовательности;
определение длительности каждого этапа тестирования производить непосредственно в ходе проведения КДТ, учитывая накапливаемые сведения
о динамике отказов СПО и соответствующим образом корректируя (уточняя) предыдущие решения этой задачи.
Подходы к решению задачи определения последовательности комплектования модулей СПО в ходе КДТ достаточно широко известны: нисходящая и восходящая стратегия, метод сэндвича и т. д. - см, например, /260, 345, 367/. В то же время в /260/ отмечается, что выбор конкретной последовательности в сильной степени зависит от характера тестируемого программного обеспечения и организации его разработки, поэтому данная задача в настоящей работе далее не рассматривается.
Задача определения длительности этапов проведения КДТ при известной последовательности по1ружсния модулей в имитируемую среду (среду модели) в общем случае является многокритериальной задачей оптимизации. Однако на практике в большинстве случаев общий выделяемый ресурс времени на КДТ известен, и указанная задача сводится к однокритериальной задачи оптимизации соотношения длительностей этапов с целью минимизации прогнозируемой величины N0oiic-
Если бы состав модулей СПО в ходе КДТ был неизменен, то для расчета величины Noilk могли бы быть использованы известные способы, основанные на применении разного рода аналитических моделей (как правило - экспоненциальных), отражающих зависимость корректности тестируемых про- грамм от длительности выполненного тестирования и ряда других параметров. Определение параметров таких моделей может осуществляться путем решения уравнений, полученных методом максимального правдоподобия и
предполагающих знание последовательности моментов проявления отказов в программах -/116, 340,368 - 370/ и др.
Однако для КДТ с последовательным вовлечением модулей СПО в процесс тестирования непосредственное использование моделей данного класса невозможно, ибо переход к каждому следующему этапу КД'Г противоречит основной гипотезе о характере зависимости количества ошибок от длительности тестирования и интенсивности проявления этих ошибок, использованной в экспоненциальной модели корректности ПО.
С другой стороны, при общем ограничении на длительность КДТ более важной задачей, чем собственно вычисление N0U1K, является задача выбора действий после проявления, локализации и устранения очередной ошибки. Возможными альтернативами действий являются продолжение текущего этапа КДТ, то есть продолжение тестирования СПО в имеющейся конфигурации, и переход к следующему этапу, сопряженный с погружением в среду модели одного или нескольких модулей, предусмотренных выбранной последовательностью тестирования СПО.
Тогда задача определения длительности этапа КДТ преобразуется в задачу оценки альтернатив возможных действий по тому эффекту, который (предположительно) окажет выбор каждой из них на конечную величину N0Ull(
пусть даже такая оценка будет выполнена с некоторой систематической погрешностью. В этом случае оценка первой альтернативы может вычисляться с использованием квазирегулярной модели этапа КДТ, а второй - через решение задачи оптимизации соотношения длительностей оставшихся этапов КДТ, при котором используются полученные к моменту вычисления оценок апостериорные сведения, описывающие наблюдаемую динамику выявления и исправления ошибок. Постановка такой задачи и алгоритм ее решения приведены в приложении 11.
Синтаксическая вариантность полунатурных моделей. Можно показать, что понятия синтаксической вариантности и метауправления справедливы и для полунатурных моделей, однако их трактовка существенно отличается от принятой для информационных систем, формальная модель которых описана в п. 2.1.
Не приводя формальных выражений, которые достаточно тривиальны и по своему виду во многом похожи на имеющиеся в п. 2.1, можно отметить следующие принципиальные моменты в определении и осуществлении синтаксической вариантности полунатурных моделей:
используя подход к представлению структуры организационнотехнических систем предложениями в рамках некоторой формальной грамматики /186, 213/, можно считать, что алфавит ПНМ составляют все агрегаты, входящие в ее агрегативную модель (см. п. 5.3), однако по отношению к модулям СПО имеет место расширение алфавита путем включения в него заглушек этих модулей;
по аналогии с объектами и экземплярами объектов в объектно- ориентированном подходе /162/ и учитывая различие между элементами модели и элементами, входящими в реализацию модели (как отмечалось в п. 5.3, один агрегат в общем случае имитирует поведение всех объектов моделируемой системы, в соответствие которым он поставлен - например, все узлы коммутации моделируемой сети передачи данных в реализации модели представимы одним агрегатом "узел коммутации" с областью переменных фазового пространства, индексированной по числу имитируемых узлов) указанные выше предложения описывают реализацию модели, а не конкретный вариант .модели, соответствующий тому или иному варианту объекта моделирования;
соответственно, метауправлеиие в полунатурном моделировании имеет два уровня - управление реализацией модели и управление отображением моделируемого объекта;
метауправление на первом уровне заключается в варьировании состава модулей СПО, заглушек и агрегатов модельной части, то есть в изменении синтаксиса, определяемого алфавитом ПНМ и правилами композиции символов алфавита в модели, и ограниченного описанием ПНМ, выполненным в рамках базовой иерархической и агрегативной моделей (см. п. 5.3);
метауправление на первом уровне определяется целями полунатурного моделирования как средства, направленного на достижение требуемой корректности СПО, и осуществляется исходя из планирования многошагового процесса КДТ СПО в имитируемой среде;
метауправление на втором уровне - это управление конфигурацией ПНМ, которая представима предложением в рамках текущего синтаксиса ПНМ и относится к экземплярам объектов и их взаимосвязям, то есть к заданию конкретного варианта отображаемого в модели объекта моделирования;
метауправленис на втором уровне осуществляется путем задания исходных данных, являющихся значениями параметров, характеризующих объект моделирования на момент начала процесса его имитации, и определяется планированием проведения полунатурного моделирования как многофакторного эксперимента но анализу объекта моделирования.
Таким образом, осуществление синтеза модельной части ПНМ дает возможность определить потенциальную грамматику ПНМ, а изменения в составе элементов ПНМ и значениях параметров модели могут быть описаны как варьирование синтаксиса ПНМ в рамках потенциальной грамматики, и описания моделируемого объекта в рамках этого синтаксиса соответственно.
Вышеизложенное подтверждает возможность использования единого подхода, основанного на синтаксической вариантности и применении метауправления, ко всем видам моделей, использование которых предусматривается концепцией сквозного моделирования.
Выводы по пятой главе
В качестве подхода к выбору направления ориентации организационно-методологического базиса ТПППП СПО ИУАС может быть использовано формирование ТПППП на базе концепции сквозного моделирования как процесса, поддерживающего решение как задач проектирования и разработки СПО, так и сквозного контроля его качества. Сквозное моделирование предполагает создание и применение иерархии моделей обеспечения анализа альтернатив, поддержки разработки и поддержки оценки качества, которые по своей форме являются информационными» имитационными и полунатур- ными моделями. Для эффективного применения сквозное моделирование должно быть обеспечено множеством инструментальных средств, для адаптации которых в интересах конкретных проектов СПО может быть использовано метауправление.
Наиболее сложным и важным видом тестирования СПО является комплексное динамическое тестирование, для проведения которого при создании СПО ИУАС целесообразно применять полунатурнос моделирование среды погружения СПО на технологическом моделирующем стенде организации-разработчика. Уникальность полунатурных моделей, отсутствие целостной методологии создания полунатурных моделей на базе современных средств вычислительной техники приводит к целесообразности формирования элементов методологии полунатурного моделирования среды погружения СПО с акцентом на выделение инвариантной части полунатурных моделей и технологию их создания.
Разработанная методика синтеза модельной части полунатурной модели предполагает последовательную формализацию объекта моделирования в виде базовой иерархической модели и агрегативной модели с последующим решением задачи размещения агрегатов модельной части по узлам распределенной вычислительной среды полунатурной модели. Для модельной части
полунатурной модели абстрактные агрегаты описываются как объекты, количество экземпляров которых определяется путем задания значений исходных данных для полунатурного эксперимента и может изменяться - если имитируемые процессы предполагают динамическое порождение и уничтожение экземпляров других процессов, подлежащих имитации.
Разработанная методика проведения полунатурного моделирования с последовательным включением модулей специального ПО в состав модели состоит из алгоритма распределенной имитации с адаптацией имитируемых процессов к реальному масштабу времени, и методики определения длительности этапов процесса тестирования.
Для осуществления распределенной имитации может быть использована динамическая абстрактно-процессная схема имитации с децентрализованным управлением структурой, расширенная с учетом специфики распределенной имитации в полунатурной модели и реализуемая управляющей частью алгоритма и множеством обрабатывающих частей, обеспечивающих контекст агрегатов модельной части в обшем процессе имитации.
По практическим соображениям задача определения длительности этапов КДТ преобразуется в задачу оценки решения о продолжения текущего этапа КДТ и перехода к следующему этапу по предполагаемому влиянию возможных решений на корректность СПО, достигаемую по завершении тестирования при условии ограниченности общего временного ресурса на проведение КДТ.
Синтез модельной части ПНМ дает возможность определить потенциальную грамматику ПНМ, а изменения в составе элементов ПНМ и значениях параметров модели могут быть описаны как варьирование синтаксиса ИНМ в рамках потенциальной грамматики, и описания моделируемого объекта в рамках этого синтаксиса соответственно.