автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.12, диссертация на тему:Методы и средства псевдокодового интерфейсного прототипирования проектных решений

кандидата технических наук
Святов, Кирилл Валерьевич
город
Ульяновск
год
2011
специальность ВАК РФ
05.13.12
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Методы и средства псевдокодового интерфейсного прототипирования проектных решений»

Автореферат диссертации по теме "Методы и средства псевдокодового интерфейсного прототипирования проектных решений"

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

СВЯТОВ КИРИЛЛ ВАЛЕРЬЕВИЧ

МЕТОДЫ И СРЕДСТВА ПСЕВДОКОДОВОГО ИНТЕРФЕЙСНОГО ПРОТОТИПИРОВАНИЯ ПРОЕКТНЫХ РЕШЕНИЙ

Специальность: 05.13.12 -«Системы автоматизации проектирования (промышленность)»

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

¡1 3 ОПТ 2077

Ульяновск, 2011

4857121

Работа выполнена на кафедре «Вычислительная техника» Ульяновского государственного технического университета

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

доктор технических наук, профессор Соснин Пётр Иванович

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

Валеев Султан Галимзянович

кандидат технических наук Семенов Владимир Геннадьевич

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

ФНПЦ ОАО «НПО «МАРС»,

г. Ульяновск.

Защита состоится «02» ноября 2011 г. в 15:00 на заседании диссертационного Совета Д212.277.01 при Ульяновском государственном техническом университете по адресу: 432027, г. Ульяновск, ул. Северный Венец, д. 32. ауд. 211, гл. корпус.

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

Автореферат разослан «29» сентября 2011 г.

Учёный секретарь Смирнов

диссертационного совета д.т.н., профессор

Виталий Иванович

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

Актуальность работы.

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

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

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

Тотальный контроль качества, предполагающий контроль каждого из проектных решений, становится осуществим при использовании нормативных метрик (ISO 9126, ISO 9241, ISO 9001 и др.). При этом использование апробированных подходов в управлении качеством разработки и внедрения крупных программных систем значительно повышает предсказуемость

,--------- ---------4,„„„.____,____,

ирислюй, ^ППЛЧЙС! ^innanvuubic п ]илдсрлччг!.

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

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

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

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

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

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

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

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

Цель исследований.

Целью исследований является повышение степени успешности разработок АС за счет выгод от использования быстрого псевдокодового прототипирования проектных решений.

Задачи диссертационного исследования:

1. Выявить способы поиска точек интерактивных взаимодействий в проектируемой АС.

2. " Исследовать и разработать механизмы построения интерфейсных диаграмм, абстрактных и конкретных моделей прототипов АС.

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

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

5. Создать методическое обеспечение комплекса средств, обеспечивающих псевдокодовое прототипирование проектных решений АС.

Провести испытания комплекса средств псевдокодового прототипирования проектных решений.

На научную новизну претендуют:

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

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

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

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

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

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

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

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

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

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

Разработан набор средств, обеспечивающий реализацию псевдокодового интерфейсного прототипирования проектных решений АС, создана библиотека прецедентов и метрик интерфейсных решений, основанная на руководстве по созданию интерфейсов Microsoft, стандартах ISO 9126, ISO 9241, разработан комплекс методик про псевдокодовому интерфейсному прототипированию проектных решений.

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

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

Апробация работы.

Основные положения и результаты диссертационной работы докладывались и обсуждались на следующих конференциях: «Континуальные алгебраические логики, исчисления и нейроинформатика в науке и технике - КЛИН» (Международная НТК, г. Ульяновск, 2005, 2006, 2007); «Interactive Systems And Technologies: The Problems of Human-Computer Interaction» (Международная НТК, г. Ульяновск, 2005, 2007, 2009); «Современные технологии учебного процесса в вузе» (Научно-методическая конференция УлГТУ, г. Ульяновск, 2007); «Information Technologies: Proceeding of Russian-German scientific conférence devoted to 10-years coopération of Ulyanovsk State Technical University and Darmshtadt University of Applied Science» (Международная НТК, г. Ульяновск, 2007); «Информатика и вычислительная техника - ИВТ» (Всероссийская НТК, г. Ульяновск, 2009, 2010, 2011); «Информатика, моделирование, автоматизация проектирования - ИМАП» (Всероссийская НТК, г. Ульяновск, 2010); «Системный анализ и семиотическое моделирование» (Всероссийская конференция с Международным участием, г. Ульяновск, 2011).

Публикации. По материалам диссертационной работы опубликована 21 печатная работа.

Структура и объём работы. Диссертационная работа состоит из введения, четырёх глав с выводами, заключения, библиографического списка использованной литературы (135 наименований) и шести приложений, общим объемом 221 страница машинописного текста. Диссертация содержит 39 рисунков и 9 таблиц.

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

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

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

2. Интеграция предлагаемых методов и инструментальных средств в процесс разработки АС для согласованности всех решений и взаимодействия со всеми процессами разработки АС.

3. Так как автор диссертационной работы является членом рабочей группы «Вопросно-ответные процессы, технологии и системы», создавшей ряд версий инструментально-технологического комплекса WIQA, основное назначение которого связано с поддержкой процессов концептуального проектирования АС, то функции средств псевдокодового прототипирования проектных решений целесообразно включить в функциональный потенциал комплекса \VIQA, что существенно упростит программирование разрабатываемых средств.

Приведена общая схема области интересов человеко-компьютерного взаимодействия в привязке к проектированию АС.

-------------Использование и контекст -----------Оргструктура и работа IЛУ Человеко-машинная адаптация Предметная область

--Человек

___.....N _--—

