SlideShare a Scribd company logo
1 of 15
Человеко-машинное взаимодействие
Зайдуллин С.С.
КГТУ им. А.Н.Туполева

1
Лабораторная работа 2
Тема: Парадигмы пользовательского
интерфейса.
Цель работы: Практическое освоение
реализации различных парадигм
пользовательского интерфейса
в типовых задачах.
2
Общие сведения
Существует три основных способа
организации человеко-машинного
взаимодействия, получившие название
«парадигм пользовательского
интерфейса»:
интерфейс командной строки;
интерфейс меню;
прямое манипулирование объектами.
3
Интерфейс командной строки
Пользователь набирает
запросы или указывает
необходимые действия на
специальном формальном
языке, имеющем собственный словарь, значение и
синтаксис.
В аналогичной форме
реализуется и реакция
системы.
4
Структура командного языка
Команда передаётся системе в форме текстовой строки, а символы-разделители (пробел,
табуляция и т.п.) разделяют её на отдельные
слова. Первое слово рассматривается как имя
команды, а остальные – как её параметры:

5
Интерфейс меню
Система не требует от
пользователя чрезмерных
знаний, а всегда предлагает
ему перечень возможных
действий, требуя лишь
выбора пользователем
нужных вариантов.
Основной определяющей
характеристикой меню
является их иерархическое
строение.
6
Разновидности меню
 Главное

меню включает в себя все
возможные операции, реализуемые
программой. При этом выбор недопустимых в данный момент операций
блокируется.
 Содержание контекстного (всплывающего) меню зависит от контекста задач,
стоящих перед пользователем.
7
Интерфейс прямого
манипулирования объектами
В основе парадигмы прямого манипулирования объектами (direct manipulation) лежит концепция «объект-операция», когда пользователь
сначала выбирает объект, а затем – действие,
которое ему необходимо выполнить с данным
объектом.
Этот подход ближе пользовательской
ментальной модели интерфейса, чем подход
«операция-объект», который реализуют
остальные парадигмы.
8
Типовые операции над
объектами
 Создание

объекта
 Копирование объекта
 Перемещение объекта
 Соединение объектов
 Изменение объекта
 Отбрасывание объекта

9
Задание
Независимо от типа решаемой задачи во многих
случаях она может быть реализована с помощью любой
из парадигм. Сравнить эффективность парадигм можно,
если применить их к одной и той же «типовой» задаче.
«Типовая» задача: разработка решения для управления файловыми каталогами. Создаваемы программы
должны реализовывать следующие функции:
вывод пользователю информации о содержимом
текущего каталога;
смену текущего каталога;
переименование файла в текущем каталоге;
удаление файла в текущем каталоге.
10
Порядок выполнения
1.

2.

3.

Проанализировать подлежащие разработке
функции управления файловыми каталогами.
Разработать командный язык управления
файловыми каталогами. Реализовать на его
основе программу в среде визуального
проектирования Delphi (парадигма командной строки).
Реализовать программно парадигму меню.
Решение данной задачи должно выполняться в двух вариантах (см. следующий
слайд):
11
Порядок выполнения
 В первом случае допускается применение таких
элементов управления (в терминах Delphi), как
TMainMenu, TActionMainMenuBar, TToolBar,
TActionToolBar и т.п.
 Во втором случае применение указанных и
аналогичных им элементов управления не
допускается.
4.

5.

Разработать язык прямого манипулирования
объектами файлового каталога. Реализовать
на его основе программу в среде Delphi.
Оформить результаты лабораторной
работы.
12
Содержание отчёта
1.
2.

3.

4.

Постановка задачи.
Описание командного языка и языка
прямого манипулирования объектами
файлового каталога. Последний может быть
представлен в виде матрицы прямого
манипулирования.
Краткое описание разработанных программ
в канве руководства пользователя и руководства программиста.
Вывод степени пригодности различных
парадигм интерфейса к решаемой задаче.
13
Контрольные вопросы
 Дайте

определение термину парадигма
применительно к интерфейсам программных
систем.
 Что такое командный язык? Опишите его
