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

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 04.07.2011
Размер файла 2,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

МИНОБРНАУКИ РОССИИ

Государственное образовательное учреждение высшего профессионального образования

“Санкт-Петербургский государственный электротехнический университет “ЛЭТИ” им. В.И.Ульянова (Ленина)” (СпбГЭТУ)

ЗАДАНИЕ

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

Студенту Гайфутдинову Рустему Талгатовичу, группа 5325

Место дипломного проектирования СПб ГЭТУ «ЛЭТИ», кафедра АПУ

1. Тема дипломного проекта (работы)

“Создание инструмента прототипирования графических интерфейсов сложных информационных систем на базе программных разработок компании «Алее Софтвер»”

2. Назначение разработки

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

3. Перечень подлежащих разработке разделов по теме

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

4. Состав технической документации проекта

Пояснительная записка к дипломному проекту.

5. Консультанты (с указанием относящихся к ним разделов)

Консультант по экономическому обоснованию Кадиев И. Г.

Консультант по ОИС Иванова Е. А.

Консультант по ГОСТ Белаш О. Ю.

Консультант по программному обеспечению Власенко С. В.

Руководитель …...............................................Кочетова Л. Б.

Студент ….......................................................Гайфутдинов Р.Т.

РЕФЕРАТ

Объем пояснительной записки - 90 страниц.

Пояснительная записка содержит 25 рисунков, 9 таблиц.

Ключевые слова - ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ, ПРОТОТИПИРОВАНИЕ, ЭКСТРЕМАЛЬНОЕ ПРОГРАММИРОВАНИЕ, GUI MACHINE, ПРОЕКТИРОВАНИЕ ИНТЕРФЕЙСА.

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

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

В результаты дипломного проекты был создан инструмент проектирования и прототипирования графических интерфейсов десктопных и веб-приложений, способный покрывать требования различных IT-компаний, в том числе -- требования компании «АЛЕЕ СОФТВЕР».

Разработанный инструмент активно используется при реализации проектов компании «АЛЕЕ СОФТВЕР».

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

Термины и определения

Интерфейс -- совокупность средств, методов и правил взаимодействия между элементами системы.

Интерфейс -- совокупность средств и правил, обеспечивающих взаимодействие устройств вычислительной машины или системы обработки информации и (или) программ (определение по ГОСТ 15971-90 [1] ).

Человеко-машинный интерфейс (ЧМИ) -- технические средства, предназначенные для обеспечения непосредственного взаимодействия между оператором и оборудованием и дающие возможность оператору управлять оборудованием и контролировать его функционирование (определение по ГОСТ Р МЭК 60447-2000 [2] ).

Интерфейс пользователя -- интерфейс, обеспечивающий возможность обмена информацией между человеком и техническими или программными компонентами вычислительной системы (определение по ГОСТ Р ИСО/МЭК 15910-2002 [3] ).

Графический интерфейс пользователя (ГИП), графический пользовательский интерфейс (ГПИ), graphical user interface (GUI) -- графическая среда организации взаимодействия пользователя с вычислительной системой. Графический интерфейс позволяет управлять поведением вычислительной системы через визуальные элементы управления.

Текстовый пользовательский интерфейс (ТПИ), Text user interface (TUI), Character User Interface (CUI) -- разновидность интерфейса пользователя, использующая при вводе-выводе и представлении информации исключительно набор буквенно-цифровых символов и символов псевдографики.

Интерфейс командной строки, Command line interface (CLI) -- разновидность текстового интерфейса (CUI) между человеком и компьютером, в котором инструкции компьютеру даются в основном путём ввода с клавиатуры текстовых строк (команд).

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

Пользователь -- лицо или организация, которое использует действующую систему для выполнения конкретной функции (определение по ГОСТ Р ИСО/МЭК 12207-99 [4] ).

Юзабилити, usability - эргономическая характеристика того, насколько продукт может быть эффективно, экономично и с удовольствием использован определенными пользователями для достижения поставленных целей в заданном контексте использования (определение по стандарту Международной Организации по Стандартизации ISO 9241-11 "Руководство по юзабилити").

