Научная статья на тему 'Объектно-ориентированное моделирование автоматизированной системы интеграции открытых виртуальных лабораторных комплексов'

Объектно-ориентированное моделирование автоматизированной системы интеграции открытых виртуальных лабораторных комплексов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
156
34
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Жукова Светлана Александровна, Германюк Денис Евгеньевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Объектно-ориентированное моделирование автоматизированной системы интеграции открытых виртуальных лабораторных комплексов»

$ php-v

PHP 5.3.3-1ubuntu9.3 with Suhosin-Patch (cli) (built: Jan 12 2011 16:07:38)

Copyright (c) 1997-2009 The PHP Group

Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies

$ python2.6

Python 2.6.6 (r266:84292, Sep 15 2010, 16:22:56)

$ python3.1

Python 3.1.2 (release31-maint, Sep 17 2010, 20:27:33)

На данный момент языков для ООП множество, и у каждого есть свои преимущества и свои недостатки. Для изучения в ВУЗе наиболее всего подходит язык Java параллельно с Python, именно поэтому акцент был сделан на этих двух языках.

Литература

1. Бертран Мейер. Объектно-ориентированное конструирование программных систем + CD. Интернет-университет информационных технологий - ИНТУИТ.ру, Русская Редакция, 2005

2. http://habrahabr.ru

3. http://ru.wikipedia.org/wiki/Java

4. http://refu.ru/refs/67/15499/Lhtml

5. http://4programmers.org.ua.

УДК 004.4

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ МОДЕЛИРОВАНИЕ АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ ИНТЕГРАЦИИ ОТКРЫТЫХ ВИРТУАЛЬНЫХ ЛАБОРАТОРНЫХ КОМПЛЕКСОВ1

Жукова Светлана Александровна, к.т.н., докторант, Чайковский технологический институт (филиал) Ижевского государственного технического университета, Россия, Чайковский,

otdel it@chti.ru

Германюк Денис Евгеньевич, аспирант, Чайковский технологический институт (филиал) Ижевского государственного технического университета, Россия, Чайковский

В настоящее время в России активно ведутся работы по созданию и развитию научнообразовательной среды с использованием Интернет-технологий для поддержки процессов проведения научных исследований и образования [1]. Формирование научнообразовательной среды предполагает разработку и внедрение информационных систем, обеспечивающих тесное взаимодействие научных и образовательных ресурсов посредством глобальных вычислительных сетей, и использует методы и технологии построения распределенных открытых систем [2]. Для данных систем характерно:

• территориальная удаленность пользователей;

• использование неоднородного программного и аппаратного обеспечения;

• динамическое наращивание функциональных сервисов приложений;

• множество объектов и их распределенность;

• неоднородность ресурсов,

что и характеризует их как сложные информационные системы. В этом случае возрастает роль моделирования и исследования структуры системы.

1 Статья рекомендована к опубликованию в журнале "Информационные технологии и вычислительные системы"

90

Рассмотрим моделирование распределенной открытой системы на примере автоматизированной системы интеграции открытых виртуальных лабораторных комплексов (АС ОВЛК). Работа ведется Ижевским государственным техническим университетом в рамках ФЦП «Научные и научно-педагогические кадры инновационной России» на 20092013 годы работы по теме «Разработка модели автоматизированной системы интеграции открытых виртуальных лабораторных комплексов (АС ОВЛК)». Открытый виртуальный лабораторный комплекс (ОВЛК) представляет собой систему интеллектуальных, организационных и вычислительных ресурсов, построенную в соответствии с принципами технологии открытых систем и предназначенную для исследования в области образования, науки и бизнеса [2].

Таблица 1. Основные требования АС ОВЛК и тактики их достижения

Наименование требования Реализация Тактика

Мобильность, т.е. система должна обеспечивать возможность взаимодействия серверных компонентов, независимо от программно-аппаратной платформы. Создание механизмов для возможности использования ВЛК разными категориями пользователей на базе различной аппаратуры. Создание компонентной архитектуры в соответствии со спецификацией J2EE. Построение на основе открытых стандартов (J2EE, XML и т.д.), с возможностью работы с различными Web-серверами.

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

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

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