назначение и основные компоненты.
В качестве примера воспользуйтесь
результатами данной лабораторной работы.
 Какие типы меню вам известны? Какие способы их организации вы можете предложить,
и какие из них были использованы в рамках
данной лабораторной работы?
14
Контрольные вопросы
В

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

More Related Content

What's hot

чмв лекция №5
чмв   лекция №5чмв   лекция №5
чмв лекция №5student_kai
 
чмв лекция №3
чмв   лекция №3чмв   лекция №3
чмв лекция №3student_kai
 
designing UI, workshop, second day
designing UI, workshop, second daydesigning UI, workshop, second day
designing UI, workshop, second dayallileja
 
принципы проектирования интерфейса (37)
принципы проектирования интерфейса (37)принципы проектирования интерфейса (37)
принципы проектирования интерфейса (37)romachka_pole
 
ООП. Класс. Инкапсуляция
ООП. Класс. ИнкапсуляцияООП. Класс. Инкапсуляция
ООП. Класс. ИнкапсуляцияOlesia Nikitiuk
 
Модифицируемость программных систем
Модифицируемость программных системМодифицируемость программных систем
Модифицируемость программных системDima Dzuba
 
Requirement modelling in software creation process
Requirement modelling in software creation processRequirement modelling in software creation process
Requirement modelling in software creation processDima Dzuba
 
Основы концептуального проектирования
Основы концептуального проектированияОсновы концептуального проектирования
Основы концептуального проектированияAnton Tyukov
 
Презентация Игоря Сазонова на IT Global Meetup #5
Презентация Игоря Сазонова на IT Global Meetup #5Презентация Игоря Сазонова на IT Global Meetup #5
Презентация Игоря Сазонова на IT Global Meetup #5Lilia Smirnova
 
Практикум Web программирование
Практикум Web программированиеПрактикум Web программирование
Практикум Web программированиеRauan Ibraikhan
 
Art of coding and machine learning
Art of coding and machine learningArt of coding and machine learning
Art of coding and machine learningIllarion Khlestov
 

What's hot (20)

чмв лекция №5
чмв   лекция №5чмв   лекция №5
чмв лекция №5
 
чмв лекция №3
чмв   лекция №3чмв   лекция №3
чмв лекция №3
 
designing UI, workshop, second day
designing UI, workshop, second daydesigning UI, workshop, second day
designing UI, workshop, second day
 
принципы проектирования интерфейса (37)
принципы проектирования интерфейса (37)принципы проектирования интерфейса (37)
принципы проектирования интерфейса (37)
 
МиСПИСиТ (введение)
МиСПИСиТ (введение)МиСПИСиТ (введение)
МиСПИСиТ (введение)
 
Пользовательский интерфейс
Пользовательский интерфейс Пользовательский интерфейс
Пользовательский интерфейс
 
МиСПИСиТ (структура)
МиСПИСиТ (структура)МиСПИСиТ (структура)
МиСПИСиТ (структура)
 
Use Cases
Use CasesUse Cases
Use Cases
 
МиСПИСиТ (архитектура)
МиСПИСиТ (архитектура)МиСПИСиТ (архитектура)
МиСПИСиТ (архитектура)
 
МиСПИСиТ (разработка программного модуля)
МиСПИСиТ (разработка программного модуля)МиСПИСиТ (разработка программного модуля)
МиСПИСиТ (разработка программного модуля)
 
ООП. Класс. Инкапсуляция
ООП. Класс. ИнкапсуляцияООП. Класс. Инкапсуляция
ООП. Класс. Инкапсуляция
 
МиСПИСиТ (источники ошибок)
МиСПИСиТ (источники ошибок)МиСПИСиТ (источники ошибок)
МиСПИСиТ (источники ошибок)
 
МиСПИСиТ (литература по курсу)
МиСПИСиТ (литература по курсу)МиСПИСиТ (литература по курсу)
МиСПИСиТ (литература по курсу)
 
Модифицируемость программных систем
Модифицируемость программных системМодифицируемость программных систем
Модифицируемость программных систем
 
Requirement modelling in software creation process
Requirement modelling in software creation processRequirement modelling in software creation process
Requirement modelling in software creation process
 