I г Обработка | ( информация от 1

к Язык, коммуникация и-^ { \ взаимодействие /Эргономика

Ч

УВВ

<9

Компьютер

Компьютерная графика

Техники диалога

0 и

Контекст диалогов Структура диалогов

е о

Техники оценивания

<ч с

Примеры систем и прототипы""

Техники и средства реализации

___Ч|Тринципы, правок проектирования

Процесс разработки -----—-

Рис. 1 Область интересов человеко-компьютерного взаимодействия

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

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

интерфейсов

м I) гц (|

ИСиилиДйМи^' 1Л_11Д<1П У! >1

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

Проведён вопросно-ответный анализ обобщённой постановки задачи с ответами на вопросы:

• Каким образом осуществляется «псевдокодовое прототипирование» «интерфейсного обеспечения» как процесс повышения качества АС на этапе концептуального проектирования АС?

• Как средства прототипирования помшут уменьшить время разработки АС?

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

• Каким образом осуществляется внедрение единиц опыта прототипирования пользовательских интерфейсов в структуру задач проекта?

• Каким образом осуществляется генерация прототипа и его отображение в виде исполняемого приложения?

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

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

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

При описании модели диаграмм используются следующие типы переменных: Z - множество всех целых чисел; N - множество всех натуральных чисел; R — множество всех действительных чисел; Strings — множество всех строк; Images - множество всех графических рисунков; Bool -логический тип; DateTime - множество всех дат и времен, 0 - пустое множество.

Интерфейсная диаграмма Idg - это пара элементов, имеющая вид: Idg = (DName, DomaitiModel, NavModeV) (1)

где DName £ Strings - название интерфейсной диаграммы, DomainModel -модель предметной области и задач пользователя (см. формулу 1.1), NavModel - модель навигации (см. формулу 1.2).

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

DomainModel = (Roles, Tasks, Actions, Elements, DomainObjects), (1.1)

где Roles - роли пользователей в системе (см. формулу 1.1.1), Tasks -

абстрактные задачи пользователей (см. формулу 1.1.2), Actions - действия

пользователей над элементами объектов предметной области (см. формулу

1.1.3), Elements - элементы объектов предметной области (1.1.4),

DomainObjects - объекты предметной области (см. формулу 1.1.5).

Роли пользователей в системе Roles представляют собой множество пар

акторов и связей между ними:

Roles =\( Act°ri' V ¿ = 1, actor Count,) (1ЛЛ)

{\ActorLinkt,ActorTaskLinkiJ ' actorCount EN)

Каждая связь между акторами ActorLinki описывается множеством акторов, с которым связывается i-ый актор:

ActorLinki = ¡Actor:-.} = actorCount,) (1.1.1.1) i ' actorCount e N J

Каждая связь i-oro актора с задачами описывается множеством задач, с которыми связан данный актор:

ActorTaskLink¡ = ¡Taskr.' = 1 .taskCounÚ (1.1.1.2)

l 1 taskCount 6 JV ) Каждый актор описывается идентификатором Actorldi £ Strings, именем актора ActorNamei 6 Strings и дополнительным описанием ActorDescr¡ S Strings.

Actort = (Actorldi, Actor Name ¡, Actor Descr ¡) (1.1.1.3)

Абстрактные задачи представляют собой множество задач Taski, связей между ними и связей задач с действиями над элементами объектов предметной области:

(/ Taskit \ _Л

Tasks = I I TaskLinkSi j.i = 1,taskCount,[ (1.1.2)

j I TaskActionLinkSi J' taskCount e N ('

где Taski - задача пользователя, TaskLinksi - ссылки i-й задачи на другие задачи, TaskActionLinksi - ссылки i-ой задачи на действия над элементами объектов предметной области.

Taski = (TaskNamet, Task!dit TaskDescr¡) (1.1.2.1)

TaskLinkst = íTask. : = ^skCount.) (1.1.2.2)

I ' taskCount e N

- ¡л^Нпг,.- к = 1,actioneount,\ ü.1,2.3)

A wulMiVbtV'WtlUWI - |ÜV»»l/lklri I V **-' /

l actionCount ENI

Действия пользователей над элементами объектов предметной области определяются множеством пар действий Actiont и связей действий с элементами Elementj.

Actions = К W = **^mentcount, i = 1,actionCount(li].3)

Element}) actionCount E N,elementCount e N )

Каждое действие представляет собой четверку:

Actiont = (ActionNamei,Actionldi,ActionDescri,ActionTypel), (1.1.3.1)

где ActionNamei 6 Strings - имя действия, Actionldi 6 Strings -

уникальный идентификатор действия, ActionDescrt 6 Strings

дополнительное описание действия, ActionTypei - тип действия (один из

вариантов):

ActionType, =

'Старт', 'Стоп', 'Выбор', 'Создание', 'Удаление', 'Модификация', 'Перемещение', 'Дупликация', 'Переключение', 'Просмотр'

(1.1.3.2)

!i = 1, elementCountЛ elementCount E N '

Элементы объектов предметной области представляют собой множество пар объектов предметной области DomainObjectj и элементов Element¡, каждый

из которых описывается четверкой:

( ElementNamei.Elementldi, Elements [EiementDescri)ElementTypeJ (MAI)

ElementNamei € Strings - имя элемента, Element!di e Strings уникальный идентификатор элемента, ElementDescr, E Strings -

дополнительное описание элемента, ElementType, - тип элемента объектов предметной области:

ElementTypei = [Цемент' 'Контейнер' 1 (1.1.4.2)

и 1 [ Операция, Коллекция J v

Объекты предметной области DomainObjects представляют собой множество пар объектов DomainObject,:

DomainObjects = ^DomainObjecto ^^ToumTn] (Ы.5)

Каждый объект предметной области описывается четверкой элементов:

DomainObjecti = (^Name.Objectld,, N

' 1 \ObjectDescr,,Properties,) v '

где ObjectNamei £ Strings - имя объекта, Object!df e Strings - уникальный

идентификатор объекта, ObjectDescri e Strings - дополнительное описание

объекта, Properties, - свойства объекта, которые описываются следующим

образом:

Properties, = ¡Property,,-.* = property Count,) (1 л 5 2)

H ' I r propertyCount EN)

Каждое свойство состоит из пятерки элементов:

/ PropertyName,j,PropertyIdij, \

й--------- _ I 1 ¡Л 1 С "14

rrupeiiyij — J « • «.j'in.ttiaojj,. ii>|ii.i>/i/|/>.,.], j, \ Property uef аи'Чц, /

где PropertyNameij e Strings - имя свойства, Property Id^j e Strings -уникальный идентификатор, Property Access,] £ Strings - тип доступа к свойству, PropertyTypeij € Strings - тип данных свойства,

PropertyDef ault, j £ Strings - значение свойства по умолчанию.

('Открытый,' ^

'Закрытый', !■ (1.1.5.4)

'Защищенный')

f 'Строка', 'Целое число', \

„ , - ^ I 'Вещественное число', I „ . . п

PropertyTypey Е -Символ-/Время', d-1-5.5)

ч'Список', 'Изображение'-)

