Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диссертация_Иванов.docx
Скачиваний:
9
Добавлен:
23.09.2019
Размер:
1.18 Mб
Скачать
  1. Визуальное моделирование при разработке web-приложений

Бурное развитие сети Internet, наблюдающееся в последнее десятилетие, привело к активному использованию средств и протоколов, использующихся в этой сети, в качестве базовой инфраструктуры при создании современных информационных систем. В первую очередь, речь идет об использовании WEB- интсрфсйса да* взаимодействия системы с пользователем (хотя в последнее время большой интерес проявляется также к построению систем на основе WEB-служб).

Моделирование WEB приложений естественно было бы рассматривать как частный случай модельно-ориентированной разработки пользовательского интерфейса, рассмотренного в предыдущем разделе. Однако, большинство работ, посвященных этой тематике [57], не содержат ссылок на работы по MBU1D и, соответственно, не используют аппарат MBUID для описания предлагаемых моделей. По-видимому, это связано с тем, что исторически данная область выросла из работ по созданию гипермедиа приложений - энциклопедий, виртуальных музеев и т.д. [48,59,67]. Стоит отмстить, что исследования в этой области активно ведутся в последние 3-4 года, в то время как пик интсрсса к «классическому» MBUED подходу пришелся на 90с года XX века. Это заставляет рассматривать отдельно исследования в области моделирования WЕВ-прнложсний (при этом естественный интерес вызывает сравнение предлагаемых подходов с работами в области MBUID).

Отсутствие общего формального аппарата вынуждает нас более подробно описать отдельные подходы (большинство из них представлено одлой-двумя статьями и не имеет собственного названия, поэтому мы будем идентифицировать их фамилиями авторов работ).

Подход Коналена (Conallcn) [47] предлагает расширение TJMI, для описания Wcb-приложений. Он вводит стереотипы для классов, методов, атрибутов и ассоциаций для того, чтобы отличать серверную компоненту от клиентской части, server pages от client pages и т.д. Данный подход позволяет описывать взаимодействие между страницами (logical behaviors of Web pages), а также описывать детали реализации(йпр1етеп1а1к)п aspects). Недостатком данного подхода является то, что для описания структуры и поведенческой модели используется только статическая диаграмма классов.

Подход Хенникера (Hennicker) [62] предлагает методологию дизайна, основанную на расширении UML для hypermedia, позволяющего моделировать Web-приложсния, фокусируясь на навигации и пользовательском интерфейсе. Предлагаются следующие фазы: концептуальное моделирование, навигационное моделирование и моделирование представления. Концептуальная модель (Conceptual model) строится, основываясь на функциональных требованиях, описываемых с помощью диаграммы случаев использования (use case diagram). Концептуальная модель состоит из диаграммы классов, представляя объекты предметной области и связи между ними. Модель навигационного пространства (Navigation Space model), описывающая какие объекты можно посетить в hypermedia приложении, описывается с помощью диаграммы классов, где определяются навигационные узлы (Navigation Class) и их свичи (Direct Navigability). Как конкретно может быть осуществлена навигация (indexes, guided tours, menus) описывает модель навигационной структуры (Navigational structure model), также описываемая с помощью диаграммы классов. Индексы, меню и тл. описываются с помощью стереотипов. Для визуализации навигационной структуры используются framesets. Хотя в данном подходе так же, как и в предыдущем тоже используется только диаграммы классов для описания поведения и структуры, но данная поведенческая модель более наглядна за счет введения новых элементов моделирования - индексов, очередей и т.д.

Шатковский и Ломсн (Schattkowsky, Lomen) £91 ] предлагают использовать подмножество UML, адаптированное к предметной области с помощью стереотипов, а также стратегию для генерации шаблонов приложения по построенной модели. Данная методология предназначена для проектирования сайтов малых и средних размеров. Введено различие между клиентскими и серверными элементами страниц. Представлена возможная архитектура Wcb- приложения (концептуальная модель), описываемая с помощью диаграммы классов. Для описания требований к системе используется диаграмма случаев использования UML. Диаграмма случаев использования уточняется с помощью диаграммы активностей. Данная диаграмма описывает взаимодействие между клиентом и сервером, а так же возможное взаимодействие пользователя с клиентской частью. Для описания структуры данных обрабатываемых клиентской приложением используечся диаграмма классов. Отличительной особенностью данного подхода является то, что при генерации кода будущей системы используется и диахрамма случаев использования (для генерации модуля для каждого актсра-ро.чн).

Подход Горшковой и Новикова [7,60] также содержит специализацию UML для построения моделей Web-приложения. При этом рассматриваются две модели — навигационная, описывающая взаимодействие пользователя с системой ка уровне смены страниц, и композиционная, описывающая структуру и наполнение отдельных страниц. Для описания навигационной модели сайта прелла! асгся использовать диаграммы состояний, элементы которых должны иметь специальные стереотипы, а для создания композиционной модели - диа)раммы классов. В отличие от большинства подходов, в навигационной модели предусмотрена возможность работы пользователя с несколькими открытыми окнами одновременно, кроме того, вводится специальный стереотип д.1Я описания ошибочных состояний.

