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

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

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

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

Синица Сергей Геннадьевич

РАЗРАБОТКА И ИССЛЕДОВАНИЕ МЕТОДОВ И МОДЕЛЕЙ ОПЕРАЦИЙ НАД РЕСУРСАМИ В КОЛЛЕКТИВНЫХ ИНФОРМАЦИОННЫХ СРЕДАХ

Специальность: 05.13.17 —Теоретические основы информатики

Автореферат диссертации на соискание ученой степени кандидата технических наук

003449931

Краснодар — 2008

003449931

Работа выполнена в Кубанском государственном университете в г. Краснодаре.

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

кандидат физико-математических наук, доцент

Костенко Константин Иванович.

Официальные оппоненты: доктор технических наук, профессор,

Ромм Яков Евсеевич;

кандидат технических наук, Спиридонов Олег Борисович.

Ведушая организация-

Кубанский государственный технологический университет, г. Краснодар.

Защита состоится «I /» ноября 2008 в 14 ч. 20 мин. на заседании Диссертационного совета Д 212.208.21 при Южном федеральном университете по адресу: 347928, г. Таганрог, пер. Некрасовский, 44, ауд. Д-406.

С диссертацией можно ознакомиться в Зональной научной библиотеке ЮФУ по адресу: 344000, г. Ростов-на-Дону, ул. Пушкинская, 148

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

Автореферат разослан «JJ_» октября 2008

Учёный секретарь

диссертационного совета Д 212.208.21 доктор технических наук, профессор

Чернов Н. И.

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы. Системы управления контентом (CMS), Wiki-системы и блош являются современным средством организации интеллектуальной работы территориально распределенных коллективов специалистов коммерческих организаций, сообществ практики, образовательных учреждений, некоммерческих организаций. Эти системы требуют дополнительного исследования и разработки необходимых в конкретном коллективе операций над информационными ресурсами (ИР) для случаев, когда функциональности становится недостаточно для поддержки требуемого потока работ, внедрение соответствующих коммерческих продуктов затруднено, предъявляются особые требования к удобству использования системы и ее интероперабель-ности.

Успешности внедрения систем поддержки коллективной работы способствует применение гибкой методологии разработки программного обеспечения (известна как Agile software development), основными чертами которой являются доступность прототипа заказчику на ранних стадиях проектирования, обозримость содержания спецификации в форме, пригодной для удаленного согласования с заказчиком без привлечения ИТ-специалистов с его стороны и специальных средств проектирования, готовность к изменениям требований функциональности на всех этапах жизненного цикла системы, как неизбежным и желательным аспектам внедрения.

Известные подходы к составлению спецификации операций над ИР затрудняют применение гибкой методологии разработки, потому что они не позволяют представить структуру потока работ, типы ИР и права доступа в лаконичной форме, понятной заказчику без специальной подготовки и программного обеспечения Распространённые системы управления контентом не содержат средств конструирования операций и не поддерживают необходимые уровни абстракции кода приложения для их реализации, что затрудняет применение гибкой методологии разработки, так как добавление новых и изменение реализованных операций связано со значительными усилиями. Поэтому разработка согласованных с гибкой методологией и адекватных рассматриваемым задачам моделей информационных сред, методов анализа и формализации требований и принципов построения инструментариев конструирования систем операций над ИР с помощью веб-технологий является актуальной. Работа выполнена при поддержке РФФИ (06-07-96618).

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

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

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

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

1. Формализовано понятие информационного ресурса и семантической операции в виде совокупности атрибутов и функции изменения их значений. Уточнены и проанализированы классы семантических операций на основе системы характеристик информационных ресурсов и свойств их атрибутов

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

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

4. Разработан и апробирован на практике архитектурный шаблон (architectural pattern) интероперабельного веб-приложения для построенной модели, использующий архитектурный стиль REST и открытые протоколы.

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

Основные положения, выносимые на защиту. В работе получены следующие новые теоретические результаты:

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

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

3 Принцип создания и связанный с ним архитектурный шаблон интероперабельных веб-приложений на основе архитектурного стиля REST и интерпретируемых командных объектов для гибкой реализации рассматриваемых систем в соответствии с разработанной автором моделью.

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

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

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

Практическая ценность работы. Практическая ценность работы заключается в завершенности разработанных методов и моделей, позволяющих применять гибкую методологию проектирования и реализации операций, упростить структуру приложения, сократить объем кода и при реализации интероперабельности операций отказаться от принципов RPC в пользу органично вписывающейся в архитектуру глобальной сети (WWW) организации взаимодействия информационных ресурсов на основе принципов REST.

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

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

Внедрение и использование результатов работы. Метод формализации требований был применен для проектирования веб-портала г^окиЬап ги, интегрирующего информационные ресурсы некоммерческих общественных организаций Юга России.

Теоретические результаты работы были использованы для создания модуля конструктора операций и реализации потока работ в составе веб-системы поддержки взаимодействия клиентов, авторов и администраторов виртуального офиса сервиса написания статей, состоящего из взаимосвязанных сайтов writers-united.org и personal-writer.com. Эффективность методов, модели и шаблона приложения для применения гибкой методологии разработки подтверждает существенное сокращение объёма технического задания и времени реагирования на изменения требований заказчика к системе операций. После обсуждений изменений схемы коллективной работы и её фиксирования в виде сети Петри, модификация и добавление новых операций происходило в кратчайшие сроки без остановки работы сервиса.

Теоретические результаты исследования использованы для построения КЕЗТ-интерфейса к ИРС-системам и демонстрации ресурсно-ориентированного подхода при обучении студентов по курсу всб-про! раммирования, прочитанного автором на кафедре информационных технологий факультета прикладной математики КубГУ в 2006-2007 году.

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

Структура и объём работы. Диссертация состоит из введения, четырех разделов и заключения. Текст диссертации представлен на 150-и страницах, содержит 3 таблицы и 22 рисунка.

СОДЕРЖАНИЕ РАБОТЫ

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

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