PropertyDefaulty 6

(Strings, если PropertyTypetl € {'Строка','Список'} Z, если PropertyTypet j =' Целое число' R, если PropertyTypetj =' Вещественное число' (1.1.5.6) Images, если PropertyTypetj =' Изображение' DateTime, если PropertyTypetj - Время' Модель навигации NavModel описывает общую структуру навигации между задачами пользователей и представляет собой множество контекстов навигации Navigation ¡.

NavModel = \Navigatiortf.' = l.»"»vCount,| (1.2)

i navCount € N J

(NavNamet, NavDescrlptlont, Navldi,\

ChildElementSi,NavLinkSi, ) (1-2.1)

LlbraryOptionsi.NavTypei ) „ . iLibraryPathi.LibraryMethodNameiД

LibraryOptionst = у LibraryTypei, Library Parums, j

где LibraryOptyionSi - параметры вызова внешней библиотеки, NavNamei е Strings - имя контекста навигации, NavDescriptioni е Strings - его дополнительное описание, Navldi £ Strings - уникальный идентификатор контекста навигации, LibraryPathi - путь к файлу внешней библиотеки, LibraryMethodNamei - метод типа во внешней библиотеке для вызова, ЦЬгагуТуре{ - тип во внешней библиотеке, LibraryParams, - параметры метода во внешней библиотеке, NavType- тип контекста навигации.

I'Обычный', 'Внешняя библиотека'Л 'Внешняя библиотека из объекта', 'QA - методика' j

NavTypet 6 NavTypes NonLibraryTypes =

= ('Внешняя библиотека' U 'Внешняя библиотека из объекта') П NavTypes

LibraryPathi, LibraryMethodNametLibraryTypei, LibraryParamSi 6 (Strings, если NavTypet = 'Внешняя библиотека'

l 0, если NavTypet e NonLibraryTypes '

при этом LibraryPathi = PropertyDefaulty , LibraryMethodNamei = PropertyDefaultji , LibraryTypet = PropertyDefaultjm LibraryParamSi = PropertyDefaultjn если NavTypet =' Внешняя библиотека из объекта'

где j = 1 .objectCount, k,l,m,n= i,propertyCount, objectCount e N, property Count € N

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

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

В общем виде в системе поддерживаются четыре вида трансформаций:

• из XML-описания интерфейсных диаграмм в вопросно-ответный протокол;

• из вопросно-ответного представления абстрактной модели в вопросно-ответное представление конкретной модели;

• из вопросно-ответного представления конкретной модели в XML-представление псевдокодового описания прототипа проектных решений;

• из псевдокодового описания прототипа проектных решений в исходные коды на целевой платформе (Microsoft .NET Windows Forms 3.5).

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

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

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

Язык описывается контекстно-свободной грамматикой G = (VT, VN, Р, S),

где

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

• VN - алфавит нетерминальных символов (нетерминалов), описанных в левой части правил, представленных ниже для языка объектно-вопросно-ответных преобразований.

• S -цель грамматики (ШАБЛОН).

• Р - правила вывода.

Правила вывода Р в расширенной форме Бэкуса-Наура описываются следующим образом:

ШАБЛОН = ОТКР_ТЕГ_ШАБЛОНА {ШАБЛОН_<}А ПРОТОКОЛА} ЗАКР_ТЕГ_ШАБЛОНА ОТКР_ТЕГ_ШАБЛОНА = ОТКР_СКОБКА ИМЯ_ШАБЛОНА ЗАКР_СКОБКА ЗАКР_ТЕГ_ШАБЛОНА = ОТКР_СКОБКА_ЗАКРЫТИЯ ИМЯ_ШАБЛОНА ЗАКР СКОБКА ИМЯ_ШАБЛОНА = 'QATemplate' ОТКР_СКОБКА = '<• ЗА КР_СКОБКА - '>' ОТКР_СКОБКА ЗАКРЫТИЯ = '</' ЗАКРСКОБКА "ЗАКРЫТИЯ = '/>'

ШАБЛОН QА_ПРОТОКОЛА = ОТКР_СКОБКА ИМЯ_ШАБЛОНА_(?А АТРИБУТЫ_ХМЬ ЗАКР_СКОБКА {АТРИБУТЬМЗА! {ШАБЛОН_ОА_ПРОТОКОЛА> ОТКР_СКОБКА_ЗАКРЫТИЯ

ИМЯ_ШАБЛОНА QA3AKP СКОБКА ИМЯ ШАБЛОНА^ОА = 'QAT

АТРИБУТЫ XML « [СВОЙСТВО_МОДЕЛИ| ТИП_МОДЕЛИ ТЕКСТ_МОДЕЛИ

(МНОЖЕСТВЕННОСТЬ МОДЕЛИ)

СВОЙСТВО_МОДЕЛИ =~ИМЯ МОДЕЛИ ПРИСВАИВАНИЕ ЛИТЕРАЛ ИМЯ_МОДЕЛИ = 'Model' ПРИСВАИВАНИЕ = '='

ТИП_МОДЕЛИ = ИМЯ ТИПА ПРИСВАИВАНИЕ ЛИТЕРАЛ ИМЯ_ТИПА = 'Туре'

ТЕКСТ_МОДЕЛИ = ИМЯ_ТЕ КС ТА ПРИСВАИВАНИЕ ЛИТЕРАЛ ИМЯ_ТЕКСТА = 'Text'

МНОЖЕСТВЕННОСТЬ_МОДЕЛИ = ИМЯ МНОЖЕСТВЕННОСТИ ПРИСВАИВАНИЕ ЛИТЕРАЛ ИМЯ_МНОЖЕСТВЕННОСТИ = 'Multiplicity'

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

Каждый элемент базы прецедентов описывается:

a. Текстом описания.

b. Свойствами компонента.

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

• Автоматические правила для выбора агентом места внедрения.

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

(1. Графическим представлением.

е. Вопросно-ответным протоколом с рекомендациями к использованию.

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

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

ответный протокол, описания правил автоматизированного выбора, автоматизированных правил его использования, свойств и событий.

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

Часть грамматики языка представлена ниже.

прецедент = откр_скобка имя_прецедента свойства_прецедента закр_скобка

правила_выбора~ правила_использования откр_скобка_закрытия имя.прецедента

закр_скобка = у

ИМЯ_ПРЕЦЕДЕНТА = 'Precedent'

откр_скобка = '<'

закр_скобка = у

откр_скобка_закрытия = '</'

закр_скобка_закрытия = '/>'

свойства_прецедента = имя_свойства присваивание литерал описание_свойства

ПРИСВАИВАНИЕ ЛИТЕРАЛ

ИМЯ—СВОЙСТВА = 'name'

ОПИСАНИЕ_СВОЙСТВА = 'description'

ПРИСВАИВАНИЕ = '='

правила_выбора = откр.скобка имя_выбора закр_скобка автоматический_выбор автоматизированный_выбор откр_скобка_закрытия имя_выбора закр_скобка

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

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

Генерация псевдокодового прототипа осуществляется на основе данных конкретной модели путем обратных объектно-вопросно-ответных преобразований. При этом в псевдокод встраиваются элементы XML, представляющие собой формы (окна), элементы управления, их свойства и события, параметры для вызова методов внешних библиотек, параметры для вызова методик из системы W1QA.NET и параметры для вызова функциональности, запрограммированной в системе прецедентов WIQA.NET.

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

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

Часть грамматики языка представлена ниже.

ПРОТОТИП = ОТКР_СКОБКА ИМЯПРОТОТИПА ЗАКР_СКОБКА ОКНА АКТОРЫ

ОБРАБОТЧИКИ ОТКР_СКОБКА_ЗАКРЫТИЯ ИМЯ_ПРОТОТИПА ЗАКР_СКОБКА

ИМЯ_ПРОТОТИПА = 'СадкРгоМуре'

ОТКРСКОБКА = '<'

ЗАКР_СКОБКА = '>'

ОТКР_СКОБКА_ЗАКРЫТИЯ = '</'

ЗАКР_СКОБКА_ЗАКРЫТИЯ = 7>'

Генерация исполняемого прототипа осуществляется из псевдокода в проект Windows Forms для интегрированной среды разработки Visual Studio 2010. Механизмы генерации основаны на простом восстановлении программной модели псевдокодового прототипа.

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

В обобщенном виде алгоритм применения метода псевдокодового прототипирования проектных решений АС выглядит следующим образом:

1. Сформировать интерфейсную диаграмму с использованием встроенного редактора.

2. Сформировать в вопросно-ответном протоколе абстрактную модель пользовательского интерфейса на основе построенной интерфейсной диаграммы.

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

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

5. Если достигнут необходимый уровень детализации, то сформировать псевдокодовое представление пользовательского интерфейса АС.

6. Из псевдокодового представления сформировать прототип на целевой платформе.

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

В общем виде алгоритм выглядит следующим образом:

В реализацию метода пеевдокодового прототипирования интерфейсного обеспечения АС входят: — Формировщике интерфейсной дИа! раммы.

• Формирование абстрактной модели.

• Формирование конкретной модели, автоматизированный выбор элементов управления, определение свойств и внешних связей.

• Формирование псевдокодового представления.

• Формирование исполняемого прототипа на целевой платформе.

В четвертой главе раскрываются вопросы реализации системы псевдокодового прототипирования проектных решений АС.

Разработанный комплекс псевдокодового прототипирования проектных решений включает в себя (Рис. 3):

• систему атрибутики, позволяющую совершать объектно-вопросно-ответные преобразования;

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

• систему генерации исполняемых прототипов для технологии Microsoft .NET Framework 3.5 Windows Form, основанную на правилах преобразований в XML;

в модуль псевдокодового прототипирования проектных решений АС, включающий в себя: о модуль трансформации интерфейсных диаграмм в абстрактную модель в QA-протоколе на основе вопросно-ответных XML шаблонов с атрибутами;

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

конкретной QA-модели; о систему управления всеми модулями системы, предоставляющую визуальные средства управления всеми модулями системы.

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

Проведены экспериментальные исследования метода псевдокодового прототипирования проектных решений АС.

В процессе проведения эксперимента оценивались следующие показатели:

1. Время, затраченное на создание исполняемого прототипа с использованием системы псевдокодового прототипирования проектных решений.

2. Количество ситуаций, в которых в конкретной модели необходимо исправить выбор контрола с предложенного системой на необходимый.

5. Качество сгенерированного кода.

Измерение проводилось для двух типов прототипов: созданного в системе псевдокодового прототипирования проектных решений и созданного с использованием Visual Studio 2010 (Рис. 4), т.к. эта IDE имеет средства автоматического анализа исходного кода и предоставляет возможности по построению прототипов проектных решений, аналогичным прототипам, получаемым в предлагаемых решениях.

Подсистема- лее о до кодов о го программирования, интерфейсных прототипов

Библиотека интерфейсных! прецедентов

Модуль формировани псевдокода

JA-протокол

^Реда Kropfs интерфейсных диаграмм

Система ^^Ч визуального управления зункциональностью,

/правление проектами

^ Модуль .генерации исполняемых прототипов для Windows Forms

Модуль трансформации абстрактной мсде/ij конкретную Ц

Модуль трансформации > интерфейсных диаграмм в V абстрактную модель /

Рис. 3 Компонентная модель системы псевдокодового прототипирования проектных решений АС (С1 - клиентская часть модуля, С- коннектор, Э-сервер)

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

Результаты эксперимента в виде графиков выглядят следующим образом:

II

S <:

m >

у = 12,9011п(х)-23^46

■т оремя/^'Я

подготовленного разработчика, мин

-Логарифмическая (Бремя

для подготовленного разработчика, мин)

О 50 100

Время создания прототипа в VS 2010

150

Рис. 4 Эффективность системы псевдокодового прототипирования по сравнению с прототипированием в Visual Studio 2010 для аналогичных прототипов

45 т----------------------

40 J___________у = 13Д951п(х) - 55,527

5---------—----------------элементов

О -------------------г---------------------г—---------- , диаграммы)

О 500 1000 1500

Количество строк сгенерированного кода

Рис. 5 Зависимость количества строк сгенерированного кода от количества элементов интерфейсной диаграммы

В результате проведенного эксперимента было выявлено, что временная эффективность использования метода и инструментально-технологических средств псевдокодового прототипирования проектных решений АС по сравнению с прототипированием в Visual Studio составляет 38%, по сравнению с нормативными значениями, взятыми из модели СОСОМО II - 98% (такая высокая эффективность обусловлена низким качеством генерируемого исходного кода, оценка которого производилась встроенными средствами Visual Studio 2010).

Основные результаты работы

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

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

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

Получены новые научные результаты:

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

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

20

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

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

5. Библиотека прецедентов интерфейсного обеспечения АС, содержащая элементы интерфейсных прототипов с описанием предусловий их использования, рекомендаций по выбору среди нескольких альтернативных элементов управления, описанием свойств соответствующих элементов интерфейсных прецедентов, представленные в виде вопросно-ответных XML шаблонов с назначенными атрибутами (17 прецедентов, включающих в себя около 500 метрик интерфейсного обеспечения, основанных на рекомендациях Microsoft, ISO 9126, ISO 9241 и других источниках).

Практическую ценность составляют.

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

ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ Публикации в изданиях, рекомендованных ВАК РФ 1. К.В.Святов, П.И.Соснин. Псевдокодовое программирование интерфейсных прототипов в проектировании автоматизированных систем. // Научно-технический журнал «Автоматизация процессов управления». №3(21)2010. Ульяновск: ФНПЦ ОАО НПО «Марс». С.81-87. Публикации в иных изданиях

1. К.В.Святов, А.А.Салмов. Организация web-доступа к вопросно-ответным базам проектов. // Информатика, системы искусственного интеллекта и моделирование технических систем: Труды международной конференции «Континуальные алгебраические логики, исчисления и нейроинформатика в науке и технике -ТСЛИ11-2С05,> (г.Ульякобсх, 17-19 мая 2005 г.)/ Псд общей ргд. ЛЛТВолгжк. -Ульяновск: УлГТУ, 2005. С. 127.

2. K.Svyatov. Web interface of question-answer database of projects. // Interactive Systems And Technologies: The Problems of Human-Computer Interaction. -Proceedings of the International Conference, 26-30 September 2005, Ulyanovsk. -Ulyanovsk: U1STU, 2005. P. 91-92.

3. К.В.Святов. Результат оценки практичности пользовательского интерфейса WEB-оболочки вопросно-ответного процессора NetWIQA. // Информатика, системы искусственного интеллекта и моделирование технических систем: Труды международной конференции «Континуальные алгебраические логики, исчисления и нейроинформатика в науке и технике - КЛИН-2006» (г.Ульяновск, 16-18 мая 2006 г.) / Под общей ред. Л.И.Волгина. - Ульяновск: УлГТУ, 2006. С. 98.

4. К.В.Святов. Сквозное проектирование метрик качества в автоматизированных

21

системах // Информационные и интеллектуальные технологии: Труды международной «Конференции по логике, информатике, науковедению - КЛИН-2007» {г.Ульяновск, 17-18 мая 2007 г.) - Ульяновск:УлГТУ, 2007. С. 59-60.

5. К.В.Святов. Процесс разработки семейства web-интерфейсов вопросно-ответного процессора NetWIQA // Информационные и интеллектуальные технологии: Труды международной «Конференции по логике, информатике, науковедению - КЛИН-2007» (г.Ульяновск, 17-18 мая 2007 г.) -Ульяновск:УлГТУ, 2007. С.55-56.

6. K.Svyatov. Question-answer processor NetWIQA web interface family development process // Information Technologies: Proceeding of Russian-German scientific conference devoted to 10-yèars cooperation of Ulyanovsk State Technical University and Darmshtadt University of Applied Science. -Ulyanovsk: U1STU, 2007. P. 78-84.

7. K.Svyatov. Software ergonomics metrics views // Interactive systems and technologies: The Problems of Human-Computer Interaction. - Collection of scientific papers. -Ulyanovsk:U1 STU, 2007. P. 69-74.

8. K.Svyatov. System of ergonomie specifications and metrics adoption// Interactive systems and technologies: The Problems of Human-Computer Interaction. - Collection of scientific papers. - Ulyanovsk:UlSTU, 2007. P. 136-141.

9. К.В.Святов. Распределение метрик качества программного обеспечения с использованием принципов аспектно-ориентированного проектирования. // Информационные и интеллектуальные технологии: Труды международной «Конференции по логике, информатике, науковедению - КЛИН-2007» (г.Ульяновск, 17-18 мая 2007 г.) - Ульяновск:УлГТУ, 2007. С. 57-59.

10. К.В.Святов. Разработка web-интерфейса процессора NetWIQA как инструментально-технологической среды вопросно-ответного моделирования // Вестник Ульяновского государственного технического университета (Вестник УлГТУ)2/2007. - Ульяновск:УлГТУ, 2007. С. 36-39.

И. К.В.Святов. Принципы аспектно-ориентированного распределения метрик эргономики программного обеспечения с использованием возможностей вопросно-ответного моделирования. // Информационные технологии: межвузовский сборник научных трудов. Ульяновск: УлГТУ, 2008. С. 120-123.

12. К.В.Святов. Интегрированная экспертная система поддержки проектирования пользовательских интерфейсов. // Информатика и вычислительная техника: сборник научных трудов / под науч. ред. П.И.Соснина. - Ульяновск. УлГТУ, 2009. С. 218-222.

13. K.Svatov. Expert system for user-centered design. // Interactive systems and leclmologies: the Problems of Human-Computer Interaction. Volume III. - Collection of scientific papers.- Ulyanovsk: U1STU, 2009. P. 212-217.

14. K.Svatov. Aspect-oriented design of automated system's user interfaces. // Interactive systems and technologies: the Problems of Human-Computer Interaction. Volume III. - Collection of scientific papers.- Ulyanovsk: U1STU, 2009. P. 218-222.

15. К.В.Святов. Трансформации моделей в прототипировании пользовательских интерфейсов в вопросно-ответных средах. // Информатика, моделирование, автоматизация проектирования: сборник научных трудов / под ред. Н.Н.Войта. -Ульяновск: УлГТУ, 2010. С.447-454.

16. А.С.Пронин, К.В.Святов. Механизмы дополнительной атрибутики шаблонов представления документов системы DocWIQA.NET с применением средства редактирования Microsoft Office Word 2007. // Информатика и вычислительная техника: сборник научных трудов / под. Ред. В.Н.Негоды - Ульяновск: УлГТУ,

2010. С.423-427.

17. А.С.Пронин, К.В.Святов. Разработка шаблонов представления системы DocWIQA.NET с применении средства редактирования Microsoft Office Word 2007. // Информатика и вычислительная техника: сборник научных трудов / под. Ред. В.Н.Негоды - Ульяновск: УлГТУ, 2010. С. 428-431.

18. К.В.Святов. Интерфейсные диаграммы в псевдокодовом прототипировании проектных решений. // Информатика и вычислительная техника: сборник научных трудов / под. Ред. Н.Н.Войта - Ульяновск: УлГТУ, 2011. С. 518-525.

19. К.В.Святов. Оценка эффективности средств псевдокодового прототипирования проектных решений // Информатика и вычислительная техника: сборник научных трудов / под. Ред. Н.Н.Войта - Ульяновск: УлГТУ,

2011. С. 526-534.

20. П.И.Соснин, К.В. Святов. Псевдокодовое моделирование прецедентов . Материалы Всероссийской конф. с международным участием "Системный анализ и семиотическое моделирование", - Казань, Изд-во ФЭН Академия наук РТ, 2011. С. 244-251.

ПЕРЕЧЕНЬ ПРИНЯТЫХ СОКРАЩЕНИИ

АС Автоматизированная система WIQA.NET Working In Questions and Answers

ГОСТ Государственный стандарт QA Question-Answer

КС Корпоративная инструментально- RUP Rational Unified Process

технологическая среда UX User Experience

АВТОРЕФЕРАТ СВЯТОВ КИРИЛЛ ВАЛЕРЬЕВИЧ

МЕТОДЫ И СРЕДСТВА ПСЕВДОКОДОВОГО ИНТЕРФЕЙСНОГО ПРОТОТИПИРОВАНИЯ ПРОЕКТНЫХ РЕШЕНИЙ

Подписано в печать 27.09.2011. Формат 60x84/1 б. Усл.п.л. 1,39. Тираж ЮОэкз. Заказ№958.

Типография УлГТУ. 432027. Ульяновск, Сев. Венец, 32

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

Введение.

Глава первая. Прототипирование проектных решений в разработке АС.

1.1. Место и роль прототипирования в проектировании АС.

1.2. Прототипирование в разработке АС.

1.2.1. Средства прототипирования в концептуальном проектировании АС.

1.2.2. Псевдокодовое программирование в разработке АС.

1.3. Тематический обзор.

1.3.1. Процесс прототипирования АС.

1.3.2. Сценарно-ориентированный подход.

1.3.3. Обзор парадигм разработки интерфейсных прототипов АС.

1.3.4. Обзор псевдокодовых языков описания проектных решений.

1.4. Псевдокодовое интерфейсное прототипирование проектных решений.

1.5. Вопросно-ответный подход к разработке интерфейсного обеспечения.

1.5.1. Вопросно-ответное моделирование в проектировании пользовательских интерфейсов.

1.6. Задача диссертационного исследования.

1.6.1. Обобщенная постановка задачи.

1.6.2. Вопросно-ответный анализ.

1.6.3. Мотивационно-целевые установки.

1.7. Научная новизна диссертационной работы.

Выводы по первой главе.

Глава вторая. Логико-математическое обеспечение прототипирования пользовательских интерфейсов.

2.1. Подход к логико-математическому обеспечению.

2.2. Выявление и спецификация интерактивных взаимодействий.

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

2.3.1. Интерфейсные диаграммы.

2.3.2. Абстрактная модель пользовательского интерфейса.

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

2.3.4. Псевдокодовое представление проектных решений.

2.3.5. Генерация прототипа на целевой платформе.

2.4. Семантика объектов взаимодействия.

2.5. Выводы по второй главе.

Глава третья. Методологическое обеспечение псевдокодового прототипирования интерфейсного обеспечения АС.

3.1. Метод псевдокодовогоинтерфейсного прототипирования концептуальныхпроектных решений.

3.1.1. Теория метода.

3.1.2. Стратегия метода.

3.1.3. Тактика метода.

3.1.4. Детализация метода.

3.2.Методы и методики псевдокодового прототипирования интерфейсного обеспечения АС.

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

3.2.2. Методика формирования абстрактной модели прототипа проектируемой АС.

3.2.3. Методика формирования конкретной модели пользовательского интерфейса проектных решений прототипа АС.

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

3.2.5. Создание и изменение исполняемого прототипа.

3.2.6. Методика формализации метрик юзабилити.

3.3. Выводы по третьей главе.

Глава четвертая.Комплекс средств прототипирования интерфейсного обеспечения АС.

4.1. Архитектура, компоненты и механизмы комплекса средств UXWIQA.NET.

4.1.1. Архитектура.

4.1.2. Редактор интерфейсных диаграмм.

4.1.3. Объектно-вопросно-ответные преобразования.

4.1.4. Библиотека прецедентов и метрик. Конкретная модель пользовательского интерфейса.

4.1.5. Механизм дополнительной атрибутики.

4.1.6. Генератор псевдокодового представления интерфейсного обеспечения АС.

4.1.7. Генератор исходных кодов исполняемых прототипов.

4.2. Псевдокодовое прототипирование интерфейсного обеспечения АС в разработке систем.

1.2.1. Оценка времени.

1.2.2. Автоматизированный выбор контролов.

1.2.3. Качество сгенерированного кода.

1.3. Выводы по четвертой главе.

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

Актуальность работы.

Успешность разработок и результативность функционирования сложных автоматизированных систем в существенной мере зависит от рационального .и качественного включения-' в автоматизированные системы (АС) человеко-компьютерных взаимодействий. Осуществление таких взаимодействий,, распределенных по> жизненному циклу АС и между лицами, вовлеченными в5 этот цикл, обеспечивают интерфейсные средства, в совокупности образующих интерфейсное: обеспечение (ИО) АС. Hàï разных этапах проектирования ИО помогаете решать» различные задачи, в число которых, например, входит, «интерактивное взаимодействие пользователя] с АС» и «интерактивное связывание проектных решений в проектный прототип».

Создание интерфейсного обеспечениям конкретной АС представляет собой специфический поток проектных работ, который« базируется на. распределении:. действий; вложенных в АС, между ее пользователями и техникой;. При этом статистика, последних пятнадцати лет констатирует безоговорочный: успех разработок АС только на уровне: 30-40%. Работы по созданию интерфейсного обеспечения4занимают до 40% от всего времени разработки системы, что указывает на исключительную важность, обеспечения качества интерфейсов для обеспечениям итогового качества и успешности в целом разрабатываемой АС. "

Успешность, проектирования-. АС определяется, тремя: ключевыми:, показателями::, установленным, сроком: проекта, его бюджетом* и соответствием^ требованиям по качеству, для достижения которых часто используют тотальный контроль качества. Отсутствие возможности установки- тотального контроля, над проектом в рамках указанных показателей вызывает рост количества необоснованных решений, увеличивает финансовые и: проектные риски,, связанные с разработкой и внедрением АС.

Тотальный контроль качества, предполагающий контроль каждого из проектных решений, становится: осуществим при использовании нормативных метрик (ISO 9126, ISO 9241, ISO 9001 и др.). При этом использование апробированных подходов в управлении качеством разработки и внедрения крупных программных систем значительно повышает предсказуемость проектов, снижает финансовые и ресурсные издержки.

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

• осуществить уточнение неясных требований;

• провести анализ осуществимости проекта и отдельных проектных решений;

• получить предварительные отзывы от пользователей о проектируемой системе;

• осуществить предварительное тестирование на ранних стадиях;

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

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

• осуществить помощь в выборе одного или нескольких проектных решений.

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

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

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

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

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

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

Цель исследований. Целью исследований является повышение степени успешности разработок АС за счет выгод от использования быстрого псевдокодового прототипирования проектных решений.

Задачи диссертационного исследования:

1. Выявить способы поиска точек интерактивных взаимодействий в проектируемой АС.

2. Исследовать и разработать механизмы построения интерфейсных диаграмм, абстрактных и конкретных моделей прототипов АС.

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

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

5. Создать методическое обеспечение комплекса средств, обеспечивающих псевдокодовое прототипирование проектных решений АС.

Провести испытания комплекса средств псевдокодового прототипирования проектных решений.

На научную новизну претендуют:

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

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

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

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

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

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

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

• Метод построения интерфейсных диаграмм, в реализации которого для связывания частей решения любых типов («заглушка», исполняемый код, функциональность, вызываемая извне и другие артефакты) в единое целое используются диаграммные (графические) средства, подобные диаграммам прецедентов языка ИМЬ.

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

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

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

Разработан набор средств, обеспечивающий реализацию псевдокодового г интерфейсного прототипирования« проектных решений АС, создана- библиотека-прецедентов» и метрик интерфейсных решений, основанная на руководстве по созданию интерфейсов Microsoft-, стандартах ISO* 9126, ISO1 9241, разработан* комплекс методик про псевдокодовому интерфейсному прототипированию .проектных решений.

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

Разработанные программные средства и комплекс методик их использования внедрены на ФНПЦ' ОАО- НПО «МАРС», проведен эксперимент по оценке эффективности использования предлагаемых средств.

В первой главе диссертационной работы раскрываются вопросы,, связанные с системной-' , инженерией, жизненным циклом АС, человеко-компьютерным взаимодействием' и дизайном; ориентированным на пользователя, обосновывается необходимость использования псевдокодового прототипирования проектных решений- в жизненном цикле- АС. Обосновывается* необходимость учета коллективной деятельности- во1 время- реализации АС. Упоминаются вопросы профессиональной зрелости процессов разработки АС. Приводится обзор парадигм, методов и средств? прототипирования- пользовательских интерфейсов и проверки проектных решений на ранних стадиях разработки АС.

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

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

В третьей главе диссертации раскрыта общая алгоритмическая схема псевдокодового прототипирования проектных решений АС и приведены его детали.Для представления деталей используются методики и ЦМЬ-диаграммы.

В четвёртой главе раскрываются вопросы реализации системы псевдокодового прототипирования проектных решений АС, описание экспериментальных исследований системы псевдокодового прототипирования проектных решений.

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

1.3. Выводы по четвертой главе

1. На рациональность реализации комплекса средств псевдокодового прототипирования проектных решений существенное воздействие оказало взаимодействие с комплексом средств WIQA.NET.

2. Реализацию комплекса существенно упростило использование механизмовобъектно-вопросно-ответных преобразований вместе с системой атрибутики и системы прецедентов.

3. Эксперименты с методом псевдокодового прототипирования проектных решений и методом построения интерфейсных диаграмм подтвердили их результативность.

Заключение

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

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

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

Получены новые научные результаты:

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

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

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

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

5. Библиотека прецедентов интерфейсного обеспечения АС, содержащая элементы интерфейсных прототипов с описанием предусловий их использования, рекомендаций по выбору среди нескольких альтернативных элементов управления, описанием свойств соответствующих элементов интерфейсных прецедентов, представленные в виде вопросно-ответных XML шаблонов с назначенными атрибутами (17 прецедентов, включающих в себя около 500 метрик интерфейсного обеспечения, основанных на рекомендациях Microsoft, ISO 9126, ISO 9241 и других источниках).

Библиография Святов, Кирилл Валерьевич, диссертация по теме Системы автоматизации проектирования (по отраслям)

1. Baecker, R. М. Readings in groupware and computersupported cooperative work. SanMateo: Morgan Kaufmann Publishers ,1993.

2. Bittner K., Spence I. Establishing the Vision for Use Case Modeling.: Статья. -Режим доступа: // http://mvw.awprofessional.conVarticles/index.asp?st=42008

3. Bodker, S. Through the Interface: A Human Activity Approach to User Interface Design. Hillsdale, NJ: Lawrence Erlbaum Associates, 1991.

4. Bowen J.P., M.G.Hinchey Ten Commandments of Formal Methods: Статья. Режим доступа: http://www.jpbowen.com/pub/10cs.pdf

5. Bowen J.P., M.G.Hinchey Ten Commandments Revisited.: Статья. Режим доступа: www.jpbowen.com/pub/fmics05 .pdf

6. Brad A. Myers. "A Brief History of Human Computer Interaction Technology." // ACM interactions. Vol. 5.No. 2. March, 1998. P. 44-54.

7. Brainstorming is politically correct: Статья. Режим доступа: http://wwvv.greencomms.com/index.jsp?i=100&s=l 111

8. Brainstorming. Статья: Режим доступа: //http://en.wikipedia.org/wiki/Brainstorming

9. Carrol, J. M. Scenario-based Design: Envisioning Work and Technology in System Development. New York: John Wiley and Sons, 1995.

10. Castells P., Szekely P. and Salcher E. Declarative Models of Presentation.International Conference on Intelligent User Interfaces (IUI'97). Orlando (Florida), 1997. P. 137144.

11. Chin D.N. Empirical Evaluation of User Models and User-Adapted Systems //User Modeling and User-Adapted Interaction. 2001. V. 11 .№1 -2. P. 181 -194.

12. EnterpriseArchitect.: Сайт разработчика. Режим доступа: http://www.sparxsystems.com.au/platforms/umlresources.html

13. European Research Consortium for Informatics and Mathematics.: Официальный сайт. Режим доступа: http://193.51.208.73/publicationErcimNews/enw58/lami.html

14. Exploiting Model-based Techniques for User Interfaces to Databases Presented by Tony Griffiths 1998. Статья. Режим доступа: http://img.cs.man.ac.uk/teallach/ Presentations/Conferences/AVI98/tsld001 .htm

15. Freeman A, Allen J.Programming .NET Security. : O'Reilly & Associates, 2003 714.

16. Freeman A, Pro .NET 4 Parallel Programming in C#. New York : 2010-311 c.

17. IEEE Std 1233-1996, IEEE Guide for Developing of System Requirements Specifications.: Официальный сайт. Электронный ресурс.- Режим доступа: http://standards.ieee.org/. .

18. International organization of standardization: Официальный сайт. Режим доступа:Ьйр ://vvww.iso.ch/cate/d 1625 8 .html

19. Interview: Jim Johnson of the Standish Group.: Статья. Режим доступа: http://www.infoq.com/articles/Interview-Johnson-Standish-CHAOS

20. ISO DIS 9241-11 Ergonomic requirements for office work with visual display terminals (VDTs): Part 11: Guidance on Usability

21. ISO/IEC 12207:1995. Информационные технологии. Процессы жизненного цикла ' программного обеспечения.

22. ISO/IEC 15288: 2000. Системотехника. Процессы жизненного цикла системы.

23. ISO/IEC 9126-1: Software Engineering Product quality - Part 1: Quality model.

24. ISURE. Requirements Company: Сайт разработчика. Режим доступа: http://www.visuresolutions.com/

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

26. Kiczales G., Lamping J., Medhekar A. Aspect oriented programming. Published in proceedings of the European Conference on Object Oriented Programming (ECOOP).

27. L.L. Constantine, L.A.D.Lockwood. Software for use: a practical guide to the models and methods of usage-centered design, Addison Wesley, 1999.

28. Laddad R.AspectJ in Action. Practical aspect oriented programming. Manning Publications Co., 2003

29. Lonczewski F., mScheiber. The FUSE-system: an Integrated User Interface Design Environment // Proc. CADUI 96, J Vanderdonckt, ed., 1996.

30. Lonczewski F., Schreiber The FUSE-system: aan Integrated User Interface Design Environment, Proc. CADUI 96, J Vanderdonckt, ed., 1996. Статья. Режим доступа: http:// www. info.fiindp.ac.be/-jvd/dsvis/cadui96.html

31. Lowgren J. Knowledge -Based Design Support and Discourse Management in User Interface Management Systems. Linkoping Studies in Science and

32. Technology.Dissertations No. 239, 1989.

33. Mackey A., Introducing .Net 4.0 With Visual Studio 2010. New York : Apress, 2010 -505 c.

34. Magennis T.,.LINQ TO OBJECTS USING C# 4.0.USING AND EXTENDING LINQ TO OBJECTS AND PARALLEL LINQ (PLINQ).Boston : Addison-Wesley, 2010 -312.

35. Myers B.A. User Interface Software Tools.ACM. Transactions on Computer-Human Interaction, Vol.2, No.l, March 1995. P. 64-103.

36. Nash Т.Accelerated C# 2005. New York : Apress, 2006 401.

37. Nielson, J. Scenarios in discount usability engineering, in J. M. Carroll (ed.), Scenario-based Design: Envisioning Work and Technology in System Development. New York: John Wiley and Sons, 1995.

38. Poseidon for UML-Professional: Официальный сайт. Режим доступа: http://www.gentlevvare.com/

39. Pressman R. S. Software Engineering: Practitioners Approach European 3d Rev. ed. McGraw-Hills Inc., 1994. 802 p.

40. Puerta A. A model-based interface development environment IEEE Software, 14(1), July/August 1997. P. 41-47.

41. Puerta A. The Mecano project: comprehensive and integrated support for model-basedinterface development. Computer-aided design of user interfaces, ed. by Jean

42. Vandrdonckt. Pressed Universitaires de Namur, Belgium,1996. P.19-25.

43. Puerta, A. R. Supporting User-Centred Design of Adaptive User Interfaces Via1.terface Models. First Annual Workshop On Real-Time Intelligent User Interfaces

44. For Decision Support And Information Visualization, San-Francisco, January 1998. 101. P

45. Puerta, A.R., and Maulsby, D. Management of Interface Design Knowledge with MOBI-D. IUI97: International Conference on Intelligent User Interfaces, Orlando, January 1997. P.249-252

46. Ralf Moller User Interface Management Systems: The CLIM Perspective. Статья. — Режим доступа: http://kogs-www.informatik.uni-hamburg.de/~moeller/uims-clim/clim-intro.html

47. RAMMER I., SZPUSZTA M. Advanced .NET Remoting, Second Edition. New York : Appress, 2005 579 C.

48. Rational Rose Developer: Официальный сайт. Режим доступа: http://www.ibm.com/

49. Rational Unified Process Best Practices for Software Development Teams. .: Официальный документ. — Режим доступа:http://wwvv.ibm.com/developervvorks/rational/library/content/03July/1000/1251/1251 bestpracticesTP026B.pdf

50. Rational Unified Process. Электронный ресурс. — Режим доступа: http://www.rational.com/.

51. Rational Unified Process. Электронный ресурс. — Режим доступа: http://www.rational.com/. .

52. Sharp H., Finkelstein A., Galal G. Stakeholder Identification in the Requirements Engineering Process.: Статья. Режим доступа:www.cs.ucl.ac.uk/staff/A.Finkelstein/papers/stake.pdf59.