Основы концептуального проектирования
Основы концептуального проектированияОсновы концептуального проектирования
Основы концептуального проектирования
 
Презентация Игоря Сазонова на IT Global Meetup #5
Презентация Игоря Сазонова на IT Global Meetup #5Презентация Игоря Сазонова на IT Global Meetup #5
Презентация Игоря Сазонова на IT Global Meetup #5
 
МиСПИСиТ (тестирование и отладка)
МиСПИСиТ (тестирование и отладка)МиСПИСиТ (тестирование и отладка)
МиСПИСиТ (тестирование и отладка)
 
Практикум Web программирование
Практикум Web программированиеПрактикум Web программирование
Практикум Web программирование
 
Art of coding and machine learning
Art of coding and machine learningArt of coding and machine learning
Art of coding and machine learning
 

Viewers also liked

презентация л.р. №12
презентация л.р. №12презентация л.р. №12
презентация л.р. №12student_kai
 
презентация
презентацияпрезентация
презентацияstudent_kai
 
лабораторная работа 3
лабораторная работа 3лабораторная работа 3
лабораторная работа 3student_kai
 
лекция 14 управление финансами-ч1
лекция 14 управление финансами-ч1лекция 14 управление финансами-ч1
лекция 14 управление финансами-ч1student_kai
 
лекция №3
лекция №3лекция №3
лекция №3student_kai
 
5 7 zanyatie--_igra
5 7 zanyatie--_igra5 7 zanyatie--_igra
5 7 zanyatie--_igrastudent_kai
 
презентация 8
презентация 8презентация 8
презентация 8student_kai
 
лекция №12
лекция №12лекция №12
лекция №12student_kai
 
лекция №1
лекция №1лекция №1
лекция №1student_kai
 
занятие4. теоремы о количестве движения системы и движении центра масс системы.
занятие4. теоремы о количестве движения системы и движении центра масс системы.занятие4. теоремы о количестве движения системы и движении центра масс системы.
занятие4. теоремы о количестве движения системы и движении центра масс системы.student_kai
 
лекция №7
лекция №7лекция №7
лекция №7student_kai
 
дпуулц автбизпроц
дпуулц автбизпроцдпуулц автбизпроц
дпуулц автбизпроцstudent_kai
 
презентация 7
презентация 7презентация 7
презентация 7student_kai
 
лабораторная работа 1
лабораторная работа 1лабораторная работа 1
лабораторная работа 1student_kai
 

Viewers also liked (20)

презентация л.р. №12
презентация л.р. №12презентация л.р. №12
презентация л.р. №12
 
л 11 sld
л 11  sldл 11  sld
л 11 sld
 
презентация
презентацияпрезентация
презентация
 
л 15 sld1
л 15  sld1л 15  sld1
л 15 sld1
 
лабораторная работа 3
лабораторная работа 3лабораторная работа 3
лабораторная работа 3
 
лекция 14 управление финансами-ч1
лекция 14 управление финансами-ч1лекция 14 управление финансами-ч1
лекция 14 управление финансами-ч1
 
лекция №3
лекция №3лекция №3
лекция №3
 
5 7 zanyatie--_igra
5 7 zanyatie--_igra5 7 zanyatie--_igra
5 7 zanyatie--_igra
 
лекция 4
лекция 4лекция 4
лекция 4
 
лекция 17
лекция 17лекция 17
лекция 17
 
л3с
л3сл3с
л3с
 
л 15 sld
л 15  sldл 15  sld
л 15 sld
 
презентация 8
презентация 8презентация 8
презентация 8
 
лекция №12
лекция №12лекция №12
лекция №12
 
лекция №1
лекция №1лекция №1
лекция №1
 
занятие4. теоремы о количестве движения системы и движении центра масс системы.
занятие4. теоремы о количестве движения системы и движении центра масс системы.занятие4. теоремы о количестве движения системы и движении центра масс системы.
занятие4. теоремы о количестве движения системы и движении центра масс системы.
 
лекция №7
лекция №7лекция №7
лекция №7
 
дпуулц автбизпроц
дпуулц автбизпроцдпуулц автбизпроц
дпуулц автбизпроц
 