Прототип -- модель или предварительная реализация части программного средства, пригодная для оценки проекта системы, её потенциальных рабочих характеристик, производства или лучшего понимания требований к программному средству (определение по ГОСТ Р ИСО/МЭК 15910-2002 [3] ).

Прототипирование - процесс создания прототипов.

Интерактивный режим -- режим взаимодействия процесса обработки информации системы обработки информации с человеком, выражающийся в разного рода воздействиях на этот процесс, предусмотренных механизмом управления конкретной системы и вызывающих ответную реакцию процесса (определение по ГОСТ 15971-90 [1] ).

Режим реального времени -- режим обработки информации, при котором обеспечивается взаимодействие системы обработки информации с внешними по отношению к ней процессами в темпе, соизмеримом со скоростью протекания этих процессов(определение по ГОСТ 15971-90[1]).

Эмуляция -- имитация функционирования одного устройства посредством другого устройства или устройств вычислительной машины, при которой имитирующее устройство воспринимает те же данные, выполняет ту же программу и достигает того же результата, что и имитируемое (определение по ГОСТ 15971-90 [1] ).

Готовый продукт -- ранее разработанный и доступный для приобретения продукт, пригодный для использования в поставляемом или модифицированном виде (определение по ГОСТ Р ИСО/МЭК 12207-99 [4] ).

Программный продукт -- набор машинных программ, процедур и, возможно, связанных с ними документации и данных (определение по ГОСТ Р ИСО/МЭК 12207-99 [4] ).

Программный модуль -- отдельно компилируемая часть программного кода (программы) (определение по ГОСТ Р ИСО/МЭК 12207-99 [4] ).

Техническое задание -- документ, используемый заказчиком в качестве средства для описания и определения задач, выполняемых при реализации договора (определение по ГОСТ Р ИСО/МЭК 12207-99 [4] ).

Версия--определенный экземпляр объекта(определение по ГОСТ Р ИСО/МЭК 12207-99[4]).

Lorem ipsum -- классическое название условного, бессмысленного текста, заменяющего реальный контент.

Java - объектно-ориентированный язык программирования.

Байт-код -- машинно-независимый код низкого уровня.

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

Java Virtual Machine, JVM - виртуальная машина Java, интерпретирующая и исполняющая байт-код Java.

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

Java Runtime Environment, JRE -- минимальная реализация виртуальной машины, необходимая для исполнения Java-приложений, без компилятора и других средств разработки. Состоит из виртуальной машины -- Java Virtual Machine и библиотеки Java-классов.

Кроссплатформенное программное обеспечение -- программное обеспечение, работающее более чем на одной аппаратной платформе и/или операционной системе.

Операционная система, ОС -- совокупность системных программ, предназначенная для обеспечения определенного уровня эффективности системы обработки информации за счет автоматизированного управления ее работой и предоставляемого пользователю определенного набора услуг (определение по ГОСТ 15971-90 [1] ).

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

HTML-файл -- текстовый файл, содержащий внедрённый HTML-код.

Веб-браузер -- программное обеспечение для просмотра веб-сайтов.

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

Portable Document Format, PDF -- кроссплатформенный формат электронных документов.

Введение

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

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

Уже на ранних этапах развития концепции графического интерфейса был виден её огромный потенциал. Так, Билл Гейтс, сооснователь и бывший руководитель компании Microsoft Corporation, в своей книге «Дорога в будущее» [5] пишет:

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

Стив Джобс, сооснователь и генеральный директор корпорации Apple Inc после презентации возможностей компьютера Xerox Alto, в котором впервые был воплощён графический интерфейс, сказал:

“Я был так ослеплен первой штукой, которую они показали мне. Это был графический интерфейс. Я думаю, что это лучшая вещь, которую я когда-либо видел в жизни… Через 10 минут для меня стало ясно, что все компьютеры будут выглядеть именно так”

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

Многие корпоративные информационные системы (КИС), такие как ERP, ECM, ERM, поставляются с базовым интерфейсом низкого качества, что влечёт за собой ряд негативных последствий для пользователей систем: усложнение работы, неполное и неоптимальное использование функциональности системы, снижение скорости работы, появление ошибок. Как следствие, значительно повышается риск получения отрицательного эффекта от внедрения и использования системы. В конечном итоге, многие компании вынуждены отказываться от использования системы. По вышеперечисленным причинам считаю, что пользовательский интерфейс КИС в большинстве случаев при внедрении нуждается в кастомизации.

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

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

