автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Разработка метода и инструментальных средств создания приложений для системы управления содержанием веб-сайтов

кандидата технических наук
Лебедев, Кирилл Сергеевич
город
Иркутск
год
2008
специальность ВАК РФ
05.13.11
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Разработка метода и инструментальных средств создания приложений для системы управления содержанием веб-сайтов»

Автореферат диссертации по теме "Разработка метода и инструментальных средств создания приложений для системы управления содержанием веб-сайтов"

На правах рукописи

Лебедев Кирилл Сергеевич

□□3 165352

Разработка метода и инструментальных средств

создания приложений для системы управления содержанием веб-сайтов

Специальность 05.13.11 -Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

АВТОРЕФЕРАТ диссертации на соискание ученой степени

кандидата технических наук ^ 3 М Д Р 20РЯ

Иркутск - 2008

003165352

Работа выполнена на кафедре Автоматизированных систем Иркутского государственного технического университета

Научный руководитель:

доктор технических наук, профессор Петров Александр Васильевич

Официальные оппоненты:

доктор технических наук, профессор Берман Александр Фишелевич кандидат технических наук, доцент Макагонова Надежда Николаевна

Ведущая организация:

Московский государственный университет приборостроения и информатики

Защита состоится 17 апреля 2008 г. в 15-00 часов на заседании диссертационного совета Д 003 021.1 при Институте динамики систем и теории управления СО РАН по адресу 664033, г. Иркутск, ул. Лермонтова, 134.

С диссертацией можно ознакомиться в библиотеке Института динамики систем и теории управления СО РАН

Автореферат разослан 6 марта 2008 г.

Учёный секретарь диссертационного совета

д.ф.-м.н

А А. Щеглова

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ Актуальность исследования обусловливается необходимостью повышения эффективности коллективного доступа к информационным ресурсам Интернет Необходима системная интеграция существующих программных продуктов, хранилищ информации и вновь создаваемых программных разработок на базе единой среды, обладающей возможностями удобного доступа к разнообразным информационным ресурсам из области производства, науки, образования и других сфер деятельности человека и общества

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

Однако переход от традиционных программных продуктов к технологии «тонких.» клиентов становится все более очевидным Примером этого может служить возникновение широкодоступных веб-приложений в таких областях, как текстовые редакторы и электронные таблицы, которые ранее считались областью применения традиционных программных продуктов

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

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

К настоящему моменту можно выделить различные технологические платформы, служащие основой для создания Интернет-приложений В качестве примера можно привести Microsoft SharePoint, Apache Struts, JBoss Seam, JBoss Portal, Oracle Portal, IBM WebSphere Portal Однако частично данные решения являются коммерческими, что накладывает значительные ограничения на их использование Кроме того, каждый из данных инструментов предъявляет достаточно высокие требования к подготовке разработчиков

Всё вышеизложенное подтверждает актуальность исследования, которое позволяет формализовать процесс разработки программного обеспечения для системы управления содержанием веб-сайтов

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

Для достижения поставленной цели в работе было сделано следующее» Адаптированы существующие подходы к созданию программного обеспечения, на базе которых разработан многоуровневый метод проектирования, управления качеством, стандартизации и сопровождения программного обеспечения для системы управления содержанием веб-сайтов i Portal Он включает как непосредственно уровень разработки программного кода, регламентирующий архитектурные требования к системе, так и уровни управления качеством и требованиями к программному продукту

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

Предложены методические рекомендации в области управления процессом разработки программного продукта для платформы i Portal, соответствующие базовым требованиям международных стандартов управления качеством

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

Создана открытая платформа i Portal для разработки Интернет-решений, основанная на стандарте Java 2 Enterprise Edition. Научная новизна работы

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

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

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

В качестве методов исследования в диссертационной работе применяются принципы объектно-ориентированного программирования, системного анализа, теории графов, теории множеств Основой для создания работы послужили принципы технологичности, автоматизации процесса разработки, повторного использования, применения шаблонов проектирования В диссертации используются архитектура и технологии платформы J2EE, включая Java Management Extensions (JMX), Java Message Service (JMS) и др В работе использованы стандарты Unified Modeling Language (UML), Ecore и методики разработки Agile

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

• Достоверность технических решений, принятых автором, подтверждается

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

• Соответствие приложений для авторской платформы шаблону проектирования Model-Vision-Controller (MVC) подтверждена экспертизой, проведенной сотрудниками кафедры автоматизированных систем Иркутского государственного технического университета и компанией по разработке программного обеспечения «КВУД»

• Модели, создаваемые для генерации каркаса программного обеспечения, полностью соответствуют стандарту UML

» Система управления содержанием веб-сайтов i Portal основана на открытых стандартах и программных компонентах, которые используются во множестве программных продуктов.

• Генерируемый каркас приложения неоднократно проверялся на соответствие требованиям, предъявляемым к приложениям сервера JBoss и системы управления содержанием веб-сайтов i Portal

Практическая значимость работы заключается в следующем

• Полученные в работе результаты использованы при реализации

о Федеральной целевой программы развития образования на 2006-2010

годы, в рамках реализации задачи III «Повышение эффективности управления в системе образования», мероприятия 25 «Организация сетевого взаимодействия образовательных учреждений», проект «Разработка и апробация модели сетевого взаимодействия учреждений профессионального образования в интересах работодателей макрорегиона (на примере Дальневосточного и Байкальского регионов)» Государственный контракт №П657 от 19 09 2007 г о Госбюджетной научно-исследовательской работы (§ 47) «Методы и модели управления и организации сложных систем» Код ВНТИ 28.17.31,28 17 19

о Хозяйственного договора с Администрацией Иркутской области по реализации информационного ресурса департамента малого и среднего бизнеса

• Разработанная платформа для обеспечения функционирования веб-ресурсов признана самым «Коммерчески-перспективным продуктом» в первом открытом конкурсе JavaKonkurs компании Sun Microsystem среди программных продуктов на языке Java

• Предложенный метод создания программного обеспечения для сети Интернет представлен в виде решения, которое используется в практической деятельности коллективом программистов

• Модель хранения разнородной структурированной информации реализована в виде сервиса системы управления содержанием веб-сайтов i Portal, нашедшего свое применение в модуле опросов Иркутского государственного технического университета и системе управления информацией о недвижимости Иркутского регионального ипотечного агентства

• Использование предложенного автором метода позволило сократить сроки создания приложений для системы управления содержанием веб-сайтами 1 Portal Общее снижение времени разработки по экспертным оценкам и экспериментальным данным достигает 30%.

Апробация работы. Основные результаты диссертационной работы обсуждались на XI Международной конференции «Информационные и математические

7

технологии в научных исследованиях» (Иркутск, 2006 г ), XII конференции «Информационные и математические технологии в науке и управлении» (Иркутск, 2007 г), VIII Международной научно-практической конференции «Фундаментальные и прикладные проблемы приборостроения, информагики и экономики» (Сочи, 2005 г.), IX Международной научно-практической конференции «Фундаментальные и прикладные проблемы приборостроения, информатики и экономики» (Сочи, 2006 г ), на семинарах отдела разработки компании i Point (Иркутск, 2005-2006 гг) и на семинарах кафедры Автоматизированных систем Иркутского государственного технического университета

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

