чмв лекция №5
-
Upload
studentkai -
Category
Education
-
view
249 -
download
5
Transcript of чмв лекция №5
1
Человеко-машинное взаимодействиеЧеловеко-машинное взаимодействие
Зайдуллин С.С.КГТУ им. А.Н.Туполева
2
Лекция 5 Лекция 5
Тема: Общие вопросы проектирования ПИ (окончание).
План лекции:Архитектура пользовательского
интерфейса.Справочные системы.
3
Ключевые словаКлючевые слова
Архитектура ПИМодельПредставлениеПоведение (контроллер)ПрезентаторАбстракцияУправление
4
Вопрос 1Вопрос 1
Архитектура пользовательского интерфейса определяет основные функциональные блоки приложения и порядок их взаимодействия друг с другом и с пользователем.
5
Архитектура интерфейса Архитектура интерфейса простого приложения простого приложения командной строкикомандной строки
Приложение
приёмник командпользователя
анализаторкоманд
обработчиккоманды
ядро приложения
6
Архитектура Архитектура MVCMVC
Название: «Модель-Представление-Поведение» (Model-view-controller)
Автор: Трюгве Реенскауг (1979 год) Цель: Обеспечение пользователя
интерфейсом для манипуляции над многими вариантами отображения данных, как сущностей реального мира
Идея: Разделение данных приложения, ПИ и управляющей логики на три отдельных слабосвязанных компонента: модель, представление и поведение (контроллер).
7
Компоненты Компоненты MVCMVC
Модель предоставляет данные предметной области представлению и реагирует на коман-ды контроллера, изменяя свое состояние.
Представление отвечает за отображение данных предметной области пользователю с помощью любых доступных визуальных и не визуальных средств.
Контроллер интерпретирует действия поль-зователя, оповещая модель о необходимости изменений.
8
Типы моделей Типы моделей MVCMVC
Пассивная модель не осведомлена о сущест-вовании представления, контроллера, и даже о своем участии в MVC-триаде. Контроллер отслеживает изменения модели и оповещает представление.
Активная модель «знает» о существовании представлений и о том, что они должны обновляться. Активность модели проявляется в её праве самостоятельно оповестить пред-ставление об изменении своего состояния.
9
Общая модель архитектуры Общая модель архитектуры MVC с активной модельюMVC с активной моделью
Модель
Представление Поведение
оповещение о дейст-виях пользователя
выбор представления(при необходимости)
оповещениеоб изменении
состояния
запрос текущегосостояния
изменениесостояния
10
Архитектура Архитектура MVPMVP
Название: «Модель-Представление-Презентатор» (Model-View-Presenter)
Автор: Майк Потел, Taligent Inc. (1996 год), переработано Dolphin Smalltalk.
Цель: Интеграция концепций MVC в современные средства разработки ПО
Идея: Выделение данных, спецификации дан-ных, манипуляции над данными, координа-ции приложения, взаимодействия с пользова-телем и визуализацию в специализированные компоненты.
11
Компоненты Компоненты MVPMVP
Модель отвечает за данные и бизнес-логику приложения.
Представлением является визуализация модели (включает в себя окна и элементы управления, используемые в приложении). Реализуется как интерфейс, который может быть использован для получения и установки данных модели.
Презентатор реализует логику отображения данных модели пользователю, управляет моделью и представлением.
12
Общий вид архитектуры MVОбщий вид архитектуры MVP P ((версия от версия от Dolphin Smalltalk)Dolphin Smalltalk)
Модель(Domain model)
Представление Презентатор
оповещение о дейст-виях пользователя
описание состояниямодели
изменениесостояния
13
Основные отличия Основные отличия MVPMVP от от MVCMVC Модель не общается с представлением даже опо-
средовано, через механизм оповещений, как это реализовано в MVC с активной моделью.
Передача данных о состоянии модели в представле-ние, а также изменение этого состояния реализуются через презентатор.
Перехват сообщений пользователя выполняет пред-ставление, передавая его затем в презентатор.
Взаимодействие представления и презентатора реализуется через специальный интерфейс, а не напрямую через вызов методов класса-презентатора.
14
Архитектура Архитектура PACPAC
Название: «Представление-Абстракция-Управление» (Presentation-Abstraction-Control)
Цель: Построение иерархии компонентовИдея: Организуется иерархия взаимодейст-
вующих программных модулей (агентов). Каждый агент реализует собственный аспект функциональности приложения и представ-ляет собой триаду из представления, абстрак-ции (модели) и управления.
15
Архитектура Архитектура HMVCHMVC
Название: «Иерархический MVC» (Hierarchical Model-View-Controller)
Цель: Построение иерархии компонентовИдея: В PAC агенты взаимодействуют только
через управление, а HMVC позволяет пред-ставлениям, контроллерам и моделям различ-ных агентов связываться непосредственно друг с другом, выстраивая независимые иерархии.
16
Вопрос 2Вопрос 2
Удобство взаимодействия человека с программной во многом зависит от качества её справочной системы.
Реализация справочной системы для программ и для web-сайтов, как правило, различается.
17
Базовые компоненты Базовые компоненты справочной системысправочной системы Базовая справка – сущность и назначение системы Обзорная справка – реклама пользователю функций
системы Справка предметной области Процедурная справка – отвечает: «Как это сделать?» Контекстная справка – отвечает: «Что это делает?»
и «Зачем это нужно?» Справка состояния – отвечает: «Что происходит в
настоящий момент?» Сообщения об ошибках – отвечает: «В чём заклю-
чается проблема?», «Как исправить эту проблему прямо сейчас?», «Как сделать так, чтобы проблема не повторилась?»
18
Носители справочной Носители справочной информацииинформации Бумажная книга
– Легко позволяет читателю получить большой объём материала за один сеанс, наилучшим образом работает при последовательном чтении.
– Сравнительно плохой поиск нужных сведений.– Объём практически всегда лимитирован.
Справочная карта – краткий бумажный документ об основных способах работы с системой– Компактна, легкодоступна.– Хороша как средство обучения «продвинутым»
способам взаимодействия с системой.
19
Носители справочной Носители справочной информацииинформации Структурированная электронная документация
– Плохо приспособлена для чтения больших объёмов материала.
– Обеспечивает легкий поиск и не имеет лимита объёма.– Занимает большой объём пространства экрана.– Плохо подходит для показа крупных изображений, зато в
неё могут быть легко интегрированы видео и звук. Фрагменты пространства интерфейса, показывающие
справочную информацию– Постоянно занимают некоторое пространство экрана.– Отвлекают внимание и, как правило, неспособны передавать
большой объём информации.
20
Носители справочной Носители справочной информацииинформации Всплывающие подсказки
– Хорошо справляются с ответом на вопросы «Что это такое?» и «Зачем это нужно?» при условии, что объём ответов сравнительно невелик.
– Поскольку вызываются пользователями вручную, в обычном режиме не занимают пространства экрана и не отвлекают внимание.
– Очень легко вызывают отвыкание, после первого же случая неудовлетворения пользователя под-сказкой, пользователь перестаёт вызывать и все остальные подсказки.
21
Контрольные вопросыКонтрольные вопросы Поясните значение термина «архитектура
пользовательского интерфейса». Опишите суть архитектуры MVC. В чём состоит основное различие между
архитектурами MVC и MVP? Опишите основные достоинства
иерархических архитектур ПИ. Какие компоненты справочных систем вам
известны? Проиллюстрируйте свой ответ на примере распространённых программных систем.