Учитывая существующие проблемы графических интерфейсов современных информационных систем, я пришёл к выводу о необходимости и важности разработки графического прототипа системы на стадии проектирования. Однако для решения этой задачи требуется специализированный программный инструмент. На данный момент на рынке программных продуктов представлено немного инструментов проектирования и прототипирования интерфейсов. Анализ существующих средств показал, что они не способны покрывать все требования различных IT-компаний, в том числе требования компании «АЛЕЕ СОФТВЕР» по дизайну и интерактивности создаваемых прототипов, возможности прототипирования интерфейсов различных типов приложений и другим характеристикам. По этой причине было принято решение о создании собственного инструмента проектирования и прототипирования графических интерфейсов.

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

1 Анализ рынка инструментов прототипирования

Цель анализа инструментов проектирования и прототипирования графических интерфейсов:

с поиск инструмента, способного покрыть требования различных IT-компаний, в том числе компании «АЛЕЕ СОФТВЕР»;

с выработка требований к собственному инструменту;

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

1.1 Виды прототипов

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

Ш Визуальная точность -- степень близости внешнего вида прототипа к внешнему виду конечного продукта.

Ш Функциональная точность -- степень близости поведения прототипа к функциональности конечного продукта.

Ш Точность контента -- степень близости контента прототипа к реальному контенту.

Совокупность этих характеристик, как показано на рисунке 1, отражает, насколько близко прототип напоминает конечный продукт.

Характеристики прототипов сведены в таблицу 1.

Таблица 1 -- Характеристики прототипов

Низкая

Высокая

Визуальная точность

Скетч, набросок, эскиз

Полноценный дизайн

Функциональная точность

Статичный прототип

Интерактивный прототип

Точность контента

Абстрактные строки, фиктивный текст

Реальный контент

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

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

1.2 Типы средств прототипирования

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

К непрограммным средствам прототипирования относят такие инструменты, как:

· бумага и карандаш;

· доска и маркер.

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

· не обладает интерактивностью;

· является схематичным;

· способен описать функциональность системы в ограниченной форме.

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

К программным средствам прототипирования относятся компьютерные программы или комплекс программ нескольких видов:

с редакторы скетчей;

с графические редакторы;

с специализированные редакторы графических интерфейсов;

с интегрированная среда разработки.

Скетч -- схематичный набросок, эскиз интерфейса.

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

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

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

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

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

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

1.3 Определение критериев оценки

проектирование графический пользовательский интерфейс

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

Критерии оценки специализированных редакторов графических интерфейсов были условно разделены на:

· первичные -- самые весомые, значимые, важные критерии оценки;

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

К первичным были отнесены следующие критерии:

1. Способность прототипирования различных типов приложений:

· десктопных приложений;

· веб приложений;

· приложений для мобильных операционных систем.

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

2. Способность создания интерактивных прототипов.

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

3. Степень интерактивности.

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

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

4. Наличие набора компонентов.

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

5. Внешний вид прототипа.

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

6. Скорость создания прототипа.

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

7. Возможность просмотра прототипа без установки редактора.

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

Критерии, имеющие меньший вес, были отнесены к вторичным:

1. Скорость работы редактора.

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

2. Поддерживаемые платформы.

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

3. Простота работы.

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

4. Удобство работы.

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

5. Цена редактора.

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

6. Развитие редактора.

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

7. Техническая поддержка.

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

8. Поддержка языков.

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

9. Требуется стороннее ПО.

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

10. Дополнительные инструменты.

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

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

1.4 Анализ

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

1. Axure RP

2. Designer Vista

3. GUI Design Studio

4. iRise

5. Microsoft Expression Blend

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

1.4.1 Axure RP

Инструмент для прототипирования веб-приложений и веб-сайтов.

Первичные критерии:

1. Способность прототипирования различных типов приложений.