Результаты работы, связанные с разработкой метода создания программного обеспечения для сети Интернет, с архитектурными решениями системы управления содержанием веб-сайтов, а также с методами автоматизации создания программного обеспечения получены автором самостоятельно Программная реализация технологической платформы велась автором совместно с Киселевым Сергеем Сергеевичем, Черных Алексеем Владимировичем и Буровым Константином Сергеевичем и ее результат является неделимым Научные консультации по вопросам архитектуры систем управления содержанием веб-сайтов были оказаны к т.н Ульяновым Дмитрием Александровичем

Структура и объем работы Диссертационная работа состоит из введения, четырех глав, заключения, списка литературы и 15 приложений Работа включает в себя 146 страницы основного машинописного текста, 35 рисунков и 13 таблиц Список литературы содержит 111 наименований Объем приложений - 53 страницы Всего страниц 222

ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ Во введении дается общая характеристика предметной области, формулируются цели и задачи исследования, приводится актуальность и практическая ценность, отмечается научная новизна.

В первой главе автор дает обзор существующей ситуации в области разработки программного обеспечения для сети Интернет, уделяя особое внимание особенностям существующих технологических платформ

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

Во втором разделе приведен перечень работ, посвященных различным методам проектирования сложных информационных систем включая методологии, ориентированные на первоочередное проектирование функций Йордона и Гейна-Сарсона, структурные методологии, ориентированные на первоочередное проектирование данных Джексона, Варнье-Орра, объектно-ориентированные методологии на базе языка UML (Unified Modeling Language) Буча, промышленные методологии фирм разработчиков программного обеспечения, таких, как IBM, Microsoft Особое внимание уделяется методам проектирования и управления процессом разработки российских авторов, включая В В Липаева и И H Скопина

При разработке интернет-ориентированных информационных систем, обеспечивающих достижение бизнес-целей организаций различного типа, возникает задача выбора языка программирования, эффективной платформы для создания системы и методов ее разработки В третьем разделе произведено сравнение доступных в настоящий момент языков разработки и технологических платформ, включая LAMP, решения Net от компании Microsoft. Java от Sun и языки C/C++. Также в данном разделе описываются достоинства и недостатки использования различных инструментальных средств для веб-разработки, включая Joomla, Spm-Pike, JSP/Servlet, Apache Struts, Spring MVC, JBoss Seam, OpenCMS В результате проведенного анализа автор приходит к выводу, что для решения задачи создания интеграционной платформы, поддерживающей функционирование Интернет-приложений, наибольшими возможностями обладает инфраструктура на базе язы-

ка Java Однако сущесгвующие общедоступные платформы имеют ряд недостатков, что объясняет необходимость разработки собственной платформы для Интернет-приложений и соответствующего ей метода создания программных продуктов для веб-среды

В четвёртом разделе главы автором формулируется постановка задачи исследования

Во второй главе содержится описание архитектуры разработанной системы управления содержанием веб-сайтов i Portal Особенность данного инструментального средства - широкое использование принципа модульности, что предоставляет разработчику возможность создавать приложения из необходимых ему блоков Основным «строительным блоком» в i Portal являются следующие типы компонентов фабрика, модуль, сервис, сайт, тема и раскладка.

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

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

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

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

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

г

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

Укрупнённый вариант архитектуры системы приведён на рис. 1. —-Ядро системы—

Вспомогательные Механизм управления Механизм Механизм классы и механизмы пользователями безопасности индексирования

Тша

' - . '

- Механизм рендеринга -

^ ! .. ■ v : ....

N r Рвсктвдка; -

1

^ - ■ .У .-,......

Тема Раскладка

Модуль

Сайт

Сервис

Рис. 1. Архитектура системы ¡.Portal В отличие от известных разработок компонентная архитектура ¡.Portal позволяет динамически формировать веб-ресурс из набора независимых приложений. При этом за счёт механизма тем существует возможность простого сохранения единого дизайна и интерфейса пользователя, что является важным при создании ресурсов, ориентированных на внешних для организации посетителей. Жизненный цикл компонента системы ¡.Portal приведён на рис. 2.

Starting

I

Stopping

».Initialization in system

Removing from system §_

/startCornponent

/stopComponent

work

Рис. 2. Жизненный цикл компонента

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

При создании программного обеспечения для сетей Интернет/Интранет перед разработчиками часто встаёт вопрос хранения сложных структур данных с большим количеством связанных между собой информационных сущностей В 1 Portal данная задача может быть решена одним из следующих способов

• Прямой доступ к хранилищу информации на основе фабрик с использованием, либо без использования, DAO-компонентов

• Использование сервиса каталога для хранения данных Данный способ является рекомендуемым в случае, когда структура метаданных приложения заранее неизвестна

• Использование внешних ORM-framework (Object-relation mapping - средства отображения объектной модели в реляционную базу)

Таким образом, важным преимуществом системы является отсутствие ограничений на механизм, используемый для управления данными В частности, на базе технологии ORM возможна быстрая интеграция со многими СУБД Для случаев, которые требуют удобного хранилища структурированных данных, разработан сервис кагалога Существующие хранилища информации могут быть использованы путем разработки специализированных DAO-компонентов

Структура представления данных в системе Для структурирования информации в системе вводится специализированный тип данных — объект-значение Все объекты-значения в i Portal должны быть доступны через дерево объектов системы — древовидную структуру, позволяющую уникально идентифицировать данные для реализации механизмов безопасности и индексирования

Положение каждого из объектов значений, реализующих интерфейс Item в дереве объектов, определяется специализированным классом Dn (от английского Distinguished name), представляющим собой упорядоченную последовательность целых чисел

Далее рассматривается сервис каталога, который регламентирует программ-ш и пользовательский интерфейс управления метаданными для хранения древо-идной информации различного типа Отличительные особенности архитектуры ервиса включают в себя

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

• Наличие механизма поиска элементов каталога, поддерживающего два варианта запросов

о атрибутивные запросы, представляющие собой пары атрибут - значение атрибута,

о запросы на основе заданного пользователем неструктурированного текста с учетом морфологии русского языка

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

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

В третьей главе работы автором приводится многоуровневый метод реали-ации Интернет/Интранет приложений под названием l.Portal MSE -i Portal model-ased software engineering, регламентирующий создание программного кода и равление процессом разработки Он включает три уровня, которые отображены а рис 3

\

л М

непрерывный контроль качества ■

разрабрйа nptmo»SH«j.

Рис. 3. Уровни ¡.Portal MSR Преимуществом предлагаемого автором метода является его узкая ориентация на разработку приложений, служащих для представления данных организации в Интернет-среде, на базе системы ¡.Portal. За счёт этого у автора появилась возможность регламентации не только самого процесса разработки, но и используемых в нём инструментальных средств. Это, в свою очередь, позволило сократить время, необходимое для начала использования платформы и метода разработки для неё.

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

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

• Разработку пакета автоматизированных тестов.

® Верификацию интерфейса системы заказчиком.

® Внутреннее альфа-тестирование программного продукта.

• Внешнее бета-тестирование программного продукта заказчиком.

• Организацию сервисного сопровождения системы на основе системы отслеживания ошибок с момента начала разработки программного продукта.

14

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

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

Управление требованиями в i Portal MSE включает в себя следующие мероприятия

• Анализ автоматизируемых бизнес-процессов (обязательная задача)

• Формирование постановки задачи в виде специализированного документа (факультативная задача)

• Создание диаграмм прецедентов автоматизируемых бизнес-процессов (обязательная задача)