презентация 7
презентация 7презентация 7
презентация 7
 
лабораторная работа 1
лабораторная работа 1лабораторная работа 1
лабораторная работа 1
 

Similar to чмв лабораторная №2

C# Desktop. Занятие 08.
C# Desktop. Занятие 08.C# Desktop. Занятие 08.
C# Desktop. Занятие 08.Igor Shkulipa
 
Programming Concepts
Programming ConceptsProgramming Concepts
Programming ConceptsMister_Lee
 
Moodle с точки зрения пользователя и программиста
Moodle с точки зрения пользователя и программистаMoodle с точки зрения пользователя и программиста
Moodle с точки зрения пользователя и программистаIgor Sazonov
 
Inroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAPInroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAPmikhailshurgulaya
 
C# Desktop. Занятие 01.
C# Desktop. Занятие 01.C# Desktop. Занятие 01.
C# Desktop. Занятие 01.Igor Shkulipa
 
Общие темы. Тема 02.
Общие темы. Тема 02.Общие темы. Тема 02.
Общие темы. Тема 02.Igor Shkulipa
 
9 структура компонентных приложений
9 структура компонентных приложений9 структура компонентных приложений
9 структура компонентных приложенийKewpaN
 
designing UI workshop 2 day
designing UI workshop 2 daydesigning UI workshop 2 day
designing UI workshop 2 dayallileja
 
презентация конспекта лекций
презентация конспекта лекцийпрезентация конспекта лекций
презентация конспекта лекцийstudent_kai
 
эволюция языков программирования
эволюция языков программированияэволюция языков программирования
эволюция языков программированияAndrey Radionov
 
системное администрирование
системное администрированиесистемное администрирование
системное администрированиеsplinter408
 
Tpo 05111(1)
Tpo 05111(1)Tpo 05111(1)
Tpo 05111(1)Nickola14
 
Сидристый Станислав: Паттерны и антипаттерны BDD
Сидристый Станислав: Паттерны и антипаттерны BDDСидристый Станислав: Паттерны и антипаттерны BDD
Сидристый Станислав: Паттерны и антипаттерны BDDStanislav Sidristy
 
Операционные системы и среды
Операционные системы и средыОперационные системы и среды
Операционные системы и средыAlexandr Konfidentsialno
 
Прикладная эконометрика. Лекция 1
Прикладная эконометрика. Лекция 1Прикладная эконометрика. Лекция 1
Прикладная эконометрика. Лекция 1Vladimir Tcherniak
 

Similar to чмв лабораторная №2 (20)

лекция № 11
лекция № 11лекция № 11
лекция № 11
 
C# Desktop. Занятие 08.
C# Desktop. Занятие 08.C# Desktop. Занятие 08.
C# Desktop. Занятие 08.
 
Programming Concepts
Programming ConceptsProgramming Concepts
Programming Concepts
 
Moodle с точки зрения пользователя и программиста
Moodle с точки зрения пользователя и программистаMoodle с точки зрения пользователя и программиста
Moodle с точки зрения пользователя и программиста
 
Inroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAPInroducing SAP ABAP - Presentation with basics SAP ABAP
Inroducing SAP ABAP - Presentation with basics SAP ABAP
 
A2
A2A2
A2
 
C# Desktop. Занятие 01.
C# Desktop. Занятие 01.C# Desktop. Занятие 01.
C# Desktop. Занятие 01.
 
Общие темы. Тема 02.
Общие темы. Тема 02.Общие темы. Тема 02.
Общие темы. Тема 02.
 
9 структура компонентных приложений
9 структура компонентных приложений9 структура компонентных приложений
9 структура компонентных приложений
 
designing UI workshop 2 day
designing UI workshop 2 daydesigning UI workshop 2 day
designing UI workshop 2 day
 
презентация конспекта лекций
презентация конспекта лекцийпрезентация конспекта лекций
презентация конспекта лекций
 
эволюция языков программирования
эволюция языков программированияэволюция языков программирования
эволюция языков программирования
 
системное администрирование
системное администрированиесистемное администрирование
системное администрирование
 
лекция 3
лекция 3лекция 3
лекция 3
 