Редактор позволяет создавать прототипы только веб-приложений и веб-сайтов.

2. Способность создания интерактивных прототипов.

Имеется возможность создания связи вида «событие-действие» между интерфейсами прототипа, что придаёт ему интерактивность.

3. Степень интерактивности.

Интерактивность прототипа средняя, набор связей вида «событие-действие» ограничен несколькими экземплярами.

4. Наличие набора компонентов.

Имеется небольшой набор компонентов. Нет возможности их детальной настройки. На сайте редактора имеется свободно распространяемая библиотека компонентов.

5. Внешний вид прототипа.

Прототип представляет собой html-файл, выглядит реалистично.

6. Скорость создания прототипа.

Приложение позволяет создавать прототип быстро.

7. Возможность просмотра прототипа без установки редактора.

Для просмотра прототипа установка редактора не требуется, используется веб-браузер.

Вторичные критерии:

1. Скорость работы редактора.

Редактор работает быстро, без продолжительных задержек и зависаний. Генерация прототипа также выполняется быстро.

2. Поддерживаемые платформы.

Windows 2000, XP, 2003 Server, Vista, 7

Mac OS X 10.5+

3. Простота работы.

Прототипирование доступно неподготовленным пользователям.

4. Удобство работы.

Интерфейс редактора интуитивно понятный, но имеет большой недостаток: нет списка использованных в прототипе объектов. Также нет возможности привязывать объекты друг к другу на области редактирования прототипа. Нельзя сгенерировать в HTML-файл часть интерфейса, только прототип целиком. Есть возможность создания шаблонов объектов.

5. Цена редактора.

Цена лицензии на 1 пользователя: $589.

6. Развитие редактора.

Редактор развивается, часто выпускаются обновления.

7. Техническая поддержка.

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

8. Поддержка языков.

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

9. Требуется стороннее ПО.

Для просмотра прототипа требуется веб-браузер (производителем рекомендуется IE 6.0+ или Firefox, но работает и на других). Для автоматической генерации спецификации интерфейсов требуется Microsoft Office Word 2000, XP, 2003, 2007.

10. Дополнительные инструменты.

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

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

1.4.2 Designer Vista

Приложение сочетает в себе 4 инструмента: редактор интерфейсов десктопных приложений, редактор интерфейсов веб-приложений, редактор скетчей и редактор интерфейсов Microsoft Office.

Первичные критерии:

1. Способность прототипирования различных типов приложений.

Редактор позволяет создавать прототипы графических интерфейсов десктопных и веб-приложений, а также приложений Microsoft Office.

2. Способность создания интерактивных прототипов.

Редактор не позволяет создавать интерактивные прототипы. Возможно создание только статичных прототипов.

3. Степень интерактивности.

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

4. Наличие набора компонентов.

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

5. Внешний вид прототипа.

Прототип представляет собой файл html или pdf. Выглядит красиво и реалистично.

6. Скорость создания прототипа.

Приложение позволяет создавать прототип очень быстро.

7. Возможность просмотра прототипа без установки редактора.

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

Вторичные критерии:

1. Скорость работы редактора.

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

2. Поддерживаемые платформы.

Windows XP, Vista, 7

3. Простота работы.

Работа в редакторе проста, не требует специальной подготовки.

4. Удобство работы.

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

5. Цена редактора.

Цена лицензии на 1 пользователя: $199,96.

6. Развитие редактора.

Редактор развивается, достаточно часто выпускаются обновления.

7. Техническая поддержка.

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

8. Поддержка языков.

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

9. Требуется стороннее ПО.

Для просмотра прототипа требуется веб-браузер либо просмотрщик файлов pdf. Для автоматической генерации спецификации интерфейсов требуется Microsoft Office Word XP, 2003, 2007.

10. Дополнительные инструменты.

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

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

1.4.3 GUI Design Studio

Редактор ориентирован на прототипирование интерфейсов десктопных приложений, но также позволяет создавать прототипы интерфейсов веб-приложений.

Первичные критерии:

1. Способность прототипирования различных типов приложений.

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

2. Способность создания интерактивных прототипов.

Редактор позволяет создавать интерактивные прототипы.