• Создание плана сборок и версий (обязательная задача)

• Управление изменениями требований (обязательная задача) Изменение требований заказчика, как неизбежная составляющая любого

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

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

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

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

Важная особенность первого этапа i Portal MSE - документирование программной реализации Несмотря на широкое распространение Agile-методик разработки, заказчик программного продукта, как правило, хочет увидеть формализованное описание системы в виде технического задания При разработке программного обеспечения заказчик часто выбирает фиксированную схему оплаты (fixed costs), что требует четкого понимания требуемых для разработки ПО ресурсов Поэтому формализация постановки задачи на языке UML дает возможность более детально согласовать требования к программному продукту с заказчиком

На втором этапе в i Portal MSE происходит генерация программного кода на основе преобразования Model-to-text При этом формируются основные структуры для работы с данными фабрики и модули В программной реализации классов поддержки i Portal MSE предусмотрена эталонная реализация преобразования модели в SQL-скрипт для генерации базы для СУБД FireBird

Фактически второй этап является переходом от множества объектов Оа, являющихся моделями сущностей из автоматизируемой предметной области, к программным артефактам SWR на основе преобразования Д, описанного в виде программного кода плагина для среды Eclipse

OrÁsWR.

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

На третьем этапе происходит доработка созданного каркаса с учетом требований бизнес-логики и дизайна интерфейса Данный этап требует полного использования одной из Agile-методик разработки Автором в данном случае рекомендуется использование процесса разработки SCRUM

Созданное программное обеспечение в соответствии с i Portal MSE должно включать автоматизированные модульные и функциональные тесты работоспособности Причем реализация функциональных тестов, которые базируются на требованиях заказчика, обязательна

В четвёртой главе приводится пример практического применения описанного метода для реализации системы дистанционного обучения (СДО) на базе 1 Portal. Данная система внедрена в промышленную эксплуатацию в Иркутском государственном техническом университете и Иркутском институте усовершенствования врачей.

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

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

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

управление группами, управление дисциплинами, управление библиотекой и экс порт/импорт курсов дистанционного обучения и др Данные компоненты физиче ски в дальнейшем были реализованы в виде модулей i Portal

Описан способ хранения информации в системе дистанционного обучения При этом разделяются информационные сущности между базой данных ядра сис темы l.Portal, базой данных i Logos и файловой системой

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

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

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

Для обмена информацией между браузером клиента, в который загружен курс дистанционного обучения, и сервером i Logos используется технология веб-сервисов Так как архитектура i Portal подразумевает использование специализированных компонентов — фабрик, то была разработана ScoFactory, служащая программным интерфейсом к базе данных для разработанной серверной части веб-сервиса Данная фабрика представляет данные в объектной модели CMI — модели, используемой в стандарте SCORM (стандарт, регламентирующий формат курсов в системах дистанционного обучения) для организации обмена между учебным курсом и серверной частью приложения

Система дистанционного обучения представляет собой множество модулей, интегрированных в рамках одного информационного ресурса средствами i Portal Особенности процесса интеграции и использованные для этого конфигурационные файлы описаны в четвертой главе

В заключении главы рассмотрен пример использования созданных автором инструментальных средств для генерации шаблона модуля «Форум», являющегося одним из компонентов i Logos Приведена цепочка, начиная от создания модели

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

• Фрагмент требований к программному продукту

• Пример диаграммы прецедентов для системы дистанционного обучения i Logos

• Пример плана сборок и версий

• Пример интерфейса системы дистанционного обучения i Logos

• Пример кода функционального теста механизма саморегистрации пользователя С ДО i Logos

• Пример регламента бета-тестирования модуля «сообщения» СДО i Logos

• Фрагмент плана бета-тестирования модуля «сообщения» СДО i Logos.

• Фрагмент кода фабрики ScoFactory

• Коды артефактов сайта, темы и раскладки СДО i Logos

• Фрагмент кода модуля СДО i Logos и соответствующий ему шаблон

• Диаграмма классов модуля «форум» СДО i Logos

• Структура каркаса приложения для модуля «форум» СДО i Logos

• Пример jet-шаблона преобразования для создания xml-дескриптора модуля

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ, ВЫНОСИМЫЕ НА ЗАЩИТУ

Главным результатом работы является создание нового метода проектирования, разработки и сопровождения программных систем, а также программных средств для практической реализации данного метода в виде системы управления содержанием веб-сайтов i Portal и компонентов для среды разработки Eclipse Основные научные и практические результаты, полученные в работе

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

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

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

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

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

• Реализация ряда интеграционных проектов, включая разработку системы дистанционного обучения i Logos, на базе созданного в рамках диссертационной работы программного обеспечения

Таким образом, все поставленные автором задачи были в работе решены, а цель исследования достигнута, что подтверждается апробацией работы на научно-исследовательских конференциях и практическим внедрением результатов работы в процесс разработки программного обеспечения для системы управления содержанием веб-сайтов i Portal

СПИСОК ПУБЛИКАЦИЙ ПО ТЕМЕ ДИССЕРТАЦИИ

1 Лебедев, К. С. Метод создания программного обеспечения i Portal MSE и контроль качества программного продукта в нем [Текст] /КС Лебедев // Программные продукты и системы - Тверь НИИ «Центрпрораммсистем», 2007 - №3 -С 43-47

2 Лебедев, К. С. Метод создания программного обеспечения для системы управления веб-сайтами i Portal [Текст] /КС Лебедев // Вестник Тамбовского государственного технического университета - Тамбов ТГТУ, 2007 - №2 — С 445448

3 Лебедев, К. С. Методика формирования формального описания системы для создания модели на основе структурных графов [Текст] /КС Лебедев // Научные труды VIII Международной научно-практической конференции «Фундаментальные и прикладные проблемы приборостроения, информатики и экономики» / Московская гос ак-мия приборостроения и информатики - M, 2005. — С. 110-115

4 Лебедев, К. С. Проблемы автоматизации российских предприятий [Текст] / КС Лебедев// Выступления участников международной конференции «Проблемы занятости и профессиональной подготовки молодёжи Сибири и дальнего Востока» сборник - Иркутск, 2000 - С 140-141

5 Лебедев, К. С. Реализация архитектуры Model 2 в системе управления содержанием веб-сайтов iPortal [Текст]/ КС. Лебедев// Труды XI Международной конференции «Информационные и математические технологии в научных исследованиях» / Ин-т систем энергетики им Мелентьева. - Иркутск , 2006 - T. I — С 236-243

6 Лебедев, К. С. Решение задачи автоматизации разработки и тестирования комплексных веб-приложений на базе i Portal MSE [Текст] /КС Лебедев // Вестник ИрГТУ / Иркутский гос тех ун-т - Иркутск, 2007 - №1 (29) Т 2 - С 6-9

7 Лебедев, К. С. Решение задачи хранения и морфологического поиска каталогизированных данных в системе управления содержанием веб-сайтов i Portal [Текст] // Научные труды IX Международной научно-практической конференции «Фундаментальные и прикладные проблемы приборостроения, информатики и

экономики» I Московский roc ун-т приборостроения и информатики - Москва,

2006 -С 71-79

8 Лебедев, К. С. Управление требованиями заказчика и планирование архитектуры в процессе разработки для i Portal CMS [Текст] /КС Лебедев // Труды XII Международной конференции «Информационные и математические технологии в науке и управлении» / Ин-т систем энергетики им Мелентьева. - Иркутск,