WebML (44,45,54] является визуальным языком моделирования Wch- приложений, ориентированных на интенсивную обработку данных, на концептуальном уровне. WebML позволяет описывать структуру наполнения Web-сайта, а также организацию и представление этого наполнения в гипертексте. Кроме визуальной нотации, WebML так же поддерживает XML представление. Таким образом, спецификация WebML можег быть представлена как в виде визуальных диаграмм, так и в виде XML документов. CASE-пакет WebRatio [104] поддерживает графическую нотацию WebML, а также автоматически генерирует реализацию Web-сайта.

Моделирование Web-приложения, ориентированного па обработку лапных, с помощью WebML требует определения его характеристик в терминах различных ортогональных абстракций (перспектива), каждая из которых представляется в виде отдельной модели. Определяются следующие пять перспектив:

  1. Структурная модель (Structural model). Описывает высокоуровневую организацию данных в терминах сущностей и связей. Данная модель основана на модели сущность-свячь и совместима с диаграммой классов UML.

  2. Модель вывода. Описывает, как структура данных может быть расширена с помощью выводимых данных.

  3. Композиционная модель (Composition model). Определяет, какие страницы составляют гипертекст и какие единицы наполнения (content units) содержатся на странице.

  4. Навигационная модель (Navigation Model). Описывает, как страницы и единицы наполнения связаны между собой.

  5. Модель управления наполнением (Content management model). Описывччет работу с данными приложения.

Rational Rapid Developer (RRD) [65,66] компании IBM представляет собой модельно-ориентированную (model-driven) среду быстрой разработки (ARAD, architected rapid application development [38]) бизнес-приложений на платформе Java 2 Enterprise Edition (J2EE). Она обеспечивает интегрированную среду разработки, которая сочетает модельно-ориентированный подход, RAD процесс и автоматическую генерацию исполняемых многоуровневых приложений. Система моделирования RRD состоит из следующих подсистем:

  1. Бизнес-Моделирование (Business Modeling) - Бизнес моделирование начинается с моделирования классов, которые определяют статическую структуру приложения. Динамика приложения обеспечивается с помощью моделирования Web-служб, моделирования компонентов и моделирования процессов. Так же возможно моделирование безопасности и моделирование бизнес-правил.

  2. Моделирование пользовательского интерфейса (User Interface Modeling)

  • представляет собой систему для моделирования Web-иитерфейса. Она состоит из подсистемы моделирования навигационной структуры сайта (site modeling), моделирования темы и стилей (theme and style modeling) и моделирование страницы, представляющее собой визуальный дизайн пользовательского интерфейса (interface builder). Наиболее важная часть данной системы - транзакционная модель, которая встроена в каждую страницу и связывает ее с бизнсс-обьсктами и данными.

  1. Моделирование Сообщений (Message Modeling) - представляет собой систему моделирования сообщений, которую можно использовать для посылки и получения сообщений различного формата, включая XML. Можно использовать различные платформы для посылки/получения сообщений - MQ scries. Java Messaging System и другие.

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

  1. Модель сценариев. Описывает функциональные требования к системе в вилс сценариев взаимодействия пользователя с ней. Для описания модели обычно используется диаграмма случаев использования UML.

  2. Концептуальная модель (модель предметной области). Описывает область информационных объектов, выявленных на стадии анализа 1ребований, с которыми будет работать приложение.

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

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

  1. Навигационная модель. Описывает связь между страницами сайта и единицами содержания внутри и между страницами

  2. Компо1ииионная модель (модель представления». Описывает непосредственное содержание конкретной сгранипы.

  3. Модель управлении правами полыми»(ели Описывает отображение группы, которой принадлежит пользователь, на вид сайта, доступный пользователю.

В табл.4.1 оюбражена поддержка тех или иных моделей в описанных выше подходах.

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

MBUID

Моделирование Wcb-приложений

Модель предметной области

Концептуальная модель

Модель задач

Модель сценариев

Модель пользователей

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

Модель диалога

Навигационная модель

Абстрактная модель представления

Композиционная модель

Конкретная модель представления

Нет соответствия

Таблица 4.2 Сравнение моделей MBUII) и Web-iipn-ioaceHnii

Отсутствие в рассматриваемых подходах конкретной модели представления, которая используется в MBU1D, можно объяснить тем, что целевая платформа разрабатываемого интерфейса фиксирована (HTML) и содержит относительно небольшой набор элементов, поэтому проекции и нее из абстрактной модели могут быть описаны однозначно и обычно не требуют дополнительной настройки.