ИР п определен, как функция Я71({), возвращающая множество его представлений, соответствующих некоторому моменту времени. Представление — это последовательность байт данных и метаданные, генерируемые некоторой функцией представления в соответствии со значениями атрибутов ИР. Под семантической операцией понимается требующая периодического выполнения задача по созданию и/или изменению атрибутов ИР, представленная в системе своей формой ввода параметров, правилами политики безопасности и. скриптом обработки параметров. Изменение атрибутов ИР при выполнении семантической операции происходит с помощью вызова одной или более элементарных операций из скрипта операции. Под коллективным информационным пространством (КИП) понимается совокупность онтологии (формальное описание всех атрибутов ИР, фиксирующее семантику отношений, типы данных и ограничения на значения), экземпляров ИР, профилей пользователей с правами доступа, семантических операций и политики безопасности некоторой информационной системы.

Разработанная технология формализации требований, демонстрации и проверки заказчиками моделей потоков работ основана на применении графов сетей Петри высокого уровня (ГСПВУ). Их преимуществом, по сравнению с другими используемыми средствами, является простота восприятия технически не подготовленными пользователями и заказчиками, возможность моделирования поведения с помощью формальных правил запуска переходов. Сеть Петри представляет собой два непересекающихся множества мест и переходов, соединённых ориентированными дугами так, что дуги обязательно соединяют элементы разных множеств. Сети Петри высокого уровня с дополнительной разметкой отдельных переходов и фишек в местах, а также модифицированными правилами срабатывания переходов, позволяют манипулировать разнотипными структурированными объектами.

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

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

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

На рисунке 1 изображена сеть Петри, построенная с применением разработанного метода и специальной графической нотации, задающая спецификацию процесса обработки заказов написания статей, реализованного на сайтах personal-writer.com и writers-united.org.

Во втором разделе определены классы атрибутов ИР и семантических операций над ними, проанализирована система свойств таких операций, основанная на использовании классификаций атрибутов и характеристик ИР. Даны однородные формальные описания основных классов операций формирования КИП. Для определённых классов показано, что любая семантическая операция отностися к одному из них и классы не пересекаются.

Атрибуты ИР разделены на классы по истопникам появления в КИП (всего названо шесть источников 1-1У), по характеру пользовательского интерфейса для задания значений (поля, связи, разметка текста) и по участию в механизмах контроля доступа (атрибуты доступа и содержимого).

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

— Бьге^п) — числовая величина, мера количества данных в атрибутах содержимого.

— ОирИсаЬе(п, п') — вещественное число от 0 до 1, передающее схожесть содержимого ИР п и п'.

wug writers-united org wvw per60nal-wnter com

Рис. 1. Сеть Петри процесса обработки заказов написания статей на сайтах personal-writer.com и writers-united.org

— уЩот(и) — множество ИР в КИП, расположенных на расстоянии одного перехода по гиперссылке при просмотре ИР п.

— 1)ергсса1е(Кп) — булева функция, которая истинна тогда и только тогда, когда значения атрибутов п установлены таким образом, что при просмотре ИР п он отображается как запрещенный для использования, например, если п устарел и заменен другим ИР.

— Ра1Ь,{п) — множество возможных навигационных траекторий, реализуемых в виде последовательностей переходов по гиперссылкам с главной страницы сайта к г;, не содержащих циклов.

— СЛаь^еч(п) — назначенное п подмножество множества рубрик или классов, используемых для тематической организации ИР.

- Key words (п) — набор наиболее важных слов и словосочетаний из

представления ИР п.

- Scdrch(n) — множество поисковых запросов, по которым поисковый

механизм КИП выводит ИР п.

Далее, определены три элементарные операции над ИР: создать новый ИР и задать значения атрибутов, изменить атрибуты содержимого некоторого ИР, изменить атрибуты доступа некоторого ИР. Установлены изменения характеристик ИР элементарными операциями. Предполагается, что семантические операции изменяют состав КИП с помощью последовательности вызовов только обозначенных трёх элементарных операций.

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

1. Уп € Nt(Size(n) > 0);

2. Va, b е N,(Duphtaf.e(a, b) 1);

3. Vn € Nt(n i Adjom(n))-,

4. Vo, b € N,(Deprecated(a) —» a £ Adjom(b));

5. Vn 6 Nt(-^Deprecated(n) —>

(Path( п) / 0Л Classcs(n) Keywords(n) £ 0));

6. Vn 6 Ar,(Dep7-ecaled(n) —» Search(n) = 0).

Аналогично, формализовано понятие эффективности состояния КИП, как одновременная эффективность всех его ИР, под которой понимается превышение значения характеристики эффективности ИР некоторого порогового значения.

Затем, на основе анализа изменения характеристик ИР и свойств атрибутов ИР, определены классы семантических операций и установлены достаточные условия для сохранения целостности КИП при выполнении семантических операций из этих классов.

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

Рис. 2. Классификация семантических операций в коллективном информационном пространстве

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

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

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

токов работ, и формулировка соответствующей ему теоремы сохранения целостности КИП.

К классу статуса'состояния относятся семантические операции, в результате которых изменяется значение поля атрибута доступа ИР п. При этом, значение может пос гупать из дру1 их систем (источник Ш) либо от пользователя (источник IV) Использую гея элементарные операции изменения атрибутов доступа и, возможно, содержимого.

Семантическая операция из класса статуса/состояния сохраняет целостность состояния КИП среды, если одновременно выполняется.

1. п' £ А(1]огп{п')\