2007 -Т II.-С 163-170

9 Кокоуров В. И., Ульянов Д. А., Лебедев К. С. Применение новых информационных технологий при реализации платформы дистанционного обучения Пример реализации с использованием стандарта SCORM [Текст] / В.И Кокоуров, Д.А Ульянов, К С Лебедев // Научные труды V Международной научно-практической конференции «Фундаментальные и прикладные проблемы приборостроения, информатики, экономики и права» / Московская гос ак-мия приборостроения и информатики. - Москва, 2002 - С 74-78

Формат 60x84 1/16 Уч.-изд. л. 1,5. Усл. печ. л. 1,5 Тираж 100 экз. Заказ № 44070

Отпечатано в ООО «Оперативная типография Вектор» 664025, г.Иркутск, ул. Степана Разина д. 6, офис 106, т.: (3952) 33-63-26, 25-80-09 e-mail: dc@siline.ru

Оглавление автор диссертации — кандидата технических наук Лебедев, Кирилл Сергеевич

Специальность 05.13.11 Математическое и программное обеспечение Вычислительных машин, комплексов и компьютерных сетей

Диссертация на соискание учёной степени кандидата технических наук

Научный руководитель проф., д.т.н. Петров Александр Васильевич

Иркутск,

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

6

ГЛАВА 1. СУЩЕСТВУЮЩИЕ МЕТОДЫ И ТЕХНОЛОГИИ РЕАЛИЗАЦИИ

ИНТЕРНЕТ-ПРИЛОЖЕНИЙ С ИСПОЛЬЗОВАНИЕМ JAVA14

Понятие Интернет-приложения и его роль в информационной инфраструктуре организации14

Анализ существующих методов проектирования и управления процессом разработки программных продуктов16

Современные платформы создания Интернет-приложений18

JSP / Servlet28

Apache Struts29

Spring M VC31

JBoss Seam32

ION CMS33

OpenCMS34

Ограничения существующих технологий разработки Интернет-приложений. Постановка задачи. 36

Выводы39

ГЛАВА 2. АРХИТЕКТУРЫ ИНТЕРНЕТ-ПРИЛОЖЕНИЯ В СИСТЕМЕ УПРАВЛЕНИЯ ВЕБ-САЙТАМИ I.PORTAL41

Классификация компонентов системы. Сервисы, фабрики, модули, сайты, темы и раскладки 41

Архитектура доступа к хранилищу данных из приложения в системе i.Portal55

Организация взаимодействия приложения с пользователем69

Реализация изменяемого интерфейса пользователя на основе Velocity-шаблонов 74

Локализация приложений системы76

Понятие шаблона проектирования MVC и Model 278

Применение шаблона проектирования Model 2 при реализации приложений79

Выводы83

ГЛАВА 3. МЕТОД СОЗДАНИЯ ВЕБ-ПРИЛОЖЕНИЙ I.PORTAL MSE 84

Понятие и особенности метода i.Portal MSE84

Технологическая база разработки в i.Portal MSE86

Этапы н уровни i.Portal MSE91

Управление требованиями заказчика и планирование архитектуры в процессе разработки94

Контроль качества разрабатываемого решения108

Первый этап уровня разработки приложения. Создание UML — модели120

Второй этап уровня разработки приложения. Генерация шаблона приложения125

Третий этап разработки приложения. Модификация/доработка шаблона.131

Автоматизированное тестирование как механизм контроля качества.134

Понятие автоматизированного тестирования. Преимущества применения автоматизированных тестов134

Виды тестов, применимые для проверки работоспособности приложений системы управления вебсайтами i.Portal135

Код функциональных тестов и их доработка138

Выводы 139

ГЛАВА 4. ПРИМЕР РЕАЛИЗАЦИИ ИНТЕРНЕТ-ПРИЛОЖЕНИЯ НА ОСНОВЕ ПРЕДЛОЖЕННОГО МЕТОДА140

Первый уровень i.Portal MSE. Управление требованиями140

Второй уровень i.Portal MSE. Управление качеством готового продукта.141

Третий уровень i.Portal MSE. Архитектурное моделирование и программная реализация.145

Выводы155

ЗАКЛЮЧЕНИЕ 156

СПИСОК ЛИТЕРАТУРЫ159

ПРИЛОЖЕНИЕ 1. ФРАГМЕНТ ТРЕБОВАНИЙ К ПРОГРАММНОМУ ПРОДУКТУ170

ПРИЛОЖЕНИЕ 2. ПРИМЕР ДИАГРАММЫ ПРЕЦЕДЕНТОВ ДЛЯ СИСТЕМЫ ДИСТАНЦИОННОГО ОБУЧЕНИЯ I.LOGOS 179

ПРИЛОЖЕНИЕ 3. ПРИМЕР ПЛАНА СБОРОК И ВЕРСИЙ. 180

ПРИЛОЖЕНИЕ 4. ПРИМЕР ИНТЕРФЕЙСА СИСТЕМЫ ДИСТАНЦИОННОГО ОБУЧЕНИЯ I.LOGOS 184

ПРИЛОЖЕНИЕ 5. ПРИМЕР КОДА ФУНКЦИОНАЛЬНОГО ТЕСТА МЕХАНИЗМА САМОРЕГИСТРАЦИИ ПОЛЬЗОВАТЕЛЯ СДО I.LOGOS187

ПРИЛОЖЕНИЕ 6. ПРИМЕР РЕГЛАМЕНТА БЕТА-ТЕСТИРОВАНИЯ МОДУЛЯ «СООБЩЕНИЯ» СДО I.LOGOS. 192

ПРИЛОЖЕНИЕ 7. ФРАГМЕНТ ПЛАНА БЕТА-ТЕСТИРОВАНИЯ МОДУЛЯ «СООБЩЕНИЯ» СДО I.LOGOS. 194

ПРИЛОЖЕНИЕ 8. ФРАГМЕНТ КОДА ФАБРИКИ SCOFACTORY 195

ПРИЛОЖЕНИЕ 9. КОДЫ АРТЕФАКТОВ САЙТА, ТЕМЫ И РАСКЛАДКИ СДО I.LOGOS198

Основной файл темы198

Описание раскладки модулей i.Logos201

Описание дескриптора развёртывания сайта для i.Logos202

ПРИЛОЖЕНИЕ 10. ФРАГМЕНТ КОДА МОДУЛЯ СДО I.LOGOS И СООТВЕТСТВУЮЩИЙ ЕМУ ШАБЛОН.205

Метод модуля205

Шаблон 206

ПРИЛОЖЕНИЕ 11. ДИАГРАММА КЛАССОВ МОДУЛЯ «ФОРУМ» СДО I.LOGOS 208

ПРИЛОЖЕНИЕ 12. СТРУКТУРА КАРКАСА ПРИЛОЖЕНИЯ ДЛЯ МОДУЛЯ «ФОРУМ» СДО I.LOGOS212

ПРИЛОЖЕНИЕ 13. ПРИМЕР JET-ШАБЛОНА ПРЕОБРАЗОВАНИЯ ДЛЯ СОЗДАНИЯ XML-ДЕСКРИПТОРА МОДУЛЯ213

ПРИЛОЖЕНИЕ 14. ПРАВИЛА ОБРАБОТКИ ЗАПРОСОВ ФИЛЬТРАМИ СИСТЕМЫ I.PORTAL215