91

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

Приведенные в работе [2] концептуальные особенности формирования ВЛК для исследовательских задач позволили сформулировать основные требования АС ОВЛК и тактики их достижения (Таблица 1). Тактика - это проектное решение, которое влияет на достижение определенного (или нескольких показателей) требования. Совокупность принятых тактик позволяет выработать архитектурную стратегию системы.

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

Определим задачу моделирования АС ОВЛК как задачу синтеза оптимальной структуры, максимально удовлетворяющей ключевым требованиям. Проблема синтеза структуры АС ОВЛК включает: декомпозиция системы на уровни и подсистемы,

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

Формально задачу синтеза структуры системы можно описать как задачу формирования графа G(E, V), удовлетворяющего функции F

F(aj ■ Rj) ' max ,

где F- интегральный показатель достижения требований Rj,,

а; - весовой коэффициент, учитывает приоритет требования,

V- элементы структуры (программные компоненты),

E- связи между элементами структуры.

Дуги графа G(E, V) отражают зависимости или отношения между классами и ориентированы в соответствии с сообщениями и информационными потоками, передаваемые от класса к классу.

Основным способом моделирования системы выбран объектно-ориентированный метод (ООМ). Объектно-ориентированное моделирование и проектирование - это подход к решению задач с использованием моделей, основанных на понятиях реального мира. Фундаментальным элементом является объект, объединяющий структуру данных с поведением. В настоящее время посвящено множество работ, описывающих ООМ и соответствующие языки описания моделей (UML), а также примеры использования [3,4].

Задачи моделирования и анализ инструментов ООМ [1] позволили сформулировать основные этапы синтеза структуры АС ОВЛК, определить перечень моделей и соответствующих диаграмм, их назначение и цели анализа (таблица 2).

По результатам выполнения этапов синтеза структуры получено описание архитектуры АС ОВЛК в следующих представлениях: модель декомпозиции, модель размещения.

В качестве архитектурного шаблона выбрана модель распределенного приложения Model-View-Controller. Характерной чертой таких приложений является логическое разделение приложения на две и более частей, каждая из которых может выполняться на

92

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

Таблица 2. Основные этапы синтеза структуры АС ОВЛК

Наименование этапа Наименование модели/диаграммы Цель анализа модели

Постановка задачи Модель требований Use-case формирование ключевых функциональных требований АС ОВЛК; список пользователей; нефункциональные требования;

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

Диаграмма классов анализ групп атрибутов, повторяющихся в нескольких классах, анализ классов играющих одинаковую роль, оценка связности между классами на основе: анализ ассоциации, анализ сообщений между классами

Модель проекта Диаграмма взаимодействия; диаграмма размещения диаграмма классов анализ зависимости между пакетами, анализ возможности размещения пакетов на распределенных узлах; анализ возможности планирования ресурсов

Диаграмма последовательности анализ механизмов реализации защиты, хранения в БД, механизмы взаимодействия в распределенными подсистемами, возможность применения готовых паттернов для реализации механизмов

Исследование структуры Модель реализации диаграмма размещения Расчет показателей структуры и их оценка на возможность достижения ключевых требований АС ОВЛК

Сервер данных

База данных

Сервер приложений

Вычислительный узел

Рис. 1 - Клиент-серверная архитектура АС ОВЛК

93

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

На рисунке 2 представлена модульная структура АС ОВЛК в виде модели декомпозиции, построенная на основе модели требований к системе [2]. АС ОВЛК состоит из подсистем, логически объединенных в пакеты.

Рис. 2 - Модель декомпозиции АС ОВЛК

Каждый пакет включает подсистемы, которые выполняют строго отведённые им

роли:

• пакет управления открытыми виртуальными лабораторными комплексами предназначен для выполнения функций, связанных с управлением открытым виртуальным лабораторным комплексом: регистрация ВЛ и прочих ЛР, поиск, тестирование, подключение к ИП, предоставление доступа к ЛР пользователей;

