Конференции ИВТ СО РАН



X Российская конференция с участием иностранных ученых "Распределенные информационно-вычислительные ресурсы”

Академгородок, г. Новосибирск, Россия, 6-8 октября 2005 г.

Тезисы докладов


Инверсия управления в контексте реализации сервера приложений Jaxion

Адаманский А.В.

ЦНИТ НГУ (Новосибирск)

В настоящее время в стенах Новосибирского государственного университета разрабатывается распределенная информационная система управления ВУЗом – УИС. Система УИС призвана автоматизировать бизнес процессы необходимые для управления учебным процессом университета, в число задач, которые требуется решить входит управление учебными планами, система абитуриент, общий электронный документооборот университета, автоматизация работы деканатов.

В ходе работы над системой УИС была создана программная платформа которая используется для построения всех информационных подсистем УИС. В основе данной платформы лежит сервер приложений Jaxion (http://www.jaxion.org) разработанный специльно для проекта УИС, исходные коды Jaxion опубликованы под открытой лицензией Apache 2.0. Разработчику Java™ EE бизнес приложений Jaxion предоставляет следующие возможности:

  1. Возможность быстрой разработки модульных программных приложений базируясь наконцепциях сервисно-ориентированной архитектуры (SOA). Jaxion предоставляет разработчику набор слабо связанных между собой программных Java™/Java™ EE сервисов – многократно используемых (reusable) компоновочных блоков на основе которых строятся бизнес приложения.
  2. Декларативное задание зависимостей между программными компонентами и автоматическое их отслеживание и удовлетворение, реализация принципа обратного управлений (IoC: Inversion of Control) в отношении развертываемых программных компонент, что дает возможность разработчику соединить в одну целостную систему совершенно разнородные программные модули и библиотеки.
  3. Архитектура Jaxion позволяет организовать распределенное и в тоже время прозрачное взаимодействие (по сети) программных компонент в контексте географически разнесенных экземпляров системы Jaxion.
  4. Jaxion не привязывает программный код развертываемых в сервере компонентов к среде выполнения Jaxion, иными словами, на развертываемые компоненты не накладывается никаких строгих ограничений на интерфейсы и методы которые они должны реализовать для работы в среде Jaxion. Большинство программных компонент развертываемых в Jaxion является так называемыми POJO (Plain Old Java Object) объектами.
В докладе будут рассмотрены основные архитектурные особенности реализации сервера приложений Jaxion. В частности, особое внимание будет уделено опыту реализации так называемого принципа обратного управления (IoC: Inversion of Control) и его применения в контексте реализации сервера приложений Jaxion. Концепция, лежащая в основе инверсии управления, часто выражается "голливудским принципом": "Не звоните мне, я вам сам позвоню". Прицип инверсии управления переносит ответственность за выполнение большинства действий с кода приложения (компонента) на сам сервер приложений. В отношении конфигураций программных компонент это означает, что если в традиционных контейнерных архитектурах наподобие EJB 2.1, компонент может вызвать контейнер и спросить: "где объект Х, нужный мне для работы?", то в IoC сам контейнер выясняет, что компоненту нужен объект Х, и предоставляет его компоненту во время исполнения. Принципы IoC позволяют существенно ослабить зависимости между программными компонентами на уровне программного кода тем самым позволяя компонентам быть более универсальными и переиспользуемыми.

Примечание. Тезисы докладов публикуются в авторской редакции



Ваши комментарии
Обратная связь
[ICT SBRAS]
[Головная страница]
[Конференции]

© 1996-2000, Институт вычислительных технологий СО РАН, Новосибирск
© 1996-2000, Сибирское отделение Российской академии наук, Новосибирск