ПРИЛОЖЕНИЕ 15. КОПИИ АКТОВ О ВНЕДРЕНИИ РЕЗУЛЬТАТОВ ДИССЕРТАЦИОННОЙ РАБОТЫ 217

Введение

Объектом исследования диссертационной работы являются технологическая база и методы создания Интернет-приложений с использованием языка Java.

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

Предлагаемая в рамках работы автором технология включает в себя комплекс мероприятий и технологических инструментальных средств, позволяющих создать J2EE приложения для платформы i.Portal CMS (i.Portal Content Management System -системы управления содержанием веб-сайтов i.Portal), удовлетворяющее требованиям заказчика.

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

Эффективность использования веб-интерфейса очевидна. Переход к его использованию в программных продуктах для автоматизации деятельности организаций [94, 110] привел к возникновению новых видов ресурсов, позволяющих значительно повысить доступность для пользователей, как информации, так и вычислительных мощностей. В тоже время разработка Интернет-приложений остаётся в настоящий момент достаточно сложным и трудоёмким процессом, что не позволяет в полной мере использовать все их преимущества начинающему разработчику.

Однако переход от традиционных программных продуктов к технологии «тонких» клиентов становится все более очевидным. Примером этого может служить возникновение широкодоступных веб-приложений в таких областях, которые ранее считались областью применения традиционных программных продуктов [1].

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

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

К настоящему моменту можно выделить различные технологические платформы, служащих основой для создания Интернет-приложений. В качестве примера можно привести Microsoft SharePoint, Apache Struts[9,27,56], JBoss Seam[52], JBoss Portal, Oracle Portal, IBM WebSphere Portal. Однако часть данных решений является коммерческими, что накладывает значительные ограничения на их использование. Кроме того, каждый из данных инструментов предъявляет достаточно высокие требования к подготовке разработчиков.

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

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

Для достижения поставленной цели в работе были решены следующие задачи:

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

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

• Предложены методические рекомендации в области управления процессом разработки программного продукта для платформы i.Portal, соответствующие базовым требованиям международных стандартов управления качеством.

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

• Создана открытая платформа i.Portal для разработки Интернет-решений, основанная на стандарте Java 2 Enterprise Edition.

В качестве методов исследования в диссертационной работе применяются принципы объектно-ориентированного программирования, системного анализа, теории графов, теории множеств. Основой для создания работы послужили принципы технологичности, автоматизации процесса разработки, повторного использования, применения шаблонов проектирования. В диссертации используются: архитектура и технологии платформы J2EE[70], включая Java Management Extensions (JMX) [42,59], Java Message Service (JMS) и др. В работе использованы стандарты Unified Modeling

Language (UML) [49,77,88,90,102,109], Ecore[5], и методики разработки Agile[41,56,69,111].

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

• Достоверность технических решений, принятых автором, подтверждается: о Сравнением с конкурирующими программными продуктами; о Анализом результатов практического использования платформы для создания промышленно-эксплуатируемых решений.

• Соответствие приложений для авторской платформы шаблону проектирования Model-Vision-Controller (MVC) подтверждено экспертизой, проведённой сотрудниками кафедры автоматизированных систем Иркутского государственного технического университета и компании по разработке программного обеспечения «КВУД».

• Модели, создаваемые для генерации каркаса программного обеспечения, полностью соответствуют стандарту UML.

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

• Генерируемый каркас приложения неоднократно проверялся на соответствие требованиям, предъявляемым к приложениям сервера JBoss и системы управления содержанием веб-сайтов i.Portal.

Научная новизна работы заключается в том, что:

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

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

Создана программная реализация платформы управления содержанием вебсайтов, позволяющая формировать на языке Java информационные ресурсы, интегрированные в единую информационную инфраструктуру организации. На защиту выносятся следующие основные положения:

Метод создания программного обеспечения для системы управления содержанием веб-сайтов i.Portal.

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

Метод и инструментальные средства автоматизации процесса создания каркаса программного обеспечения для системы управления содержанием веб-сайтов i.Portal, включающий функции преобразования UML-модели в программные артефакты.

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

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

Практическая значимость работы заключается в следующем: Полученные в работе результаты использованы при реализации: о Федеральной целевой программы развития образования на 2006-2010 годы, в рамках реализации задачи III «Повышение эффективности управления в системе образования», мероприятия 25 «Организация сетевого взаимодействия образовательных учреждений», проект «Разработка и апробация модели сетевого взаимодействия учреждений профессионального образования в интересах работодателей макрорегиона (на примере Дальневосточного и Байкальского регионов)». Государственный контракт №П657 от 19.09.2007 г. о Госбюджетной научно-исследовательской работы (§ 47) «Методы и модели управления и организации сложных систем». Код ВНТИ 28.17.31; 28.17.19. о Хозяйственного договора с Администрацией Иркутской области по реализации информационного ресурса департамента малого и среднего бизнеса.

• Разработанная платформа для обеспечения функционирования веб-ресурсов признана самым «Коммерчески-перспективным продуктом» в первом JavaKon-kurs - открытом конкурсе компании Sun Microsystem среди программных продуктов на языке Java.

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

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

• Использование предложенного автором метода позволило сократить сроки создания приложений для системы управления содержанием веб-сайтов i.Portal. Общее снижение времени разработки по экспертным оценкам и экспериментальным данным достигает 30%.

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

Результаты работы, связанные с разработкой метода создания программного обеспечения для сети Интернет, с архитектурными решениями системы управления содержанием веб-сайтов, а также с методами автоматизации создания программного обеспечения получены автором самостоятельно. Программная реализация технологической платформы велась под руководством автора совместно Киселёвым Сергеем Сергеевичем, Черных Алексеем Владимировичем и Буровым Константином Сергеевичем и её результат является неделимым. Научные консультации по вопросам архитектуры систем управления содержанием веб-сайтов были оказаны к.т.н. Ульяновым Дмитрием Александровичем.

Основные результаты диссертационной работы обсуждались на XI Международной конференции «Информационные и математические технологии в научных исследованиях» (Иркутск, 2006 г.), XII конференции «Информационные и математические технологии в науке и управлении» (Иркутск, 2007 г.), VIII Международной научно-практической конференции «Фундаментальные и прикладные проблемы приборостроения, информатики и экономики» (Сочи, 2005 г.), IX Международной научно-практической конференции «Фундаментальные и прикладные проблемы приборостроения, информатики и экономики» (Сочи, 2006 г.), на семинарах для сотрудников отдела разработки компании i.Point (Иркутск, 2005-2006 гг.) и на семинарах для сотрудников кафедры Автоматизированных систем Иркутского государственного технического университета.

Также автором проводились учебные курсы для сотрудников системного интегратора на языке Java компании «КВУД», в которой в настоящий момент автором осуществлено практическое внедрение результатов работы в производство.

Рассмотрим структуру представляемой работы. Диссертация содержит 222 страницы, 35 рисунков, 13 таблиц и состоит из введения, 4 глав, заключения, списка использованных источников и 15 приложений.

Заключение диссертация на тему "Разработка метода и инструментальных средств создания приложений для системы управления содержанием веб-сайтов"

Выводы

• Осуществлена демонстрация способа применения предлагаемой платформы i.Portal. Данный пример позволил продемонстрировать каждый из этапов создания программного продукта и возможности платформы.

