Научная статья на тему 'Решение задачи автоматизации разработки и тестирования комплексных веб-приложений на базе I. Portal MSE'

Решение задачи автоматизации разработки и тестирования комплексных веб-приложений на базе I. Portal MSE Текст научной статьи по специальности «Компьютерные и информационные науки»

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

Текст научной работы на тему «Решение задачи автоматизации разработки и тестирования комплексных веб-приложений на базе I. Portal MSE»

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

Иркутского Государственного Технического Университета

СОДЕРЖАНИЕ

I

If

Психология и педагогика

Леснянская Ж.А. Развитие временной перспективы у учащихся выпускных классов сельской школы как условие профессионального самоопределения..................................................................

Пуляевская О.В. Технология оптимизации созревания отделов головного мозга у детей средствами музыкальной деятельности....................................................................................................................

Синчурина М.Г. Обучение студентов анализу специфики продвижения сфер деятельности как способ развития их когнитивных стилей..........................................................................................

щ ! W

г ш ¡-.у]

и. H 1 г п □ н □ i

=== a a i i

~~ i 1 ■4 '— — _ U h r -r

Социология

Елиокумс O.A. Образование и культура - продолжение культурных традиций России (на примере кулыуротворческой деятельности пенсионеров Усть-Илимска: плюсы и минусы).

Шевченко Л.А. Всплеск политической активности женщин Иркутской области накануне объединительного референдума................................................................................................

Потемкина И«А. Содержательные характеристики процесса социализации

Леденцов Д.С. Классификация ценностей.......................................................................................

Седых И.С. Специфика быта городской семьи Иркутской области в современном российском обществе........>..,..................................................................................................................................

Кардонова И.А. Глобализация и символические конфликты.........................................................

Кирдянкина C.B. Безопасное освоение информационного пространства

Лебедева E.H. Социализация беспризорных подростков в Иркутской области и Красноярском крае в 1930-х гг.................................................................................

из

Гармышев Я.В. Проблемы назначения наказания за нарушение правил пожарной безопасности ...

Ефимович A.A. Основание необходимой обороны...............................................................................

Авдеева O.A. Динамика развития в России в XVII - XVIII вв. системы органов специальной юрисдикции.................................................................................................................................................

Жигалов Н.Ю. Компьютерные технологии в судебно-экспертной деятельности

Абдуллаева Н.Д. Виды оперативного внедрения...............................................

Машкина А.Ю, Право на юридическую помощь в международном измерении

Загайнов В.В, Понятие «существенного сходства» при квалификации фальшивомонетничества ...

Стародубцева К.А. Региональная безопасность - ключевое звено в обеспечении национальной безопасности........................................................................................................................................

Иванов А.К. Коммерческие поджоги в дореволюционной России

Сведения об авторах

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

Иркутского Государственного Технического Университета

В марте 2003 года журнал включен в "Перечень ведущих научных журналов и изданий, выпускаемых в Российской Федерации, в которых должны быть опубликованы основные научные результаты диссертаций на соискание ученой степени доктора наук (2001-2003 гг.)и, утвержденный ВАК Минобразования России. Периодичность журнала 4 выпуска в год

От редколлегии

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

Мы представляем сегодня публикации молодых ученых, которые делают первые шаги - это их старт в большую науку!

Обширна и актуальна тематика статей: науки о Земле, экономика, энергетика, философия, психология, филология.