94

• пакет обмена информацией предназначен для организации электронного документооборота и обмена исследовательскими данными между внешними системами;

• пакет управления экспериментами предназначен для формирования ВЛК в соответствии с целью исследования по запросу пользователя, формирования данных для экспериментов, планирования (распределения вычислительных ресурсов между ВЛК) и его выполнение, анализ полученных результатов;

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

На рисунке 3 показана диаграмма развёртывания, которая представляет собой

распределение компонентов системы между вычислительными узлами:

• сервер приложений - ядро АС ОВЛК, программно-аппаратный комплекс, на котором размещены основные подсистемы. Сервер приложений управляет процессами выполнения необходимых расчётов для проведения исследований, вычислительными ресурсами, а также обрабатывает заявки клиента.

• веб-портал - сервер, на котором установлено Web-приложение, обеспечивающее взаимодействие пользователя и АС ОВЛК, принимает запросы пользователя и возвращает результаты обработки запросов, на данном сервере размещена подсистема управления контентом.

• вычислительный ресурс - сервер либо рабочая станция, предназначен для выполнения расчётов, задание на проведение которых выдает сервер приложений.

• информационное хранилище - сервер, предназначенный для хранения ресурсов ОВЛК (информационных, организационных)

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

Рис. 3 - Диаграмма развёртывания системы

95

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

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

Литературы

1. S.A. Zhukova, S.Zh. Kozlova, I.N. Efimov, E.A. Ermolaeva Technologies of development of the open systems and their application in science and education: the review of papers and development perspective (Технологии построения открытых систем в формировании научнообразовательной среды: обзор работ и перспективы развития) // 12 международная конференция Computer Science and Information Technologies (CSIT’2010) (Информатика и Информационные технологии), Уфимский государственный авиационный технический университет (УГАТУ), С. 208-212.

2. Разработка модели автоматизированной системы интеграции открытых виртуальных лабораторных комплексов. Этап 2: «Построение концепции автоматизированной системы открытых виртуальных лабораторных комплексов» (промежуточный)» / Отчет о научноисследовательской работе (промежуточный)/ Ижевский государственный технический университет; рук. И.Н.Ефимов. - Ижевск, 2010. - 199 с. - ГР № 02.740.11. 0658

3. Арлоу, Нейштадт. UML 2 и Унифицированный процесс: практический объектно-

ориентированный анализ и проектирование. - Символ-Плюс, 2-е изд. - 2007. - с. 624

4. К. Ларман. Применение UML 2.0 и шаблонов проектирования. - Вильямс, 3-е изд. - 2007. -с.730

УДК 004.457

МОДЕЛИРОВАНИЕ ПОВЕДЕНИЯ ОБЪЕКТОВ С ПОМОЩЬЮ КОНЦЕПЦИИ

КОНЕЧНЫХ АВТОМАТОВ1

Галиаскаров Эдуард Геннадьевич, к.х.н., доцент, доцент, Ивановский государственный химикотехнологический университет, Россия, Иваново, galiaskarov@isuct.ru

Особенности дискретно-детерминированного подхода чаще всего рассматриваются на базе теории автоматов. Теория автоматов - раздел теоретической кибернетики, в котором изучаются математические модели - автоматы. Автомат перерабатывает дискретную информацию и меняет свои внутренние состояния в допустимые моменты времени. Если конечное множество объектов можно интерпретировать как алфавит, а сами объекты рассматривать как буквы этого алфавита, набор из этих букв представляет собой упорядоченную совокупность, называемую словом, то автомат представляет собой некий черный ящик, который преобразует буквы входного сигнала в буквы выходного сигнала. Конечным автоматом будем называть такой автомат, у которого множество состояний конечно [1]. Для того чтобы задать конечный автомат (finite automata), необходимо задать одношаговую функцию перехода

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1 Статья рекомендована к опубликованию в журнале "Информационные технологии и вычислительные системы"

96

i Надоели баннеры? Вы всегда можете отключить рекламу.