• Доказана практическая применимость предлагаемого автором метода для реализации сложных Интернет-прилоежний на базе платформы i.Portal. Разработанное приложение эксплуатируется в Иркутском государственном техническом университете и Иркутском институте усовершенствования врачей.

• Результаты реализации эмпирически показали уменьшение времени, затрачиваемого на создание Интернет-приложения. Таким образом, новые знания, представленные в методе i.Portal MSE, полученные за счёт синергии при объединении и переработке известных подходов, дают возможность повысить эффективность создания Интернет-приложений в случае использования i.Portal в качестве платформы.

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

Заключение

Подведём итоги диссертационной работы. Для этого остановимся на наиболее значимых вопросах освещённых автором.

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

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

При разработке метода автор опирался на общепризнанные стандарты в области Java-разработки. Основа для описания программного продукта в i.Portal MSE -UML-модели, дающие наглядное представление об архитектуре и наборе функций программного продукта. Данные модели позволяют наглядно представить информацию для заказчика, что позволяет упростить согласование функциональных требований.

Предлагаемый автором метод позволяет снизить общее время разработки для платформы i.Portal на 15-30% в зависимости от размера и сложности проекта. Генерация каркаса приложения позволяет исключить рутинные операции по кодирования, открывая для программистов возможности по реализации высококачественного и удобного интерфейса пользователя и правил бизнес-логики. Например, создание множества справочников, которые требуются в любом бизнес-ориентированном приложении, возможно практически без непосредственного кодирования. Основная задача программиста в данном случае сводится к модификации сгенерированного интерфейса пользователя в соответствии с утверждённым заказчиком оригинал-макетом страниц приложения.

С теоретической точки зрения i.Portal MSE представляет собой дальнейшее развитие современных методов и подходов к созданию сложного программного обеспечения. Данный метод использует апробированные подходы в разработке программных продуктов в узкоспециализированной области создания Интернет-приложений для системы управления содержанием веб-сайтов i.Portal.

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

Сформулируем полученные в диссертационной работе результаты:

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

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

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

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

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

• Реализация ряда интеграционных проектов, включая разработку системы дистанционного обучения i.Logos, на базе созданного в рамках диссертационной работы программного обеспечения.

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

Библиография Лебедев, Кирилл Сергеевич, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

1. AdventNet Inc. Zohovo Mail Electronic resource. / AdventNet Inc // Online Collaboration Suite Collaborate • Organize • Share. - 2006. - Available at http://zohovo.com.

2. Alkacon Software GmbH. OpenCms, the Open Source Content Management System / Alkacon Software GmbH Electronic resource. // OpenCms professional content management. - 2007. - Available at http://opencms.org/.

3. Beizer B. Black-Box Testing Text.: Techniques for Functional Testing of Software and Systems / Boris Beizer. USA : J. Willey, 1995. 320 p. ISBN 978-0471120940

4. Bort G. ion welcome Electronic resource. / Boit Guillaume // ION cms web-site. -Available at http://ion-cms.sourceforge.net/section/.

5. Budinsky F. etc. Eclipse Modeling Framework: A Developer's Guide [Text] / Frank Budinsky ; David Steinberg ; Raymond Ellersick. USA : Addison Wesley, 2003. 720 p. ISBN 978-0131425422

6. Burke E., Coyner B. Java Extreme Programming Cookbook Text. / Burke Eric, Coyner Brian. USA : O'Reilly, 2003. 352 p. ISBN 978-0596003876

7. Cake Software Foundation Cake Software Foundation, Home Electronic resource. / Cake Software Foundation // Cake Software Foundation. 2006. - Available at http://cakefoundation.org/.

8. Carlson D. Eclipse Distilled Text. / David Carlson. USA : Addison Wesley Prof, 2005. 312 p. ISBN 978-0321288158

9. Carnell J. и Harrop R. Pro Jakarta Struts, Second Edition Text. / John Carnell ; Rob Harrop. USA : Apress, 2004.

10. Coad P., Yordan E. Object-Oriented Analysis Text. / Peter Coad ; Edward Yourdon . -USA : Prentice Hall PTR, 1990. 233 p. ISBN 978-0136299813

11. Coad P., Yordan E. Object-Oriented Design Text. / Peter Coad ; Edward Yourdon . -USA : Prentice Hall PTR, 1991. 197 p. ISBN 978-0136300700

12. Cohen F. Java Testing And Design. From Unit Testing to Automated Web Tests Text. / Frank Cohen. USA : Prentice Hall Prof, 2004. 544 p. ISBN 978-0131421899

13. Dudney В. etc. J2EE AntiPatterns [Text] / Bill Dudney ; Stephen Asbury ; Joseph Krozak ; Kevin Wittkopf. USA : Willey, 2003. 624 p. ISBN 978-0471146155

14. Elliott J. Hibernate: A Developer's Notebook Text. / James Elliott. USA : O'Reilly, 2004. 190 p. ISBN 978-0596006969

15. Ford N. Art of Java Web Development Text. : Struts, Tapestry, Commons, Velocity, JUnit, Axis, Cocoon, InternetBeans, Web Work / Neal Ford. Greenwich : Manning Publications Co, 2004. 624 p. ISBN 978-1932394061

16. Gamma E. etc.. Design Patterns: Elements of Reusable Object-Oriented Software [Text] / Erich Gamma ; Richard Helm ; Ralph Johnson ; John Vlissides. USA : Addison-Wesley, 1994. 416 p. ISBN 978-0201633610

17. Gallardo D., Burnette E., Mcgovern R. Eclipse in Action. A guide for Java developers Text. / David Gallardo, Ed Burnette ; Robert Mcgovern. USA : Manning Publications Co, 2003. 380 p. ISBN 978-1930110960

18. Goodwill J. Apache Jakarta-Tomcat Text. / James Goodwill. USA : Apress, 2002. -200 p. - ISBN 978-1893115361

19. Google inc. Добро пожаловать в Документы Google Электронный ресурс. / Google inc. // Документы Google. 2007- г. - Режим доступа: docs.google.com.

20. Grane D., Pascarello Е., Darren J. Ajax in Action Text. / Dave Grane ; Eric Pascarello ; James Darren . USA : Manning Publications Co., 2006. 680 p. ISBN 9781932394610

21. Hall M. Core Servlets and JavaServer Pages Text. / Marty Hall. USA : Prentice Hall, 2000. - 608 p. - ISBN 978-0130893406

22. Heller P., Roberts S. Complete Java 2. Certification: Study Guide, Fifth Edition Text. / Philip Heller ; Simon Roberts. USA: SYBEX Inc., 2005. 560 p. ISBN 9780782144192

23. Hightower R. Jakarta Struts Live Text. / Richard Hightower. USA : SourceBeat, LLC, 2004. ISBN 9780974884301

24. Horstman C., Cornell G. Core Java 2. Text. : Advanced Features / Cay S. Horstmann ; Gary Cornell. USA : Prentice Hall, 2004. 952 p. ISBN 978-0130819345

25. Horstman C., Cornell G. Core Java 2. Text. : Fundamentals / Cay S. Horstmann ; Gary Cornell. USA : Prentice Hall, 2005. 784 p. ISBN 978-0131482029

26. IEEE Std 610.12-1990 Electronic resource. : IEEE Standard Glossary of Software Engineering Terminology / IEEE Standards Association. 2005 Available at http://standards.ieee.0rg/reading/ieee/std/se/610.12-1990.pdf.

