mdd:context_variability_modeling_for_runtime_configuration_of_service-based_dynamic_software_product_lines

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

Вступление

Pаспределенные приложения с большими данными требуют гибкие, хорошо настраиваемые и адаптируемые системы для удовлетворения новых требований заказчика, изменяющих контекст и внутреннюю сложность. Понимание контекста воспринимается как первоочередная задача в таких механизмах во время выполнения. Однако, существующие подходы не обеспечивают необходимый уровень формализации для моделирования и изменения контекста. Это очень важно для оперативной аналитики процессов: начальная конфигурация может изменяться в зависимости от различных входных данных, связанных с особенностями контекста и ограничениями модели. Контекстно-зависимые приложения могут предлагать большое количество вариантов эксплуатации и технического обслуживания аналитических процессов в качестве катализатора, интеграции и контроля между заинтересованными сторонами, а также анализа данных и поддержки принятия решений. Для того, чтобы создавать и вмешиваться в приложения с известным процессом, управление изменениями становится главной задачей для максимального повторнй эксплуатации для получения более высокого качества процессов за меньшее время. Тем не менее, хотя традиционные линии программного продукта (SPLS) успешно применялись в течение последних лет, контекстно-зависимые системы с большими данными требуют новых решений. Динамические Линии программного обеспечения (DSPLs) представляют способ создания самоуправляемых систем, через настройку конфигураций и управление изменчивостью во время выполнения. Помимо возможностей динамического измения системы, DSPLs также предоставляют другие функции для того, чтобы поддерживать неожиданные изменения, самоприспосабливающиеся свойства и автоматизированное принятие решений. Ниже предлагается подход моделирования изменчивости контекста, демонстрируется его применимость и удобство использования на примере ветровых электростанций.

Оснавная часть

Тематическое исследование : эксплуатация и обслуживание ветряных электростанций

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

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

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

1) Разнообразие данных контекста и динамичность: как уже упоминалось, каждая ветряная турбина и тип компонента может иметь свою модель данных. Мы можем различать два типа данных: статические данные, которые редко изменяются с течением времени и динамические данные, которые изменяются во времени, поскольку они становятся непредсказуемыми на практике. Таким образом, мы должны иметь возможность моделировать изменения, захватив как статические, так и динамические данные.

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

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

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

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

  • Модель изменения контекстных данных — требуется поддерживать изменчивость процесса, связанную с изменением данных, аналитических процессов и внешних факторов.
  • Динамическое поведение особенностей контекста — компоненты системы должны быть активированы / деактивированы в зависимости от применяющихся условий.
  • Множественное и динамическое связывание — настройка, реконфигурация эксплуатации и обслуживания процессов во время выполнения необходимы. Хотя каждый вариант может быть настроен в различных режимах работы, динамическая линия должна обеспечить выполнение варианта, ориентированного на множественное связывание. Кроме того, такие DSPL требуют пересвязывание механизмов, которые могут быть динамически введены для перехода от одного рабочего режима в другой.

Подход к изменчивости контекстно-зависимых систем, основанный на динамических линиях

Цель подхода — получить решение для моделирования изменчивости контекста с помощью разделения задач. Изменчивость процесса показывается с помощью нотации моделирования процесса (BPMN), моделирование изменчивости контекста выполняется с помощью моделей признаков и, наконец, онтологии используются для моделирования предметной области.

Рассмотрим изменчивость процесса. Описываемый фреймворк использует методологию “повторного использования” с помощью разбиения процесса на различные модели. Для этой цели автор различает три основных модели: (I) базовые модели, (II) фрагменты, и (III) модели изменчивости.

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

Теперь рассмотрим изменчивость контекста. Были разработаны 2 стратегии, которые могут быть использованы для представления изменения контекста систем, которые используют динамические линии.

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

Как же определить предметную область? Различные данные (переменные) контекста, могут принадлежать одной и той же особенности контекста. Точно так же, неоднозначность данных может возникать из-за одних и тех же имен переменных, которые заинтересованные стороны используют для различных целей. Такая разнородность может привести к непредсказуемому поведению при обработке данных. Поэтому нужен последовательный способ определения контекстной особенности. Также необходимо удалить неоднозначность данных, несовместимость и их несоответствие друг с другом.

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

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

Заключение

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

mdd/context_variability_modeling_for_runtime_configuration_of_service-based_dynamic_software_product_lines.txt · Last modified: 2016/12/26 12:50 by ekaterinapogodina

Политика конфиденциальности