На правах рукописи
Черноусов Антон Владимирович
Модели, методы и базовые
программные компоненты для создания
вычислительной инфраструктуры исследований
в энергетике
Специальность 05.13.18 – Математическое моделирование, численные методы и комплексы
программ
Автореферат
диссертации на соискание ученой степени кандидата технических наук
Иркутск 2008 2
Работа выполнена в Институте систем энергетики им. Л.А. Мелентьева Сибирского отделения Российской академии наук (ИСЭМ СО РАН).
Научный руководитель:
доктор технических наук, профессор Людмила Васильевна Массель
Официальные оппоненты:
доктор технических наук, профессор Николай Николаевич Новицкий кандидат технических наук Сергей Владимирович Бахвалов
Ведущая организация: Институт вычислительного моделирования Сибирского отделения Российской академии наук (ИВМ СО РАН), г. Красноярск
Защита диссертации состоится 25 марта 2008г. в 11 часов на заседании диссертационного совета Д003.017.01 при Институте систем энергетики им.
Л.А. Мелентьева по адресу: 664033, Иркутск-33, ул. Лермонтова, 130, к. 355.
С диссертацией можно ознакомиться в библиотеке Института систем энергетики им. Л.А. Мелентьева СО РАН Автореферат разослан 22 февраля 2008 г.
Ученый секретарь диссертационного совета доктор технических наук, профессор А.М.Клер
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность Существует объективная необходимость в фундаментальных междисциплинарных исследованиях системных проблем развития и функционирования систем энергетики и топливно-энергетического комплекса (ТЭК). Около лет Институт систем энергетики им. Л.А.Мелентьева СО РАН (ИСЭМ СО РАН) занимается такими исследованиями, основными инструментами исследований являются математическое моделирование и вычислительный эксперемент. Для этих целей разработано большое количество программных комплексов (ПК). В настоящее время остро стоит вопрос о сохранении уникальных ПК, воспроизведение которых в современных условиях практически нереально по техническим или экономическим причинам, требуется их адаптация, создание ПК нового поколения и их интеграция в вычислительные сети.
Традиционно для исследований направлений развития ТЭК в ИСЭМ СО РАН разрабатывались пакеты прикладных программ и информационные системы. Постановки задач для автоматизации этих исследований формировались в 60-70-х годах XX века работами ученых Л.А. Мелентьева, А.А. Макарова, А.П. Меренкова, Ю.Д. Кононова, Л.Д. Криворуцкого, Б.Г. Санеева и др. Были реализованы версии программного обеспечения под руководством Э.Н. Яськовой, Г.Н. Волошина, Г.Н. Антонова, Л.В. Массель и др.
Проблема унаследованного программного обеспечения стала наиболее актуальной в связи с появлением современных средств и методов по созданию Web-ориентированных распределенных приложений. Моральное устаревание технической базы, необходимость замены системного ПО, разработка нового ПО на основе устаревших технологий, отсутствие документации и старение научного коллектива создает потенциально опасную ситуацию, способную замедлить, а в некоторых случаях и полностью остановить научные разработки.
Под унаследованным ПО (legacy systems, унаследованные системы) следует понимать системы или комплексы, которые перестали соответствовать изменившимся со временем потребностям, но, тем не менее, продолжают эксплуатироваться ввиду значительных финансовых, организационных, технических и прочих затруднений, возникающих при попытке их замены. Унаследованные системы базируются на отживших технологиях, архитектурах и платформах, а также используют морально устаревшее программное и информационное обеспечение.
При проектировании таких систем в свое время не предусматривались возможности их постепенного совершенствования и интеграции в новые, более производительные системы. Для подавляющего большинства из них характерны монолитность, закрытость и значительные сложности при внесении изменений.
Сегодня к разряду унаследованных можно причислить любые системы, снятые с производства ведущими компаниями мира и имеющие тенденцию быстрого превращения в тяжкое бремя для каждой владеющей ими организации. От них нельзя отказаться, хотя они значительно снижают производительность всех связанных с ними бизнес-процессов.
Проблемами разработки программного обеспечения в свое время занимались: Д. Кнут, сформулировавший многие методы реализации алгоритмов, Э. Дейкстра, поднявший вопросы документирования и отладки программного обеспечения, а также явившийся основоположником идей параллелизма, Г. Майерс, посвятивший ряд своих работ надежности ПО. Отметим, что вопросы разработки объектно-ориентированного подхода к созданию ПО, компонентных технологий, распределенных вычислений рассмотрены в работах Г. Буча, И. Якобсона, Дж. Румбау, Э. Гаммы, Н. Вирта, Р. Орфали и др.
На рубеже XXI века во всем мире остро встали вопросы, связанные с поддержанием и адаптацией унаследованного ПО, и, в связи с этим, нельзя не отметить неоценимый вклад в постановку и решение этих вопросов таких ученых, как: Ф. Брукс, М. Фаулер, Дж. Кериевски, К. Касперски, Р.К. Мартин, А.П. Ершов, В.И. Легоньков, М.М. Горбунов-Посадов. В ИСЭМ СО РАН вклад в развитие этого направления внесли Л.В. Массель, Е.А. Болдырев, Д.В. Подкаменный и др.
Работы перечисленных выше авторов являются основой для проведения интеграции ПО и основой для создания интеграционных сред. Одной из таких сред является предложенная Л.В. Массель ИТ-инфраструктура научных исследований. Под ИТ-инфраструктурой понимается совокупность: технических и программных средств, телекоммуникаций и информационной базы научных исследований; технологий их разработки и использования; стандартов, как внутренних, так и внешних, для разработки информационных и программных продуктов в области исследований в энергетике, обмена ими и их представления на информационный рынок.
Такая инфраструктура, с одной стороны, является интеграционной информационной и вычислительной средой для проведения исследований в энергетике. С другой стороны, создаются предпосылки для поэтапного перехода:
к созданию распределенных баз данных и программных комплексов; к распределению и распараллеливанию вычислений; к созданию Web-ориентированных программных комплексов (вычислительных серверов); к оказанию информационных услуг на основе наукоемких информационных и программных продуктов (создание Web-служб и Web-сервисов).
Термин распределенная подчеркивает ориентацию на работу в сетях, как локальных, так и глобальных, с соблюдением мировых стандартов; термин вычислительная обозначает ориентацию на поддержку математического моделирования и вычислительного эксперимента, которые являются основными инструментами исследований в энергетике, термин телекоммуникационная отражает технические аспекты ИТ-инфраструктуры.
В последнее время все более широкое распространение получает деятельность, связанная с предоставлением услуг в области информационных технологий, называемая аутсорсинг. В широком смысле слова аутсорсинг (от англ. Outsoursing) деятельность, связанная с передачей ряда функций, не являющихся профильными для данного предприятия или организации, другому предприятию, организации или лицам, являющимся реальными носителями квалификации, русский аналог этого термина ИТ-услуги.
Традиционно ИСЭМ СО РАН занимался предоставлением ИТ-услуг, выполняя различные расчеты и обоснования с использованием авторских программных продуктов и баз данных по заказам правительственных органов и энергетических организаций. Создание информационной и вычислительной инфраструктуры на основе современных информационных технологий позволяет выполнять оказание ИТ-услуг на современном уровне, без передачи своих программных продуктов, обеспечивая пользователям (заказчикам) доступ к сервисам, созданным на основе авторских программных продуктов, и их экспертную поддержку.
Актуальность создания ИТ-инфраструктуры исследований в энергетике обуславливается:
• мировыми тенденциями развития информационных технологий, т.е. использованием Internet не только как связующей и информационной среды, но и как среды программирования; созданием вычислительных ресурсов в Internet и др.;
• необходимостью использования современных информационных технологий для научных исследований (в нашем случае – в энергетике), с целью повышения эффективности этих исследований и расширения сферы применения результатов исследований, в том числе с помощью Internet;
• необходимостью разработки новых и адаптации унаследованных ПК для исследований в энергетике с целью оказания ИТ-услуг через Internet.
Одним из компонентов ИТ-инфраструктуры является вычислительная инфраструктура. Вычислительная инфраструктура научных исследований это взаимосвязанная совокупность программных и аппаратных средств, предоставляющих информационные и вычислительные услуги, необходимые для проведения научных исследований. В зависимости от решаемых задач можно выделить инфраструктуру отдела, института, научного центра и т.д.
Создание распределенной вычислительной среды в рамках ИТ-инфраструктуры является предпосылкой для перехода к распределенным вычислениям. Вычисления в распределенной вычислительной среде могут осуществляться как за счет распараллеливания алгоритмов, так и за счет распараллеливания подзадач, образующих иерархическую структуру задачи.
Целью работы является разработка методов, моделей и базовых системных программных компонентов для создания современной вычислительной инфраструктуры исследований в энергетике, обеспечивающей переход к новой технологии исследований и оказанию ИТ-услуг через Internet.
Для достижения поставленной цели необходимо решить следующие задачи:
1. Анализ проблем создания вычислительной инфраструктуры научных исследований и технологии ее построения.
2. Разработка методического подхода к построению вычислительной инфраструктуры исследований в энергетике.
3. Исследование подходов к разработке платформеннонезависимых Webприложений, доступных через Internet.
4. Проектирование и реализация базовых системных программных компонентов для быстрой разработки Web-приложений (паттернов).
5. Разработка методики проектирования и реализации компонентов вычислительной инфраструктуры в виде Web-приложений на основе вновь создаваемых ПК.
6. Разработка методики проектирования и реализации компонентов вычислительной инфраструктуры в виде Web-приложений на основе унаследованных ПК.
7. Применение предложенных методов, моделей и базовых системных программных компонентов для реализации Web-приложений для исследований в энергетике и исследований по грантам РФФИ и РГНФ.
Методами и средствами исследования являются: методы системного и прикладного программирования, методы объектного подхода, методы проектирования баз данных и информационных систем.
Новизну составляют следующие положения:
1. Впервые предлагается методический подход к созданию вычислительной инфраструктуры исследований в энергетике, базирующийся на сервисориентированной архитектуре (SOA) и объединяющий как вновь создаваемые Web-сервисы, так и реализованные на основе адаптации унаследованных ПК.
2. Разработаны информационные модели вычислительной и телекоммуникационной инфраструктур, поддерживающих ИТ-инфраструктуру исследований в энергетике, и модель современного расширяемого Web-приложения.
3. Предложена авторская методика создания Web-ориентированных современных программных комплексов (приложений) с расширяемой функциональностью для исследований в энергетике.
4. Разработаны базовые системные программные компоненты, облегчающие создание Web-ориентированных прикладных ПК.
5. Предложена технология разработки современных программных комплексов (приложений) для исследований в энергетике, имеющих возможность быстрой адаптации для предоставления сервиса в Internet или в составе систем, реализованных в концепции SOA.
На защиту выносятся:
1. Информационные модели вычислительной и телекоммуникационной инфраструктур.
2. Информационная модель современного расширяемого Web-приложения.
3. Методика создания Web-ориентированного приложения.
4. Технология реализации расширяемых Web-приложений.
5. Технология создания современного Web-приложения, имеющего возможность быстрой адаптации для предоставления сервиса в Internet или в составе систем, выполненных согласно SOA.
Практическая значимость. Результаты работы применены:
• При выполнении проекта №2003-3 программы Интеграционных фундаментальных исследований СО РАН Методы, технологии и инструментальные средства создания вычислительной инфраструктуры в Internet (2003 – 2004 гг.).
• При выполнении работ по грантам: РФФИ № 04-07-90401; РГНФ № 04гг.); РФФИ № 07-07-00265а; РГНФ № 07-02-12112в (2007 – 2009 гг.).
• При проведении реинжиниринга телекоммуникационной инфраструктуры сети ИСЭМ СО РАН и выполнении проекта СО РАН Создание телекоммуникационной распределенной вычислительной инфраструктуры научных исследований: разработка методических основ и их применение для исследований в энергетике в рамках НИР Интегрированные вычислительные среды, сети и информационные технологии для обеспечения научных исследований в области энергетики, гос. рег. номер 01.200. Апробация работы. Результаты работы докладывались на IX Байкальской Всероссийской конференции Информационные и математические технологии, г. Иркутск, 2004 г.; X Байкальской Всероссийской конференции Информационные и математические технологии в науке, технике и образовании, г. Иркутск, 2005 г.; XI Байкальской Всероссийской конференции Информационные и математические технологии в научных исследованиях, г. Иркутск, 2006 г.; XII Байкальской Всероссийской конференции Информационные и математические технологии в науке и управлении, г. Иркутск, 2007 г.; Международной конференции Вычислительные и информационные технологии в науке, технике и образовании, г. Павлодар (Казахстан), 2006 г.;
Международная конференции Информационные технологии в энергетике, Партенит (Крым, Украина), 2006 г.; XXXV, XXXVI и XXXVII конференциях молодых ученых ИСЭМ СО РАН, г. Иркутск, 2005, 2006, 2007 гг.; 2-ой региональной зимней школе–семинаре аспирантов и молодых ученых, г. Уфа, г.; IX Международной Четаевской конференции Аналитическая механика, устойчивость и управление движением, г. Иркутск, 2007 г.; IX Всероссийской конференции Современные методы математического моделирования природных и антропогенных катастроф, г. Барнаул, 2007 г.; XXXIV Международной конференции Информационные технологии в науке, социологии, экономике и бизнесе, Гурзуф (Крым, Украина), 2007 г., а так же докладывались и обсуждались на заседаниях секции и Ученого Совета ИСЭМ СО РАН.
Личный вклад. Результаты, составляющие новизну и выносимые на защиту, получены лично автором.
Публикации. По теме диссертации опубликовано 14 работ, три в реферируемых журналах, рекомендованных ВАК по специальности. Помимо этого, опубликована серия статей (7 статей) на тему создания Web-приложений в русской редакции журнала LinuxFormat.
Объем и структура работы. Диссертация состоит из введения, трех глав, заключения, списка литературы из 114 наименований и 2-х приложений общим объемом 158 страниц.
ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ
Во введении обосновывается актуальность работы. Ставятся цели и задачи исследования. Приводятся основные положения работы.
В первой главе анализируется специфика предметной области научных исследований. Определяется область комплексных исследований в энергетике, которой является топливо- и энергообеспечение жизнедеятельности человеческого общества. Эта сфера (энергетическое хозяйство, энергетика) включает предприятия по добыче и переработке природных энергетических ресурсов, средства преобразования и транспорта (передачи) энергоносителей (и энергии), а также потребителей топлива и энергии.
В настоящее время объектом комплексных исследований в энергетике являются: энергетические технологии (энергетические процессы и установки);
системы энергетики и управления ими; энергетические комплексы и управление ими. Задачей исследований энергетических технологий является комплексный сравнительный анализ эффективности (термодинамической, экономической, экологической) возможных и целесообразных масштабов использования различных энергетических процессов и установок в энергетике. Указанные объект и предмет исследований энергетики обуславливают их большое многообразие и трудоемкость. Общим же для всех исследований энергетики является необходимость использования системного подхода как научной методологии исследования сложных объектов, математического моделирования и вычислительного эксперимента как основного инструмента исследований. Для этих целей в ИСЭМ СО РАН разрабатываются ПК.
В ряде случаев ПК используются совместно, например, в рамках единого вычислительного эксперемента в отделе живучести и безопасности систем энергетики ИСЭМ СО РАН активно используются: ПК Нефть и газ России для исследования проблем живучести больших трубопроводных систем, ПК Корректива для проведения индикативного анализа возможных состояний энергетики с позиций энергетической безопасности (ЭБ), ПК ИНТЭК для исследований направлений развития ТЭК с учетом требований ЭБ и тд.
Анализируются проблемы сохранения корпоративных знаний в области исследований в энергетике, внимание акцентируется на проблемах сохранения методов, алгоритмов, программных комплексов.
Проанализирована тенденция изменений требований к программному обеспечению и сформулированы отличительные черты ПК нового поколения:
• иерархическая многослойная архитектура, предусматривающая использование серверов приложений и серверов БД;
• ориентация на работу в вычислительных сетях, как локальных, так и глобальных;
• расширяемость ПО (в его современной трактовке).
В любую программу в процессе ее сопровождения можно внести изменения, но в одни они вносятся значительно проще, чем в другие. Обладающее свойством расширяемости (в современной трактовке) ПО при добавлении новых функций требует только написания и компиляции кода, реализующего новую функциональность, тогда как при классическом подходе, в большинстве случаев, требуется значительная модификация существующего кода для поддержки новой функциональности и полная перекомпиляция системы.
Вслед за этим анализируются проблемы интеграции программного обеспечения, где особо выделены проблемы доступности исходного кода ПК, реализации алгоритмов и интеграции по данным.
Далее в работе обосновывается выбор технологий GRID, SOA и XML, как современных технологий для интеграции программного обеспечения.
В заключение первой главы на основании изложенного материала формулируется постановка задачи диссертационной работы.
Во второй главе автором дается определение вычислительной инфраструктуры научных исследований, под которой понимается взаимосвязанная совокупность программных и аппаратных средств, предоставляющих информационные и вычислительные услуги, необходимые для проведения научных исследований.
Вычислительная инфраструктура это основа для полноценной работы ИТ-инфраструктуры. Вычислительная инфраструктура является распределенной, децентрализованной и состоит из независимых программных комплексов, каждый из которых решает конкретную задачу. Особенностью вычислительной инфраструктуры является то, что реализация отдельных ПК может быть выполнена с применением различных технологий и языков программирования.
Выделяются три уровня ПК, образующих вычислительную инфраструктуру: локальные, сетевые и Web-ориентированные. Сетевые и Web-ориентированные ПК должны предоставлять пользователям удаленный (сетевой) доступ к реализованным методам на базе сервис-ориентированной архитектуры (SOA). Следствием этого требования авляется необходимость обеспечить все компоненты вычислительной инфраструктуры сетевыми интерфейсами для интеграции в ИТ-инфраструктуру.
Согласно фрактальной стратифицированной модели, предложенной Л.В.
Массель1, вычислительная инфраструктура графически может быть представлена в виде совокупности вложенных сферических оболочек (слоев), определяемой тройкой {V, F, G}, где V – множество слоев, F – множество отображений, G – множество инвариантов. Ее фрагмент (в виде конуса) приведен на рис. 1.
Рис. 1. Фрактальная стратифицированная модель вычислительной инфраструктуры Вычислительная инфраструктура V расслаивается (стратифицируется) на средства организации доступа (VA ), средства поиска (VS ) и вычислительA S ные мощности (VC ). Вводятся отображения слоев: FS : VA VS, FC : VS VC, FC : VA VC. Инвариантами (G) являются цели поддержки системных исследований в энергетике.
Все инструментальные средства делятся на поддерживающие конкретный слой и обеспечивающие отображения между слоями (табл. 1). Рассмотрим пример: пользователь подключается к вычислительной инфраструктуре с помощью средств поддержки, которыми могут являться VPN-сервера или Internet-шлюзы (зависит от конфигурации вычислительной инфраструктуры). Переход из слоя VA в слой VS осуществляется благодаря средству отображения, в качестве которого могут выступать прокси-сервер или VPN-сервер.
На уровне средств поиска VS пользователь получает информацию о необходимом ресурсе в средствах поддержки, таких как: UDDI-сервис, LDAP-сервис или Служба каталогов (AD), переходит на уровень вычислительных мощноМассель Л.В. Фрактальный подход к построению информационных технологий / Л.Д. Криворуцкий, Л.В. Массель // Информационная технология исследований развития энергетики. Новосибирск:
Наука. Сиб. Изд. фирма РАН, 1995. с. 40-67.
стей, где и получает доступ к Web-сервисам. Отображение в слой VC всегда осуществляется с помощью DNS-сервиса как единственного вида средств отображения на данном уровне вычислительной инфраструктуры, вне зависимости от конфигурации.
VPN-сервера, Internet- FS : VA VS Прокси-сервера, сервис или Служба каталогов Вычислительные серве- FC : VA VC Репозитарий ра, сервера приложений, Web-сервисы, Web-сервера и Web-приложения Далее в главе описываются принципы работы основных средств отображения и поддержки вычислительной инфраструктуры и их взаимосвязь, акцентируется внимание на том, что вычислительная инфраструктура не может существовать без телекоммуникационной инфраструктуры, которая обеспечивает ИТ-инфраструктуру средствами и механизмами для распределенной (сетевой) работы.
Телекоммуникационная инфраструктура это совокупность линий связи, аппаратно-программных средств, сооружений, средств связи и специального ПО, основное назначение которой состоит в организации безопасной, надежной среды передачи информации, ее мониторинга и протоколирования.
Телекоммуникационная инфраструктура графически может быть представлена с помощью фрактальной стратифицированной модели в виде совокупности вложенных сферических оболочек (слоев), определяемой тройкой {T, F, G}, где T – множество слоев, F – множество отображений, G – множество инвариантов.
Телекоммуникационная инфраструктура T, расслаивается (стратифицируется) на телекоммуникационные сервисы и услуги (TS ), телекоммуникационное оборудование (TE ) и коммуникации (TC ). Вводятся отображения слоев:
FE : TS TE, FC : TE TC, FC : TS TC. Инвариантами (G) являются цели поддержки вычислительной инфраструктуры.
Телекоммуникационные сервисы и услуги представляют собой совокупность сервисов по сбору информации о сетевой активности, сервисов авторизации, сервисов обеспечения безопасности, сервисов обеспечения связью, в том числе и цифровой телефонии (VoIP).
Как и в случае с вычислительной инфраструктурой, средства телекоммуникационной инфраструктуры делятся на поддерживающие конкретный слой и обеспечивающие отображения между слоями. Далее в главе описываются способы работы и взаимодействия отдельных средств и их совокупности.
На основании вышеизложенных моделей вычислительной и телекоммуникационной инфраструктур предложен методический подход к разработке и интеграции современного программного обеспечения.
Необходимость методического подхода обусловлена все возрастающей сложностью разработки прикладных ПК, соответствующих требованиям современных информационных технологий. Для облегчения этого процесса предлагается разработать технологию создания современных ПК и методики их построения; выделить системные программные компоненты, реализующие паттерны (шаблоны) типовые программные решения, которые рекомендуется использовать как базовые при разработке прикладного ПО.
Методический подход включает:
• модель расширяемого Web-приложения, основанную на таких паттернах, как: MVC, Command, Factory (см. рис. 2);
• методику создания расширяемого Web-приложения, включающую следующие этапы: определение целевой группы пользователей создаваемого Web-приложения, ознакомление с предметной областью, составление вариантов использования (полных прецедентов use cases), составление бизнес-процессов, проектирование модели данных, проектирование структуры классов в терминах UML, реализация бизнес-объектов, реализация БД, реализация команд, реализация Web-интерфейса, конфигурирование, комплексное тестирование.
• технологию разработки современных программных комплексов.
Рис. 2. Модель расширяемого Web-приложения В свою очередь предложенная технология разработки современных программных комплексов включает:
• метод загрузки внешних данных, основанный на XML и XSLT;
• методику улучшения представления кода, включающую следующие правила: разбиение кода на модули по функциональному признаку; переименование каждого модуля по принципу имя назначение модуля ; создание и включение в модули информационных блоков; разделение функций и процедур с помощью разделительного блока; выделение функций и процедур; наименование переменных и процедур; правила объявления переменных и констант; комментирование; форматирование комментариев.
• двухуровневое расположение контроллеров (рис. 3), которое позволяет значительно упростить интеграцию в новые системы и реализацию новых протоколов работы приложения;
Рис. 3. Схема двухуровневого расположения контроллеров.
Реализация базовых системных программных компонентов, разработанных автором и предложенные для использования описываются в следующей главе.
В третьей главе отмечается, что основой функционирования вычислительной инфраструктуры является эффективная телекоммуникационная инфраструктура. В частности, рассматриваются особенности проведения реинжиниринга телекоммуникационной инфраструктуры сети ИСЭМ СО РАН в рамках проекта СО РАН Создание телекоммуникационной распределенной вычислительной инфраструктуры научных исследований: разработка методических основ и их применение для исследований в энергетике и приведение ее в соответствие с моделью телекоммуникационной инфраструктуры, предложенной во второй главе. Работа выполнялась автором самостоятельно, в некоторых случаях с привлечением вспомогательного персонала под руководством автора.
Важнейшим итогом проведения реинжиниринга телекоммуникационной инфраструктуры ИСЭМ СО РАН является новая структура локальной вычислительной сети, ядро которой показано на рис. 4, где: A сервер FreeBSD Proxy/DNS (switcher); B сервер Windows 2003 БД Библиотеки, электронный каталог; C сервер FreeBSD Mail/DNS внешний почтовый сервер (rstmail); D сервер FreeBSD Mail внутренний почтовый сервер (mailrock); E CISCO WS-C3560G-24TS-S (gridstreet); G CISCO WS-C3560G-24TS-S (crossstreet); L сервер FreeBSD Proxy/Mail/DNS резервный шлюз; M CISCO 2948G-L3 (mainstreet); N сервер FreeBSD Web (www); V оборудование доступа к сетям VoIP; W сервер Windows 2003 DomainController; 1, линии доступа в Internet внешние каналы; 4 совокупность линий доступа к абонентскому оборудованию; 14 совокупность линий доступа к GRID серверам; 16 совокупность линий доступа к коммутаторам сети; 2,3,5-7,9линии доступа к сетевым узлам.
Рис. 4. Ядро телекоммуникационной инфраструктуры ИСЭМ СО РАН Далее в работе описывается реализация базовых системных программных компонентов (паттернов) при построении Web-приложений. Рассмотрены различные стратегии реализации центрального паттерна Модель-ВидКонтроллер, подходы к созданию Команд и основанный на этом подход к реализации Фабрики команд. Также рассмотрены вопросы передачи информации, оповещения и управления доступом к функциональности в рамках Web-приложения.
Предложено использовать типовые компоненты (паттерны), разработанные автором: компонент авторизации, доступа к данным, поддержки сессионности и фабрику команд. В работе выполнено описание ряда технических вопросов применения паттернов для создания вышеперечисленных компонентов и основных программных решений: использование сессий, фильтров, принципы построения пулов подключений к СУБД, средства и методы создания Web-сервисов в архитектуре SOA.
Отмечается, что в результате выполнения большинства исследований создаются программные комплексы, которые являются промышленными или коммерческими продуктами, или близки к этому. Так, на форуме Сибирская индустрия информационных систем, проходившем в г. Новосибирске в марте 2005 г., ИСЭМ СО РАН были представлены 16 таких программных комплексов. Кроме этого, имеется ряд программных разработок, которые являются научными прототипами, но могут быть доведены до уровня коммерческих и промышленных продуктов.
Проведен анализ имеющихся ПК с целью выявления претендентов для адаптации. Отмечается высокий уровень готовности ряда программных комплексов, в частности, ПК ИНТЭК, ПК Нефть и газ России в отделе живучести и безопасности систем энергетики, ПК Ангара в отделе трубопроводных систем, ПК АНАРЭС в отделе электроэнергетических систем.
Рассматривается применение предложенных во второй главе методик при адаптации унаследованного ПО на примере ПК ИНТЭК2. Программный комплекс ИНТЭК создавался для исследования развития ТЭК с учетом требований энергетической безопасности. В ИНТЭК используется решение общей задачи линейного программирования. В качестве унаследованного программного обеспечения выступает решатель общей задачи линейного программирования, реализованный на языке Fortran.
Программный комплекс ИНТЭК спроектирован и реализован в трехуровневой архитектуре клиент-сервер. Первый уровень это уровень интерфейса пользователя, фактически соответствует компонентам Вид и Контроллер в архитектуре MVC. Второй уровень это уровень логики предметной области, реализующий основную функциональность приложения, соответствует компоненту Модель в архитектуре MVC. На этом уровне реализованы функции сервера для интерфейса пользователя и клиента для третьего уровня уровня ресурсов. На этом уровне функционируют SQLсервер Interbase, унаследованные системы. Взаимодействие между первым и вторым уровнями организовано с помощью технологии RMI, между вторым и третьим с помощью языка SQL.
Автор принимал участие в заключительных этапах создания Web-прилоРеализация ПК ИНТЭК была выполнена под руководством Л.В. Массель Е.А. Болдыревым при участии: В.В. Трипутиной, А.П. Демьянчика, А.В. Черноусова.
жения на основе ПК ИНТЭК, полученный опыт был применен при выполнении работ, описанных далее.
Рассматривается применение предложенных методик при разработке Webсервиса для решения задач нелинейной оптимизации, вычислительным ядром которого являлся программный комплекс (ПК), разработанный сотрудниками отдела прикладной математики3 ИСЭМ СО РАН. Работа выполнялась в рамках проекта ИСЭМ СО РАН Создание телекоммуникационной распределенной вычислительной инфраструктуры научных исследований: разработка методических основ и их применение для исследований в энергетике.
Адаптируемый ПК относился к категории унаследованного программного обеспечения в связи с тем, что не был разработан в соответствии с требованиями современных открытых систем, и требовал адаптации для использования в современной ИТ-инфраструктуре. Такая адаптация была выполнена4, в рамках этой работы были реализованы 58 классов общим объемом строк, исключая коментарии и документацию, из них: 5 абстрактных классов и 7 классов интерфейсов. Пользовательский интерфейс был реализован в виде 15-и классов-шаблонов для Web-отображения (JSP) общим объемом 500 строк.
Авторские методики и базовые системные программные компоненты использовались при выполнении проекта, поддержанного грантом РФФИ № 04-07-90401 Инструментальные средства поддержки математического моделирования, доступные пользователям с применением Internet-технологии, выполненного в 2004 – 2006 годах.
Автор принимал участие в разработке стандартов для обмена данными с использованием языка XML и построении инструментальной среды для поддержки новой технологии математического моделирования. Основными компонентами инструментальной среды являются: сервер управления процессом вычисления; сервер доступа к вычислителям; посредник вычислителя; вычислитель (схема взаимодействия компонентов среды представлена на рис.
5);
Ктоме того, авторские методики и базовые системные программные компоненты использовались при выполнении проекта, поддержанного грантом И.В. Мокрым под руководством О.В. Хамисова Реализация выполнена под руководством Л.В. Массель А.В. Черноусовым, Д.А. Фартышевым, А.Г.
Масселем, во взаимодействии с И.В Мокрым.
Рис. 5. Взаимодействие основных компонентов программно-инструментальной системы.
РГНФ № 04-02-271а Разработка методов и технологии моделирования динамических систем в экономике, выполненного в 2004 – 2006 годах.
Была выполнена разработка программно-инструментальной среды, состоящей из следующих компонентов: cервис управления процессом вычислений, cервис доступа к вычислителям, посредник вычислителя, вычислители, сервис доступа к данным, коммуникационный сервис, сервис авторизации.
Для целей работ по грантам РФФИ и РГНФ автором были реализованы 98 классов общем объемом более 4500 строк, исключая коментарии и документацию, из них: 12 абстрактных классов и 8 классов интерфейсов. Пользовательский интерфейс был реализован в виде 21-го JSP общим объемом более 750 строк.
Предложенная методика создания Web-ориентированного приложения применена также при выполнении НИР по созданию Системы управления ИТресурсами ИСЭМ СО РАН под руководством автора. Одним из результатов ее выполнения является разработка прототипа Web-приложения системы управления ИТ-ресурсами, как одного из компонентов системы мониторинга телекоммуникационной инфраструктуры.
Актуальность проведения этой НИР в ИСЭМ СО РАН определяется необходимостью создания инструментов управления и поддержки работоспособности существующих и вводимых в эксплуатацию ИТ-ресурсов и уменьшения рисков, связанных с временем простоя ИТ-ресурсов.
В первой версии системы реализованы 15 классов общим объемом строк, исключая коментарии и документацию, и пользовательский интерфейс в виде 18-и JSP общим объемом 850 строк.
Рассмотрены возможности интеграции в вычислительную инфраструктуру перспективных ПК (ПК Нефть и газ России, ПК Ангара, ПК АНАРЭС ).
В заключении отмечается, что автором в ходе выполнения диссертационной работы получены следующие основные результаты:
• Проведен анализ проблем создания вычислительной инфраструктуры научных исследований в энергетике и технологий ее построения. Обосновано использование SOA для создания вычислительной инфраструктуры.
• Предложен методический подход к построению вычислительной инфраструктуры исследований в энергетике. Разработаны информационные модели вычислительной и телекоммуникационной инфраструктур, поддерживающих ИТ-инфраструктуру исследований в энергетике.
• Предложены модель современного расширяемого Web-приложения и подход к разработке платформеннонезависимых Web-приложений с ее использованием.
• Выполнены проектирование и реализация базовых системных программных компонентов (паттернов) для быстрой разработки Web-приложений.
• Разработана методика проектирования и реализации современных расширяемых Web-приложений на основе вновь создаваемых ПК как компонентов вычислительной инфраструктуры.
• Предложена методика адаптации унаследованных ПК и реализации Webприложений на их основе в виде компонентов вычислительной инфраструктуры.
Предложенные методы, модели и базовые системные программные компоненты применены для реализации Web-приложений для исследований в энергетике и исследований по грантам РФФИ № 04-07-90401, РГНФ № 04-02гг.); РФФИ № 07-07-00265а, РГНФ № 07-02-12112в (2007 – 2009 гг.).
Полученные результаты были применены при выполнении проекта №2003программы Интеграционных фундаментальных исследований СО РАН Методы, технологии и инструментальные средства создания вычислительной инфраструктуры в Internet (2003 – 2004 гг.), а также при проведении реинжиниринга телекоммуникационной инфраструктуры сети ИСЭМ СО РАН и выполнении проекта СО РАН Создание телекоммуникационной распределенной вычислительной инфраструктуры научных исследований: разработка методических основ и их применение для исследований в энергетике в рамках НИР Интегрированные вычислительные среды, сети и информационные технологии для обеспечения научных исследований в области энергетики, гос. рег. номер 01.200.116491.
1. Черноусов А.В. Архитектура инструментальной среды для поддержки интерактивной технологии построения динамических моделей / Л.В. Массель, А.Ю. Горнов, Е.А.
Болдырев, С.В. Бахвалов, А.Н. Копайгородский, А.В. Черноусов // Вычислительные технологии т. 9(3), 2004. С. 150-155.
2. Черноусов А.В. Интеграция унаследованных программных комплексов в ИТ-инфраструктуру научных исследований / Л.В. Массель, А.В. Черноусов // Вестник ИрГТУ №2(26), т.3, 2006. С. 25-29.
3. Черноусов А.В. ИТ-инфраструктура научных исследований: методологический подход и реализация / Л.В. Массель, Е.А. Болдырев, Н.Н.Макагонова, А.Н. Копайгородский, А.В. Черноусов // Вычислительные технологии т. 11, специальный выпуск, 2006. С. 59-68.
4. Черноусов А.В. Компонентный подход к разработке ИТ-инфраструктуры системных исследований в энергетике / Л.В. Массель, А.Н. Копайгородский, А.В. Черноусов // Информационные технологии в науке, социологии, экономике и бизнесе / Приложение к журналу Открытое образование / Материалы XXXIV Международной конференции, Украина (Ялта-Гурзуф). М.: МГАПИ, 2007. С. 131-134.
5. Черноусов А.В. Обеспечение безопасности при создании сервисов в Internet. / А.Н.
Копайгородский, А.В. Черноусов // Информационные и математические технологии в науке, технике и образовании / Труды Х Байкальской всеросийской конференции, Ч.1. – Иркутск: ИСЭМ СО РАН, 2005. C. 119-126.
6. Черноусов А.В. Обеспечение безопасного доступа к Web-приложениям / А.В. Черноусов // Информационные и математические технологии в науке, технике и образовании / Труды Х Байкальской всеросийской конференции, Ч.1. – Иркутск: ИСЭМ СО РАН, 2005. C. 126-130.
7. Черноусов А.В. Методика улучшения представления кода для унаследованного ПО.
/ А.В. Черноусов, Е.С. Черноусова // Информационные и математические технологии в научных исследованиях / Труды ХI международной конференции Информационные и математические технологии в научных исследованиях, Ч.1. – Иркутск:
ИСЭМ СО РАН, 2006. C. 243-251.
8. Черноусов А.В. ИТ-инфраструктура системных исследований в энергетике и технологии ее реализации / Л.В Массель, А.В. Черноусов // Моделювання та iнформацiйнi технологi КИ / Труды международной конференции Информационные технологии в энергетике 2006. C. 34-42.
9. Черноусов А.В. Grid-проекты: обзор состояния и перспективы / Т.П. Ворожцова, С.К. Скрипкин, А.В. Черноусов // Под ред. Массель Л.В. – Иркутск: ИСЭМ СО РАН, 2006. Преп. №3 – 42 c.
10. Черноусов А.В. Реализация Web-сервиса для решения задач нелинейной оптимизации на основе унаследованного программного комплекса / Л.В. Массель, А.В. Черноусов, Д.А. Фартышев, А.Г. Массель // Труды международной конференции Вычислительные и информационные технологии в науке, технике и образовании. II том. – Павлодар: ТОО НПФ ЭКО, 2006. C. 42-50.
11. Черноусов А.В. Методика построения Web-сервисов для интеграции программных комплексов в ИТ-инфраструктуру научных исследований в энергетике / А.В. Черноусов // Труды молодых ученых ИСЭМ СО РАН, Вып.№36 – Иркутск: ИСЭМ СО РАН, 2006. С. 287-293.
12. Черноусов А.В. Разработка архитектуры и системных программных компонентов ИТ-инфраструктуры исследований в энергетике / А.Н. Копайгородский, А.В. Черноусов, Д.А. Фартышев // Интеллектуальные системы обработки информации и управления. Том 1./ Сборник статей 2-ой региональной зимней школы-семинара аспирантов и молодых ученых, 13-17 февраля 2007. Уфа: Издательство Технология, 2007.
С. 79-83.
13. Черноусов А.В. Методы использования Web-сервисов для построения вычислительной ИТ-инфраструктуры системных исследований в энергетике / А.В. Черноусов, Д.А. Фартышев // Информационные и математические технологии в науке и управлении/ Труды ХII Байкальской всероссийской конференции Информационные и математические технологии в науке и управлении, Ч.2. – Иркутск: ИСЭМ СО РАН, 2007. С. 46-54.
14. Черноусов А.В. Преимущества использования SOA при построении мультиагентных систем. / А.В. Черноусов, Е.С. Черноусова // Информационные и математические технологии в науке и управлении/ Труды ХII Байкальской всероссийской конференции Информационные и математические технологии в науке и управлении, Ч.2. – Иркутск: ИСЭМ СО РАН, 2007. С. 59-65.
Лицензия ИД №00639 от 05.01.2000. Лицензия ПЛД № 40-61 от 31.05. Отпечатано полиграфическим участком ИСЭМ СО РАН