27. Jacobson I. Object-Oriented Software Engineering: A Use Case Driven Approach Text. / Ivar Jacobson. USA : Addison-Wesley, 1995. 552 p. ISBN 978-0201544350

28. Johns Hopkins University Servlets and JavaServer Pages (JSP) 1.0: A Tutorial Electronic resource. / Johns Hopkins University. Available at http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/.

29. Joomla Joomla! .because open-source matters Electronic resource./ Joomla community // Joomla! web-site. Available at http://www.joomla.org.

30. Kassem N. Designing Enterprise Application with Java 2 Platform, Enterprise Edition Text. / Nicholas Kassem ; Enterprise Team. USA: Addison-Wesley, 2000. 368 p. ISBN 978-0201702774

31. Kent Beck, Andres Cynthia Extreme Programming Explained Text. : Embrace Change. 2-nd edition / Kent Beck, Cynthia Andres. USA: Addison-Wesley Professional, 2004. 224 p. ISBN 978-0321278654

32. Kolb J. Web Programming Language Popularity Contest Electronic resource. / Jason Kolb. 2007. - Available at http://www.jasonkolb.com/weblog/2007/02/ programmingtre.html.

33. Lafore R., Waite M. Data Structures & Algorithms in Java Text. / Robert Lafore ; Mitchell Waite. USA : Sams, 1998. 617 p. ISBN 978-1571690951

34. Larman C. Agile and Iterative Development: A Manager's Guide Text. / Craig Larman. USA : Addison Wesley Prof, 2002. 617 p. ISBN 978-1571690951

35. Mahmoud Qusay. Getting Started with Java Management Extensions (JMX): Developing Management and Monitoring Solutions Electronic resource. /Mahmoud Qusay ; Sun Microsystem . Available at http://java.sun.com/developer/ technicalArticles/J2SE/jmx.html.

36. Mambo foundation Inc. Home The Mambo Foundation Electronic resource. / Mambo foundation Inc. // Official home of Mambo. - Available at http://mambo-foundation.org/.

37. McPherson S. JavaServer Pages: A Developer's Perspective Electronic resource. / McPherson Scott ; Sun Microsystem // Java Technology / Sun Microsystem. USA, 2000. Available at http://java.sun.com/developer/technicalArticles/Programming/jsp/.

38. Microsoft Управление проектами: технология MSF Электронный ресурс. / Microsoft Corp. // Microsoft Developer Network / Microsoft Corp. 2007 г. - Режим доступа: http://www.microsoft.com/rus/msdn/msf/default.mspx.

39. Moore J. Comparing PHP with other languages Electronic resource. / Jeff Moore// Professional PHP. USA, 2006 r. - Available at http://www.procata.com/blog/ archives/2006/02/09/comparing-php-with-other-languages/.

40. Object Management Group Unified Modeilng Language Electronic resource. / Object Management Group. Available at http://www.omg.org/technology/documents/ modelingspeccatalog.htm#UML.

41. Object Mangement Group OMG Model Driven Architecture Electronic resource. / Object Management Group. Available at http://www.omg.org/mda/.

42. Pollice G. Почему я преподаю Eclipse Электронный ресурс. / Gary Pollice // Веб-представительство компании "IBM" / Компания IBM. 2005 г. - Режим доступа: http://www.ibm.com/developerworks/ru/opensource /library/jun05-pollice/index.html.

43. Red Hat Corp. Seam Contextual Components. A Framework for Java EE 5 Electronic resource. / Red Hat Corp. - USA, 2007. - Available at http://docs.jboss.Org/seam/2.0.l .GA/reference /en/htmlsingle/

44. Reese G. Database Programming with JDBC and Java Text. : Second Edition / George Reese. USA : O'Reilly, 2000. - 328 p. - ISBN 978-1565926165

45. SawyBox Systems SpinPike.CMS удобная система управления сайтами Электронный ресурс. / Сэвви Бокс Системе // Официальный сайт системы SpinPike.CMS. - Режим доступа: http://spinpike.com/

46. Schwaber К., Beedle М. Agile Software Development with SCRUM Text. / Ken Schwaber; Mike Beedle. USA: Addison Wesley Prof, 2005. 150 p. ISBN 9780130676344

47. Siggelkow B. Jakarta Struts Cookbook Книга. / Bill Siggelkow. Sebastopol: O'Reilly Media, 2005. 526 p. ISBN 978-0596007713

48. Slaughter S., Harter D., Krishnan M. Evaluating the Cost of Software Quality Text. / Sandra A. Slaughter ; Donald E. Harter ; Mayuram S. Krishnan // Communications of the ACM / ACM. USA : ACM, 1998. - Issue 8 : T. 41. pp. 67-73

49. SugarCRM Inc. SugarForge: Open Source CRM Electronic resource. / SugarCRM Inc // SugarCRM Open Source CRM. Available at http://sugarcrm.org.

50. Sullins В., Whipple M. JMX in Action Text. / Ben Sullins; Mark Whipple. USA : Manning Publications Co., 2002. 424 p. ISBN 978-1930110564

51. Tate B. Beyond Java Text. / Bruce Tate. USA : O'Reilly, 2005. 200 p. ISBN 9780596100940

52. The Ken Orr Institute. Warnier/Orr Diagrams Electronic resource. / The Ken Orr Institute // The Ken Orr Institute web-site. Available at http://www.kenorrinst.com/wo 1 .html.

53. Thomas T. Java Data Access—JDBC, JNDI, and JAXP Книга. / Todd Thomas.-USA :M&T Books, 2002. 550 p. ISBN 978-0764548468

54. Tiny sprl. Tiny ERP Home Electronic resource. / Tiny sprl // TinyERP - OpenSource ERP. - Available at http://tinyerp.org/.

55. TIOBE software. TIOBE Programming Community Index Electronic resource. / TIOBE software// TIOBE software web-site.- 2007 г.- Available at http://www.tiobe.com/tpci.htm.

56. Varatek Software. Warnier/Orr Basics Electronic resource. / Varatek Software// BLinear. 2003 r. - Available at http://varatek.com/warnierorr.html.

57. Walls G., Braindanbach R. Spring in Action Text. / Graig Walls ; Ryan Braindanbach. USA : Manning Publications Co., 2005. 472 p. ISBN 978-1932394351

58. Wheeler Sh., Duggins Sh. Improving Software Quality Text. / Sharon Wheeler ; Sheryl Duggins// ACM Proceedings of the 36th Annual Conference on South-East Regional Conference / ACM Southeast Regional Conference. USA : ACM, April 1998. pp. 300-309

59. Wikimedia Foundation, Inc. Jackson System Development Electronic resource. / Wikimedia Foundation, Inc.// Wikipedia. 10 august 2007 г.- Available at http://en.wikipedia.org/wiki/JacksonSystemDevelopment.

60. Амблер С. Гибкие технологии: экстремальное программирование и унифицированный процесс разработки Текст. / Скотт Амблер ; пер. с англ. JI. Калинникова. СПб : Питер, 2005. (Библиотека программиста) . ISBN 5-94723545-5

61. Амриш К., Заман А. Разработка корпоративных Java-приложений с использованием J2EE и UML Текст. / Амриш Кэри ; Ахмед Хавар Заман ; пер. с англ. и редакция А. В. Высоцкого. Москва : Вильяме, 2002. ISBN 5-8459-0299-1