3. Степень интерактивности.

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

4. Наличие набора компонентов.

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

5. Внешний вид прототипа.

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

6. Скорость создания прототипа.

Приложение позволяет создавать прототип быстро.

7. Возможность просмотра прототипа без установки редактора.

Есть возможность просмотра прототипа при помощи бесплатного просмотрщика GUI Design Viewer .

Вторичные критерии:

1. Скорость работы редактора.

Редактор работает быстро, без продолжительных задержек и зависаний. Генерация прототипа также выполняется быстро.

2. Поддерживаемые платформы.

Windows 2000, XP, 2003 Server, Vista, 7

3. Простота работы.

Прототипирование доступно неподготовленным пользователям.

4. Удобство работы.

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

5. Цена редактора.

Цена лицензии на 1 пользователя: $499.

6. Развитие редактора.

Редактор развивается, достаточно часто выпускаются обновления.

7. Техническая поддержка.

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

8. Поддержка языков.

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

9. Требуется стороннее ПО.

Для корректной работы редактора стороннее ПО не требуется.

10. Дополнительные инструменты.

Редактор имеет инструмент для рисования иконок Icon Express.

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

1.4.4 iRise

Редактор предназначен для прототипирования веб-приложений и веб-сайтов любой сложности.

Первичные критерии:

1. Способность прототипирования различных типов приложений.

Редактор позволяет создавать прототипы только веб-приложений и веб-сайтов.

2. Способность создания интерактивных прототипов.

Редактор позволяет создавать полностью интерактивные прототипы, благодаря способности создания связей типа «событие-действие».

3. Степень интерактивности.

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

4. Наличие набора компонентов.

Имеется небольшой набор компонентов. Нет возможности их детальной настройки. Однако дизайн компонентов высококачественный.

5. Внешний вид прототипа.

Прототип представляет собой html-файл, выглядит реалистично.

6. Скорость создания прототипа.

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

7. Возможность просмотра прототипа без установки редактора.

Для просмотра прототипа установка редактора не требуется, используется веб-браузер.

Вторичные критерии:

1. Скорость работы редактора.

Редактор работает быстро, без продолжительных задержек и зависаний. Генерация прототипа также выполняется быстро.

2. Поддерживаемые платформы.

Windows 2000, XP, 2003 Server, Vista, 7

3. Простота работы.

Для полноценного прототипирования необходима некоторая подготовка.

4. Удобство работы.

Интерфейс редактора интуитивно понятный, приятный, удобный.

5. Цена редактора.

Цена лицензии на 1 пользователя: от $6995.

6. Развитие редактора.

Редактор развивается, выпускаются обновления, но не часто.

7. Техническая поддержка.

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

8. Поддержка языков.

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

9. Требуется стороннее ПО.

Для просмотра прототипа требуется веб-браузер.

10. Дополнительные инструменты.

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

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

1.4.5 Microsoft Expression Blend

Редактор позволяет прототипировать графические интерфейсы SilverLight и WPF (Windows Presentation Foundation) приложений.

Первичные критерии:

1. Способность прототипирования различных типов приложений.

Редактор позволяет создавать прототипы интерфейсов как веб, так и десктоп-приложений с ограничением: только SilverLight и WPF приложения соответственно.

2. Способность создания интерактивных прототипов.

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

3. Степень интерактивности.

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

4. Наличие набора компонентов.

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

5. Внешний вид прототипа.

Прототип запускается внутри приложения, выглядит реалистично.

6. Скорость создания прототипа.

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

7. Возможность просмотра прототипа без установки редактора.

Для просмотра прототипа требуется установка редактора.

Вторичные критерии:

1. Скорость работы редактора.

В работе редактора были зафиксированы замедления.

2. Поддерживаемые платформы.

Windows 2000, XP, 2003 Server, Vista, 7

3. Простота работы.

Прототипирование сложное, требует обучения и подготовки.

4. Удобство работы.

Интерфейс редактора сложный и непривычный, требует привыкания.

5. Цена редактора.

Цена лицензии на 1 пользователя: $599.

6. Развитие редактора.

Редактор развивается, выпускаются обновления, но не часто.

7. Техническая поддержка.

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