Tpo 05111(1)
Tpo 05111(1)Tpo 05111(1)
Tpo 05111(1)
 
Сидристый Станислав: Паттерны и антипаттерны BDD
Сидристый Станислав: Паттерны и антипаттерны BDDСидристый Станислав: Паттерны и антипаттерны BDD
Сидристый Станислав: Паттерны и антипаттерны BDD
 
Операционные системы и среды
Операционные системы и средыОперационные системы и среды
Операционные системы и среды
 
Symfony 3
Symfony 3Symfony 3
Symfony 3
 
Panel control
Panel controlPanel control
Panel control
 
Прикладная эконометрика. Лекция 1
Прикладная эконометрика. Лекция 1Прикладная эконометрика. Лекция 1
Прикладная эконометрика. Лекция 1
 

More from student_kai

презентации продолжение банкета
презентации продолжение банкетапрезентации продолжение банкета
презентации продолжение банкетаstudent_kai
 
основы программирования на языке C
основы программирования на языке Cосновы программирования на языке C
основы программирования на языке Cstudent_kai
 
презентация курсовой работы
презентация курсовой работыпрезентация курсовой работы
презентация курсовой работыstudent_kai
 
лекция№34
лекция№34лекция№34
лекция№34student_kai
 
лекция№32
лекция№32лекция№32
лекция№32student_kai
 
лекция№33
лекция№33лекция№33
лекция№33student_kai
 
лекция№31
лекция№31лекция№31
лекция№31student_kai
 
лекция№30
лекция№30лекция№30
лекция№30student_kai
 
лекция№29
лекция№29лекция№29
лекция№29student_kai
 
лекция№28
лекция№28лекция№28
лекция№28student_kai
 
лекция№27
лекция№27лекция№27
лекция№27student_kai
 
лекция№26
лекция№26лекция№26
лекция№26student_kai
 
лекция№25
лекция№25лекция№25
лекция№25student_kai
 
лекция№25
лекция№25лекция№25
лекция№25student_kai
 
лекция№24
лекция№24лекция№24
лекция№24student_kai
 
лекция№23
лекция№23лекция№23
лекция№23student_kai
 
лекция№22
лекция№22лекция№22
лекция№22student_kai
 
лекция№21
лекция№21лекция№21
лекция№21student_kai
 
лекция№20
лекция№20лекция№20
лекция№20student_kai
 
лекция№19
лекция№19лекция№19
лекция№19student_kai
 

More from student_kai (20)

презентации продолжение банкета
презентации продолжение банкетапрезентации продолжение банкета
презентации продолжение банкета
 
основы программирования на языке C
основы программирования на языке Cосновы программирования на языке C
основы программирования на языке C
 
презентация курсовой работы
презентация курсовой работыпрезентация курсовой работы
презентация курсовой работы
 
лекция№34
лекция№34лекция№34
лекция№34
 
лекция№32
лекция№32лекция№32
лекция№32
 
лекция№33
лекция№33лекция№33
лекция№33
 
лекция№31
лекция№31лекция№31
лекция№31
 
лекция№30
лекция№30лекция№30
лекция№30
 
лекция№29
лекция№29лекция№29
лекция№29
 
лекция№28
лекция№28лекция№28
лекция№28
 
лекция№27
лекция№27лекция№27
лекция№27
 
лекция№26
лекция№26лекция№26
лекция№26
 
лекция№25
лекция№25лекция№25
лекция№25
 
лекция№25
лекция№25лекция№25
лекция№25
 
лекция№24
лекция№24лекция№24
лекция№24
 
лекция№23
лекция№23лекция№23
лекция№23
 
лекция№22
лекция№22лекция№22
лекция№22
 
лекция№21
лекция№21лекция№21
лекция№21
 
лекция№20
лекция№20лекция№20
лекция№20
 
лекция№19
лекция№19лекция№19
лекция№19
 

