автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Инструментальные средства интерактивного редактирования данных в сети Интернет
Автореферат диссертации по теме "Инструментальные средства интерактивного редактирования данных в сети Интернет"
На правах рукописи
ДОЛГАЛЕВ Эдуард Евгеньевич
Инструментальные средства интерактивного редактирования данных в сети Интернет
Специальность 05.13.11 - математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
Автореферат диссертации на соискание ученой степени кандидата технических наук
Москва-2004 год
Работа выполнена на механико-математическом факультете Московского государственного университета имени М. В. Ломоносова.
Научный руководитель:
доктор физико-математических наук, профессор В. А. Васенин.
Официальные оппоненты:
доктор технических наук В. Ф. Хорошевский,
кандидат физико-математических наук Е. А. Роганов.
Ведущая организация: ФГУП "НИИ "КВАНТ'.
Защита состоится «17» сентября 2004 г. в 14 час. на заседании Диссертационного совета Д002.084.01 при Институте программных систем РАН по адресу: г. Переславль-Залесский, местечко «Ботик», ИПС РАН.
С диссертацией можно ознакомиться в библиотеке Института программных систем РАН.
Автореферат разослан «
»
2004 г.
Ученый секретарь Диссертационного .
совета Д002.084.01, ^-^фцф ^-С. М. Пономарева кандидат технических наук
Краткое содержание работы,
Актуальность темы
Последние годы в Интернет существенно возросла потребность в интерактивных системах. Все чаще перед разработчиками информационных ресурсов ставится задача не просто представить те или иные сведения, а построить систему, нацеленную на диалог с пользователем. Особенно это актуально для владельцев больших и, как правило, распределенных информационных ресурсов. Для крупных предприятий, корпораций и ведомств решение данной проблемы - залог успешной деятельности.
После создания гипермедийной службы World Wide Web, в начале 90-х годов, Интернет получил дополнительный импульс в своем развитии. В стандарт гипертекстовой разметки HTML были включены диалоговые свойства - HTML-формы. Новая технология позволила относительно быстро и просто создавать в Интернет приложения с элементами интерактивного взаимодействия. Однако с ростом объемов гипертекстовых ресурсов, их внедрением и активным использованием во всех сферах жизни общества #ГМ£-формы перестали в полной мере справляться с возложенными на них задачами. С момента включения форм в стандарт HTML появились новые типы и структуры данных, были созданы новые технические устройства доступа к информации в сети Интернет. Поддержка и модернизация большого количества форм требует привлечения для этой работы кадров очень высокой квалификации.
С учетом изложенного, актуальным стал поиск подходов к разработке новых механизмов редактирования данных, основанных на традиционных технологиях, простых в реализации для разработчика и пользователя, но покрывающих значительную часть современных потребностей интерактивного взаимодействия с Web-приложениями.
Цель диссертационной работы
Целью диссертационной работы, выполняемой в рамках проекта, направленного на поиск механизмов, моделей и программных средств интеграции информационных ресурсов МГУ им. М.В. Ломоносова, является исследование, разработка и практическая реализация способов интерактивной актуализации данных в сети Интернет. Для достижения этой цели были поставлены и решены следующие задачи.
1. Разработать способ описания документов для их актуализации в сети Интернет, основанный на отделении данных от правил редактирования и внешнего вида документов.
2. На основе всестороннего анализа уже существующих и перспективных подходов к созданию средств интерактивного редактирования информационных систем в сети Интернет определить перечень требований к модели создаваемого комплекса, его проектные решения, направленные на реализацию предложенного способа описания документов.
РОС. НАЦИОНАЛЬНАЯ 1 БИБЛИОТЕКА ¡
■
3. С учетом выдвинутых требований реализовать программный комплекс интерактивного редактирования информационных систем.
4. Разработать методику взаимодействия созданного программного комплекса с распределенными интегрированными информационными системами, апробировать данную методику в среде Web.
Научная новизна работы
1. На основе всестороннего анализа существующих и перспективных подходов выявлены проблемы, возникающие при. построении инструментальных средств редактирования информационных систем в Интернет и механизмов их внедрения в интегрирующие программные комплексы, разработаны требования и предложены общие решения, основанные на простых в реализации для разработчика и пользователя технологиях, но обеспечивающие значительную часть потребностей в редактировании Web-ресурсов.
2. Предложен новый подход для определения свойств форм редактирования с раздельным описанием данных, правил редактирования и внешнего вида документов на основе XML.
3. Разработан программный комплекс, реализующий этот подход для сети Интернет.
4. Апробирована методика взаимодействия разработанного программного комплекса с информационными системами.
Практическая значимость
Представленные в настоящей работе решения позволяют значительно упростить разработку Web-модулей в интерактивных системах, предназначенных для редактирования данных. Разработчику Web-сайта. не надо заботиться о том, как принимать и обрабатывать запросы пользователя, делать проверку корректности введенных данных и отсылать ответ пользователю - все это реализует разработанная система. Разработчику необходимо лишь предоставить интерпретатору языка описание формы и обработать отредактированные пользователем данные. Пользователь во время интерактивного взаимодействия с разработанным программным комплексом получает стандартные HTML-формы и для работы с системой ему достаточно обычного WEß-браузера.
Новый язык описания форм позволяет в одном документе задавать свойства для произвольного числа форм, с указанием связей между ними и ограничений целостности вводимых данных. Интерпретатор нового языка создает Web-менеджер, который управляет навигацией по HTML-формам, контролирует процесс их заполнения и формирует результат редактирования.
Предоставляемый пользователю документ может формироваться из данных, полученных от разных систем, расположенных на удаленных компьютерах. Реализованы механизмы для обмена информацией с первоисточниками данных в процессе редактирования, что позволяет использовать систему в качестве модуля
актуализации данных в интегрированных информационных средах. Разработанная система является многоплатформенной. Весь программный комплекс реализован на основе открытых стандартов.
Результаты проведенных исследований и практических работ свидетельствуют о том, что разработаны и реализованы механизмы, модели и программное обеспечение интерактивного редактирования данных в сети Интернет, которые могут быть эффективно использованы как инструментальный комплекс (подсистема) в составе современных интегрированных систем распределенных информационных ресурсов.
На защиту выносятся следующие положения.
1. На основе исследований проблем интерактивной актуализации информационных систем в сети Интернет, систематизации подходов и практических решений на этом направлении, предложен новый подход к описанию форм редактирования документов, позволяющий отделить данные от внешнего вида документа и добавлять к его описанию правила редактирования.
2. Для реализации этого подхода разработан язык, позволяющий описывать данные, правила редактирования документов и их внешнее представление. Создан интерпретатор нового, языка на основе ЖЕВ-технологий для использования в сети Интернет.
3. Разработана методика интеграции интерпретаторов языка описания форм с информационными системами, которая прошла практическую апробацию в реально эксплуатируемых на сети MSUNETпрограммных комплексах.
Апробация работы и публикации.
По материалам диссертации опубликовано 7 работ.
Основные положения работы докладывались на научном семинаре «Современные сетевые технологии» (Москва, 2001 г.), VI Международной научной конференции молодых ученых и специалистов (Дубна, 2002 г.), на Международной научно-методической конференции «Новые информационные технологии в университетском образовании» (Кемерово, 2002 г.), на VII Международной конференции по электронным публикациям «Е1-РиЬ2002» (Новосибирск, 2002 г.), на Международном симпозиуме по проблемам модульных систем и сетей ГС8КЕТ '2002 (Москва, 2002 г.), на Всероссийской конференции «Технологии информационного общества - Интернет и современное общество» (Санкт-Петербург, 2002 г.), на XII Международной конференции по вычислительной механике и современным прикладным программным системам (Владимир, 2003 г.), на «Ломоносовских чтениях» (Москва, 2003 г.).
Структура и объем диссертации.
Общий объем диссертации - 151 страница, 16 рисунков и схем, 1 таблица. Список литературы содержит 62 наименований. Диссертация состоит из введения, 3 глав, заключения, 1 приложения (объемом 23 страницы).
Содержание работы
Во введении изложены цели и задачи данной работы, ее актуальность, научная новизна и практическая значимость.
В первой главе анализируются вопросы, связанные с редактированием данных информационных систем в сети Интернет. Данная задача рассматривается в рамках проблемы интеграции программных комплексов на базе корпоративного портала. В главе содержится изложение предварительных результатов исследований автора, в которых намечены подходы, механизмы и способы реализации, обсуждаемые в последующих главах. Рассматриваются задачи, возникающие при создании средств редактирования полуструктурированных данных в распределенных системах.
В начале главы анализируются проблемы актуализаций данных в сети Интернет, приводится краткий обзор этапов становления сети Интернет, позволяющий раскрыть причины разрыва между существующими сегодня интернет-технологиями для редактирования данных и современными требованиями к ним. Исследуются возможности и недостатки основного инструмента построения систем редактирования - HTML-форм.
В настоящее время основной технологией для редактирования данных в сети Интернет являются HTML-формы. Простота и удобство HTML обеспечили в сети Интернет быстрый рост числа систем с элементами интерактивности на базе HTML-форм. Однако HTML-формы унаследовали и все недостатки языка гипертекстовой разметки. В формах, так же как и в самом языке, отсутствует разделение модели данных от их представления. Это означает, что невозможно отделить процессы- подготовки формы на ее внешнее представление от формирования структуры данных, поскольку инструкции HTML, отвечающие за данные и их внешний вид на экране пользователя, логически не разделены. Простота языка HTML, описывающая- интерфейс элементов диалога, первоначально была ключом к быстрому распространению новой технологии. Однако сегодня отсутствие интеллектуальных возможностей по обработке введенных пользователем данных является главным недостатком при создании сложных информационных систем.
Далее в главе исследуются вопросы, связанные с редактированием полуструктурированных данных. Одной из проблем при разработке способов поиска и кластеризации, хранения и использования информации в электронном виде, доступ к которой осуществляется с помощью сети, является различие в степени ее структурированности. С одной стороны, информация, хранящаяся в традиционных реляционных и объектно-ориентированных базах данных, имеет строго определенную структуру. С другой стороны, аудио- и видео- ресурсы можно отнести к полностью неструктурированным. Между этими двумя массивами находится наибольший объем данных, представленных сегодня в Интернет. Такие данные получили название полуструктурированных Они могут иметь достаточно строгую, но неявную структуру. Примером могут служить текстовые документы или HTML-страницы, где некоторую информацию о
структуре могут дать теги. Для представления полуструктурированных данных в настоящее время эффективно используется XML {Extensible Markup Language), ведется разработка программного обеспечения для работы с информацией в XML-формате.
В последней части главы обсуждаются вопросы использования технологий промежуточного слоя ("middleware") при создании систем редактирования распределенных данных. В настоящее время происходит укрупнение коммерческих структур, научных и общественных организаций, что объективно влечет за собой необходимость объединения уже сложившихся информационных систем. Существуют различные подходы к созданию архитектуры ядра интегрированной информационной системы. Одним из перспективных способов является реализация интегрирующих связей на основе технологий промежуточного слоя. С учетом отмеченных факторов использование таких технологий в системе интерактивного редактирования данных представляется очень целесообразным.
В заключении главы делаются следующие выводы. Стремительный рост информационных ресурсов в сети Интернет, представленных, как правило, в полуструктурированном виде, ставит в разряд важных проблему управления ими. Кроме задач поиска и кластеризации, хранения и публикации таких данных, необходимы эффективные механизмы их актуализации. Отсутствие подобных механизмов увеличивает и без того объективно образовавшийся разрыв между новыми требованиями к технологиям редактирования данных и их реальными возможностями.
Эффективность процессов актуализации данных в интегрированных системах распределенных информационных ресурсов в настоящее время в значительной степени зависит от решения следующих задач:
• редактирование данных должно осуществляться с использованием Web-
технологий;
• необходимо обеспечить редактирование полуструктурированных данных;
• необходима поддержка механизмов редактирования данных, формируемых
из распределенных источников.
Вторая глава посвящена анализу функциональных возможностей технологий, которые могут быть положены в основу построения средств редактирования данных информационных систем в сети Интернет. Рассматриваются технологии построения интерактивных систем, промежуточного слоя, создания многоплатформенных комплексов с целью формулирования перечня требований к разрабатываемой системе.
В начале главы представлена классификация систем редактирования данных в сети Интернет. Определяются наиболее важные характеристики таких систем.
Современные системы актуализации данных существенно изменились с момента появления первых компьютеров. В настоящее время не так часто можно встретить системы с текстовым интерфейсом. Ресурсоемкий для первых ЭВМ графический интерфейс занимает сегодня незначительную долю ресурсов современных процессоров и памяти. Проникновение сети Интернет во все сферы
деятельности человека оказало сильное влияние на развитие механизмов и технологий проектирования и сопровождения систем, актуализации данных. Средства редактирования, используемые сегодня в Интернет, классифицированы по следующим признакам.
• Удаленность от источника данных:
- системы для редактирования локальных данных;
- системы для редактирования удаленных данных.
• Степень масштабируемости системы:
- данные расположены на одном компьютере;
- данные расположены на нескольких компьютерах.
• Вид интерфейса системы:
- текстовый интерфейс;
- графический интерфейс.
• Тип используемой операционной системы.
На основании анализа указанных признаков отмечается, что целесообразна разработка модулей редактирования данных информационных систем с возможностями как локального, так и удаленного доступа к информации, обладающей свойством многоплатформенности, где в качестве коммуникационных механизмов предпочтительнее использовать интернет-технологии, а для разработки пользовательского интерфейса - технологии Web. Кроме того, возможность системы работать с распределенными объектами в сети позволит расширить класс задач, решаемых программными комплексами, включая их использование в составе интегрированных информационных систем.
Далее во второй главе рассмотрены технологии, расширяющие возможности HTML-форм и предлагающие альтернативные способы построения форм для реализации в Интернет, механизмы создания распределенных и многоплатформенных систем редактирования.
Быстрый рост Web и потребность в интерактивных системах способствовали появлению нескольких конкурирующих технологий, расширяющих интерактивные свойства HTML-форм или предлагающие альтернативные механизмы создания форм для сети Интернет. Среди них наибольшую популярность завоевали следующие:
• средства подготовки сценариев JavaScript, VBScript, Dynamic HTML;
• Лауд-апплеты;
• элементыЛ^пеХ.
JavaScript, VBScript и DHTML представляют собой языки подготовки сценариев, код которых встраивается непосредственно в HTML-файл. Сценарии исполняются Web-браузером в процессе отображения документа и обеспечивают его динамическое изменение в ответ на различные события. Они проектировались как средства первоначальной обработки результатов, для оформления документов и создания динамических эффектов. По замыслу разработчиков они должны использоваться только во вспомогательных целях, поэтому в них отсутствуют средства для работы с файлами, возможности сетевого взаимодействия.
JavaScript и VBScript являются "технологиями-близнецами" с одинаковыми задачами и способами их решения, поэтому в данной работе рассматривается только технология JavaScript, получившая наибольшее распространение.
JavaScript- это язык программирования, предназначенный для написания сценариев, работающих как на стороне клиента, так и на стороне сервера. Web-браузер, работающий на компьютере-клиенте, формирует среду, в которой JavaScript имеет доступ к объектам, представляющим собой окна, меню, диалоги, текстовые области, фреймы,. и ввод-вывод в йРеб-странину. Web-браузер позволяет присоединять сценарии на языке JavaScript к таким событиям, как загрузка и выгрузка страниц и графических образов, нажатие клавиш и движение мыши, выбор текста и пересылка форм. При этом программный код сценариев реагирует только на события и поэтому не требует написания главной программы.
DHTML (Dynamic HTML) - это набор технологий, работающих на стороне клиента и призванных преодолеть статичность традиционных FTeA-страниц. Точнее, это технологии, которые обеспечивают динамическое формирование FFefc-странины в процессе ее загрузки, и динамическое изменение Web-стратщы. в ответ на действия пользователя.
Уауа-апплеты - это небольшие программы на языке Java, которые размещаются на серверах Интернет, передаются клиенту по сети, автоматически устанавливаются и запускаются на месте, как часть документа WWW.
ActiveX - это небольшие программы, которые выполняются в среде Web-браузера и очень похожи на Java-апплеты. Приложения ActiveX могут выполнять операции арифметики указателей. Это означает, что память компьютера-клиента оказывается доступной для управления извне, что может оказаться небезопасным в случае использования неизвестной программы.
ActiveX в корпоративных сетях обеспечивает дополнительные преимущества по сравнению со многими технологиями, в том числе с Java. ActiveX позволяет разработчикам использовать встроенные возможности операционной системы Windows. Поскольку дополнительная среда для этих приложений не требуется, программы ActiveX могут обращаться к файлам и выполнять действия, характерные для настольных приложений. Для частных корпоративных сетей, в которых установлены дополнительные средства безопасности, эта технология может успешно использоваться. В то же время возможность работы с файлами в Интернет может стать причиной нарушения доступа к конфиденциальной информации в сети. Схема безопасности ActiveX может оказаться недейственной, когда пользователи загружают управляющие элементы из World Wide Web, особенно из неизвестных источников.
Описанные подходы требуют изменения в клиентском программном обеспечении (Web-браузере). При этом ни одна из перечисленных технологий не стала стандартом в расширении возможностей HTML-форм и либо поддерживается не всеми производителями программного обеспечения (ActiveX), либо имеет различные реализации, несовместимые друг с другом (DHTML, JavaScript). Отсюда следует вывод, что их применение в системах, рассчитанных на значительное число пользователей, обладающих стандартными Web-браузерами, значительно затруднено. В связи с изложенными доводами наиболее
подходящими к использованию в качестве базы для реализации механизмов интерактивности в системах редактирования в Интернет в настоящее время остаются HTML-формы.
Далее во второй главе представлены технологии и сервисы промежуточного слоя, позволяющие решать задачи, связанные с редактированием распределенных данных, изложенные в первой главе. На сегодняшний день наибольшее распространение получили три основные службы, обеспечивающие работу с распределенными объектами в сети: CORBA, RMI и СОМ. Каждая из них использует свои сетевые технологии, однако все они реализуют одну и ту же функцию - прозрачность приложения. Вместе с тем, не все продукты промежуточного слоя могут использоваться в качестве среды взаимодействия объектов в крупной распределенной информационной системе. Такие ограничения определяются одним из основных требований к подобного сорта системам - необходимостью использовать программные продукты и технологии, удовлетворяющие международным и промышленным стандартам в области открытых информационных систем.
В данной работе ставится задача реализовать механизмы, позволяющие внедрить систему редактирования данных в интегрирующий программный комплекс, построенный на базе технологий распределенных объектов. Для этой цели наиболее предпочтительней использовать CORBA. Эта технология не зависит ни от операционной системы, ни от языка программирования, и поэтому считается самой открытой службой распределенных объектов из перечисленных выше. Она представляет собой идеальный выбор при интеграции систем, созданных с использованием нескольких языков программирования. Использование других технологий затруднительно, поскольку СОМ - закрытая технология, a RMI предполагает, что все удаленные системы написаны на языке программирования Java.
Для решения задач многоплатформенности разрабатываются две технологии .Net и Java. Платформа .Net, основздшая на DCOM, применяется в среде Windows и в настоящее время не поддерживается другими операционными системами. Ее тесная интеграция с Windows обеспечивает дополнительную гибкость систем, построенных исключительно на этой платформе. Таким образом, сегодня доступна только одна платформа для разработки многоплатформенных систем - Java, виртуальная машина которой реализована для всех популярных операционных систем. Java-платформа активно развивается и совершенствуется различными производителями.
В конце главы автором делаются выводы и предлагается проектное решение разрабатываемой системы. Анализ функциональных возможностей, описанных в данной главе технологий для решения задач редактирования данных информационных систем в Интернет, позволяет сделать вывод о том, что разрабатываемая система должна обладать возможностью редактирования полуструктурированных данных. Необходимо предусмотреть механизмы, позволяющие внедрить систему редактирования данных в интегрирующий программный комплекс, построенный на базе технологий распределенных объектов. Для более гибкого использования системы и решения вопросов
масштабирования требуются подходы, основанные на многоплатформенных технологиях.
Для решения поставленных задач, с учетом приведенных выше тенденций, следует отдать предпочтение языку Java для создания кросс--платформенных решений, технологии CORBA для взаимодействия удаленных объектов, метаязыку XML для представления разноструктурированных данных. Интерфейс системы должен быть графическим, а программный комплекс -обладать возможностью удаленного редактирования. Эти две задачи предпочтительно решать на основе лКеб-технологий. Использование HTML-fyopu упростит построение системы доступа к данным и расширит число пользователей, так как пользователю достаточно иметь сколь угодно простой Web-браузер на любой операционной системе.
На основании изложенного выше основные положения проектного решения разрабатываемой системы можно сформулировать следующим образом.
Программный комплекс должен состоять из языка описания форм и его интерпретатора. Язык следует разрабатывать на основе метаязыка XML. Интерпретатор для сети Интернет следует спроектировать на базе Web-технологий, с использованием HTML-форм. В качестве механизмов интеграции разрабатываемого комплекса предлагается использовать сервер подключаемых процедур на CORBA, позволяющий напрямую взаимодействовать с распределенными объектами в процессе обработки результатов редактирования формы пользователем. Переносимость и масштабируемость системе должны обеспечить Уауд-платформа и технология CORBA.
Более детальному описанию реализации этого проектного решения посвящена следующая, третья глава.
Третья глава посвящена описанию разработанного автором способа описания документов для их актуализации. Рассматривается язык ProXForms, его интерпретатор для редактирования данных в сети Интернет. Предлагается методика интеграции произвольного интерпретатора данного языка с распределенными интегрированными информационными системами. Приводятся результаты тестирования и внедрения разработанной системы в программный комплекс управления содержанием Web-сайтов [7].
Язык описания форм ProXForms. Разработанный автором язык предназначен для описания данных, требующих изменения, для их представления, задания начальных значений и значений по умолчанию. ProXForms разработан на основе XML. Архитектура языка включает четыре раздела: описание модели данных, описание интерфейса, начальные данные и данные по умолчанию. Каждый раздел выделен соответственно тегами <model>, <representation>, <instance >и<instance-default>.
Модель описания данных предназначена для задания типов данных и переменных, доступных для редактирования. Язык позволяет описывать простые и сложные типы данных.
Простые типы в языке ProXForms представлены только типом String. Однако конструкции языка позволяют накладывать ограничения на вводимые данные, что существенно расширяет возможности по созданию новых простых
типов. При задании переменной типа String с помощью регулярных выражений существует возможность задать ограничения на возможные значения.
Сложный тип в ProXForms объединяет конечное число массивов простых или сложных типов. Сложные типы задаются тегом <complexType>, в атрибуте type которого указывается название нового типа. Это название может использоваться для задания массива элементов этого типа. Каждый массив, входящий в состав сложного типа, определяется тегом <element>, дочерним к <complexType>. В его атрибутах указывается название, тип, размеры и ограничения на ввод.
Нижняя граница массива может иметь целые значения, начиная с нуля. Нулевой элемент не доступен для редактирования. Если после редактирования в массиве остался только нулевой элемент, в результат этот массив не выводится.
В описании сложных типов для определения компонент, задание которых выбирается из списка, используются специальные теги для задания списка значений.
В языке описания форм ProXForms в разделе данных обязательно должен присутствовать сложный тип, с которого начинается разбор описания данных. Этот тип выделяется специальным тегом <main>. Массивы, перечисляемые в типе main, выделяются тегом <variable> вместо тега <element> и называются "переменными". Раздел описания данных всегда замыкается главным типом.
Раздел описания интерфейса тесно связан с разделом описания данных. В нем содержится информация о том, каким образом данные из модели описания данных будут отображаться на экранах пользователей. Интерфейс каждого сложного типа задается с помощью тега <interface>, в атрибуте type которого указывается название типа. Каждому массиву, входящему в состав сложного типа, ставится в соответствие один из возможных элементов интерфейса. Если массив имеет сложный тип, то элемент интерфейса определяется однозначно - <Нпк>, который на экране пользователя будет представляться кнопкой, текст на кнопке будет браться из атрибута label. Если же массив имеет тип String, то элемент интерфейса может быть любым, за исключением тега <Нпк >: текстовым полем (<textbox>), паролем (<password>), выпадающим списком возможных значений (<combobox>), для выбора нескольких значений из конечного списка (<selectMultiple>), переключателем (<radiobox >), флажком (<checkbox >).
Для каждого элемента интерфейса указывается название массива (rej), внешний вид которого он описывает. Каждый элемент интерфейса может иметь два дочерних тега для задания надписи (<caption>) и всплывающей подсказки (<help>).
Так же, как и в первом разделе, главный тип выделяется тегом <main>. Внешний вид переменных задается так же, как и для массивов сложных типов с небольшими отличиями. Тег <Нпк> заменяется на <bind>, а в атрибутах элементов интерфейса и <bind> указывается название (name) и тип (type) соответствующей переменной из модели описания данных. Если в описании интерфейса сложного типа каждому массиву, содержащемуся в типе, должен соответствовать один из тегов возможных элементов интерфейса, то для главного типа это не является обязательным. Таким способом в разделе описания
интерфейса можно определять, какие переменные из модели описания данных необходимо редактировать, а какие - нет.
Раздел РюХЕотя-докумета, описывающий начальные данные и значения по умолчанию формируются на основе модели описания данных и раздела их представления в виде ХМЬ-документа, где название тегов берется из названия типов и переменных, предназначенных для редактирования.
В РгоХЕогтя существуют две категории активных данных - ограничения и триггеры. Ограничения являются декларативными утверждениями, истинность которых контролируется системой. Триггеры - это автоматические действия, которые выполняются каждый раз при возникновении определенного события или условия.
Активные данные позволяют добавить в процесс обработки данных внешние процедуры. С помощью предоставляемого СОЖ4-интерфейса, внешние процедуры могут получать и изменять данные серверного приложения. Внешние процедуры имеют возможность получать данные из внешних источников, например, баз данных, что позволяет осуществлять более гибкую настройку процесса обработки данных, полученных от клиента.
Далее приводятся и доказываются утверждения, обосновывающие ограничения для работы триггеров и определяющих область допустимых ХМЬ-документов для редактирования системой РгоХЕогтя.
Определение 1. Обобщенным ХМЬ-документом будем называть ХМЬ-документ без атрибутов, где все текстовые поля являются значениями соответствующихтегов.
Теорема. ЛюбойХМЬ-документ может быть описан на языке описания форм РгоХЕогтя.
Следствие. Любой ХМЬ-документ может быть отредактирован программным комплексом РгоХЕогтя.
Определение 2. Модель триггеров называется неразрешимой, если существует структура данных с определенными триггерами над элементами этой структуры и элемент этой структуры, после изменения значения которого действия триггеров не завершатся за конечное число шагов.
Рассмотрим модель триггеров для древовидной структуры данных, где изменение значения дочернего узла вызывает триггеры на изменение родительского узла. Если для описанной модели триггеры родительских узлов могут менять значение дочерних, то модель неразрешима. Иными словами, справедливо следующее утверждение:
Утверждение. Существует структура данных, модель триггеров и элемент этой структуры, после изменения которого«действия триггеров не завершатся за конечное число шагов.
Данное утверждение обосновывает ограничения, наложенные на реализацию триггеров в разработанной системе.
Интерпретатор РгоХЕогтя для сети Интернет. Интерпретатор реализует механизмы обработки и выполнения инструкций РгоХЕогтя, а на их основе организует и координирует взаимодействие пользователя с сервером в процессе редактирования данных с помощью Жеб-браузера В ходе разбора инструкций
языка ProXForms создаются статические и динамические объекты для клиентской и серверной части приложения.
Динамические объекты - это объекты в памяти сервера для хранения текущего состояния работы пользователя с документом. Для каждого пользователя на сервере заводится сессия, с которой связываются все динамические объекты. Продолжительность их "жизни" совпадает с продолжительностью "жизни" сессии. По завершении редактирования сессия и все объекты, связанные с ней, уничтожаются.
Статические объекты - это временные файлы для быстрой компоновки HTML-форм. В них содержится общая информация для ProXForms-документов, отличающихся лишь начальными значениями. Статические данные могут быть использованы разными сессиями и удаляются после завершения работы Web-сервера.
После создание статических и динамических объектов управление передается БРеи-менеджеру, управляющему взаимодействием клиента и сервера во время работы пользователя. Web-менеджер отвечает за навигацию по страницам, если форма многостраничная, проверку введенных данных и формирование ответа на запрос пользователя и результата редактирования РгоЛТогш-документа.
При разборе РгаЛТогтз-дркумента интерпретатором производится автоматическое разбиение форм на страницы. Каждому сложному типу выделяется отдельная страница. Существует возможность разбить страницу еще на несколько других. Для этого необходимо в разделе описания пользовательского интерфейса внутри соответствующего типа произвести деление компонент на страницы тегом <page>. В атрибутах этого тега можно задавать общие параметры будущих экранов.
Каждый экран, с которым работает пользователь, содержит одну таблицу, в ячейках которой расположены поля для редактирования. Шапка таблицы содержит название, панель навигации по страницам и панель с информацией, в какой части документа находится пользователь.
Если сложный тип разбит на несколько страниц, то в панели навигации для каждой создается соответствующая ссылка. Причем ссылки наделены механизмом оповещения об ошибках и их быстром нахождении. Если на странице при заполнении были совершены ошибки, то соответствующая ссылка обводится красной рамкой и отображается количество ошибок. При попадании на такой экран для каждого массива, содержащего неверно заполненные поля, соответствующий элемент массива становится активным. Таким образом, пользователю не придется просматривать все элементы массива в поисках неправильно заполненных полей. Под каждым полем с ошибкой выводится сообщение об ошибке.
Каждый массив сложного типа располагается в отдельной ячейке таблицы. Если все массивы, входящие в состав одного сложного типа, имеют верхнюю и нижнюю границу равную единице, то они помещаются в одну ячейку. Ячейка содержит две панели управления. В первой выводится информация о размере массива, номер текущего элемента, содержится выпадающий список с номерами
элементов массива для быстрого перемещения по ним. Если массив содержит ошибки, то вокруг выпадающего списка появляется красная рамка. Вторая панель располагается внизу ячейки и служит для добавления, удаления элементов массива и перемещения по ним.
Завершает таблицу кнопки подтверждения ввода "Submit", очистки значений полей формы "Reset", завершения работы с сохранением "Save" и без сохранения "Cancel".
После редактирования документа Web-менеджер формирует результирующий XML-документ, DTD (Document Type Definition) которого совпадает с DTD секции начальных значений.
Все модули интерпретатора языка ProXForms для Интернет были реализованы с помощью технологий платформы Java2 Enterprise Edition, в частности JSP (Java Server Pages) и Java-сервлетов. Технология JSP с возможностями поддержки технологий JavaBeans позволила разделить процессы статического и динамического наполнения документов. Шаблон документа автоматически создается с помощью JSP, а данные подставляются каждый раз, когда это необходимо, используя технологию JavaBeans. Благодаря этому, шаблоны для HTML-форм создаются на сервере лишь однажды, когда программа получает первый запрос на редактирование данного типа документа ProXForms. При этом возможность расширения библиотеки JSP-тегов позволило значительно уменьшить объем автоматически создаваемых JSP-файлов.
Активные данные (триггеры и ограничения) в ProXForms реализованы с помощью CORBA. Программа разбора AML-документов была создана на основе DOM-парсера (Document Object Model). В качестве Java-сервера для работы с технологиями JSP и /ауа-сервлетами был использован Tomcat.
Сравнение ProXForms сXForms. В настоящее время Консорциумом W3C ведутся исследования по разработке форм нового поколения XForms, которые войдут в XHTML - следующую версию языка HTML. Новые формы предполагают появление более интеллектуального Web-браузера, отвечающего за предварительную обработку информации на стороне клиента перед отправкой данных на сервер. Новые формы должны заменить традиционные и предоставить возможности по созданию и поддержке информационных систем с более гибкой и независимой от аппаратно-программной платформы обработкой пользовательских запросов.
В спецификации XForms Консорциума W3C появилась возможность описывать простые и сложные типы данных. Спецификацией предусматриваются средства контроля корректности ввода данных и вычисления в клиентской части системы. Описание данных внутри новых форм позволяет в значительной степени отказаться от скриптовых языков.
XForms предполагает предоставить возможность временно прерывать и возобновлять работу с формой без потери информации. Новые формы будут поддерживать возможность обмена данными между ГГеб-странищми Можно будет создавать как несколько форм на одной странице, так и одну форму на нескольких страницах, используя ресурсы только клиентского приложения.
Новая спецификация XForms определяет составные части новых форм, такие как управляющие элементы, а также их взаимосвязи, позволяя задавать пределы и ограничения на вводимые данные. Спецификация предоставляет возможность автоматического и предварительного заполнения полей формы.
Разработка спецификации XForms продолжается уже более четырех лет. Потребуется время на апробацию и внедрение перспективных технологий, основанных на XForms. Необходимо время на ее доработку, создание Web-браузеров с поддержкой новых возможностей. Переход к таким технологиям повлечет за собой дополнительные затраты на модернизацию систем. Вместе с тем, потребность в перспективных механизмах, представленных в спецификации XForms, существует уже сегодня.
В силу объективных причин, в первую очередь, ограничений, обусловленных использованием традиционных технологий, интерпретатор ProXForms функционально уступает будущим реализациям XForms, a конструкции языка описания форм значительно проще, чем в XForms. Однако это обстоятельство не умаляет тех преимуществ, которые уже сегодня дает пользователю применение ProXForms. Отделение данных от представления, возможности описания сложных типов данных и подключения внешних процедур при обработке запросов делают ProXForms действенным инструментом для быстрого и эффективного проектирования модулей редактирования дэдшых Web-серверов. AML-технологии, используемые в ProXForms, позволяют редактировать произвольные данные, представленные в XML-формате. При минимальных требованиях к Web-браузеру и солидном инструментарии по обработке данных на стороне сервера ProXForms сможет в будущем сосуществовать и достойно конкурировать сXForms.
Web-Интврпрвтатор ProXForms как ХМЬ-редактор. Для систем, объединяющих информационные ресурсы различных программно-аппаратных платформ, стандартом обмена данных все чаще выбирается XML. В таких системах приходится использовать стандартные инструменты или разрабатывать собственные для отображения и редактирования данных в формате XML. Язык ProXForms предлагает механизм редактирования полуструктурированных данных с "тонким" клиентом - обычным Web-браузером с поддержкой стандартных HTML-форм - и мощным сервером контроля и обработки запросов пользователя. Используя стандартные средства преобразования XML документов, становится возможным естественное отображение XML-данных в ProXForms и обратно, что упрощает использование и внедрение ProXForms в интегрирующую систему.
Отделение в ProXForms пользовательского интерфейса от данных и запись инструкций языка описания форм в XML-формате дают возможность использовать ProXForms при редактировании XML-данных. Для этого необходимо уметь преобразовывать ЛМС-данные в ProXForms и обратно. Ниже описан алгоритм редактирования AML-данных.
Каждому DTD AML-документов ставится в соответствие три документа: два (ProXForms-шаблон и XSLT-шаблон) - для преобразования исходного XML- в PraAForms-документ, и один (А51Г-шаблон-1) - для обратного отображения из ProXForms- в XML-документ. ProXForms-шабпан содержит информацию о типах
и внешнем представлении данных будущего PoJFoшs-докуменra ЛЗХГ-шаблон необходим для трансформации исходного АЖ-документа в раздел начальных значений формируемого ProXForms-дакумета. После работы пользователя с HTML-формами результат редактирования представляется в виде ЛЖ-документа, DTD которого соответствует DTD раздела описания начальных данных. Для преобразования результата к AML-документу с исходным DTD используется третий документ- XSLT- шаблон-1.
Для работы AML-редактора для каждого документа с новым DTD требуются три перечисленных выше АЗХГ-шаблона.
Аналогичный модуль преобразования может быть использован для работы с XForms-докуметами.
Результаты использования системы ProXForms. В заключительном параграфе третьей главы представлены результаты использования языка описания форм ProXForms и его №££-интерпретатора. Программный комплекс был внедрен в систему управления содержания сайтов [7].
Для решения задач управления данными, представленными в АМ£-формате, модуль администрирования был расширен программным комплексом ProXForms. На основе алгоритма редактирования АЖ-данных, рассмотренного в работе, был разработан модуль обмена документами и трансформации AML-данных модуля администрирования в ProXForms-формат и обратно.
Внедрение программного комплекса ProXForms позволило организовать более дружественный способ редактирования АЛЯ,-данных Пользователю предлагаются для заполнения Я7М,-формы, где каждое поле соответствует одному из узлов требуемого АМС-документа. При этом от пользователя не требуется знания структуры АЖ-документа и исключается возможность непреднамеренного ввода некорректного документа. Возможность задания произвольных ограничений для ProXForms-докуметов решает проблему создания более тонких настроек для произвольных разделов АЖ-документов.
Система ProXForms скрыла от пользователей структуру XML-данных, что позволило не только существенно уменьшить количество ошибок при вводе данных, но и значительно расширить число пользователей системы управления содержания Web-caina. В настоящее время система активно используется сотрудниками Московского университета для разработки специализированных ресурсов.
В Заключении представлены основные результаты исследований и практических работ, выполненных автором по теме настоящей диссертации.
Основные результаты работы
Основные результаты, полученные в ходе проведенных в диссертационной работе исследований, сформулированы в следующих положениях.
• На основе исследований проблем интерактивной актуализации информационных систем в сети Интернет, систематизации способов и практических решений на этом направлении, предложен новый подход к описанию форм редактирования документов, характеризующийся
отделением данных от внешнего вида и добавлением к описанию правил редактирования документов.
• Для реализации этого подхода разработан язык, позволяющий описывать данные, правила редактирования документов и их внешнее представление.
• Создан интерпретатор нового языка на основе 'еЬ-технологий для использования в сети Интернет.
• Разработана методика интеграции интерпретаторов языка описания форм с информационными системами, которая прошла практическую апробацию в реально эксплуатируемых на сети М8иЫЕТ (сеть МГУ им. М.В. Ломоносова) программных комплексах.
Резюмируя изложенное, можно констатировать, что представленная в настоящей диссертационной работе система актуализации данных показала целесообразность и эффективность своего использования. Она удовлетворяет требованиям, которые были сформулированы при постановке задачи. Результаты ее эксплуатации показали, что программный комплекс РгоХЕогтя может с успехом применяться в распределенных интегрированных информационных системах и имеет все предпосылки для дальнейшего развития.
Все представленные результаты получены автором самостоятельно и изложены в следующих работах.
1. В. А. Васенин, Э. Е. Долгалев Язык РгоХЕогтя на этапе эволюции ЖеЬ-технологий от #7йЯ,-форм к ХЕогтя11 Программирование №5 М: Наука, 2003. С.55-65. (Автором предложен новый подход к описанию форм редактирования документов. Описан программный комплекс, реализующий этот подход.)
2. Э. Е. Долгалев Расширение возможностей редактирования ЖеЬ-документов в Интернет и локальных сетях// Тезисы докладов Шестой научной конференции молодых ученых и специалистов ОИЯИ, Дубна, 4-9 февраля 2002 г. М.: Информационный центр ВНИИгеосистем, 2002. С.383-386.
3. Э. Е. Долгалев Язык описания форм РгоХЕогтя// Технологии высокопроизводительных информационно-вычислительных систем: Сборник статей молодых ученых./ Под ред. профессора ВАВасенина. Переславль-Залесский: «Университет города Переславля», 2003. С.65-75.
4. Э.Е. Долгалев Язык описания форм РгоХЕогтя как инструмент в задаче интеграции информационных ресурсов// Тезисы Международной научно-методической конференции «Новые информационные технологии в университетском образовании», Кемерово 20-22 марта 2002 г. К.: КемГУ, ИДМИ, 2002. С.197-198.
5. Э.Е. Долгалев Язык описания форм РгоХЕогтя и интерактивные ЖеЬ-системы// Международный симпозиум по проблемам модульных систем и сетей 1С8МБТ2002, Моска 2002 г. М.: Институт ядерных исследований Российской академии наук, 2003. С. 130-135.
6. Э. Е. Долгалев Редактирование полуструктурированных данных с помощью языка описания форм РгоХЕогтя// Труды V Всероссийской объединенной конференции «Технологии информационного общества - Интернет
и современное общество», Санкт-Петербург 25-29 ноября 2002 г. Спб.: С.-Петерб. ун-та, 2002. С.88-91.
7. Э. Е. Долгалев, А. А. Коршунов Редактирование документов и управление содержанием в среде Web// Тезисы докладов XII Международной конференции по вычислительной механике и современным прикладным программным системам (ВМСППС'2003), Владимир 30 июня-5 июля 2003 г. М: МАИ, 2003. С.247. (Автором предложена методика интеграции разработанной системы с программным комплексом управления содержанием сайтов. Изложены основные результаты апробации данной методики.)
Сдано в печать 12 августа 2004г. Заказ № 459. Тираж 70 экз. Отпечатано: 000 «Спринт-Принт» г. Москва, ул. Краснобогатырская, 92 тел.: 963-41-11,964-31-39
# 15 471
Оглавление автор диссертации — кандидата технических наук Долгалев, Эдуард Евгеньевич
ВВЕДЕНИЕ.
ГЛАВА 1. РЕДАКТИРОВАНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ В
СЕТИ ИНТЕРНЕТ.
1. Интернет. Актуализация данных в Интернет.
2. Разноструктурированные данные.
3. Редактирование распределенных данных.
4. Вывод.
ГЛАВА 2. ТЕХНОЛОГИИ ПОСТРОЕНИЯ СИСТЕМ
РЕДАКТИРОВАНИЯ ДАННЫХ В СЕТИ ИНТЕРНЕТ.
1. Классификация систем редактирования.
2. Технологии построения интерактивных форм в Интернет.
3. Технологии распределенных объектов.
4. Многоплатформенность.
5. Вывод.
ГЛАВА 3. ПРОГРАММНЫЙ КОМПЛЕКС ДЛЯ ИНТЕРАКТИВНОГО
РЕДАКТИРОВАНИЯ ДАННЫХ В СЕТИ ИНТЕРНЕТ.
1. Требования к разрабатываемой системе.
2. Язык описания форм ProXForms.
• 3. Интерпретатор ProXForms для Интернет.
4. Оценка эффективности программного комплекса.
5. Редактирование полу структурированных и распределенных данных с помощью ProXForms.
6. Сравнение ProXForms с XForms.
7. Результаты апробации системы ProXForms.
Введение 2004 год, диссертация по информатике, вычислительной технике и управлению, Долгалев, Эдуард Евгеньевич
Актуальность темы
Последние годы в сети Интернет существенно возросла потребность в интерактивных системах. Все чаще перед разработчиками информационных ресурсов ставится задача не просто представить те или иные сведения, а построить систему, нацеленную на диалог с пользователем. Особенно это обстоятельство актуально для владельцев больших и, как правило, распределенных информационных ресурсов. Для крупных предприятий, корпораций и ведомств решение этой проблемы -залог успешной деятельности. Интерактивные формы взаимодействия не только улучшают работу пользователей, но и активно стимулируют участие в деятельности по созданию и развитию информационных ресурсов значительно большего числа сотрудников, не имеющих прямого отношения к вопросам администрирования.
С подобными проблемами сталкиваются, например, в Московском государственном университете им. М.В. Ломоносова, являющимся производителем и владельцем крупного распределенного информационного ресурса. Сегодня РГеб-система МГУ представляет информацию, размещенную более чем на 300 сайтах отдельных структурных подразделений университета, связанных гипертекстовыми ссылками. РГеб-система объединяет разнородные данные: базы данных и знаний по отдельным направлениям исследований, HTML- и XML-ресурсы, аудио-видео материалы. При этом, если раньше стояла задача только качественного информационного наполнения, то сегодня требования изменились. Повышение качества информационной поддержки всех сфер деятельности университета, в первую очередь, организации учебного процесса, научных исследований, административно-управленческой и инженерно-хозяйственной деятельности требует создания единой интегрированной системы распределенных информационных ресурсов на основе внедрения современных информационных технологий. Необходимо оперативно обновлять содержание сайтов, развивать информационную Web-систему, включать в ее состав интерактивные программы, обеспечивающие эффективную работу пользователя с одним из самых крупных научно-информационных сетевых ресурсов страны [1].
Под интерактивными системами в контексте данной работы будем понимать программные комплексы, решающие задачи обновления информации посредством активного диалогового взаимодействия с пользователем в процессе редактирования форм и данных. Взаимодействие с пользователем может выражаться в виде сообщений о допущенных ошибках при вводе, о нарушении каких-либо ограничений целостности. Формы представляют собой механизмы, позволяющие изменять значения полей электронных документов. В дальнейшем мы будем рассматривать технологии работы с формами, имея в виду их применение в сети Интернет.
После создания гипермедийной службы World Wide Web, в начале 90-х годов, Интернет получил дополнительный импульс в своем развитии. В стандарт гипертекстовой разметки HTML были включены диалоговые свойства - HTML-формы. Посредством форм стала возможна передача параметров внешним программам. Компактное описание форм, небольшой набор элементов интерфейса, несмотря на отсутствие возможностей обратной связи с пользователями в процессе их заполнения, позволили разработчикам систем редактирования активно развивать это направление, в первую очередь, в сторону повышения уровня интерактивности. HTML-формы до сегодняшнего дня остаются основным инструментом в создании интерактивных систем редактирования данных в сети Интернет. Однако в использовании HTML-форм существует ряд проблем.
Во-первых, HTML-формы не обладают механизмами взаимодействия с пользователями в процессе редактирования данных без участия сервера. Этот недостаток разработчики пытались восполнить новыми инструментами, такими, как DHTML, JavaScript, VBScript и т. д. Но ни один из них не стал стандартом в этой области и не получил такого распространения, как HTML-формы.
Во-вторых, последнее крупное обновление спецификации HTML-форм прошло более десяти лет назад. С момента включения форм в стандарт HTML появились новые типы и структуры данных, были созданы новые технические устройства доступа к информации в сети Интернет. Работа с данными стала возможна не только с настольного персонального компьютера, но и с карманного компьютера или сотового телефона. За последнее десятилетие значительно увеличилась пропускная способность каналов связи, производительность компьютеров возросла на несколько порядков. Возможности современного РГеб-браузера, основного инструмента работы с информацией в сети Интернет, позволяют сегодня не только отображать простой набор элементов, но и брать на себя значительную часть нагрузки предварительных вычислений, уменьшая при этом нагрузку на Web-серверы.
Таким образом, с начала 90-х годов существенно изменились аппаратные возможности, появились новые задачи для систем интерактивного редактирования данных в сети Интернет. Сложилась ситуация, когда простота и ограниченный набор возможностей HTML-форм стали узким местом в сложных системах. В 1999 году консорциум W3C1 (World Wide Web Consortium) приступил к координации
1 http.V/www. w3c.org деятельности по разработке новой спецификации обработки форм. Проект получил название XForms.
Представленный на обсуждение в 2001 году проект XForms 1.0 [2] определяет новый тип Web-форм, использующий такие технологии, как XML {Extensible Markup Language — расширяемый язык разметки) [3], SMIL (,Synchronized Multimedia Integration Language — язык описания синхронизируемого мультимедийного контента) [4] и CSS (Cascading Style Sheets — каскадные таблицы стилей) [5]. Новые формы призваны заменить традиционные и стать основой создания и поддержки информационных систем с более гибкой и независимой от аппаратно-программной платформы обработкой пользовательских запросов. В XHTML (Extensible HyperText Markup Language - расширяемый язык гипертекстовой разметки) [6], новой версии языка гипертекстовой разметки HTML, XForms заменит //TML-формы.
Разработка спецификации XForms продолжается уже более четырех лет. Необходимо время на апробацию и внедрение перспективных технологий, основанных на XForms, на их доработку и создание Web-браузеров с поддержкой новых возможностей. Переход к таким технологиям повлечет за собой дополнительные затраты на основательную модернизацию существующих систем. Вместе с тем, потребность в перспективных механизмах существует уже сегодня [7].
С учетом изложенного, актуальным стал поиск подходов к разработке механизмов редактирования данных, основанных на традиционных технологиях, простых в применении для разработчика и пользователя, но покрывающих значительную часть современных потребностей интерактивного взаимодействия с ^^-приложениями.
Цель и задачи работы
Целью диссертационной работы, выполняемой в рамках проекта, направленного на поиск механизмов, моделей и программных средств интеграции информационных ресурсов МГУ им. М.В. Ломоносова [1], является исследование, разработка и практическая реализация способов интерактивной актуализации данных в сети Интернет. Для достижения этой цели были поставлены следующие задачи.
1. Разработать способ описания документов для их актуализации в сети Интернет, основанный на отделении данных от правил редактирования и внешнего вида документов.
2. На основе всестороннего анализа уже существующих и перспективных подходов к созданию средств интерактивного редактирования информационных систем в сети Интернет определить перечень требований к модели создаваемого комплекса, его проектные решения, направленные на реализацию предложенного способа описания документов.
3. С учетом выдвинутых требований реализовать программный комплекс интерактивного редактирования информационных систем.
4. Разработать методику взаимодействия созданного программного комплекса с распределенными интегрированными информационными системами, апробировать данную методику в среде Web.
Основные результаты работы
1. На основе исследований проблем интерактивной актуализации информационных систем в сети Интернет, систематизации подходов и практических решений на этом направлении, предложен новый подход к описанию форм редактирования документов, позволяющий отделить данные от внешнего вида документа и добавлять к его описанию правила редактирования.
2. Для реализации этого подхода разработан язык, позволяющий описывать данные, правила редактирования документов и их внешнее представление. Создан интерпретатор нового языка на основе Web-TQxnonoruvL для использования в сети Интернет.
3. Разработана методика интеграции интерпретаторов языка описания форм с информационными системами, которая прошла практическую апробацию в реально эксплуатируемых на сети MSUNET (сеть МГУ им. М.В. Ломоносова) программных комплексах.
Научная новизна работы
Научная новизна диссертационной работы выражается в следующих положениях:
• на основе всестороннего анализа существующих и перспективных подходов выявлены проблемы, возникающие при построении инструментальных средств редактирования информационных систем в Интернет и механизмов их внедрения в интегрирующие программные комплексы, разработаны требования и предложены общие решения, основанные на простых в реализации для разработчика и пользователя технологиях, но обеспечивающие значительную часть потребностей в редактировании Web-ресурсов;
• предложен новый подход для определения свойств форм редактирования с раздельным описанием данных, правил редактирования и внешнего вида документов на основе XML;
• разработан программный комплекс, реализующий этот подход для сети Интернет;
• апробирована методика взаимодействия разработанного программного комплекса с информационными системами.
Практическая значимость
Представленные в настоящей работе решения позволяют значительно упростить разработку FFeb-модулей в интерактивных системах, предназначенных для редактирования данных. Разработчику Web-сайта не надо заботиться о том, как принимать и обрабатывать запросы пользователя, делать проверку корректности введенных данных и отсылать ответ пользователю - все это реализует разработанная система. Разработчику необходимо лишь предоставить интерпретатору языка описание формы и обработать отредактированные пользователем данные. Пользователь во время интерактивного взаимодействия с разработанным программным комплексом получает стандартные HTML-формы и для работы с системой ему достаточно обычного Web-браузера.
Новый язык описания форм позволяет в одном документе задавать свойства для произвольного числа форм, с указанием связей между ними и ограничений целостности вводимых данных. Интерпретатор нового языка создает РРеЬ-менеджер, который управляет навигацией по HTML-формам, контролирует процесс их заполнения и формирует результат редактирования.
Предоставляемый пользователю документ может формироваться из данных, полученных от разных систем, расположенных на удаленных компьютерах. Реализованы механизмы для обмена информацией с первоисточниками данных в процессе редактирования, что позволяет использовать систему в качестве модуля актуализации данных в интегрированных информационных средах. Разработанная система является многоплатформенной. Весь программный комплекс реализован на основе открытых стандартов.
Результаты проведенных исследований и практических работ свидетельствуют о том, что разработаны и реализованы механизмы, модели и программное обеспечение интерактивного редактирования данных в сети Интернет, которые могут быть эффективно использованы как инструментальный комплекс (подсистема) в составе современных интегрированных систем распределенных информационных ресурсов.
Доклады и публикации
Основные положения работы докладывались на научном семинаре «Современные сетевые технологии» (Москва, МГУ 2001 г.), на VI Международной научной конференции молодых ученых и специалистов (Дубна, 2002 г.), на Международной научно-методической конференции «Новые информационные технологии в университетском образовании» (Кемерово, 2002 г.), на VII Международной конференции по электронным публикациям «Е1-РиЬ2002» (Новосибирск, 2002 г.), на Международном симпозиуме по проблемам модульных систем и сетей ICSNET '2002 (Москва, 2002 г.), на Всероссийской конференции «Технологии информационного общества - Интернет и современное общество» (Санкт-Петербург, 2002 г.), на XII Международной конференции по вычислительной механике и современным прикладным программным системам (Владимир, 2003 г.), на «Ломоносовских чтениях» (Москва, 2003 г.).
По материалам диссертации опубликовано 7 печатных работ.
Структура и объем диссертации
Работа состоит из введения, трех глав, заключения, списка литературы и приложения (объемом 21 страницы). Общий объем диссертации 149 страниц, включая приложение, 17 рисунков и схем, 1 таблица. Список литературы содержит 62 наименования.
Краткое содержание работы
В первой главе анализируются вопросы, связанные с редактированием данных информационных систем в сети Интернет. Данная задача рассматривается в рамках проблемы интеграции программных комплексов на базе корпоративного портала. В главе содержится изложение предварительных результатов исследований автора, в которых намечены подходы, механизмы и способы их реализации, обсуждаемые в последующих главах. Рассматриваются задачи, возникающие при создании средств редактирования полуструктурированных данных в распределенных системах.
Вторая глава посвящена анализу функциональных возможностей технологий, которые могут быть положены в основу построения средств редактирования данных информационных систем в сети Интернет. Рассматриваются технологии построения интерактивных систем, промежуточного слоя, создания многоплатформенных комплексов с целью формулирования перечня требований к разрабатываемой системе.
Третья глава посвящена описанию разработанного автором способа описания документов для их актуализации. Рассматривается язык ProXFormsy его интерпретатор для редактирования данных в сети Интернет. Предлагается методика интеграции произвольного интерпретатора данного языка с распределенными интегрированными информационными системами. Приводятся результаты тестирования и внедрения разработанной системы.
В заключении кратко формулируются основные результаты диссертационной работы.
Заключение диссертация на тему "Инструментальные средства интерактивного редактирования данных в сети Интернет"
6.4 Вывод
Разработка спецификации XForms продолжается уже четырех лет. Потребуется еще немало времени на апробацию и внедрение перспективных технологий, основанных на XForms. Необходимо время на ее доработку, создание Web-браузеров с поддержкой новых возможностей. Переход к таким технологиям повлечет за собой дополнительные затраты на модернизацию систем. XForms ждет испытание временем. Вместе с тем, потребность в перспективных механизмах, представленных в спецификации XForms, существует уже сегодня. С учетом изложенного, актуальным является поиск подходов к разработке новых механизмов интерактивного редактирования данных, основанных на традиционных технологиях, простых в реализации для пользователя, но покрывающих часть современных потребностей интерактивного взаимодействия с Web-приложениями. Практической реализацией одного из таких подходов является представленный в настоящей работе программный комплекс.
7. Результаты апробации системы ProXForms
Представленный в настоящей работе программный комплекс, включая язык ProxForms описания форм и его интерпретатор для сети Интернет, был использован в качестве модуля редактирования XML-данных в составе системы управления содержанием РГеб-сайтов PortMan [60,61], а также для взаимодействия с модулем администрирования общественно-информационного сайта "Война в Ираке".
7.1 Система управления содержанием сайта PortMan
Система управления содержанием Web-сштов PortMan представляет собой набор инструментальных средств для построения корпоративного портала. В качестве формы представления документов в системе используется XML, что делает систему более гибкой для задания данных, определяемых с учетом специфики конкретной задачи. Использование языка преобразований XSLT решает проблему повторного использования документов. Иерархическая структура организации материалов предоставляет возможность работать одновременно с группой материалов как с одним документом.
Система управления содержания Web-сайта функционально делится на два модуля: модуль управления структурой сайта и материалами, а также модуль визуализации страниц по запросу пользователей. Первый модуль предназначен для организации процесса управления структурой сайта и работы с размещаемыми на нем документами. Второй модуль обеспечивает визуализацию запрошенной пользователем страницы.
Для решения задач управления данными, представленными в XML-формате, в модуль администрирования был внедрен программный комплекс ProXForms. На основе алгоритма редактирования ХМ£-данных (гл. 3, § 5.1) разработан модуль обмена документами и трансформации AML-данных модуля администрирования в ProXForms-формат и обратно.
Начальные данные
Преобразования
ProXForms документ
XML Schema N
ХМ1
Обратное преобразовс model. к»Н represents tton.xsit instance.xslt instance, xs It -1
ProXForms model
ProXForms representation
ProXForms instance ние результата pec актирования в XML-документ
Рисунок 17. Схема преобразования XML-документов в ProXForms и обратно
В системе управления содержанием сайта для каждого типа XML-документа описание его модели данных хранилось в виде XML-схемы. Таким образом, на основании XA/L-доку мента и его XML-схемы необходимо было формировать ProXForms-jxoKyMem (рис. 17). Были разработаны XSLL-шаблоны. Шаблон model.xslt преобразует схему документа в ProXForms-oxmcmiwQ модели данных. Затем из описания модели данных с помощью шаблона representation.xslt создается описание внешнего вида будущей формы. Шаблон instance.xslt создает секцию начальных значений ProXForms-документа.
В данной архитектуре все шаблоны универсальны и могут быть применены к любым XML-доку ментам. Для определения уникального интерфейса заданного типа документа создавался отдельный шаблон генерации внешнего вида, который хранился в системе управления содержанием сайта вместе с XML-схемой.
До внедрения системы ProXForms в программный комплекс PortMan администратору предоставлялась возможность изменять содержание сайта, внося исправления в полный текст соответствующего XML-документа. Такой подход требовал от пользователя модуля администрирования дополнительных навыков работы с XML-технологиями. Кроме того, не исключалась возможность появления ошибок, как в структуре документа, так и в его содержании, поскольку за корректный набор тегов следил сам пользователь. Правильность введенных документов можно было проверить только при размещении их в хранилище системы.
Внедрение программного комплекса ProXForms позволило организовать альтернативный способ редактирования XML-д анных. Пользователю предлагаются для заполнения HTML-формы, где каждое поле соответствует одному из узлов XML-документа. При этом от пользователя не требуется знания структуры документа и исключается возможность непреднамеренного ввода некорректного документа. Кроме того, если узлы J^ML-документа имеют ограничения на вводимую информацию, система редактирования сама сообщает пользователю об этом.
Система ProXForms скрывает от пользователей структуру XML-данных, что позволяет создавать разделы сайта со сколь угодно сложной структурой соответствующих документов. Возможность задания произвольных ограничений для Рга^РЪтгау-документов решает проблему создания более тонких настроек для произвольных разделов XML-документов.
Внедрение системы ProXForms позволило не только существенно уменьшить количество ошибок при вводе данных, но и значительно расширить число пользователей системы управления содержания Web-сайта. Последнее обстоятельство особенно важно, так как система уже используется сотрудниками Московского университета для разработки специализированных ресурсов [62]. Университет обладает уникальным научным потенциалом, передовыми методиками и технологиями. От создания инструментария для быстрого размещения и редактирования материалов в сети Интернет с использованием современных технологий напрямую зависит качество и интерес научного сообщества к быстро развивающейся РРеЬ-системе МГУ.
7.2 Общественно-информационный сайт "Война в Ираке"
Сайт "Война в Ираке" был создан инициативной группой, деятельность которой поддерживалась компанией "Техно Стримм"9, для освещения политических событий в Ираке в период с 2003 по 2004 год. Его информационное наполнение было организовано с помощью интерфейса, обеспечивающего свободный доступ пользователей к хранилищу материалов для последующего их рецензирования. Публикации поступали на нескольких языках. Рецензирование и коррекцию поступающих материалов обеспечивала администрация сайта. При необходимости осуществлялся их перевод, после чего информация размещалась на сайте.
Статьи хранились в нескольких базах данных. Информация одних использовалась для публичного доступа, другие базы данных были доступны только администраторам, осуществляющим поддержку сайта.
9 http.7/www.jera.ru
Программный комплекс ProXForms был внедрен в модуль администрирования данным сайтом и использовался для решения следующих задач:
- управление информацией о пользователях;
- настройка этапов рецензирования;
- рецензирование;
- работа с новостной лентой.
Для организации взаимодействия ProXForms с модулем администрирования использовались предложенные в данной работе методы и алгоритмы редактирования распределенных и полу структурированных данных (гл. 3, § 5).
Внедрение разработанного программного комплекса позволило значительно уменьшить время на проектирование и поддержку интерактивных модулей сайта, снизить затраты на привлечение квалифицированных специалистов для выполнения этой работы. По данным независимых источников10 сайт стал одним из самых посещаемым политических ресурсов России в сети Интернет.
10 Раздел статистики посещения сайтов на www.rambler.ru и www.yandex.ru
Заключение
На основании всестороннего анализа состояния средств интерактивного редактирования данных в информационных системах, размещаемых в Интернет, подходов к созданию перспективных а этом направлении механизмов, технологий и программных комплексов сформулированы требования к ним и проектные решения, рассчитанные на создание автоматизированной системы актуализации данных Web-ресурсов сети Интернет.
Автором разработана и программно реализована многоплатформенная система редактирования полуструктурированных данных с механизмами ее эффективного встраивания в интегрированные системы распределенных программных ресурсов, построенные на основе технологий промежуточного слоя. Ядро данной системы составляют:
• язык описания форм ProXForms',
• й^-интерпретатор ProXForms.
На основе XML-формата предложена структура документов, описывающих формы редактирования текстовых данных со сложной системой ссылок. Документ описания форм делится на четыре раздела: описания данных, внешнего вида, начальных данных и значений по умолчанию, что позволяет отделить данные от их представления и организовать гибкую настройку форм редактирования.
По описанию форм интерпретатор создает шаблоны HTML-документов, для каждого пользователя организуется отдельная сессия, в которой хранится вся информация о состоянии редактируемого документа. Интерпретатор создает Жеб-менеджер, отвечающий за взаимодействия клиента с сервером. РРеб-менеджер управляет навигацией по страницам, контролирует правильность введенных данных и формирует результат по окончании работы с документом.
В представленном программном комплексе реализован модуль подключения внешних процедур для обращения к первоисточникам в процессе редактирования данных.
Предложены алгоритмы редактирования полуструктурированных и распределенных данных с помощью системы редактирования ProXForms.
Проведена работа по внедрению разработанной системы в программный комплекс управления содержанием Web-сайтов. В результате внедрения был упрощен механизм работы с JlML-документами в модуле администрирования. Система ProXForms позволила значительно уменьшить вероятность возможных ошибок при изменении содержания сайтов и расширить круг пользователей, благодаря скрытию структуры ^ML-документов. Механизмы задания различных ограничений решили проблему задания более точных требований к произвольным частям XML-доку ментов.
С учетом изложенного основными результатами работы являются следующие положения.
• На основе исследований проблем интерактивной актуализации информационных систем в сети Интернет, систематизации подходов и практических решений на этом направлении, предложен новый подход к описанию форм редактирования документов, характеризующийся отделением данных от внешнего вида и добавлением к описанию правил редактирования.
• Для реализации этого подхода разработан язык, позволяющий описывать данные, правила редактирования документов и их внешнее представление. Создан интерпретатор нового языка на основе Web-технологий для использования в сети Интернет.
• Разработана методика интеграции интерпретаторов языка описания форм с информационными системами, данная методика прошла практическую апробацию с реально эксплуатируемыми на сети MSUNET (сеть МГУ им. М.В. Ломоносова) программными комплексами.
В качестве ближайших перспектив можно выделить следующие направления развития системы:
• создание графического редактора языка ProXForms;
• разработка алгоритмов для автоматического преобразования XML-документов в РгоАУотжу-формат;
• расширение типов данных языка ProXForms, например, добавление двоичного типа данных для работы с файлами.
Библиография Долгалев, Эдуард Евгеньевич, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
1. В. А. Васенин, Э. E. Долгалев. Язык ProXForms на этапе эволюции Web-технологий от HTML-форм к XForms // Программирование N5 М.: Изд-во Наука, 2003. С. 55-65.
2. L. Kleinrock. Information Flow in Large Communication Nets - RLE Quarterly Progress Report, July 1961.
3. L. Roberts. Toward a Cooperative Network of Time-Shared Computers -Fall AFIPS Conf, Oct. 1966.
4. S. Crocker RFC001 Host software - IEEE Trans. Comm.Systems, Apr-07-1969.11. http://www.w3.org/TR/html4/ HTML12. http://www.c-i-a.com/index.htm Internet Industry Almanac
5. В. А. Садовничий, В. А. Васенин, А. А. Мокроусов, А. В. Тутубалин. Российский Интернет в цифрах и фактах-М.:Изд-во МГУ, 1999 С. 148
6. А. А. Макаров, Н. Л. Ковба, В. А. Турков. Структура трафиков научно-образовательных сетей России на канале RBNet-Teleglob. // Международная научно-методическая конференция «Новыеинформационные технологии в университетском образовании».
7. Новосибирск, 2000. С. 136-137.http://monitoring.s2s.msu.ru/
8. Word Wide Web Consortium (W3C), "XForms The NextGeneration of Web Forms", http://www.w3.org/MarkUp/Forms
9. A. Deutsch, M.Fernandez, D. Suciu. Storing Semistructured Data with STORED. http://db.cis.upenn.edu/Publications/
10. A. Deutsch, M. Fernandez, D. Florescu, A. Levy, D. Susiu. A query Language for XML. http://db.cis.upenn.edu/Publications/
11. В. Эммерих. Конструирование распределенных объектов, Москва, 2002, Изд-во Мир, 510 С.
12. В. А. Васенин, В. А. Роганов. GRACE: распределенные приложения в Internet / Открытые системы, 2001, № 5-6, с. 29-33.
13. Д.Пьюполо. OLE: создание элементов управления: пер. с англ. К.:
14. Издательская группа ВНУД997. 432 с. ISBN 5-7315-0011-828. http://www.ncompasslabs.com/binaries/index.htm ScriptActive29. http://www.cs.cf.ac.Uk/Dave/C/node33.html RPC
15. Object Management Architecture Guide, 3rd Edition // Object Management Group, R.M. Soley (Editor), C.M. Stone (Editor),1.BN: 0-471-14193-3, 1995.31. http://www.corba.org CORBA
16. P. Богатырев. Летопись языков Паскаль // Журнал "Мир ПК", #04, 2001.
17. Р. Богатырев. Java против .NET // Журнал "Мир ПК", #12, 2001.
18. N. Wirth. The Programming Language Oberon // S oftware Practice and Experience, 1988, vol.18, #7, p. 671-690.
19. N. Wirth. The Programming Language Pascal // Acta Informatica,1971, vol.1, #1, p. 35-63.
20. N. Wirth. Programming in Modula-2. Heidelberg: Springer-Verlag, 1982.
21. M. Brandis, R. Crelier, M. Franz, J. Tempi. The Oberon System Family // Software Practice and Experience, 1995, vol.25, #12, p. 1331-1366.
22. N. Wirth, J. Gutknecht. The Oberon System // Software Practice and Experience, 1989, vol.19, #9, p. 857-893.
23. N. Wirth, J. Gutknecht. Project Oberon: The Design of an Operating System and Compiler. Addison-Wesley, 1992.
24. M. Franz. Emulating an Operating System on Top of Another // Software Practice and Experience, 1993, vol.23, #6, p.677-692.
25. C. A. Szyperski. Writeing Applications: Designing an Extensible Text Editor as an Application Framework // Proceedings of the Seventh International Conference on Technology of Object-Oriented Languages and Systems (TOOLS'92). Dortmund, 1992, p.247-261.
26. M. Franz. Dynamic Linking of Software Components // IEEE Computer, март 1997.
27. N. Wirth. Programming in Modula-2. Heidelberg: Springer-Verlag, 1982.
28. M. Franz. Code-Generation On-the-Fly: A Key to Portable Software. Дис. #10497, ETH Zu.rich; Zu.rich, 1994, ISBN 3-7281-2115-0
29. JavaSoft, Inc. What Is Java? http://www.javasoft.com/nav/whatis46. http://www.mesi.ru/joe/stl93.html47. http://msdn.microsoft.com/asp.net/ Active Server Pages48. http://www.macromedia.com/software/coldfusion/ Cold Fusion
30. M.A. Hamilton, "Java and the Shift to Net-Centric Computing", Computer, IEEE Computer Society, August 1996, vol. 29, № 8, pp.31-39.
31. F. Yellin. The Java Native Code API, Sun Microsystems, Mountain View, Calif., 1995; http://www.javasoft.com/doc/jitinterface.html
32. Microsoft SDK for Java 1.5; http://www.microsoft.com/java/sdk
33. Э. E. Долгалев. Язык описания форм ProXForms и интерактивные Web-системы // Международный симпозиум по проблемам модульных систем и сетей ICSNET'2002, Москва 2002г. М.: Изд-во Институт ядерных исследований Российской академии наук, 2003. С.130-135.
34. Э. Е. Долгалев. Язык описания форм ProXForms // Технологии высокопроизводительных информационно-вычислительных систем:
35. Сборник статей молодых ученых. / Под ред. профессора
36. B.А.Васенина. Переславль-Залесский: Изд-во "Университет города Переславля", 2003. С.65-75.56. http://www.w3c.org/XML/1998/06/xmlspec-report.htm DTD
37. Word Wide Web Consortium (W3C), XML Path Language (XPath) Version 1.0, http://www.w3.org/TR/xpath.
38. А. А. Коршунов. Система управления содержанием корпоративного портала. // Международная научно-методическая конференция «Новые информационные технологии в университетском образовании», Новосибирск, 2001. С. 200—202.
39. А. А. Коршунов. Использование системы управления содержанием WEB сайта при построении базы данных томографических исследований. // Труды Всероссийской научной конференции «Научный сервис в сети Интернет», Новороссийск, 2001. С.95-96.
-
Похожие работы
- Система управления содержанием WEB сайта
- Методы построения инвариантных серверов web-приложений
- Методы и средства разработки компонентного управления Web - сайтом на основе динамической объектной модели
- Веб-редактирование
- Разработка и исследование моделей, методов и средств редактирования информационного наполнения компьютерных банков знаний
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность