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

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

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

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

Тарасов Алексей Владимирович

РАЗРАБОТКА И ИССЛЕДОВАНИЕ МЕТОДОВ ГЕНЕРАЦИИ И СОПРОВОЖДЕНИЯ \У1МР-ИНТЕРФЕЙСОВ

05 13 11 - математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

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

Владивосток - 2007

Работа выполнена в Отделе интеллектуальных систем Института автоматики и процессов управления Дальневосточного отделения РАН

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

старший научный сотрудник Грибова Валерия Викторовна

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

старший научный сотрудник Бобков Валерий Александрович

кандидат технический наук, доцент Шевченко Игорь Иванович

Ведущая организация Институт систем информатики

Сибирского отделения РАН (г Новосибирск)

Защита состоится 19 октября 2007 г в 10 00 часов на заседании диссертационного совета Д 005 007 01 в Институте автоматики и процессов управления Дальневосточного отделения РАН по адресу 690041, г Владивосток, ул Радио, 5

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

Автореферат разослан "/ДО" 2007

г

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

диссертационного совета Д 005 007 01, к т н

Лебедев А В

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

Актуальность темы Разработка интерфейсов программных средств, удовлетворяющих требованиям пользователей, является одной из важнейших задач при создании программного обеспечения Общей тенденцией является усложнение пользовательских интерфейсов, связанное как с увеличением функциональности программ, так и с различными и часто изменяющимися условиями их эксплуатации В результате на пользовательский интерфейс уходит существенная часть общих затрат на разработку программного средства Поэтому исследования в области человеко-машинных интерфейсов, направленные на уменьшение трудоемкости разработки и сопровождения являются актуальными Значительный вклад в решение этой проблемы внесли российские и зарубежные ученые Гаврилова Т А, Соснин П И, Хорошевский В Ф, Myers В А , Puerta A R, Szekely Р А и другие

В настоящее время наибольшее распространение получили WIMP'-интерфейсы, в которых взаимодействие с пользователем производится с помощью различных элементов интерфейса (окон, меню, списков, полей ввода, кнопок и т д), предназначенных для ввода, вывода и управления информацией Число таких элементов постоянно увеличивается, а их структура и поведение усложняются При разработке пользовательских WIMP-интерфейсов в настоящее время используется два подхода, поддерживаемых специализированным инструментарием - дизайнерский и моделеориентированный Для каждого подхода существует свой класс таких инструментов Для дизайнерского - построители интерфейса (Interface Builders), для моделеориентированного - моделеориентированные средства (MB IDE - Model Based Interface Development Environments) Построители интерфейса предназначены для автоматизации процесса разработки их визуального представления с помощью структурных и визуальных редакторов С использованием построителей интерфейса разрабатывается большинство современных WIMP-интерфейсов Моделеориентированные средства (МОС) основаны на принципе раздельного проектирования и реализации интерфейса с прикладной программой с последующим их связыванием и предназначены для автоматической генерации кода пользовательского интерфейса по его модели При этом модель интерфейса разбивается на несколько компонентов и предназначена для описания всех аспектов взаимодействия с пользователем

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

1 Windows, Icons, Menus, Pointing devices

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

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

Диссертационная работа является частью исследований, выполняемых в рамках предложенного в Институте автоматики и процессов управления (ИАГГУ) ДВО РАН онтологического подхода к автоматизации разработки и сопровождения пользовательских интерфейсов Основная идея подхода заключается в (1) разбиении интерфейса на компоненты в соответствии с системами понятий различных групп специалистов, осуществляющих его разработку и сопровождение, (2) построении для каждой системы понятий модели онтологии, в терминах которой разработчики интерфейса формируют соответствующий компонент его модели, (3) автоматической генерации кода пользовательского интерфейса по его модели В работах Клещева АС и Грибовой В В разработана концепция автоматизации проектирования, реализации и сопровождения пользовательского интерфейса на основе онтологического подхода, определены компоненты модели интерфейса и их структура, а также модели онтологий системы понятий диалога, связи интерфейса с прикладной программой и сценария диалога Но не были разработаны онтология \ОТМР-интерфейсов, методы формирования модели и методы генерации по ней

исходного кода WIMP-интерфейсов

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

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

1) Разработать модель онтологии WIMP-интерфейсов

2) Разработать метод формирования модели WIMP-интерфейса

3) Разработать метод генерации исходного кода WIMP-интерфейса по его модели

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

5) Разработать технологию проектирования и сопровождения WIMP-интерфейсов с помощью разработанного инструментального средства и выполнить ее практическую проверку при разработке WIMP-интерфейсов программных систем

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

- впервые разработана модель онтологии WIMP-интерфейсов,

- предложен метод формирования модели WIMP-интерфейса в терминах онтологий (а не языков спецификаций),

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

- метод генерации исходного кода WIMP-интерфейса ориентирован на абстрактный (а не конкретный) язык

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

- в создании инструментального средства (Onto Dev) для разработки, автоматической генерации и сопровождения WIMP-интерфейсов на основе онтологий,

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

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

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

Апробация работы Основные положения диссертации докладывались и обсуждались на Дальневосточных математических школах-семинарах имени

академика Е В Золотова (Владивосток, 2002-2004, 2007), Первой международной конференции «Системный анализ и информационные технологии» (Переславль-Залесский, 2005), Международной научной конференции «Интеллектуальные и многопроцессорные системы» (Таганрог, 2005), Открытом дальневосточном конкурсе студентов, аспирантов и молодых специалистов «Программисг-2006» (Владивосток, 2006), Научной сессии МИФИ (Москва, 2006), Международной конференции «Параллельные вычисления и задачи управления» (Москва, 2006), на семинарах отдела интеллектуальных систем ИАПУ ДВО РАН и базовой кафедры программного обеспечения ЭВМ ДВГУ (Владивосток, 2002-2007)

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

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

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

Первая глава содержит обзор литературы В ней вводятся основные понятия WIMP-интерфейсов, анализируются существующие средства их разработки построители интерфейса и МОС Рассматриваются возможности этих средств при разработке интерфейсов для различных платформ и языков программирования, методы организации как локального, так и сетевого взаимодействия интерфейса с прикладной программой, механизмы повторного использования компонентов пользовательского интерфейса, сопровождения интерфейса и расширения инструментария Рассматривается онтологический подход к разработке пользовательских интерфейсов, описанный в работах Грибовой В В и Клещева А С

Во второй главе описывается модель онтологии WIMP-интерфейсов, которая состоит из двух уровней метаонтологии, предназначенной для описания структуры элементов интерфейса и непосредственно онтологии, содержащей описание множества элементов интерфейса в соответствии со структурой, представленной в метаонтологии Модель метаонтологии WIMP-интерфейсов характеризуется множеством элементов интерфейса, UIElements={UIElement,}

Каждый элемент интерфейса UIElementl=<UIElementType„ Parameters,, Events,, Functions,>, где UIElementType, - тип элемента интерфейса, Parameters, - множество параметров, Parameters^fParam.j} 5 Events, - множество событий, Events,={Event,j} ^Г™", Functions, - множество функций, Functions,={Function,j} f™cmn'

В результате анализа WIMP-интерфейсов были выделены следующие типы элементов интерфейса, UIElementType, е {Окно-контейнер, Элемент управления, Вспомогательный элемент}

Элементы интерфейса типа «Окно-контейнер» (окна) предназначены для группировки элементов интерфейса в семантически связанные группы Элементы интерфейса типа «Элемент управления» (элементы управления) предназначены для операций ввода/вывода данных и вызова команд Элементы интерфейса типа «Вспомогательный элемент» используются в качестве компонентов окон и элементов управления

Каждый параметр элемента интерфейса Param, описывается своим типом и значением, т е Рагага,=<Рагат_Уа1ие„ Рагат_Туре,>, где Param_Value, - значение параметра, Param_Type, - тип параметра

Тип параметра элемента интерфейса Param_Type, с Param Type, где Param_Type = String u Integer u Float u Boolean и Image Enumeration и UIElem, UIElem s UIElements, Param_Value e Param_Type

События элемента интерфейса Events1={Event1J}"™'C0""' задают множество тех событий, на которые элемент интерфейса может реагировать

Каждое событие Event,j описывается следующим образом Еуеп^=<Еуеп1_Ыатец, Event_Parameters1J> Event_Name,j - имя события, Event_Parameters4 - множество параметров события

Множество Event_Parametersu = {Event_Parameterljk} Каждый

параметр задается своим именем и типом Event_Parameter,jk=<Event_Param__Nameljk, Event_Param_Type,jt>, где Event^Param Name.jk - уникальное имя параметра, Event_Param_Type,jk - тип параметра, Event_Param_Typeljk s Func_Type (описание Func_Type см ниже)

Функции элемента интерфейса Functions,={ Function,,} описывают

множество возможных действий, которые могут производиться над ним

Каждая функция Function описывается следующим образом Function,j = <Function_Name4, Function_Parameters4, Function_Return_Type4> Function_Name4 -имя функции, Function_Parameters,j - параметры функции, Function_Return_Type,j -тип значения, возвращаемого функцией, Function_Return_Type,j е Func Type

Параметры функции Function_Parameters,j могут состоять из множества её параметров, Function_Parameters,j = {Function_Parameterljk}{™„i"™""roOT"' Каждый параметр функции Function_Parameter,jk описывается своим типом и значением, т е Function_Parameter,jk= <FuncParam_Value,jk, FuncParam_Type4k>, где FuncParam_Valueljk - значение параметра, FuncParam_Typeljk - тип параметра,

FuncParam_Type,jk e FuncType Тип параметра функции Func_Type может быть одним из следующих Func_Type = String u Integer u Float Boolean

В соответствии с метаонтологией разработана модель онтологии WIMP-интерфейсов, содержащая 51 элемент, подробно описанная в диссертационной работе В автореферате приведено описание элемента интерфейса «Дерево»

Дерево - элемент интерфейса, части которого иерархически организованы в качестве элементов дерева

Дерево = <UIElementTypesepeBo> ParameterSjepeBOJ EventsflepeB0, FunctionsaepeBo> UIElementTypeflepeBo = Элемент управления

ParametersflepeBO = ParameterscoclaB„ofi эягмент u { Полосы прокрутки, Линии от корня, Линии между элементами, Подсветка элементов, Кнопки свертки } и Элементы дерева

Полосы прокрутки = < Прокрутка, Boolean > Описывает наличие полос прокрутки

Линии от корня = < От корня, Boolean > Описывает наличие линий, идущих от корня к элементам первого уровня иерархии

Линии между элементами = < Линии между, Boolean > Описывает наличие линий, идущих от элементов-родителей к элементам-потомкам

Подсветка элементов = < Подсветка, Boolean > Описывает, подсвечиваются ли элементы при наведении на них курсора мыши

Кнопки свертки = < Свертка, Boolean > Описывает наличие у каждого элемента дерева кнопок для переключения отображаемости его подэлементов

Параметр «Элементы» либо Элементы дерева = {< Элемент дерева,, { Элемент дерева } >} , либо Элементы дерева = {< Элемент дерева,, { Флажковый элемент дерева } >} Описывает множество элементов дерева

EventSjepeB0 — EventScoc-гавной элемент FunCtlOnS„epeBO=0

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

В третьей главе описывается метод формирования модели WIMP-интерфейса в терминах моделей онтологий и метод генерации исходного кода WIMP-интерфейса по его модели

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

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

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

- модели WIMP-представления (описывает структуру и свойства визуального представления элементов интерфейса, характеризуется множеством описаний окон WindowDescnptions={<UIElementName„ Wmdow,>} и является конкретизацией модели онтологии WIMP-интерфейсов,

- модели связи интерфейса с прикладной программой (описывает множество программных интерфейсов, предоставляемых прикладной программой, Interfaces={Interface,} ) и является конкретизацией модели онтологии связи интерфейса с прикладной программой,

- модели сщнария диалога (описывает начальное окно StartWindow, множество состояний диалога States, а также действия, которые выполняются в каждом состоянии) и является конкретизацией модели онтологии сценария диалога

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

Структура модели WIMP-интерфейса, а также модель онтологии системы понятий диалога, связи интерфейса с прикладной программой и сценария диалога были разработаны и описаны в работах Грибовой В В Автором диссертационной работы предложен метод формирования каждого компонента модели WIMP-интерфейса по его структуре и моделям онтологий, который полностью описан в диссертационной работе В автореферате приведено описание формирования каждого состояния State, е States (фрагмент формирования модели сценария диалога) Для формирования каждого состояния State, необходимо выполнить следующие действия 1) Задать событие Event,, Event, е [J Events

Window x s WindowDescriptions

(событие Event,, принадлежит некоторому элементу интерфейса, определенному в модели WIMP-представления)

2) Задать множество переменных Variables,, которые необходимы для описания последовательности инструкций Instructions,, при этом для каждой переменной Variable,j е Variables, определить

2 1) Имя переменной Variable Name,, - строковое значение 2 2) Тип значения Variable_Type,j, т е Variable_Type,j е Var_Type_Mod, где Var_Type_Mod с Var_Type, Var_Type_Mod = String и Integer u Float u Boolean kj Enumerations u Windows, где

Enumerations= (J Enumeration

Window x 6 WindowDescnptions

(типом значения Enumerations являются такие перечислимые множества, которые определены в модели WIMP-представления),

Wmdows= (J Windowx (типом значения Windows

Window х 6 WindowDescnptions

являются такие окна, которые определены в модели WIMP-представления)

3) Задать последовательность инструкций Instructions, Для формирования каждой инструкции Instruction,j е Instructions, выполнить Задание инструкции (Instruction,j)

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

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

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

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

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

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

Код формируется на абстрактном языке, и состоит из следующих частей кода инициализации интерфейса, кода программных интерфейсов, кода структуры окон и кода поведения окон Процесс генерации каждой из частей полностью описан в диссертационной работе, при этом каждая часть кода может формироваться как на основе одного, так и на основе нескольких компонентов модели WIMP-интерфейса Ниже приведен фрагмент, описывающий генерацию кода инициализации интерфейса main { {Инициализация программного интерфейса>} run <имя>,}

1 {Interface, I Interface, = < Interfacename,, InteractionModel,, Functions,:»} ....... н>{

Инициализация программного интерфейса>}, где Interface, - программный интерфейс МСПП В зависимости от параметра InteractionModel, отображение имеет вид

1 1 {Interface,! InteractionModel, = Локальная}->

(Interfacename] mitlocal (путь к файлуь имя класса]),

Interfacename,nterfilcecount mitlocal (путь К файлуmterfacecounts ИМЯ KJItlCCcl,nlerfaccc0„nt). где «путь к файлу», elModelparameters, «имя класса», elModelparameters модели

взаимодействия InteractionModel,, 1 2 { Interface, I InteractionModel, = Распределенная }—>

(Interfacename] mitremote (сетевой адресь номер портаь имя объекта]),

Interfacename,„terfacecoimt mitremote ( сетевой адрест,егй1сес01шь номер nopTamterfacecount, имя o6beKTa,nterfacecount),, где «сетевой адрес», elModelparameters, «номер порта», elModelparameters, «имя объекта», е IModelparameters модели взаимодействия InteractionModel,,

2 StartWindow run StartWindowID, где StartWindow - это начальное окно МСД, StaitWindowID - это идентификатор StartWindow

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

Четвертая глава содержит описание требований к инструментальному средству Onto Dev для разработки, автоматической генерации и сопровождения WIMP-интерфейсов на основе онтологий, его архитектуры и методов реализации На рис 1 изображена архитектурно-контекстная диаграмма Onto Dev

Инструментальное средство

Еи§га: стека шаблонов

И'Ггегр'.фСЕаняая среда **—

Разработчик инструментария

Уел овные обоз начешет

— пользователь

Рис 1 Архитектурно-контекстная диаграмма Onto Dev

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

Разработанное инструментальное средство Onto Dev удовлетворяет всем представленным требованиям Onto Dev автоматически генерирует исходный код WIMP-интерфейса по его модели, обеспечивает генерацию WIMP-интерфейсов на различные языки и платформы язык С# для платформы NET 2 (включая NET 2 Compact Framework - версию NET для карманных компьютеров) и язык Java для платформы Java 2, поддерживается как локальное, так и сетевое взаимодействие интерфейса с прикладной программой по протоколам ТСРЯР и SOAP, все компоненты модели WIMP-интерфейса формируются с помощью структурных и визуальных редакторов, управляемых моделями онтологий, предоставляется возможность автоматического сопровождения модели WIMP-представления при изменении терминов модели системы понятий диалога или их структуры (автоматически изменяется модель WIMP-представления, при этом не требуется повторная генерация кода), предоставляются механизмы повторного использования фрагментов модели WIMP-представления, состоящих как из отдельных элементов интерфейса, так и их групп, инструментарий может расширяться добавлением новых элементов интерфейса, новых стандартных функций диалога, новых платформ и языков программирования

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

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

Рис 2 Общая схема разработки WIMP-интерфейса с помощью Onto Dev

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

Инструментарий для разработки пользовательского интерфейса, представленный в данной работе, использовался при разработке \¥1МР-интерфейса системы интеллектуальной поддержки обследования больных для врача-уролога Назначение системы - обеспечить интеллектуальную поддержку врачу-урологу при формировании и ведении историй болезни, а также организовать компьютерный архив историй болезни, предназначенный для статистической обработки и создания отчетов История болезни формируется на основе модели системы понятий диалога (базы наблюдений) в области урологии База наблюдений содержит более 700 терминов и около 5000 вариантов значений Система представлена в двух версиях локальной и распределенной Система интеллектуальной поддержки используется в урологическом отделении Городской клинической больницы N2 г Владивостока

Также инструментарий использовался для разработки \У1МР-интерфейса для системы анализа газетных объявлений о купле-продаже недвижимости Предметной областью здесь является торговля недвижимостью в пределах отдельно взятого города Назначением системы является анализ текстов газет и выборка объявлений, содержащих информацию о купле-продаже недвижимости, определение приблизительного местоположения недвижимости на основе адресного плана города, группировка объявлений по их местоположению, генерация отчетов и их распечатка В ходе разработки был сформирован адресный план города Владивостока, который содержит информацию о приблизительно 700 улицах города, 40 микрорайонах города, при этом для каждой улицы выделено до 5 различных вариантов сокращения ее названия Система анализа газетных объявлений о купле-продаже недвижимости используется в ООО «Барс»

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

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

интерфейса

2 Разработан метод формирования модели WIMP-интерфейса в терминах моделей онтологий

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

4 Разработаны методы реализации инструментального средства Onto Dev, предназначенного для проектирования, автоматической генерации и сопровождения WIMP-интерфейсов на основе онтологий Onto Dev обеспечивает автоматическую генерацию исходного кода по модели WIMP-интерфейса на языки С# для платформы NET 2 (включая NET 2 Compact Framework) и язык Java для платформы Java 2, организацию как локального, так и сетевого взаимодействия интерфейса с прикладной программой, повторное использование компонентов модели WIMP-интерфейса, расширение самого инструментального средства Onto Dev

5 Предложена технология проектирования и сопровождения WIMP-интерфейсов с помощью Onto Dev Проектирование и сопровождение осуществляется с помощью визуальных и структурных редакторов в терминах систем понятий специалистов (экспертов предметной области, дизайнеров, программистов) Проведена практическая проверка Onto Dev разработаны WIMP-интерфейсы для Системы интеллектуальной поддержки обследования больных для врача уролога и Системы анализа газетных объявлений о купле-продаже недвижимости

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

1 Тарасов А В Модель выразительных средств интерфейса при его разработке на основе онтологий//Информатика и системы управления -2005 №1 -С 97-106

2 Грибова В В , Тарасов А В Модель управления компонентом представления информации в пользовательском интерфейсе на основе онтологии Труды конференции Первая международная конференция "Системный анализ и информационные технологии" - 2005 -М КомКнига, 2005 - С 184-187

3 Грибова В В, Тарасов А В Генератор пользовательского интерфейса, управляемый онтологиями Материалы международной научной конференции Интеллектуальные и многопроцессорные системы - 2005 - Таганрог Изд-во ТРТУ, 2005 - С 316-321

4 Грибова В В, Тарасов А В Модель онтологии предметной области «Графический пользовательский интерфейс» // Информатика и системы управления -2005 №1 - С 80-90

5 Грибова В В, Тарасов А В Генератор кода пользовательского интерфейса, управляемый онтологией // Искусственный интеллект - 2005 №4 - С 457-464

6 Грибова В В, Тарасов А В Концепция расширяемого инструментария для разработки пользовательского интерфейса Труды конференции Научная сессия МИФИ-2006 -М МИФИ, 2006 - С 132-133

7 Тарасов А В Среда разработки пользовательских интерфейсов OntoDev Сборник докладов Открытый дальневосточный конкурс студентов, аспирантов и молодых специалистов "Программист-2006" - Владивосток ИАПУ ДВО РАН, 2006 - С 84-88

8 Грибова В В , Тарасов А В Управление процессом автоматической генерации программного кода пользовательского интерфейса по его модели [Электронный ресурс] III Международная конференция «Параллельные вычисления и задачи управления» - 2006 - (CD-ROM)

9 Грибова В В, Тарасов А В Инструментальное средство ONTODEV для проектирования и автоматической генерации пользовательского интерфейса // Информатика и системы управления -2006 №1 -С 152-158

10 Грибова В В , Тарасов А В Гибкие инструментальные средства для разработки пользовательского интерфейса//Приборостроение -2007 №3 - С 35-38

11 Грибова В В , Тарасов А В , Черняховская М Ю Система интеллектуальной поддержки обследования больных, управляемая онтологией // Программные продукты и системы -2007 №2 -С 49-51

Личный вклад автора. Все результаты, составляющие основное содержание диссертации, получены автором самостоятельно В работах [2-6, 8] автором описана модель онтологии WIMP-интерфейсов, определены метод формирования модели WIMP-представления и метод генерации исходного кода WIMP-интерфейса по его модели В работах [9-10] автором описаны методы реализации инструментального средства Onto Dev В работе [11] автором разработаны методы реализации WIMP-интерфейса Системы интеллектуальной поддержки обследования больных и методы ее реализации

ТАРАСОВ Алексей Владимирович

РАЗРАБОТКА И ИССЛЕДОВАНИЕ МЕТОДОВ ГЕНЕРАЦИИ И СОПРОВОЖДЕНИЯ WIMP-ИHTEPФEЙCOB

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

Подписано к печати 07 09 2007 г Уел п л 0,8 Уч -изд л 0,67 Формат 60x84/16_Тираж 100_Заказ 61

Издано ИАПУ ДВО РАН Владивосток, Радио, 5

Отпечатано участком оперативной печати ИАПУ ДВО РАН, Владивосток, Радио, 5

Оглавление автор диссертации — кандидата технических наук Тарасов, Алексей Владимирович

Оглавление.

Введение.

Глава 1. Инструментальные средства и подходы к разработке WIMP-интерфейсов (Обзор литературы).

1.1 Основные понятия WIMP-интерфейсов.

1.2 Построители интерфейса.

1.3 Моделеориентированпые средства.

1.4 Онтологический подход к автоматизации разработки пользовательских интерфейсов.

1.5 Выводы из обзора.

Глава 2. Онтология WIMP-иитерфейсов.

2.1 Модель метаонтологии.

2.2 Модель онтологии.

2.3 Выводы.

Глава 3. Методы формирования модели WIMP-интерфейса и генерации исходного кода

3.1 Метод формирования модели WIMP-интерфейса.

3.1.1 Метод формирования модели системы понятий диалога.

3.1.2 Метод формирования модели WIMP-представления.

3.1.3 Метод формирования модели связи интерфейса с прикладной программой.

3.1.4 Метод формирования модели сценария диалога.

3.2 Метод генерации исходного кода WIMP-интерфейса по его модели.

3.2.1 Абстрактный язык для описания структуры исходного кода WIMP-интерфейсов.

3.2.2 Процесс генерации кода.

3.3 Выводы.

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

4.1 Требования к инструментальному средству для проектирования, автоматической генерации и сопровождения WIMP-иитерфейсов.

4.2 Архитектура Onto Dev.

4.3 Методы реализации инструментария.

4.4 Методы реализации генератора кода WIMP-интерфейсов.

4.5 Технические характеристики.

4.6 Сравнительный анализ инструментальных средств для разработки WIMP-интерфейсов.

4.7 Выводы.

Глава 5. Технология проектирования и сопровождения WIMP-иптерфейсов с помощью инструментального средства Onto Dev.

5.1 Технология проектирования и сопровождения WIMP-иптерфейсов.

5.2 Технология сопровождения инструментария разработчика.

5.3 Разработанные с помощью Onto Dev интерфейсы.

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

5.3.2 Система анализа газетных объявлений.

5.3.3 Сравнительная оценка трудоёмкости разработки WIMP-интерфейсов.

5.4 Выводы.

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

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

Актуальность проблемы. Разработка интерфейсов программных средств, удовлетворяющих требованиям пользователей, является одной из важнейших задач при создании программного обеспечения. Общей тенденцией является усложнение пользовательских интерфейсов, связанное как с увеличением функциональности программ, так и с различными и часто изменяющимися условиями их эксплуатации. В результате на пользовательский интерфейс уходит существенная часть общих затрат на разработку программного средства. Поэтому исследования в области человеко-машинных интерфейсов, направленные на уменьшение трудоемкости разработки и сопровождения являются актуальными. Значительный вклад в решение этой проблемы внесли российские и зарубежные ученые: Гаврилова Т.А., Соснин П.И., Хорошевский В.Ф., Myers В.A., Puerta A.R., Szekely P.А. [4-10, 45-50, 72, 74-77, 82, 85, 87-89, 105-111, 115,125-127,130-132,136-137] и другие.

В настоящее время наибольшее распространение получили WIMP1-интерфейсы, в которых взаимодействие с пользователем производится с помощью различных элементов интерфейса [32] (кнопок, меню, списков, полей ввода и т.д.), предназначенных для ввода, вывода и управления информацией. Число таких элементов постоянно увеличивается, а их структура и поведение усложняются. При разработке пользовательских WIMP-интерфейсов в настоящее время используется два подхода, поддерживаемых специализированным инструментарием [30, 41, 70]. Для каждого подхода существует свой класс таких инструментов - построители интерфейса [69, 79, 102] (Interface Builders) или моделеориентированные средства [122, 133] (MB IDE - Model Based Interface Development Environments). Построители интерфейса предназначены для автоматизации процесса разработки их визуального представления с помощью структурных и визуальных редакторов.

1 Windows, Icons, Menus, Pointing devices

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

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

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

Диссертационная работа является частью исследований, выполняемых в рамках предложенного в Институте автоматики и процессов управления ДВО РАН онтологического подхода к автоматизации разработки и сопровождения пользовательских интерфейсов. Основная идея подхода заключается в (1) разбиении интерфейса на компоненты в соответствии с системами понятий различных групп специалистов, осуществляющих его разработку и сопровождение; (2) построении для каждой системы понятий модели онтологии, в терминах которой разработчики интерфейса формируют соответствующий компонент его модели; (3) автоматической генерации кода пользовательского интерфейса по его модели. В работах Клещева А.С. и Грибовой В.В. [13, 15, 16, 18, 98-99] разработана концепция автоматизации проектирования, реализации и сопровождения пользовательского интерфейса на основе онтологического подхода; определены компоненты модели интерфейса и их структура; а также модели онтологий системы понятий диалога, связи интерфейса с прикладной программой и сценария диалога. Но не были разработаны онтология WIMP-интерфейсов, методы формирования модели и методы генерации по ней исходного кода WIMP-интерфейсов.

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

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

1) Разработать модель онтологии WIMP-интерфейсов.

2) Разработать метод формирования модели WIMP-интерфейса.

3) Разработать метод генерации исходного кода WIMP-интерфейса по его модели.

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

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

Методы исследования. Для решения указанных задач использовались методы искусственного интеллекта [100-101, 140], теория множеств, теория формальных языков, методы объектно-ориентированного проектирования [35, 44], методы системного программирования.

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

- впервые разработана модель онтологии WIMP-интерфейсов;

- предложен метод формирования модели WIMP-интерфейса в терминах онтологий (а не языков спецификаций);

- разработан абстрактный язык для описания структуры исходного кода WIMP-интерфейсов, не зависящий от конкретной платформы и языка его реализации;

- метод генерации исходного кода WIMP-интерфейса ориентирован на абстрактный (а не конкретный) язык.

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

- в создании инструментального средства (Onto Dev) для разработки, автоматической генерации и сопровождения WIMP-интерфейсов на основе онтологий;

- в разработке с помощью Onto Dev WIMP-интерфейса Системы интеллектуальной поддержки обследования больных для врача-уролога;

- в разработке с помощью Onto Dev WIMP-интерфейса Системы анализа газетных объявлений о купле-продаже недвижимости;

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

Апробация работы. Основные положения диссертации докладывались и обсуждались на Дальневосточных математических школах-семинарах имени академика Е.В. Золотова (Владивосток, 2002-2004; 2007), Первой международной конференции «Системный анализ и информационные технологии» (Переславль-Залесский, 2005), Международной научной конференции «Интеллектуальные и многопроцессорные системы» (Таганрог, 2005), Открытом дальневосточном конкурсе студентов, аспирантов и молодых специалистов «Программист-2006» (Владивосток, 2006), Научной сессии МИФИ (Москва, 2006), Международной конференции «Параллельные вычисления и задачи управления» (Москва, 2006), на семинарах отдела интеллектуальных систем ИАПУ ДВО РАН и базовой кафедры программного обеспечения ЭВМ ДВГУ (Владивосток, 2002-2007).

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

Структура и объем работы. Диссертационная работа состоит из введения, пяти глав и заключения, изложенных на 138 страницах, списка литературы, включающего 141 наименование, и двух приложений. Диссертация содержит 44 рисунка.

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

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

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

2. Разработан метод формирования модели WIMP-интерфейса в терминах моделей онтологий.

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

4. Разработаны методы реализации инструментального средства Onto Dev, предназначенного для проектирования, автоматической генерации и сопровождения WIMP-интерфейсов на основе онтологий. Onto Dev обеспечивает: автоматическую генерацию исходного кода по модели WIMP-интерфейса на языки С# для платформы .NET 2 (включая .NET 2 Compact Framework) и язык Java для платформы Java 2; организацию как локального, так и сетевого взаимодействия интерфейса с прикладной программой; повторное использование компонентов модели WIMP-интерфейса; расширение самого инструментального средства Onto Dev.

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

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

1. Буч Г., Рамбо Д., Джекобсон A. UML. Руководство пользователя: Пер. с англ. М.: ДМК Пресс, 2001. 432 с.

2. Быкова Г.И., Ицкович А.И., Кулаков Ю.В., Осин А.Я., Черняховская М.Ю. История болезни для студентов педиатрического факультета. Препринт. Владивосток: ИАПУ ДВО РАН, 2000. 28с.

3. Вигерс К. Разработка требований к программному обеспечению: Пер. с англ. М.: Издательско-торговый дом "Русская Редакция", 2004. 576 с.

4. Гаврилова Т. А., Хорошевский В. Ф. Базы знаний интеллектуальных систем.— СПб: Питер, 2001.

5. Гаврилова Т.А. Использование онтологий в системах управления знаниями // Труды международного конгресса «Искусственный интеллект в XXI веке», Дивноморское, Россия, М., Физматлит, 2001. с.21-33.

6. Гаврилова Т.А., Воинов А. Визуальный концептуальный анализ знаний и данных для интеллектуальных и обучающих систем // VI Междунарконф«Знание -Диалог-Решение» KDS-97- Ялта, 1997- с. 1-8.

7. Гаврилова Т.А., Горовой В.А., Архитектура программного комплекса ОНТОЛИНЖ-KAON // Материалы 12-й международной конференции "Knowledge-Dialog-Solution" KDS 2006, Варна, Болгария, 20-25 июня -с. 133139.

8. Гаврилова Т.А., Зудилова Е. В. Концептуальное проектирование интерфейсов интеллектуальных систем // Журнал Известия РАН. Техническая кибернетика. 1994. - N 2. - с. 3-11.

9. Грибова В. В., Тарасов А. В. Гибкие инструментальные средства для разработки пользовательского интерфейса // Приборостроение. 2007. №3. - с. 35—38.

10. Грибова В.В., Клещев А.С. Использование методов искусственного интеллекта для проектирования пользовательского интерфейса // Информационные технологии. 2005. №8. С.58-62.

11. Грибова В.В., Клещев А.С. Концепция разработки пользовательского интерфейса на основе онтологий. Часть 2. Модель пользовательского интерфейса. Владивосток: ИАПУ ДВО РАН, 2003. - 51 с.

12. Грибова В.В., Клещев А.С. Концепция разработки пользовательского интерфейса на основе онтологий. Часть 1. Инструментарий для разработки пользовательского интерфейса (обзор литературы). Основная идея подхода. -Владивосток: ИАПУ ДВО РАН, 2003. 24 с.

13. Грибова В.В., Клещев А.С. Концепция разработки пользовательского интерфейса на основе онтологий // Вестник ДВО РАН, 2005. №6. С. 123-128.

14. Грибова В.В., Клещев А.С. Управление проектированием и реализацией пользовательского интерфейса на основе онтологий // Проблемы управления, 2006. №2. С.58-62.

15. Грибова В.В., Клещев А.С., Черняховская М.Ю. Исследование сложной проблемы разработки пользовательского интерфейса и ее моделирование // II Междунар. конф. «Параллельные вычисления и задачи управления» Электрон, ресурс. Тр. конф.-2004 (CD-ROM).

16. Грибова В.В., Тарасов А.В. Генератор кода пользовательского интерфейса, управляемый онтологией // Искусственный интеллект. 2005. №4. . с. 457-464.

17. Грибова В.В., Тарасов А.В. Генератор пользовательского интерфейса, управляемый онтологиями: Материалы международной научной конференции. Интеллектуальные и многопроцессорные системы 2005 - Таганрог: Изд-во ТРТУ, 2005.-с. 316-321.

18. Грибова В.В., Тарасов А.В. Инструментальное средство ONTODEV для проектирования и автоматической генерации пользовательского интерфейса // Информатика и системы управления. 2006. №1. - с. 152-158.

19. Грибова В.В., Тарасов А.В. Концепция расширяемого инструментария для разработки пользовательского интерфейса: Труды конференции. Научная сессия МИФИ-2006. -М.: МИФИ, 2006. с. 132-133.

20. Грибова В.В., Тарасов А.В. Модель онтологии предметной области «Графический пользовательский интерфейс» // Информатика и системы управления.-2005. №1,-с. 80-90.

21. Грибова В.В., Тарасов А.В. Управление процессом автоматической генерации программного кода пользовательского интерфейса по его модели

22. Электронный ресурс.: III Международная конференция «Параллельные вычисления и задачи управления»,- 2006 (CD-ROM).

23. Грибова В.В., Тарасов А.В., Черняховская М.Ю. Система интеллектуальной поддержки обследования больных, управляемая онтологией // Программные продукты и системы. 2007. №2. - с. 49-51.

24. Гультяев А.К., Машин В.А. Проектирование и дизайн пользовательского интерфейса. СПб.: КОРОНА принт. - 2000. - 352 с.

25. Дейтел X., Дейтел П. Как программировать на С++: Пер. с англ. М.: ЗАО "Издательство Бином", 1998. 1024 с.

26. Клименко С., Уразметов В. Графические интерфейсы и средства их разработки // Материалы конф. "Индустрия программирования-96". Электрон. дан. - www.uniyar.ac.ru/network/atm/forum/koi/if/prg/prg96/ 73/html

27. Компьютерные сети. Принципы, технологии, протоколы / В.Г. Олифер, Н.А. Олифер.-СПб: Питер, 2001.-672 е.: ил.

28. Коутс Р., Влейминк И. Интерфейс "человек-компьютер": Пер. с англ. М. Мир, 1990.- 501 с.

29. Леоненков А.В. Самоучитель UML. СПб.: БХВ-Петербург, 2002. 304 с.

30. Леффингуэлл, Дин, Уидриг, Дон. Принципы работы с требованиями к программному обеспечению. Унифицированный подход.: Пер. с англ. М.: Издательский дом «Вильяме», 2002. - 448 е.: ил. - Парал. тит. англ.

31. Лэндгрейв Т., Мэйплс Б., Уилсон С.Ф. Принципы проектирования и разработки программного обеспечения. Учебный курс MCSD: Пер. с англ. 2-е изд., испр. М.: Издательско-торговый дом "Русская Редакция", 2002. 736 с.

32. Мандел Т. Дизайн интерфейсов: Пер. с англ.- М.: ДМК Пресс, 2005. 416 с.

33. Мандел Т. Разработка пользовательского интерфейса: Пер. с англ. М.: ДМК Пресс, 2001.-416 с.

34. Нагорный Д.В., Черняховская М.Ю. База знаний системы интеллектуальной поддержки обследования больных для врача уролога. Препринт. Владивосток: ИАПУ ДВО РАН, 2002. Ч. 1. 64с.

35. Нагорный Д.В., Черняховская М.Ю. База знаний системы интеллектуальной поддержки обследования больных для врача уролога. Препринт. Владивосток: ИАПУ ДВО РАН, 2002. Ч. 2. 46с.

36. Ноутон П., Шилдт Г. Java™ 2: Пер. с англ. СПб.: БХВ-Петербург, 2005. - 1072 е.: ил.

37. Раскин Дж. Интерфейс: новые направления в проектировании компьютерных систем. Пер. с англ. - СПб: Символ Плюс, 2003. - 272 с.

38. Секунов Н.Ю. Самоучитель С#. СПб.: БХВ-Петербург, 2001. - 576 е.: ил.

39. Скопин И.Н. Разработка интерфейсов программных систем // Системная информатика. 1998. Вып. 6. С. 123-173.

40. Соммервил И. Инженерия программного обеспечения: Пер. с англ.-М.:Издательский дом «Вильяме», 2002.-624с.:с ил.

41. Соснин П. И. Инструментарий вопросно-ответных рассуждений в корпоративной среде автоматизированного проектирования. Программные продукты и системы, №3, 2004, с.7-12.

42. Соснин П.И. Содержательно-эволюционный подход к искусственному интеллекту.-Ульяновск: Изд-во Ульян.Гос.техн.универс., 1995.

43. Соснин П.И. Человеко-компьютерная диалогика. -Ульяновск: Изд-во Ульян.Гос.техн.универс., 2001.

44. Соснин П.И., Ярушкина Н.Г. Интеллектуальный инструментарий проектирования и реализации диалоговых систем. // Управляющие системы и машины -1991 N4 -с. 67-72.

45. Соснин П.И., Ярушкина Н.Г., Евсеева О.Н., Левицкий А.Ю. Проблемно-ориентированные диалоговые среды.-Саратов :Изд-во СГУ, 1995.

46. Соснина Е.П. Соснин П.И. Содержательно-эволюционная теория развития САПР. // «Новые информационные технологии и системы»: тез. докл. междунар. научно-тех. конференции Пенза, 1994. - с. 124.

47. Страуструп Б. Язык программирования С++. Специальное издание: Пер. с англ. М.: Бином, 2005.1104 с.

48. Тарасов А.В. Модель выразительных средств интерфейса при его разработке на основе онтологий // Информатика и системы управления. 2005. №1.-с. 97-106.

49. Тарасов А.В. Среда разработки пользовательских интерфейсов OntoDev: Сборник докладов. Открытый дальневосточный конкурс студентов, аспирантов и молодых специалистов "Программист-2006". Владивосток: ИАПУ ДВО РАН, 2006.-с. 84-88.

50. Торрес Дж. Практическое руководство по проектированию и разработке пользовательского интерфейса.: Пер. с англ. М.: Издательский дом «Вильяме», 2002. - 400с.

51. Anderson M.D., Goldman K.J., McCartney T.P., Sethuraman R., Swaminathan B. The Programmers' Playground: I/O Abstraction for User-Configurable Distributed Applications // IEEE Transactions on Software Engineering 21(9), 1995. p. 735-746.

52. Bodart F. A Model-Based Approach to Presentation: A Continuum from Task Analysis to Prototype. Electronic resource http://citeseer.ist.psu.edu/bodart94modelbased.html.

53. Bodart F., Hennebert A-M., Leheureux J-M. Computer-Aided Window Identification In Trident. Electronic resource http://citeseer.ist.psu.edu/365004.html.

54. Bodart F., Hennebert A-M., Leheureux J-M., Provot I., Sacre В., Vanderdonckt J. Towards a Systematic Building of Software Architecture: the TRIDENT Methodological Guide. Electronic resource http://citeseer.ist.psu.edu/bodart95towards.html.

55. Bodart F., Hennebert A-M., Leheureux J-M., Sacre I., Vanderdonckt J. Architecture Elements for Highly-Interactive Business-Oriented Applications. -Electronic resource http://citeseer.ist.psu.edu/bodart93architecture.html.

56. Bodart F., Hennebert A-M., Leheureux J-M., Vanderdonckt J. Towards a Dynamic Strategy for Computer-Aided Visual Placement. Electronic resource -http://citeseer.ist.psu.edu/bodart94towards.htm.

57. Bodart F., Vanderdonckt J. Encapsulating Knowledge for Intelligent Automatic Interaction Objects Selection // In Proceedings of ACM Conference on Human Aspects in Computing Systems InterCHI'93, 1993. p. 424-429.

58. Browne Т., Davila D., Rugaber S., Stirewalt K. Using Declarative Descriptions to Model User Interfaces with MASTERMIND. Electronic resource -http://citeseer.ist.psu.edu/55475.html.

59. С Sharp. Electronic resource - http://en.wikipedia.org/wiki/CSharp

60. С++ Builder. Electronic resource http://en.wikipedia.org/wiki/C%2B%2B Builder.

61. CAD. Electronic resource - http://en.wikipedia.org/wiki/computer-aided design.

62. Castells P., Salcher E., Szekely P.A. Declarative Models of Presentation // Intelligent User Interfaces, 1997. p. 137-144.

63. Castells P., Szekely P. Documentation for The MASTERMIND Presentation Ontology. Electronic resource - http://www.isi.edu/isd/Mastennind/Documentation.

64. Castells P., Szekely P.A. HandsOn: Dynamic Interface Presentations by Example//Human-Computer Interfaces, 1999. p. 1288-1292.

65. Castells P., Szekely P.A. Presentation Models by Example // DSV-IS, 1999. p. 100-116.

66. Chau D.H., Ко A.J., Myers B.A., Weitzman D.A. Answering why and why not questions in user interfaces // CHI, 2006. p. 397-406.

67. Chau D.H., Myers B.A., Nichols J. Demonstrating the viability of automatically generated user interfaces // СШ, 2007. p. 1283-1292.

68. Chernyakhovskaya M., Gribova V., Kleshchev A. User interface development based on ontologies // The 10th International Manufacturing Conference (IMMC 2002): Electronic res..-Xiamen, China, 2002.-2- 139.-(CD-ROM).

69. Delphi 2006. Electronic resource http://www.codegear.com/products/de1phi/20Q6.

70. Dynamic-Link Libraries. Electronic resource http://msdn2.microsoft.com/en-us/library/ms682589.aspx.

71. Dynamic-link library. Electronic resource http://en.wikipedia.org/wiki/Dynamic-link library.

72. Eisenstein J., Puerta A.R. Adaptation in automated user-interface design // Intelligent User Interfaces, 2000. p. 74-81.

73. Elwert Т., Schlungbaum E. Automatic User Interface Generation from Declarative Models. Electronic resource - http://www.isys.ucl.ac.be/bchi/ cadui/96/files96/Schlung baum-CADU196.pdf,

74. Eriksson H., Gennari G.H., Musen M.A., Puerta A.R. Model-Based Automated Generation of User Interfaces // AAAI, 1994. p. 471-477.

75. Foley J., Hudson S., Kovacevic S., Luo P., Neches R., Sukaviriya P., Szekely P. Knowledgeable Development Environments Using Shared Design Models // In Proceedings of the International Workshop on Intelligent User Interfaces, Orlando, Florida, 1993.

76. Foley J.D., Hudson S.E., Kovacevic S., Luo P., Neches R., Sukaviriya P.N., Szekely P.A. Knowledgeable development environments using shared design models // Intelligent User Interfaces, 1993. p. 63-70.

77. Frank M.R., Szekely P.A. Collapsible User Interfaces for Information Retrieval Agents // Intelligent User Interfaces, 1999. p. 15-22.

78. Gavrilova Т., Yeremenko S., Zolotarev A. A Cognitive Graphical Interface for Intelligent System Development // Proc. of East-West International Conference on Human-Computer Interaction EWHCI'92, 1992. p.82-85.

79. Gavrilova Т., Zolotarev A., Yeremenko S. Computer-Aided Knowledge Engineering: an Interface-Centred Approach. // Proc. of East-West International Conference on Human-Computer Interaction EWHCI'93, 1993. p. 123-129.

80. Gillo X., Vanderdonckt J. Visual Techniques for Traditional and Multimedia Layouts. Electronic resource - http://citeseer.ist.psu.edu/vanderdonckt94visual.html.

81. Goldman K.J., Hoffert J., McCartney T.P., Plun J., Rodgers T. Building Interactive Distributed Applications in С++ with The Programmers Playground // Washington University Department of Computer Science WUCS-97-14,1997.

82. Goldman K.J., McCartney T.P. End-User Visualization and Manipulation of Distributed Aggregate Data // Washington University Department of Computer Science WUCS-97-48,1997.

83. Goldman K.J., McCartney T.P. EUPHORIA Reference Manual // Washington University Department of Computer Science WUCS-97-13, 1997.

84. Goldman K.J., McCartney T.P., Saff D.E. EUPHORIA: End-User Construction of Direct Manipulation User Interfaces for Distributed Applications // Software Concepts and Tools 16(4), 1995. p. 147-159.

85. Goldman K.J., McCartney T.P., Sethuraman R., Swaminathan B. The Programmers' Playground: A Demonstration // In Proceedings of the Third ACM International Multimedia Conference (MM'95), San Francisco, CA, 1995, p. 317-318.

86. Goldman K.J., McCartney T.P., Shands E.F., Shapiro W.M. Application Development and Management in The Programmers' Playground // Washington University Department of Computer Science WUCS-98-18,1998.

87. Gribova V. Implementation of various dialog types using an ontology-based approach to user interface development // Proc. of XIth Intern, conf. "Knowledge-dialog-solution" Varna, 2005. V.l. P. 153-158.

88. Gribova V., Kleshchev A. From an ontology-oriented approach conception to user interface development // Intern. J. Inform, theories & applications, 2003. V.10, №1. P. 87-94.

89. Gribova V., Kleshchev A. From the model-oriented approach to user interface development to an ontology-oriented one // In proceeding of the X-International Conference "Knowledge-Dialog-Solution" (KDS-2003). 2003. Varna, Bulgaria. P.226-231.

90. Gruber T.R. Towards Principles for the Design of Ontologies Used for Knowledge Sharing // The International Journal of Human-Computer Studies, 1994. p. 907-928.

91. Guarino N. Understanding, Building, and Using Ontologies // The International Journal of Human-Computer Studies, 1996. p. 293-310.

92. IntelliJ IDEA. Electronic resource - http://www.ietbrains.com/idea/.

93. Janssen C., Weisbecker A., Ziegler J. Generating user interface from data models and dialogue net specifications // Proc. conf. Human Factors in Computing systems: Inter СНГ93, ACM Press, N.Y., 1993. P.418-423.

94. Java. Electronic resource - http://ru.wikipedia.org/wiki/Java.

95. Khoroshevsky V.F. "Natural communication with expert systems ATN-oriented approach", In: Proc. of Joint Finish-Soviet Symposium on Advances in Man-Machine Interactions, Espoo, Finland, 21-23 October 1986.

96. Khoroshevsky V.F. The ATNL-based macroprocessor a software tool of communication modules implementation", In: Proc. Ill International Conference on

97. Artificial Intelligence and Information-Control Systems of Robots, Smolenice, Szechoslovakia, June 11-15, 1984, North-Holland, 1984.

98. Khoroshevsky V.F."ATN-based explanation subsystems: design and implementation", Computers and Artificial Intelligence, vol. 4 (1985), N 4.

99. Khoroshevsky V.F., "Computer Aided Design of Expert Systems An Instrumental Approach", In: Proc. International Conference AIMSA-86, North-Holland, 1987.

100. Landay J.A., Myers B.A. Sketching Interfaces: Toward More Human Interface Design // IEEE Computer 34(2), 2001. p. 56-64.

101. Litwack K., Myers B.A., Nichols J. Improving automatic interface generation with smart templates // Intelligent User Interfaces, 2004. p. 286-288.

102. Luo P., Neches R., Szekely P. Beyond Interface Builders: Model-Based Interface Tools. In Proceedings of INTERCHI'93 April, 1993, p. 383-390.

103. Luo P., Neches R., Szekely P. A. Facilitating the exploration of interface design alternatives: the HUMANOID model of interface design // CHI, 1992. p. 507-515.

104. Luo P., Neches R., Szekely P. A. Management of interface design in humanoid // INTERCHI, 1993. p. 107-114.

105. Мак A., Micheletti M., Puerta A.R. The UI pilot: a model-based tool to guide early interface design // IUI, 2005. p. 215-222.

106. Maulsby D., Puerta A., Tam R.C.-M. U-TEL: A Tool for Eliciting User Task Models from Domain Experts // Proc. of IUI98: 1998 International Conference on Intelligent User Interfaces, 1998, San Francisco, С A: ACM Press.

107. Maulsby D., Puerta A.R. Management of Interface Design Knowledge with MOBI-D // Intelligent User Interfaces, 1997. p. 249-252.

108. Maulsby D., Puerta A.R. MOBI-D: A Model-Based Development Environment for User-Centered Design // CHI Extended Abstracts, 1997. p.4-5.

109. McCartney T.P. A Usability Study of End-User Construction of Direct Manipulation User Interfaces // Software Concepts and Tools 18(2), 1997. p. 63-72.

110. McCartney T.P., Shands E.F., Shapiro W.M. The Programmers' Playground Application Management System User Guide // Washington University Department of Computer Science WUCS-97-32, 1997.

111. Microsoft .NET Compact Framework. Electronic resource http://msdn2.microsoft.com/ru-ru/netframework/Aa497273.aspx.

112. Microsoft .NET. Electronic resource http://ru.wikipedia.org/wiki/Microsoft .NET.

113. Microsoft Visual Studio 2005. Electronic resource http://msdn2.microsoft.com/ru-ru/vstudio/default.aspx.

114. Microsoft Visual Studio. Electronic resource http://en.wikipedia.org/wiki/MicrosoftVisual Studio.

115. Myers B.A. User Interface Software Tools // ACM Transactions on Computer-Interaction, Vol.2, No.l, 1995.

116. Myers B.A., Hudson S.E., Pausch R.F. Past, present, and future of user interface software tools // ACM Trans. Comput.-Hum. Interact. 7(1), 2000. p. 3-28.

117. Myers B.A., Olsen D.R. User interface tools // CHI Conference Companion, 1994. p. 421-422.

118. Puerta A. The Mecano Project: Comprehensive and Integrated Support for Model-Based Interface Development. Electronic resourcehttp ://www.sm i. stanford.edu/proi ects/m ecano.

119. Puerta A.R. A Model-Based Interface Development Environment // IEEE Software (14)4,1997, p. 40-47.

120. Puerta A.R. Issues in Automatic Generation of User Interfaces in Model-Based Systems. Computer-Aided Design of User Interfaces, ed. by Jean Vanderdonckt. Presses Universitaires de Namur, Namur, Belgium, 1996. p. 323-325.

121. Puerta A.R., Vanderdonckt J. Computer-Aided Design of User Interfaces II // In Proceedings of the Third International Conference of Computer-Aided Design of User Interfaces, October 21-23, 1999, Louvain-la-Neuve, Belgium Kluwer, 1999.

122. Puerta A.R., Vanderdonckt J. Introduction to Computer-Aided Design of User Interfaces // СADUI, 1999. p. 1-6.

123. Schlungbaum E. Model-Based User Interface Software Tools Current State of Declarative Models. - Electronic resource http://citeseer.ist.psu.edu/schlungbaum96modelbased.html.

124. Simple Object Access Protocol (SOAP) 1.1. Electronic resource -http://www.w3.org/TR/2000/NOTE-SOAP-200005Q8/.

125. SOAP. Electronic resource - http://ru.wikipedia.org/wiki/SOAP.

126. Szekely P. Retrospective and Challenges for Model-Based Interface. -Electronic resource http://citeseer.ni.nec.com/szekely96retrospective.html.

127. Szekely P. User Interface Prototyping: Tools and Techniques. Electronic resource - http://www.isi.edu/isd/humanoid-papers.html.

128. TCP/IP. Electronic resource - http://ru.wikipedia.org/wiki/TCP/IP.

129. UML Specification. Electronic resource http://sp.cs.msu.ru/win/courses/prak5/200102/umlspec.html.

130. Uschold M. Knowledge Level Modeling: Concepts and Terminology // Knowledge Engineering, 1998. p. 5-29.

131. Vanderdonckt J. Knowledge-Based Systems for Automated User Interface Generation: the TRIDENT Experience. Electronic resource http://citeseer.ist.psu.edu/vanderdonckt95knowledgebased.html.