8. Поддержка языков.

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

9. Требуется стороннее ПО.

Для просмотра прототипа стороннее ПО не требуется.

10. Дополнительные инструменты.

Редактор содержит полезный инструмент для создания карты связей интерфейсов. Автоматически генерируется программный код Visual Basic или Visual C#.

Вывод: мощный и удобный инструмент для прототипирования SilverLight и WPF

приложений со сложной функциональностью. Интерактивность и визуальная привлекательность прототипов -- высокая. Часть функционала редактора уникальна. Однако, он не позволяет прототипировать приложения для других платформ. Сложен в освоении.

1.5 Результаты анализа

Результаты анализа специализированных редакторов графических интерфейсов показали, что не существует кроссплатформенного инструмента для прототипирования интерфейсов сложных веб и десктоп-приложений, который был бы способен покрыть требования, предъявляемые компанией «АЛЕЕ СОФТВЕР».

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

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

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

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

1. Инструмент должен быть кроссплатформенным, должен работать, как минимум, на основных платформах: Windows, Linux, Mac OS.

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

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

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

5. Прототип должен выглядеть как реальная работающая программа.

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

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

8. Инструмент должен позволять создавать прототипы быстро, в сжатые сроки.

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

10. Язык интерфейса: русский и английский.

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

3. Существующие разработки

Основной продукт компании «АЛЕЕ СОФТВЕР» -- корпоративная информационная система класса ERM (Enterprise Record Manager - система управления электронными записями). Система включает в себя два тонких клиента, через которые работают пользователи системы: десктопное (настольное) и веб.

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

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

На ранней стадии разработки выяснилось, что на Java версии 1.4 (на тот момент) выполнить поставленную задачу не удастся по следующим причинам:

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

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

с отсутствие в самом языке многих удобных инструментов давно уже существовавших на тот момент в других популярных языках программирования (например, таких как: типизированные списки, generics), что весьма затрудняло использование языка для написания подобного инструмента.

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

Описание разработок

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

· область редактирования графического интерфейса

· минимальный набор компонентов для тестирования графического редактора

· отдельный фрейм для управления слоями

· отдельный фрейм для настройки компонентов

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

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

4. Перечень функций для реализации

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

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

1. Значительное расширение набора компонентов, добавление всех типовых (стандартных) элементов интерфейса:

· кнопка (button);

· список (list box);

· раскрывающийся список (combo box);

· флажок/переключатель (check box);

· радио-кнопка (radio button);

· поле редактирования (textbox, edit field);

· значок (icon);

· панель инструментов (toolbar);

· строка состояния (status bar);

· всплывающая подсказка (tooltip, hint);

· полоса прокрутки (scrollbar);

· вкладка (tab);

· элемент для отображения табличных данных (grid view);

· меню (menu):

Ш главное меню окна (main menu);

Ш контекстное меню (popup menu);

· окно (window):

Ш панель (panel);

Ш диалоговое окно (dialog box);

Ш модальное окно (modal window);

· дерево -- элемент для отображения иерархии (tree view).

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

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

Для обеспечения возможности проектирования интерфейсов веб-приложений и приложений для мобильных телефонов необходимо добавить специализированные наборы компонентов. Эти элементы интерфейса должны быть платформо-независимыми (кроссплатформенными).

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

Список обрабатываемых событий:

· нажатие кнопки;

· получение/потеря фокуса объектом;

· изменение состояние выбора объекта;

· выбор элемента списка;

· события мыши:

Ш клик по объекту;

Ш нажатие кнопки мыши;

Ш отпускание кнопки мыши;

Ш вход курсора мыши в область объекта;

Ш выход курсора мыши из области объекта;

Ш прокрутка колёсика мыши;

· выбор ячейки таблицы;

· закрытие окна;

· выбор таба;

· выделение элемента дерева;

· истечение времени.

Список выполняемых действий:

· блокировка/разблокировка объекта;

· изменение контента объекта;

· изменение видимости объекта;

· вставка объекта в указанную область лэйаута;

· очищение указанной области лэйаута;

· открытие/закрытие окна;

· выполнение клика;

· выбор таба.


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.