Моделирование пользовательского интерфейса - User interface modeling
Моделирование пользовательского интерфейса это метод разработки, используемый программистами компьютерных приложений. Современные пользовательские интерфейсы (UI) - это сложные программные компоненты, которые играют важную роль в удобстве использования приложения. Поэтому для разработки пользовательских интерфейсов требуются не только руководящие принципы и отчеты о передовой практике, но и процесс разработки, включающий разработку визуальных моделей и стандартизированных обозначений для этой визуализации.
Период, термин моделирование пользовательского интерфейса в основном используется в информационные технологии контекст. А пользовательский интерфейс модель представляет собой представление о том, как конечные пользователи взаимодействуют с компьютерной программой или другим устройством, а также о том, как реагирует система. Задача моделирования - показать все "непосредственно испытанный аспекты вещи или устройства »[Trætteberg2002].
Моделирование пользовательских интерфейсов - это хорошо известная дисциплина. Например, методы моделирования могут описывать объекты взаимодействия, задачи и диалоги нижнего уровня в пользовательских интерфейсах. Использование моделей как части разработки пользовательского интерфейса может помочь уловить требования пользователя, избежать преждевременной привязки к конкретным макетам и виджетам и сделать явными отношения между различными частями интерфейса и их ролями. [SilvaPaton2003].
Языки
МАРИЯ
МАРИЯ XML (Model-based lAnguage for Interactive Applications) - универсальный декларативный язык разметки пользовательского интерфейса с множеством уровней абстракции, основанный на XML, для моделирования интерактивных приложений в повсеместных средах.
UML
Некоторые аспекты моделирования пользовательского интерфейса могут быть реализованы с помощью UML. Однако этот язык в основном не предназначен для такого рода моделирования, которое может сделать модели несколько синтетическими.
UMLi
UMLi является продолжением UML, и добавляет поддержку представления, обычно встречающегося в пользовательских интерфейсах.
Поскольку модели приложений в UML описывают несколько аспектов пользовательских интерфейсов, а среды разработки пользовательских интерфейсов на основе моделей (MB-UIDE) не могут моделировать приложения, Манчестерский университет начал исследовательский проект UMLi в 1998 году. UMLi стремится решить эту проблему. проблема разработки и реализации пользовательских интерфейсов с использованием комбинации UML и МБ-УИДЕ.
UsiXML
UsiXML (Расширяемый язык разметки пользовательского интерфейса) - это язык спецификации на основе XML для проектирования пользовательского интерфейса. Он поддерживает описание пользовательского интерфейса для нескольких контекстов использования, таких как символьные пользовательские интерфейсы (CUI), графические пользовательские интерфейсы (GUI), слуховые пользовательские интерфейсы и Мультимодальный Пользовательские интерфейсы.
DiaMODL
DiaMODL сочетает в себе язык, ориентированный на потоки данных (абстракция Pisa Interactor), с диаграммами состояний UML, ориентированными на поведение. Он способен моделировать поток данных, а также поведение объектов взаимодействия. Его можно использовать для документирования функций и структуры конкретных пользовательских интерфейсов.
Гималии
Гималия сочетает в себе модели гипермедиа с парадигмой управления / композита. Это полноценный язык пользовательского интерфейса, его можно использовать как для указания, так и для запуска, из-за чего инструмент дизайнера можно отнести к категории гульденов.[1]
Типы моделей
Различные аспекты пользовательского интерфейса требуют разных типов моделей. Некоторые из моделей, которые могут быть рассмотрены для моделирования пользовательского интерфейса:
- Модель домена, включая модель данных (определяет объекты, которые пользователь может просматривать, получать доступ и управлять через пользовательский интерфейс)
- Модель навигации, определяет, как объекты, по которым пользовательский просмотр может перемещаться через пользовательский интерфейс.
- Модель задачи. (описывает задачи, которые выполняет конечный пользователь, и определяет, какие возможности взаимодействия должны быть разработаны)
- Модель пользователя (представляет различные характеристики конечных пользователей и роли, которые они играют в организации)
- Модель платформы (используется для моделирования физических устройств, которые предназначены для размещения приложения, и их взаимодействия друг с другом)
- Модель диалога (как пользователи могут взаимодействовать с презентацией объектов (как кнопки, команды и т. д.), со средствами взаимодействия (как голосовой ввод, сенсорный экран и т. д.) и реакциями, которые пользовательский интерфейс передает через эти объекты)
- Модель презентации (внешний вид приложения, представление визуальных, тактильных и слуховых элементов, которые пользовательский интерфейс предлагает своим пользователям)
- Модель приложения (команды и данные, предоставляемые приложением)
UML может использоваться для нескольких из упомянутых выше моделей с разной степенью успеха, но ему не хватает поддержки пользовательского моделирования, моделирования платформы и модели представления.
Подходы
Существует несколько подходов к моделированию пользовательского интерфейса.
Дизайн, ориентированный на пользователя
При проектировании, ориентированном на использование, задача моделирования состоит в том, чтобы показать, как должно происходить фактическое представление запланированной системы и как должно происходить взаимодействие с пользователем. Это, вероятно, наиболее хваленый подход, который успешно применялся в различных малых и крупных проектах. Его сильные стороны - в сложных проблемах.
Альтернативные подходы к UI на основе моделей
Известной проблемой подходов, основанных на моделях, является повторение информации и отсутствие эффективных механизмов для решения сквозных проблем [Cerny2013]. Решение на основе моделей хорошо работает само по себе, но интеграция с альтернативными подходами усложняет разработку и сопровождение.
На основе проверки кода
Эти подходы основаны на существующей кодовой базе языка общего назначения (GPL) [Cerny2012]. Они проверяют код посредством метапрограммирования и собирают структурную модель, которая преобразуется в пользовательский интерфейс. Этот подход касается повторного утверждения информации. Эти подходы не подходят для адаптивных и контекстно-зависимых пользовательских интерфейсов.
Генеративное программирование
Эти подходы соединяют методы предметной области с GPL [Генеративное программирование]. Они решают общие проблемы, но только во время компиляции, что не подходит для будущих адаптивных пользовательских интерфейсов, которым требуется информация времени выполнения.
Пользовательские интерфейсы на основе аспектов
Решение на основе аспектов, предложенное [Cerny2013] [Cerny2013a] [AspectFaces], объединяет преимущества подходов, основанных на проверке кода, и подходов генеративного программирования. Он проверяет существующий код и применяет аспектно-ориентированные методы для решения сквозных проблем. Он работает во время выполнения, сокращает повторное представление информации и в то же время разделяет проблемы пользовательского интерфейса, что позволяет повторно использовать каждую из них независимо от других. В исследовании [Cerny2013] авторы сокращают код пользовательского интерфейса на 32% с помощью аспектно-ориентированного подхода к пользовательскому интерфейсу, применяемого к производственной системе. Основными преимуществами являются использование шаблонов для настройки представления, отдельные определения проблем и в основном общие правила преобразования, применимые к различным данным.
Модели контента
Такие модели показывают содержимое пользовательского интерфейса и его различные компоненты. Эстетика и детали поведения не включены в модели такого типа, как в модели дизайна, ориентированные на использование.
Смотрите также
Рекомендации
- [Paternò 2005] - Ф. Патерно, Инструменты на основе моделей для повсеместного использования, Взаимодействие с компьютерами 17 (3), 291-315
- [Trætteberg2002] - Х. Треттеберг, Дизайн пользовательского интерфейса на основе моделей, докторская диссертация, Норвежский университет науки и технологий, 2002 г.
- [SilvaPaton2003] - П. Пиньейру да Силва, Н. В. Патон, Моделирование пользовательского интерфейса в UMLi, Стэнфордский университет / Университет Манчестера, 2003 г.
- [Markopoulos1997] - П. Маркопулос, Композиционная модель для формальной спецификации программного обеспечения пользовательского интерфейса, докторская диссертация, Лондонский университет Королевы Мэри и Вестфилд, 1997
- [Trevisan2003] - Д. Тревизан, Дж. Вандердонк, Б. Макк, Модельно-ориентированный подход и системы дополненной реальности, Католический университет Лувена, 1348 Лувен-ла-Нев, Бельгия, 2003 г.
- [wwwUMLi] - Единый язык моделирования для интерактивных приложений
- [Cerny2013] - Черны, Т. - Кемус, К. - Донахо, М.Дж. - Сонг, М.Дж .: Аспектно-ориентированный, отражающий данные и контекстно-зависимый дизайн пользовательских интерфейсов (стр. 53). В: ACM SIGAPP Applied Computing Review [онлайн, 2013, т. 13, нет. 4, стр. 53-65, ISSN 1559-6915.
- [Cerny2013a] - Черны, Т. - Донаху, М.Дж. - Сонг, Э .: На пути к эффективному адаптивному дизайну пользовательских интерфейсов, Материалы симпозиума по исследованиям в области прикладных вычислений 2013 г. (RACS 2013), Монреаль: ACM, 2013 г., ISBN 978-1-4503-2348-2.
- [AspectFaces] - АспектЛица
- [Cerny2012] - Т. Черни и Э. Сонг. Генерация расширенных форм на основе моделей. Информация: Международный междисциплинарный журнал, 15 (7, SI): 2695-2714, июл 2012 г.
- [Генеративное программирование] - Кшиштоф Чарнецкий и Ульрих В. Эйзенекер. 2000 г. Генеративное программирование: методы, инструменты и приложения. ACM Press / Addison-Wesley Publ. Co., Нью-Йорк, штат Нью-Йорк, США.