2. -^ОергеЫе(1(п') Ра(Цп) = Ро<Л(н');

3. С7<м.че«(п) = С/ав5ев(п') Л Кеуи>01-<1з{п) = КеутогсЫп')-,

4. Оергеса1е<1(п') (БеагсЦп') = 0 ЛУа € К(п' /Муотп(а))) .

Аналогичным образом, с помощью ограничений па изменяемые характеристики ИР и классы атрибутов ИР, определены и проанализированы остальные классы семантических операций. Для установления класса произвольной семантической операции достаточно провести создание новых ИР, изменение атрибутов существующих ИР и характеристик ИР при сё выполнении через цепочку рассуждений доказательства теоремы о системе классов операций, утверждающей, что произвольная семантическая операция принадлежит ровно одному из классов приобретения, дополнения, разбиения, объединения, изменения, ранжирования, статуса/состояния, ответственности/владения либо классифицирования

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

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

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

Коллективное информационное пространство с семантическими операциями — это пятёрка CIS = (Т, М, Ar, R, А), где Т — множество наименований типов ИР, соответствующих формализованным описаниям атрибутов допустимых в КИП типов ИР, включая профили пользователей, семантические операции и запросы на выборку ИР. М — множество предикатов проверки значений атрибутов на соответствие ограничениям бизнес-логики. N — последовательность состояний КИП, в которой каждое состояние получено из предыдущего в результате выполнения одной из семантических операций R — последовательность функций проверки прав доступа и адаптации ИР соответствующих типов, значение которой определяет правило проверки доступности операции, либо шаблон внешнего вида ИР для просмотра пользователем, включая проверку прав доступа. А — последовательность функций действия семантических операций Аг — At tion(Na, í„ и) = Л'/,, Na и Л1«, — состояния из N.

Выборка ИР КИП определяет доступность для просмотра ИР на страницах интерфейса доступа к КИП с учётом проверки прав доступа и адаптации. Движение ИР в КИП при выполнении изменяющих их атрибуты операций заключается в удалении ИР из одних выборок при невыполнении соответствующих условий от новых значений его атрибутов и появлении ИР в других выборках при выполнении их условий соответственно. Такое перемещение ИР на страницах интерфейса и передаёт правила коллективной работы КИП в конкретной среде.

Операция типа t, € Т называется комплексной, если её функция действия изменяет более одного экземпляра ИР: ЗЛТ0, и, Ni,(Nh = Л,(ЛГ„, t,. и) —> |Л'й \ A'uj > 2). Атрибуты комплексных семантических операций включают ссылки на все затрагиваемые ИР, а экземпляр ИР семантической операции сохраняет информацию обо псех изменениях этих ИР в результате выполнения функции действия. Например, операция слияния документов имеет среди своих атрибутов ссылки на объединяемые ИР, а функция действия создает

новый ИР объединением и изменением их атрибутов так, что функция представления Я запрещает применение старых ИР и перенаправляет на объединенный.

Автором построены формальные определения онтологической операции (управляет средствами формирования структуры КИП, изменяет структуру Т), отношения непосредственного следования состояний КИП, достижимости состояния, множеств допустимых состояний и допустимых выборок КИП, множества ярусов КИП. Последнее обозначается ¿Е(С/5) и определяется, как множество всех последовательностей операций КИП, приводящих начальное состояние в каждое достижимое состояние, что отражает всевозможные конфигурации КИП, возникающие процессе коллективной работы пользователей при фиксированных структурах метаданных (онтологические операции не допускаются), правилах доступа и адаптации, семантических операциях и соответствующих им отображениях действия.

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

Для формализации движения ИР по выборкам КИП в используются графы сетей Петри высокого уровня (ГСПВУ) в определении стандарта 180ЯЕС15909-1, откуда также использованы формальные определения фишки, разметки, допустимости перехода, срабатывания перехода. В общем случае, ГСПВУ допускают конкурентное срабатывание переходов, однако в диссертации рассматриваются только последовательные срабатывания переходов по одному, так как этого достаточно для моделирования необходимых

нам операций в КИП.

ГСПВУ называется структура IILPNG =

(NG, Sig. V П. Type, AN, Л/о), где NG — сетевой граф мест, переходов и дуг; Sig — булева многосортная сигнатура; V — множество переменных сортов из Suj\ Н — многосортная алгебра для сигнатуры Sig; Туре — функция, назначающая типы местам; AN — пара аннотаций сети, аннотирующая переходы булевыми выражениями и аннотирующая каждую дугу термом, который после вычисления (с любой подстановкой) дает мультимножество над связанным с местом типом; Мо — функция начальной разметки, связывающая мультимножество (набор элементов, допускающий их повторение более одного раза) фишек (корректного типа) с каждым местом сети.

Автором построены определения непосредственного следования разметок, достижимости разметок, последовательности срабатываний, множества достижимых разметок и, наконец, свободного языка сети ГСПВУ. Последний является множеством всех последовательностей срабатываний, ведущих от начальной разметки к каждой достижимой разметке, обозначен как L(HLPNG).

Доказано, что для любой ГСПВУ существует целостное КИП, семантические операции которого можно поставить в взаимнооднозначное соответствие переходам ГСПВУ так, что свободный язык данной ГСПВУ будет совпадать с множеством ярусов КИП:

V HLPNG 3 CIS (L(HLPNG) — LE(CIS)).

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

Использование общих структур описания типов ИР и их атрибутов Т, предикатов проверки атрибутов А/, множеств экземпляров объектов N и функций представления R для ИР, профилей, операций и выборок ИР составляет основное отличие разработанной модели от известных автору.

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

Facade "uses" Resource

+Cet(UPL,Headers) ♦Post(URL,Headers) -»Put (URL,Headers) ♦Delete(URL,Headers) ♦URL ♦Type ♦Metadata

♦Access(User) ♦Represeotation(Usor,ContentType=text/htcl)

Рис. 3. иМЬ-диаграмма шаблона приложения с командными объектами операций, запросами выборок и пользователями в виде информационных ресурсов

UML-диаграмма на рисунке 3 изображает разработанный шаблон приложения. Его особенностью является представление семантических операций, пользователей, запросов выборок и прочих ИР, как объектов, порождённых от общего класса Resource. Создаваемые по такому шаблону приложения естественным образом согласуются с архитектурным стилем REST Роя Филдинга, в котором ресурс является основной абстракцией информации, а для реализации всех аспектов системы используются отдельные ИР и фиксированными семантически нейтральными операциями (например GET, POST, PUT, DELETE), выполняемыми над ними с помощью передачи представления ИР. Это позволяет создавать интероперабельные масштабируемые приложения, ограничиваясь использованием HTTP. Предложенный подход уменьшает сложность создаваемой информационной системы за счёт обобщения части кода, отвечающего за управление и отображение ИР, реализуемого классами Facade и Resource единообразно для всех ИР, и выполнение и отмены пользовательских операций, реализуемого классом Operation для всех классов операций. Кроме того, представление операций с помощью ИР упрощает конструирование операций, в выполнении которых участвует несколько пользователей. Входными параметрами таких операций являются экземпляры ИР выполненных ранее операций соответствующего типа. Использование декларативного представления операций на практике позволило реализовать сериализацию параметров произвольных объектов-операций и их сохранение в базе данных для отсроченного выполнения.

В соответствии с шаблоном, автором создан фреймворк веб-приложений, реализующий распределение вызовов к ресурсам по модулям типов ресурсов и передачу построенного модулями объекта в подсистему шаблонов для генерации представления, примененный на практике для разработки нескольких веб-сайтов Он использован для демонстрации ресурсно-ориентированного подхода и построения REST-интерфейса к RPC-системам при обучении студентов по курсу веб-программирования, читаемому автором на кафедре информационных технологий факультета прикладной математики КубГУ.

В соответствии моделью КИП, автором реализован конструктор операций в виде модуля к CMS Drupal, позволяющий добавлять и модифицировать через веб-интерфейс списания операций группы движения и поддерживающий API для реализации других классов операций. Этот конструктор был применён для разработки системы поддержки коллективной работы более чем 80 сотрудников компании Writers United. <

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

В заключении приведены основные результаты работы и сформулированы общие выводы.

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

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

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

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

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

1. Формализовано понятие информационного ресурса и семантической операции в виде совокупности атрибутов и функции изменения их значений. Уточнены и проанализированы классы семантических операций на основе системы характеристик информационных ресурсов и свойств их атрибутов.

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

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

4. Разработан и апробирован на практике архитектурный шаблон (architectural pattern) интероперабельного веб-приложения для построенной модели, использующий архитектурный стиль REST и открытые протоколы.

ПУБЛИКАЦИИ ПО ТЕМЕ РАБОТЫ

1. Костенко К. И., Синица С. Г. Классификация и свойства операций над объектами информационного пространства среды области знаний // Экологический вестник научных центров Черноморского экономического сотрудничества. — 2007. — № 1. — С. 10-15.

2. Синица С. Г. Применение современных веб-технологий для эффективного интегрирования коллекций электронных документов в структу-

ру глобальной Сети // Сборник трудов Всероссийской научной школы-семинара молодых ученых, аспирантов и студентов «Интеллектуализация информационного поиска, скантехнологии и электронные библиотеки». — Таганрог: Изд-во ТТИ ЮФУ, 2007. — С 95-100.

3 Коапенко К. И., Левицкий Б. Е., Синица С. Г. Моделирование жизненных циклов объектов и информационных процессов сред областей знаний // Наука Кубани. — 2006. — С. 268-270.

4 Синица С. Г. Компоненты системы метаданных среды области знаний, основанной на электронной библиотеке научных публикаций // Экологический вестник научных центров Черноморского экономического сотрудничества. ■— 2006. — Спецвыпуск. — С. 152-157.

5. Синица С. Г. Управление знаниями в научном сообществе // Материалы VI объединённой научной конференции студентов и аспирантов факультета прикладной математики. — Краснодар, КубГУ, 2006. — С. 10-13.

Личный вклад автора в работах, написанных в соавторстве, состоит в следующем: [1] — предложена таксономия операций над информационными ресурсами и модель коллективного информационного пространства; [3] — предложены типовые схемы сетей Петри, моделирующих процессы обработки интеллектуальных информационных ресурсов в корпоративной информационной среде, для этапов декомпозиции и синтеза задач пользователей и методов их решения.

Тип.ТТИ ЮФУ Заказ № тир 100 зкз

Оглавление автор диссертации — кандидата технических наук Синица, Сергей Геннадьевич

Введение

1 Разработка метода формализации схем коллективной работы над информационными ресурсами

1.1 Формализация понятий информационного ресурса и семантической операции

1.2 Анализ методов формализации схем коллективной работы

1.3 Разработка метода формализации схем коллективной работы с помощью сетей Петри.

1.4 Разработка специальной графической нотации сетей Петри высокого уровня.

1.5 Сравнение с другими работами.

1.6 Выводы.

2 Исследование свойств информационных ресурсов и классов семантических операций

2.1 Классы атрибутов информационных ресурсов.

2.1.1 Значения полей.

2.1.2 Связи.

2.1.3 Разметка текста.

2.2 Атрибуты контроля доступа и содержимого

2.3 Характеристики информационных ресурсов.

2.4 Элементарные операции.

2.5 Целостность и эффективность состояний информационного пространства

2.6 Анализ классов и свойств семантических операций.

2.6.1 Внешние семантические операции наполнения.

2.6.2 Внутренние семантические операции наполнения

2.6.3 Семантические операции движения.

2.7 Выводы.

3 Построение и анализ формальной модели коллективного информационного пространства

3.1 Формальная модель коллективного информационного пространства

3.2 Графовая модель навигационной структуры информационного пространства

3.3 Трансформация графа сети Петри высокого уровня схемы коллективной работы в модель коллективного информационного пространства

3.4' Сравнение с другими теоретическими моделями.

3.5 Выводы.

4 Разработка архитектурного шаблона коллективных информационных сред с системами интерпретируемых операций над ресурсами

4.1 Предпосылки использования интерпретируемых объектов операций.

4.2 Моделирование адаптивных объектов, объекты команд и отмена операций

4.3 Адаптация представления и адаптивные потоки работ.

4.4 Применение архитектурного стиля REST для представления семантических операций в виде ресурсов.

4.5 Реализация шаблона приложения на основе REST.

4.6 Реализация конструктора семантических операций и сравнение с аналогами

4.7 Выводы.

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

Актуальность диссертационного исследования

Труд интеллектуальных работников1 приобрёл решающую роль в век экономики знаний и нуждается в такой же тщательной организации, как и любой другой труд. Специализация, разделение труда и территориальная распределенность интеллектуальных работников приводят к необходимости применения информационных систем (ИС) для обеспечения поддержки коллективной работы, которая заключается в том, что пользователям предоставляется возможность совместного добавления, просмотра и изменения некоторых информационных объектов. В организациях внедряются системы управления знаниями [1] и среды областей знаний [2] [3] для эффективного накопления, хранения, использования и развития своих интеллектуальных активов.

В настоящее время применение систем управления контентом (CMS), Wiki-систем2, б логов3 для организации интеллектуальной работы территориально распределённых коллективов специалистов находится на подъеме. Простейшие веб-системы являются средством, которое пользователи успешно самостоятельно адаптируют под сложившиеся процессы коллективно

1Термин введён Питером Дракером в 1959 году и обозначает людей, которые работают в основном с информацией либо разрабатывают и используют знания на рабочем месте.

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

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

Примерами таких систем поддержки коллективной работы являются виртуальный офис компании Personal Writer, поддерживающий коммуникацию клиентов и более 80 сотрудников организации5, портал некоммерческих негосударственных организаций Кубани6, сайт Северо-Кавказской группы пользователей Linux7, ресурс Восточно-Европейской подгруппы международного форума «Образовательные технологии и общество», взаимодействующий с научной электронной библиотекой E-library.ru [4].

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

разделение (sharing) знаний и усиление взаимодействия специалистов, повышение доступности исследовательских групп и результатов интеллектуального труда для заинтересованных лиц, усиление междисциплинарного и международного взаимодействия специалистов; контролирование деятельности интеллектуальных работников;

4Имеется ввиду Free Open Source Software — программное обеспечение, автор которого наделяет пользователей свободами использования, распространения, изучения и изменения программы, распространения изменений. Например Drupal, Mambo, е107, MediaWiki.

5http://www.personal-writer.com/, http://www.\vriters-united.org/

6http://www.ngokuban.ru/

7http://www.nclug.ru/ сокращение издержек на обеспечение коммуникации сотрудников и оперативного получения информации об отделах, проектах и сотруд никах организации; повышение производительности интеллектуального труда; стимулирование появления инноваций в организации; использование неявных и скрытых знаний, содержащихся в неформальных обсуждениях информационных ресурсов специалистами; организацию процесса эффективного создания знаний обеспечением методического сопровождения и планирования исследования; упрощение передачи и понимания знаний и практического опыта выработкой, поддержанием целостности и использованием явно заданной модели предметной области; интеграция интеллектуальных активов организации с внешними сервисами, например такими, как библиотеки научных публикаций, разбросанные в Интернет на региональных сайтах; совместное ведение документации и кодовой базы8; координацию времени, места и результатов проведения совместных мероприятий; публикацию материалов и пресс-релизов организаций и их интеграцию в структуру глобальной сети Интернет для обеспечения максимального охвата аудитории [5].

8Сюда отнесём всевозможные системы контроля версий исходных кодов программ, например CVS или Subversion и веб-интерфейсы к ним, системы управления проектами, а также системы отслеживания ошибок программ, например Bugzilla.

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

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

Современные свободные системы управления контентом (CMS) предоставляют широкие возможности формирования гипертекстовой навигации и позволяют манипулировать значениями атрибутов ИР на основе метамодели с помощью единообразных для всех действий пользователя элементов управления.

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

По мнению специалистов, причиной неудач внедрения рассматриваемых систем является конфликт целей создающей ИС организации и целей пользователей этой ИС [6] [7] в виде переоценки роли технологий по сравнению с индивидуальной инициативой, формализации извлеченных знаний в отрыве от контекста их использования, неправильного мотивирования специалистов к извлечению знаний, сопротивления пользователей инновациям, недостаточной вовлечённости сотрудников заказчика в разработку требований. Конфликт целей ИС и пользователя разрешается учетом человеческого фактора при проектировании операций: система операций над ИР проектируется с учетом целей пользователей при их непосредственном участии. Поэтому разработка методов проектирования операций в ИС поддержки коллективной работы, позволяющих устранить указанные проблемы, является актуальной.

Проектирование пользовательских интерфейсов в отрыве от изучения задач пользователей является причиной неудачного внедрения в случаях, когда большой процент пользователей испытывает трудности при выполнении своих задач во время знакомства с системой и более не возвращается к её использованию. При анализе ошибок пользователей во время эксплуатации ИС эффективными оказываются методы оценки успешности выполнения типовых задач пользователей [8]. Для оперативного исправления таких ошибок операции пользователей над ИР должны быть обособлены от остальных элементов системы. Становится актуальной возможность оперативного создания новых операций, изменения внешнего вида элементов управления существующих операций, логики изменения атрибутов ИР при выполнении операций, прав доступа.

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

При создании рассматриваемого класса ИС находит применение гибкая методология разработки (agile software development [9] [10] [11]) — это современная парадигма разработки программного обеспечения, отличительными особенностями которой являются:

1. Преимущественная роль коммуникации разработчиков с заказчиками в реальном времени, предпочтительно при личной встрече, по сравнению с документированием. Обозримый объём документов спецификации к проекту.

2. Отношение к изменениям требований на протяжении всего этапа разработки как к естественному, неизбежному и желательному аспекту проектов разработки программного обеспечения.

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

Критерием успешности проекта при использовании гибкой методологии является отклик на изменения требований и работающий код.

Наличие большого количества готовых инструментальных средств, фреймворков, библиотек, в том числе с открытым исходным кодом, для реализации систем поддержки коллективной работы приводят к избыточности подробных технических заданий на создание автоматизированных систем в соответствии со стандартами подготовки подобной документации [12] и пониманию выгоды создания рабочего прототипа на самых ранних этапах проектирования систем даже в масштабах крупных предприятий: при внедрении ЕКР-систем вместо того, чтобы формализовать бизнес-процессы и требования к ним «на бумаге», целесообразно сразу настраивать прототип системы в соответствии с бизнес-требованиями [13].

Часть предварительного сбора и документирования требований [14] по прежнему остается необходимой при использовании гибкой методологии. Для систем поддержки коллективной работы наиболее важной частью сбора и документирования требований является формализация требований к операциям пользователей. Без формального описания доступных пользователями операций существенно затруднено прототипирование системы, а удалённая разработка становится невозможной.

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

Широко распространённым способом формального описания содержания ИР является семейство стандартов Semantic Web (OWL, язык веб-онтологий), в которых онтология применяется только для описания структуры и связей ИР, но не затрагивает аспекты декларативного описания операций над ними. Известные модели представления знаний (фреймы, семантические сети) и онтологий (OWL, IDEF5) не позволяют декларативно описывать операции, а формальные способы моделирования операций (сети Петри, графы состояний, UML-диаграммы состояния) слабо согласованны с моделями представления знаний. Средства моделирования состояний объектов в бизнес-процессах (диаграммы протекания процессов IDEF3, переходов состояний объектов IDEF3 и IDEF5, активности UML) не позволяют формализовать участие пользователей в процессах и систему прав доступа к операциям одновременно с описанием процесса. Поэтому разработка модели, позволяющей одновременно формализовать структуру и взаимодействие ИР, операции над ними и права доступа пользователей, является актуальной для применения гибкой разработки.

Попытки выделить конкретные операции пользователей и организовать удобный доступ к соответствующим элементам управления в веб-приложениях на основе распространённых систем управления контентом (CMS), приводит к тесному «спутыванию» бизнес логики с программными абстракциями и кодом приложения, что делает невозможным оперативное отражение изменений в понимании задач пользователей в результате эксплуатации ИС и развития организации без изменения кода приложения и дополнительного развёртывания, что часто является причиной неудачного внедрения ИС в малых организациях.

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

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

Работа выполнена при поддержке РФФИ (06-07-96618).

Объект диссертационного исследования

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

Цели и задачи работы

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

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

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

1. Формализовано понятие информационного ресурса и семантической операции в виде совокупности атрибутов и функции изменения их значений. Уточнены и проанализированы классы семантических операций на основе системы характеристик информационных ресурсов и свойств их атрибутов.

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

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

4. Разработан и апробирован на практике архитектурный шаблон architectural pattern) интероперабельного веб-приложения для построенной модели, использующий архитектурный стиль REST и открытые протоколы.

Методы диссертационного исследования

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

Основные положения, выносимые на защиту

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

1. Метод формализации требований доступа к операциям над информационными ресурсами и структуры потока работ в системах поддержки коллективной работы, основанный на специальном способе использования сети Петри для представления правил доступа.

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

3. Принцип создания и связанный с ним архитектурный шаблон9 интеропе

9Architectural pattern. рабельных веб-приложений на основе архитектурного стиля REST и интерпретируемых командных объектов для гибкой реализации рассматриваемых систем в соответствии с разработанной автором моделью.

Теоретическая значимость и научная новизна работы

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

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

Практическая ценность работы

Практическая ценность работы заключается в разработке методов и моделей, позволяющих применять гибкую методологию при проектировании и реализации операций, упростить структуру приложения и при реализации ин-тероперабельности операций отказаться от компонентной модели проектирования и принципов RPC в пользу органично вписывающейся в архитектуру глобальной сети (WWW) организации взаимодействия информационных ресурсов на основе принципов REST, подразумевающих использование отдельных информационных ресурсов и фиксированных семантически нейтральных операций (например GET, POST, PUT, DELETE) над ними.

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

Внедрение результатов работы

Разработан прототип оболочки среды на основе кроссплатформного (в том числе и на LAMP10) свободного программного обеспечения и фреймворка Drupal, для которого был создан модуль конструирования и исполнения операций.

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

10Linux, Apache, MySQL, PHP — популярный набор свободного программного обеспечения для создания веб-приложений с минимальной стоимостью владения, обеспечиваемой высоким уровнем конкуренции на рынке предоставления услуг платного хостинга веб-сайтов. статей http://www.personal-writer.com/ и http://www.writers-united.org/.

Создан фреймворк для веб-приложений на основе разработанного в диссертации шаблона приложения и архитектурного стиля REST, использующий язык PHP и поддерживающий интеграцию со сторонними веб-сервисами через протокол SOAP. Данный PHP-фреймворк был опробован при разработке веб-сайтов нескольких организаций (http://www. standart-auto.com/, http://www.premium-group.biz/, http://www.inroom-online.ru/) и реализации веб-интерфейса к платформе 1С-Предприятие 8.1 с использованием веб-сервисов для обеспечения взаимодействия торговых представителей предприятия по сети Интернет с помощью мобильных устройств.

Структура работы

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

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

4.7. Выводы

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

Такой подход позволяет организовывать интероперабельные распределенные системы без использования RPC и веб-сервисов на основе обмена данными по HTTP с помощью представлений ИР в виде XML-документов в стандартных пространствах имен с фиксированной семантикой, таких как Dublin Core, vCard, OAI11, либо с помощью произвольных XML-документов.

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

11 Open archives initiative.

Заключение

Результаты диссертационного исследования

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

1. Формализовано понятие информационного ресурса и семантической операции в виде совокупности атрибутов и функции изменения их значений. Уточнены и проанализированы классы семантических операций на основе системы характеристик ИР и свойств атрибутов ИР.

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

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

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

Практические результаты диссертационного исследования включают:

1. Фреймворк для создания веб-приложений на основе разработанного в диссертации шаблона приложения и архитектурного стиля REST, использующий язык PHP и поддерживающий интеграцию со сторонними веб-сервисами через протокол SOAP.

2. Прототип информационной системы с конструктором семантических операций группы движения на основе кроссплатформного свободного программного обеспечения и фреймворка Drupal.

Научная новизна результатов

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

Практическая значимость результатов

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

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

Формализация онтологии коллективного информационного пространства в декларативной форме и представление метаданных на современном уровне развития веб-стандартов (микроформаты, SiteMaps, DC, RDF, OWL) позволяет увеличить аудиторию информационной среды за счет интеграции с современными поисковыми сервисами Сети и обеспечивает возможность повторного использования знаний в других информационных системах без дополнительных затрат за счет отказа от промежуточных RPC-технологий в пользу HTTP.

Разработанная в диссертации основанная на REST архитектура приложения позволяет сократить время разработки и модификации рассматриваемых систем при изменении требований за счет уменьшения количества кода и возможности обеспечения полуавтоматизированной генерации интерпретируемых командных объектов операций и пользовательских интерфейсов по формализованной высокоуровневой постановке задачи в виде графов сетей Петри высокого уровня.

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

Степень достижения ожидаемых результатов

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

Гибкая методология [9] [10] [11] подразумевает сокращение трудоемкой фазы сбора, документирования и формализации требований на бумаге, создание рабочего прототипа, доступного заказчику ещё на этапе проектирования системы и уточнения требований, с целью быстрее получить значимые для заказчика результаты, избежать искажений в понимании требований в процессе их «теоретической» формализации, эффективнее использовать экспертизу представителей заказчика, которым наглядная демонстрация гораздо понятнее, чем «бумажная» формализация [13].

Разработанный метод формализации требований к системе операций пользователей на практике доказал свою эффективность для применения при гибкой разработке. Предоставленное заказчиком и занимающее более 100 листов описание взаимодействия пользователей и информационных ресурсов взаимосвязанных сервисов Writers-United.org и Personal-Writer.com12 в результате применения метода формализации требований к операциям и метода трансформации схемы работы пользователей в модель коллективного информационного пространства была заменена одной понятной заказчику схемой с графом сети Петри в разработанной специальной нотации. Эта схема, в отличии от текстового описания большого объема, позволила успешно согласовать требования к операциям с заказчиком удалённо, по электронной почте, без привлечения специальных инструментов проектирования.

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

12Данная документация появилась в результате неудачной попытки водопадной разработки системы предыдущим исполнителем, далее не поддерживалась в актуальном виде и не вошла в техническое задание, которое для этапа реализации операций пользователей состояло из одной сети Петри в специальной разработанной нотации и описания атрибутов информационных ресурсов. лективной информационной среде Writers United: в процессе внедрения система операций неоднократно менялась заказчиком, что, однако, не повлекло за собой переписывания технического задания, изменения сроков сдачи этапов работ и стоимости проекта. После обсуждений изменений схемы коллективной работы и её фиксирования в виде сети Петри, модификация и добавление новых операций происходило без остановки работы сервиса.

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

Направления дальнейших исследований

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

13Например Microsoft Office 2007. ч для повышения эффективности работы системы. Поэтому исследования систем операций и ориентированных на их гибкое изменение архитектур приложений является важным аспектом проектирования информационных систем.

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

Библиография Синица, Сергей Геннадьевич, диссертация по теме Теоретические основы информатики

1. Methods and tools for corporate knowledge management / R. Dieng, O. Corby, A. Giboin, M. Ribiere // 1.ternational Journal of Human-Computers Studies. — 1999. — Vol. 51, no. 3. — Pp. 567-598.

2. Костенко К. И., Левицкий Б. Е. Интеллектуальные интегрированные электронные среды областей знаний (базовые компоненты) // Известия вузов. Северо-Кавказский регион. Естественные науки. — 2004. — № 1. — С. 17-22.

3. Костенко К. И., Левицкий Б. Е. Системный анализ технологии проектирования, сопровождения и использования информационных сред областей знаний // Известия вузов. Северо-Кавказский регион. Естественные науки. — 2005. — № 3. — С. 11-16.

4. Craven A. An interview with Dr. Yogesh Malhotra // Management First. — 2005.

5. McElroy M. Second-Generation KM: A White Paper // Emergence, A Journal of Complexity Issues in Organizations and Management. — 2000. — Vol. 2, no. 3. — Pp. 90-100.

6. Nielsen J. Success rate: The simplest usability metric // Alertbox. — 2001. http://www.useit.com/alertbox/20010218.html.

7. Szalvay V. An Introduction to Agile Software Development: Tech. rep.: Danube Technologies, Inc., 2004. http://www.danube.com/docs/Iiitro toAgile.pdf.

8. Ambler S. Agile/Lean Documentation: Strategies for Agile Software Development. Ambysoft.— 2007. http://www.agilemodeling.com/essays/ agileDocumentat i on.htm.

9. Leffingwell D. Scaling Software Agility: Best Practices for Large Enterprises (The Agile Software Development Series). — Addison-Wesley Professional, 2007.

10. ГОСТ 34.602-89. Техническое задание на создание автоматизированной системы.

11. Саидов-Лебединский О. Методика внедрения ERP-систем. // Открытые системы. — 2006. — № 7.

12. Криковцев И. Метод сбора и документирования требований к корпоративному порталу. // Intelligent Enterprise/RE Корпоративные системы. — 2007. — № 5.

13. ISO/TEC 15909-1:2004 Software and system engineering High-level Petri nets - Part 1: Concepts, definitions and graphical notation, http://www. petrinets.info/docs/FCD15909.zip.

14. Котов В. E. Сети Петри. — Москва: Наука, 1984.

15. Fielding R. Architectural Styles and the Design of Network-based Software Architectures: Ph.D. thesis / University of California. — Irvine, 2000.

16. W3C Resource Description Framework (RDF): Concepts and Abstract Syntax. http://www.w3.org/TR/rdf-concepts/.

17. OWL Web Ontology Language Overview. http://www.w3.org/TR/ owl-features/.

18. Samarati P., de Capitani di Vimercati S. Access Control: Policies, Models, and Mechanisms // LECTURE NOTES IN COMPUTER SCIENCE. — 2001. — Pp. 137-196.

19. ISO/IEC 15909-2 Software and Systems Engineering High-level Petri Nets Part 2: Transfer Format, http://www.petrinets.info/docs/ ISO-IEC15909-2.WD.V0.9.0.pdf.

20. Jorgensen J. Coloured Petri Nets in UML-Based Software Development-Designing Middleware for Pervasive Healthcare // Proc. of the 4th Int. Workshop on Practical Use of CPNs and the CPN Tools. — Aarhus: 2002.

21. Execution of UML Models with CPN Tools for Workflow Requirements Validation / R. Machado, K. Lassen, S. Oliveira et al. // International Journal on Software Tools for Technology Transfer (STTT). — 2007. — Vol. 9, no. 3. — Pp. 353-369.

22. Ribeiro O., Fernandes J. Some Rules to Transform Sequence Diagrams into Coloured Petri Nets // Seventh Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools. — 2006.

23. Implementation of workflow systems using reference nets / T. Jacob, O. Kummer, D. Moldt, U. Ultes-Nitsche // Fourth Workshop and Tutorial on Practical Use of Coloured Petri Nets and the CPN Tools. — 2002. — Pp. 28-30.

24. Костенко К. И., Левицкий Б. Е., Синица С. Г. Моделирование жизненных циклов объектов и информационных процессов сред областей знаний // Наука Кубани. — 2006. — С. 268-270.

25. Jensen К. Coloured Petri Nets: A High Level Language for System Design and Analysis, Advances in Petri Nets 1990 // Lecture Notes in Computer Science.— 1991.

26. Jensen K. Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use. Vol. 1. — Springer-Verlag, 1997.

27. Lakos C. From Coloured Petri Nets to Object Petri Nets // Application and Theory of Petri Nets 1995: 16th International Conference. — Turin: Springer, 1995.

28. Levis A. A Colored Petri Net Model of Intelligent Nodes, http: //sysarch. gmu.edu/main/media/publications/abstracts/101p-ABS.pdf.

29. MulyarN. A., van derAalst W. Patterns in Colored Petri Nets. — Department of Technology Management, Eindhoven University of Technology: Beta, Research School for Operations Management and Logistics, 2005.

30. Толстое E. В. Задачи моделирования потоков работ при помощи сетей Петри : Автореф. дис. канд. техн. наук. — МФТИ. — 2006.

31. Ausanka-Crues R. Methods for Access Control: Advances and Limitations: Tech. rep. — Claremont, California: Harvey Mudd Collage, 2006.

32. Domingos D., Rito-Silva A., Veiga P. Workflow Access Control from a Business Perspective // Proc. ICEIS. — Vol. 3. — 2004. — Pp. 18-25.

33. Domingos D., Rito-Silva A., Veiga P. Authorization and Access Control in Adaptive Workflows // LECTURE NOTES IN COMPUTER SCIENCE. — 2003.

34. Tidswell J. E., Jaeger T. Integrated constraints and inheritance in DTAC // Proceedings of the fifth ACM workshop on Role-based access control. — ACM, 2000.

35. Dobmeier W., Schlager C. Supporting Attribute-based Access Control in Authorization and Authentication Infrastructures with Ontologies // JOURNAL OF SOFTWARE. — 2007.

36. Wang L., Wijesekera D., Jajodia S. A Logic-based Framework for Attribute based Access Control // Proceedings of the 2004 ACM workshop on Formal methods in security engineering. — ACM, 2004.

37. Lang B. et al. Attribute Based Access Control for Grid Computing: Tech. rep.: Argonne National Laboratory, Argonne, IL, 2006. ftp://info.mcs. anl.gov/pub/techreports/reports/P1367.pdf.

38. Knorr K. Dynamic Access Control through Petri Net Workflows // 16th Annual Computer Security Applications Conference (ACSAC'00). — 2000. — P. 159.

39. Knorr K. Multilevel Security and Information Flow in Petri Net Workflows // Proceedings of the 9th International Conference on Telecommunication Systems Modeling and Analysis, Special Session on Security Aspects of Telecommunication Systems. — 2001.

40. Shafiq В., Masood A., Joshi J., Gliafoor A. A Role-Based Access Control Policy Verification Framework for Real-Time Systems. — 2005. http: //cobweb.ecn.purdue.edu/~dmultlab/Security/pub/words05.pdf.

41. Atluri V., Huang W.-K. A Petri net based safety analysis of workflow authorization models // Journal of Computer Security. — 2000.

42. Dourish P., Chalmers M. Running Out of Space: Models of Information Navigation//HCI. — 1994.

43. Brusilovsky P. Methods and techniques of adaptive hypermedia // User Modeling and User Adapted Interaction. — Kluwer Academic Publishers, 1996. — Pp. 87-129.

44. Максаков А. В. Оценка эффективности масштабируемых алгоритмов классификации текстов // Труды РОМИП'2006. — 2006.

45. Тихомиров И. А. Вопросно-ответный поиск в интеллектуальной поисковой системе Exactus // Труды РОМИП'2006. — 2006.

46. Гулин А., Маслов М., Сегалович И. Алгоритм текстового ранжирования Яндекса на РОМИП-2006 // Труды РОМИП'2006. — 2006.

47. В rode r A. Z. Identifying and Filtering Near-Duplicate Documents // Combinatorial Pattern Matching: 11th Annual Symposium. — 2000.

48. Сегалович И. Как работают поисковые системы // Конференция «Диалог 2006». — 2006.

49. Page L., Brin S. et al. The PageRank citation ranking: Bringing order to the Web: Tech. rep.: Stanford University, 1999.

50. Billsus D., Pazzani M. Learning collaborative information filters // In Proceedings of the Fifteenth International Conference on Machine Learning. — 1998. — Pp. 46-54.

51. Костенко К. И., Синица С. Г. Классификация и свойства операций над объектами информационного пространства среды области знаний // Экологический вестник научных центров Черноморского экономического сотрудничества. — 2007. — № 1. — С. 10-15.

52. Крицкий С. П. Трансляция языков программирования: синтаксис, семантика, перевод.— Ростов-на-Дону: РГУ, 2000. http://public.uic.rsu. ru/~skritski/scourses/Transl/Langsl.htm\#multisortedalgebres.

53. Zhuge Н. Resource space model, its design method and applications II The Journal of Systems & Software. — 2004. — Vol. 72, no. 1. — Pp. 71-81.

54. Huynh D., Karger D., Quan D. Haystack: A Platform for Creating, Organizing and Visualizing Information Using RDF // Semantic Web Workshop. — 2002.

55. Shapiro R. A Comparison of XPDL, BPML and BPEL4WS. — Draft, http: //xml.coverpages.org/Shapiro-XPDL.pdf.

56. Lasater C. G. Adaptive Object Modeling: Final Discussions and MVC. — 2005. http://www.codeproj ect.com/gen/design/AOMMVC.asp.

57. Avgeriou P. Architectural patterns revisited — a pattern language // Proceedings of 10th European Conference on Pattern Languages of Programs (Euro-Plop 2005). — Irsee: 2005. — Pp. 1-39.

58. Veeneman D. The Command Pattern and MVC Architecture. — 2005. http: //www.codeproject.com/cs/design/commandpatterndemo.asp.

59. Tarr B. CMSC466 Introduction to Design Patterns: Tech. rep.: University of Maryland Baltimore County, 2004. http://www.research.umbc.edu/ ~tarr/dp/lectures/Command-2pp. pdf.

60. Zorgdrager K. Developing Java solutions using Design Patterns: Tech. rep.: Sun Microsystems Inc., 2001. http://www-106.ibm.com/ developerworks/ibm/library/it-kelbyl/.

61. Paranj B. JavaWorld. Java Tip68: Learn how to Implement the Command Pattern in Java.— 2004. http://www.javaworld.com/javaworld/ j avatips/j w-j avatip68p. html.

62. Al Zabir O. Distributed Command Pattern — an extension of command pattern for connected systems.— 2005. http://www.codeproject.com/cs/ design/distributedcommandpattern.asp.

63. Berlage T. A selective undo mechanism for graphical user interfaces based on command objects // ACM Transactions on Computer-Human Interaction (TOCHI). — Vol. 1. — 1994. — Pp. 269-294.

64. Myers B., Kosbie D. Reusable Hierarchical Command Objects // Proceedings of the SIGCHI conference on Human factors in computing systems: common ground. — Vancouver,, British Columbia: 1996. — Pp. 260-267.

65. Gamma et al. Design Patterns: Elements of Reusable Object-Oriented Software. — Addison-Wesley, 1994.

66. Snell J. Web services programming tips and tricks: Learn simple, practical Web services design patterns, Part 2. The command facade pattern.— 2004. http://www-128.ibm.com/developerworks/library/ ws-tip-altdesign2/.

67. Nielsen J. Feature Richness and User Engagement // Alertbox. — 2007. http: //www.useit.com/alertbox/features.html.