62. Антонов А. В. Системный анализ Текст. / Александр Владимирович Антнов. -М. : Высшая школа, 2006. ISBN: 5-06-004862-4

63. Ауэр К., Миллер Р. Экстремальное программирование: постановка процесса. С первых шагов и до победного конца Текст. / Кент Ауэр ; Рой Миллер ; пер. с англ. П. Анджан. СПб : Питер, 2003. ISBN 5-318-00132-7

64. Бек К. Экстремальное программирование: разработка через тестирование Текст. / Кент Бек ; пер. с англ. П. Анджан. СПб : Питер, 2003. ISBN 5-8046-0051-6

65. Белов С. Модульное тестирование и Test Driven Development Текст. / Сергей Белов // Материалы конференции SECR2006. / Russee М., 2006.

66. Брукс Ф. Мифический человеко-месяц, или Как создаются программные системы Текст. / Фредерик Брукс ; пер. с англ. С. Маккавеев. СПб : Символ-Плюс, 2006. -ISBN 5-93286-005-7

67. Буч Г., Рамбо Д., Джекобсон А. Язык UML: Руководство пользователя Текст. / Гради Буч, Джеймс Рамбо, Ивар Якобсон. М. : ДМК, 2007. ISBN 5-94074-334-Х

68. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++ Текст. : 2-е изд. / Буч Грейди. СПб. : Невский диалект, 2000. ISBN 5-7940-0017-1

69. Вершинин М., Иванова Е. Java 2, Enterprise Edition. Технологии проектирования и разработки Текст. / Максим Вершинин ; Елена Иванова. СПб: БХВ-Петербург, 2003. ISBN 5-94157-192-5

70. Вязовик Н., Жилин Е. Программирование на Java. Методическое руководство для преподавателей Текст. / Николай Вязовик ; Евгений Жилин. Москва : Центр Sun технологий МФТИ, 2003 г.

71. Гантер Р. Методы управления проектированием программного обеспечения Книга. / Ричард Гантер ; пер. Масловский Е. А. М. : Мир, 1981.

72. Жоголаев Е. А. Лекции по технологии программирования: Учебное пособие Текст. / Е. А. Жоголаев. М. : Издательский отдел факультета ВМиК МГУ, 2001.

73. Иванова Е. В. Независимость тестирования как способ снижения рисков разработки ПО и улучшения качества разрабатываемых систем Текст. / Елена Владимировна Иванова // Материалы конференции SECR2006 / Russee. Москва, 2006.

74. Калянов Г. Н. CASE структурный системный анализ (автоматизация и применение) Текст. / Г. Н. Калянов. - М. : Лори, 1996.

75. Кендалл С. Унифицированный процесс. Основные концепции Текст. / Скотт Кендалл. М. : Вильяме, 2002. ISBN 5-8459-0346-7

76. Кериевски Дж. Рефакторинг с использованием шаблонов (паттернов проектирования) Текст. / Джошуа Кериевски. М. : Вильяме, 2006. ISBN 978-58459-1087-5

77. Коналлен Дж. Разработка Web-приложений с использованием UML Текст. / Джим Коналлен. -М. : Вильяме, 2001. 288 с. ISBN 5-8459-0203-7

78. Кулешов И. Язык BPEL в системах автоматизации бизнес-процессов: общая схема решения и опыт реализации Текст. / Илья Кулешов // Материалы конференции SECR2006 / Russee. Москва, 2006.

79. Ларман К. Применение UML и шаблонов проектирования Текст. / Крэг Ларман. М. : Вильяме, 2001. 624 с. ISBN 5-8459-0658

80. Лебедев, К. С. Метод создания программного обеспечения i.Portal MSE и контроль качества программного продукта в нём. Текст. / К.С. Лебедев // Программные продукты и системы. Тверь : НИИ «Центрпрораммсистем», 2007. -№3. - С. 43-47

81. Лебедев, К. С. Метод создания программного обеспечения для системы управления веб-сайтами i.Portal Текст. / К.С. Лебедев // Вестник Тамбовского государственного технического университета. Тамбов : ТГТУ, 2007. - №2. — С. 445-448

82. Лебедев, К. С. Решение задачи автоматизации разработки и тестирования комплексных веб-приложений на базе i.Portal MSE Текст. / К.С. Лебедев // Вестник ИрГТУ / Иркутский гос. тех. ун-т. Иркутск, 2007. - №1 (29) : Т. 2. - С. 6-9

83. Лебедев, К. С. Решение задачи хранения и морфологического поиска каталогизированных данных в системе управления содержанием веб-сайтов i.Portal

84. Текст. // Научные труды IX Международной научно-практической конферен- ■ ции "Фундаментальные и прикладные проблемы приборостроения, информатики и экономики" / Московский гос. ун-т приборостроения и информатики. -Москва, 2006.-С. 71-79

85. Липаев В. В. Методы обеспечения качества крупномасштабных программных средств Текст. / Владимир Васильевич Липаев. М. : Синтег, 2003. 510 с. ISBN 5-89638-068-2

86. Липаев В. В. Управление разработкой программных средств. Методы, стандарты, технологии Текст. / Владимир Васильевич Липаев. М. : Финансы и статистика, 1993.- 160 с. ISBN 5-279-01-091-Х

87. Мартин Р. Быстрая разработка программ на Java и С++: принципы, примеры, практика Текст. / Роберт Мартин. М. : Вильяме, 2003. 752 с. ISBN 5-8459-05583

88. Мацяшек Л. Анализ требований и проектирование систем. Разработка информационных систем с использованием UML Текст. / Лешек Мацяшек. М. : Вильяме, 2002. 432 с. ISBN 5-8459-0276-2

89. ООО i.Point i.Portal. Система управления содержимым сайтов. Руководство администратора Текст. / ООО i.Point. Иркутск, 2005 г.

90. ООО i.Point i.Portal. Система управления содержимым сайтов. Руководство разработчика Текст. / ООО i.Point. Иркутск, 2005 г.

91. Савитч У. Язык Java. Курс программирования Текст. / Уолтер Савитч. М. : Вильяме, 2002. 928 с. ISBN 5-8459-0277-0

92. Сироткин Я. Практический опыт применения XML в разработке программного обеспечения Текст. / Яков Сироткин // Материалы конференции SECR2006 / Russee. Москва, 2006.

93. Скопин И. Н. Основы менеджмента программных проектов Электронный ресурс. / Игорь Николаевич Скопин // Интернет-университет информационных технологий. М., 2004 г. - Режим доступа: http://www.intuit.ru/department/se/msd/.

94. Узарбаев А. Обзор методологии Scrum Электронный ресурс. / Асхат Узарбаев // Русское сообщество Agile. 2006 г. - Режим доступа: http://agilerussia.ru/index.php?option=comcontent&task=view&id=16&Itemid=29.

95. Фаулер М., Скотт К. UML в кратком изложении: Применение стандартного языка объектного моделирования Текст. / Мартин Фаулер ; Керк Скотт ; пер. с англ. А. М. Вендеров. М. : Мир, 1999. 192 с. ISBN 5-03-003331-9

96. Фаулер М. Архитектура корпоративных программных приложений Текст. / Мартин Фаулер. М. : Вильяме, 2007. 544 с. ISBN 5-8459-0579-6

97. Фаулер М. Новые методологии программирования Электронный ресурс. / Мартин Фаулер. Режис доступа: http://www.silicontaiga.ru/home.asp?artId=4889