Авторы журнала - это в основном аспиранты иркутских вузов (ИрГТУ ИГЛУ ИГПУ БГУЭП, ИВВАИИ, ИрГУПд. Однако география выпуска разнообразна: Санкт-Петербург, Братск, Чита, Шэньян (Китай).

Редколлегия

К.С. Лебедев

Решение задачи автоматизации разработки и тестирования комплексных веб-приложений на базе ¡.Portal MSE

В последние десять лет наблюдается взрывообраз-ный рост интереса к созданию «тонких» Интернет-клиентов на основе браузеров и отказа от сложных в сопровождении «толстых» клиентов. Современная парадигма использования сервисов в качестве строительных блоков крупных программных решений, продвигаемая крупнейшими IT-вендорами [1], использует веб-интерфейс как наиболее удобный способ взаимодействия с пользователем.

Неудивительно, что за последние 5 лет было создано достаточно большое число программных средств, упрощающих создание веб-решений. В мире Java к ним можно отнести Apache Struts, Tapestry, Spring MVC и другие. Параллельно с разработкой данных решений авторами формализовывались технологии их использования. Таким образом, в настоящий момент речь идёт даже не о framework для разработки веб-приложений, а о целостных методиках. В рамках диссертационной работы автором также была разработана технология создания Интернет-ресурсов под названием ¡.Portal MSE - ¡.Portal model-based software engineering.

Преимущества ¡.Portal MSE по сравнению с существующими аналогами:

• Документирование кода визуальными моделями на этапе проектирования.

• Формализация всех этапов создания приложения от проектирования до тестирования. ;•

• Повышение качества программного кода за счёт практического, а не декларативного применения шаблонов TDD (Test-driven development).

» Короткий цикл создания работоспособного каркаса приложения.

• Возможность использования на первых этапах разработки преимуществ технологий, основанных на моделях (в частности, элементы RUP - Rational Unified process), и Agile-методик при управлении проектом разработки в целом.

• Возможность использования всего стека J2EE при разработке приложения.

¡.Portal MSE представляет собой набор практических рекомендаций по разработке веб-приложений, подкреплённых программной составляющей.

Любая технология разработки базируется на возможностях, предоставляемых платформой, которую она использует. В случае ¡.Portal перед разработчиком представлен широкий спектр возможностей стека J2EE. Кро-

ме того, основанный на принципе модульности функционал ¡.Portal предоставляет программисту возможность создавать приложения из необходимых ему блоков. Выбор набора доступных типов компонентов произведён авторами i.Portal на основе общеизвестных в сфере java-разработчиков шаблонов проектирования [2]. Основными строительными блоками (рис. 1) в ¡.Portal являются следующие типы компонентов, регистрируемых в JNDI (Java name and directory interface) [3]:

• Фабрика. Компоненты данного типа отвечают за управление данными, их сохранение и извлечение из хранилища. Также на уровне фабрик реализуется бизнес-логика работы с данными.

• Модуль. Компоненты данного типа являются центральными компонентами системы. С их помощью генерируется весь динамический HTML код приложения. Каждый модуль можно рассматривать как отдельное приложение.

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

• Сайт. Компоненты данного типа выступают в системе i.Portal в виде контейнеров для данных о настройках веб-сайта. Так как поддержка множества сайтов на одном сервере приложений реализована разработчиками системы на уровне ядра, развёртывание новых сайтов сводится к созданию файлов конфигурации сайта.

• Тема, Компоненты данного типа предоставляют возможность динамической смены графического интерфейса сайта, обеспечивая независимость модулей от дизайна. С точки зрения шаблона проешрования MVC тема является визуальным представлением.

• Раскладка. Компоненты данного типа определяют местоположения модулей в темах на основе SimpleTheme. При создании раскладки необходимо учитывать имена контейнеров, заданные в шаблонах при создании темы, При реализации раскладки, также как и при реализации сайтов и тем, нет необходимости в написании дополнительного java кода.

Сайт 2

V \

\е r \ Сервис 2- '

Механизм управления пользователями *

щА

Механизм Механизм безопасности индексирования и поиска

Ядро системы

Вспомогательные 1 классы и механизмы >

Сайт 1

У.. 'f

S'

'С \ Сеоаис )

Рис. I. Архитектура системы ißortal

Физически законченное приложение представляет собой SAR или EAR-архив, объединяющий в себе необходимый набор компонентов. Так, например, для системы управления новостями этот архив будет включать новостной модуль и фабрику для управления хранением и доступом к новостям.

Как видно из приведённой выше архитектуры ¡.Portal, при разработке законченного решения необходимо создать достаточно большое число программных артефактов, начиная от собственно реализации компонентов на языке Java и заканчивая дескрипторами развёртывания. Множество из этих артефактов имеют регулярную структуру, что даёт возможность автоматизировать процесс их создания.

Исходными данными для создания каркаса приложения в ¡.Portal MSE является набор UML-диаграмм. Таким образом, первый этап создания приложения заключается в формализации требований к программному продукту на основе моделей. При этом формируется общее представление о предметной области и готовятся данные для формирования структуры каркаса.

Большинство программных продуктов, особенно в области управления бизнес-данными, требуют хранения огромного числа вспомогательных данных. Как правило, эти данные хранятся 8 виде справочников, структура которых в большинстве случаев известна ещё на начальном этапе проектирования системы и не подвержена изменениям во время всего жизненного цикла приложения. Структуры данных такого рода чаще всего наиболее подходят для автоматической генерации на основе моделей.

Ещё одна важная особенность первого этапа ¡.Portal MSE - документирование программной реализации. Несмотря на широкое распространение АдЛе-методик разработки [4,5], заказчик программного продукта, как правило, хочет увидеть формализованное описание системы в виде технического задания. Созданные на первом этапе модели позволяют найти общий язык с заказчиком и более чётко сформулировать требования к системе,

На втором этапе в ¡.Portal MSE происходит генерация программного кода на основе преобразования Model-to-text. При этом формируются основные структуры для работы с данными: фабрики и модули. Широко известен факт, что объектную модель приложения можно достаточно легко преобразовать в реляционную модель базы данных. На этом принципе основаны многие ORM-framework, такие как Hibernate и TopLink. 8 программной реализации классов поддержки ¡.Portal MSE предусмотрена эталонная реализация преобразования модели в SQL-скрипт для генерации базы на СУБД FireBird.

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

На третьем этапе происходит доработка созданного каркаса с учётом требований бизнес-логики и дизайнеров интерфейса. Данный этап требует полного использования одной из Agile-методик разработки. Автором в данном случае рекомендуется использование ХР-programming (экстремальное программирование).

Модель разработки ¡.Portal MSE включает три уровня. В данной статье подробно рассматривается лишь нижний уровень, этапы которого описаны выше. Всю же модель можно увидеть на рис. 2.

Рис. 2. Уровни ¡Portal MSE

В предыдущем разделе было указано, что второй этап ¡.Portal MSE включает генерацию каркаса приложения с использованием Model-to-text преобразования. Это одна из концепции MDA (Model driven architecture), позволяющая формировать на базе набора моделей реализацию программной системы с использованием конкретных технологий.

В качестве основы для разработки при данном подходе выступают модели, несущие в себе всю структурную информацию будущего программного продукта ¡.Portal MSE - диаграммы классов.

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