чмв лабораторная №2

  • 2. Лабораторная работа 2 Тема: Парадигмы пользовательского интерфейса. Цель работы: Практическое освоение реализации различных парадигм пользовательского интерфейса в типовых задачах. 2
  • 3. Общие сведения Существует три основных способа организации человеко-машинного взаимодействия, получившие название «парадигм пользовательского интерфейса»: интерфейс командной строки; интерфейс меню; прямое манипулирование объектами. 3
  • 4. Интерфейс командной строки Пользователь набирает запросы или указывает необходимые действия на специальном формальном языке, имеющем собственный словарь, значение и синтаксис. В аналогичной форме реализуется и реакция системы. 4
  • 5. Структура командного языка Команда передаётся системе в форме текстовой строки, а символы-разделители (пробел, табуляция и т.п.) разделяют её на отдельные слова. Первое слово рассматривается как имя команды, а остальные – как её параметры: 5
  • 6. Интерфейс меню Система не требует от пользователя чрезмерных знаний, а всегда предлагает ему перечень возможных действий, требуя лишь выбора пользователем нужных вариантов. Основной определяющей характеристикой меню является их иерархическое строение. 6
  • 7. Разновидности меню  Главное меню включает в себя все возможные операции, реализуемые программой. При этом выбор недопустимых в данный момент операций блокируется.  Содержание контекстного (всплывающего) меню зависит от контекста задач, стоящих перед пользователем. 7
  • 8. Интерфейс прямого манипулирования объектами В основе парадигмы прямого манипулирования объектами (direct manipulation) лежит концепция «объект-операция», когда пользователь сначала выбирает объект, а затем – действие, которое ему необходимо выполнить с данным объектом. Этот подход ближе пользовательской ментальной модели интерфейса, чем подход «операция-объект», который реализуют остальные парадигмы. 8
  • 9. Типовые операции над объектами  Создание объекта  Копирование объекта  Перемещение объекта  Соединение объектов  Изменение объекта  Отбрасывание объекта 9
  • 10. Задание Независимо от типа решаемой задачи во многих случаях она может быть реализована с помощью любой из парадигм. Сравнить эффективность парадигм можно, если применить их к одной и той же «типовой» задаче. «Типовая» задача: разработка решения для управления файловыми каталогами. Создаваемы программы должны реализовывать следующие функции: вывод пользователю информации о содержимом текущего каталога; смену текущего каталога; переименование файла в текущем каталоге; удаление файла в текущем каталоге. 10
  • 11. Порядок выполнения 1. 2. 3. Проанализировать подлежащие разработке функции управления файловыми каталогами. Разработать командный язык управления файловыми каталогами. Реализовать на его основе программу в среде визуального проектирования Delphi (парадигма командной строки). Реализовать программно парадигму меню. Решение данной задачи должно выполняться в двух вариантах (см. следующий слайд): 11
  • 12. Порядок выполнения  В первом случае допускается применение таких элементов управления (в терминах Delphi), как TMainMenu, TActionMainMenuBar, TToolBar, TActionToolBar и т.п.  Во втором случае применение указанных и аналогичных им элементов управления не допускается. 4. 5. Разработать язык прямого манипулирования объектами файлового каталога. Реализовать на его основе программу в среде Delphi. Оформить результаты лабораторной работы. 12
  • 13. Содержание отчёта 1. 2. 3. 4. Постановка задачи. Описание командного языка и языка прямого манипулирования объектами файлового каталога. Последний может быть представлен в виде матрицы прямого манипулирования. Краткое описание разработанных программ в канве руководства пользователя и руководства программиста. Вывод степени пригодности различных парадигм интерфейса к решаемой задаче. 13
  • 14. Контрольные вопросы  Дайте определение термину парадигма применительно к интерфейсам программных систем.  Что такое командный язык? Опишите его назначение и основные компоненты. В качестве примера воспользуйтесь результатами данной лабораторной работы.  Какие типы меню вам известны? Какие способы их организации вы можете предложить, и какие из них были использованы в рамках данной лабораторной работы? 14
  • 15. Контрольные вопросы В чём состоит основное преимущество парадигмы прямого манипулирования перед прочими? Проиллюстрируйте свой ответ программами, разработанными в рамках данной лабораторной работы.  Поясните значение термина графический пользовательский интерфейс. В рамках какой парадигмы или парадигм он может актуален?  Перечислите основные архитектуры пользовательского интерфейса. 15