SlideShare a Scribd company logo
Применение модели GOMS


   Евгений Гуринович,
   руководитель отдела юзабилити и UX ARTOX media
   @GurinovichEvgen
   gurinovich.evgen@gmail.com
История
Разработали в 1983 г. Стюард Кард, Томас П.Моран и Ален Ньювел
The Psychology of Human Computer Interaction




Goals
Operators
Methods and
Selection rules
- своего рода специализированная информационная модель
человеческого процесса взаимодействия с компьютером.
Что за модель?
GOMS это семейство методов, позволяющих провести моделирование выполнения той или
иной задачи пользователем и на основе такой модели оценить качество интерфейса.




Время, необходимое на выполнение
какой-то задачи, является суммой всех
элементарных действий в системе.
•   Нажатие клавиши (K=0,2 c)
•   Указание (P=1,1 c)
•   Перемещение (H=0,4 c)
•   Ментальная подготовка (M=1,35)
•   Ответ (R)
Правила 0-2
Более сложным расчѐтом является определение точек, в которых пользователь остановится,
чтобы выполнить ментальную операцию.


Правило 0          Операторы M следует устанавливать перед всеми операторами K
Начальная          (нажатие клавиши), а также перед всеми операторами P (указание с
расстановка        помощью ГУВ), предназначенными для выбора команд; но перед
операторов M       операторами P, предназначенными для указания на аргументы этих
                   команд, ставить оператор M не следует.
Правило 1          Если оператор, следующий за оператором M, является полностью
Удаление           ожидаемым с точки зрения оператора, предшествующего M, то этот
ожидаемых          оператор M может быть удален. Например, если вы перемещаете ГУВ с
операторов M       намерением нажать его кнопку по достижении цели движения, то в
                   соответствии с этим правилом следует удалить оператор M,
                   устанавливаемый по правилу 0. В этом случае последовательность P M K
                   превращается в P K.
Правило 2          Если строка вида M K M K M K... принадлежит когнитивной единице, то
Удаление           следует удалить все операторы M, кроме первого. Когнитивной единицей
операторов M       является непрерывная последовательность вводимых символов, которые
внутри             могут образовывать название команды или аргумент. Например Y,
когнитивных        перемещать, Елена Троянская или 4564.23 являются примерами
единиц             когнитивных единиц.
Правила 3-5


Правило 3        Если оператор K означает лишний разделитель, стоящий в конце
Удаление         когнитивной единицы (например, разделитель команды, следующий
операторов M     сразу за разделителем аргумента этой команды), то следует удалить
перед            оператор M, стоящий перед ним.
последовательн
ыми
разделителями
Правило 4        Если оператор K является разделителем, стоящим после постоянной
Удаление         строки (например, название команды или любая последовательность
операторов M,    символов, которая каждый раз вводится в неизменном виде), то следует
которые          удалить оператор M, стоящий перед ним. (Добавление разделителя
являются         станет привычным действием, и поэтому разделитель станет частью
прерывателями    строки и не будет требовать специального оператора M.) Но если
команд           оператор K является разделителем для строки аргументов или любой
                 другой изменяемой строки, то оператор M следует сохранить перед ним.
Правило 5        Любую часть оператора M, которая перекрывает оператор R,
Удаление         означающий задержку, связанную с ожиданием ответа компьютера,
перекрывающи     учитывать не следует.
х операторов M
Минусы
На практике указанные значения могут варьироваться в широких пределах.




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




• Быстро.
• Легко сравнить 2 интерфейса.
• Можно рассчитать.
Все модели
Сравнение различных моделей описано в книге John, Bonnie E. «Why GOMS?» или «Using
GOMS for User Interface Design and Evalution: Which Technique?»


• Card, Moran and Newell GOMS (CMN-
  GOMS
• Cognitive Perceptual Model (CPM)
• Keystroke-level Model (KLM)
• Natural GOMS Language (NGOMSL)
Пример расчета
Рассчитаем время перевода валюты в существующем интерфейсе конвертора BelSwissBank


Возьмем сценарий конвертации валют из
долларов в белорусские рубли.
Пример расчета


С использование «Enter»:
H+M+P+K+H+M+K+M+K+K+K+K+
M+K=8,7   с

С использованием мыши:
H+M+P+K+H+M+K+M+K+K+K+K+
H+M+P+K=10,2   c
Пример расчета NEW
Рассчитаем время перевода валюты в новом интерфейсе конвертора BelSwissBank


Сценарий конвертации валют из
долларов в белорусские рубли.
Пример расчета NEW


H+M+P+K+H+M+K
+K+K+K=5,6   c
Задание
Небольшое задание по модели GOMS. Результаты напишу в комментариях позже.




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



Спасибо за внимание!


     Евгений Гуринович,
     руководитель отдела юзабилити и UX ARTOX media
     @GurinovichEvgen
     gurinovich.evgen@gmail.com




                                                  @uxbelarus
                                      facebook.com/UXBelarus

More Related Content

Similar to Применение модели GOMS

04 ос взаимодействие_процессов_1
04 ос взаимодействие_процессов_104 ос взаимодействие_процессов_1
04 ос взаимодействие_процессов_1921519
 
Базовые операторы Java
Базовые операторы JavaБазовые операторы Java
Базовые операторы Javametaform
 
практика 3
практика 3практика 3
практика 3student_kai
 
операторы и выражения
операторы и выраженияоператоры и выражения
операторы и выражения
LidiKashka
 
Presentation Klochkova
Presentation KlochkovaPresentation Klochkova
Presentation Klochkova
klochkova
 
20100927 28 reqformalization-kuliamin
20100927 28 reqformalization-kuliamin20100927 28 reqformalization-kuliamin
20100927 28 reqformalization-kuliaminComputer Science Club
 
2020 03-31-lection
2020 03-31-lection2020 03-31-lection
2020 03-31-lection
Olga Leshchenko
 
Настрой контент под пользователя!
Настрой контент под пользователя!Настрой контент под пользователя!
Настрой контент под пользователя!
PyNSK
 
Cpp0x Introduction
Cpp0x IntroductionCpp0x Introduction
Cpp0x Introduction
Fedor Vompe
 
Cтиль программирования
Cтиль программированияCтиль программирования
Cтиль программирования
Constantin Kichinsky
 
В поисках математики. Михаил Денисенко, Нигма
В поисках математики. Михаил Денисенко, НигмаВ поисках математики. Михаил Денисенко, Нигма
В поисках математики. Михаил Денисенко, Нигма
yaevents
 
язык програмирования
язык програмированияязык програмирования
язык програмирования
Olegmingalev1997
 
Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?
Yauheni Akhotnikau
 
02 if for
02 if for02 if for
02 if for
pogromskaya
 
Борзунов Александр, Cpmoptimize
Борзунов Александр, CpmoptimizeБорзунов Александр, Cpmoptimize
Борзунов Александр, Cpmoptimize
Darya Zubova
 
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
Alexander Borzunov
 
Алгоритмизация
АлгоритмизацияАлгоритмизация
Алгоритмизация
Lebedeva_Zoya
 
условные и безусловные операторы
условные и безусловные операторыусловные и безусловные операторы
условные и безусловные операторыanastastish
 
Александр Гладыш — Visual editor for business logic in Lua and JS
Александр Гладыш — Visual editor for business logic in Lua and JSАлександр Гладыш — Visual editor for business logic in Lua and JS
Александр Гладыш — Visual editor for business logic in Lua and JSYury Yurevich
 

Similar to Применение модели GOMS (20)

04 ос взаимодействие_процессов_1
04 ос взаимодействие_процессов_104 ос взаимодействие_процессов_1
04 ос взаимодействие_процессов_1
 
Базовые операторы Java
Базовые операторы JavaБазовые операторы Java
Базовые операторы Java
 
практика 3
практика 3практика 3
практика 3
 
операторы и выражения
операторы и выраженияоператоры и выражения
операторы и выражения
 
Presentation Klochkova
Presentation KlochkovaPresentation Klochkova
Presentation Klochkova
 
лекция 2
лекция 2лекция 2
лекция 2
 
20100927 28 reqformalization-kuliamin
20100927 28 reqformalization-kuliamin20100927 28 reqformalization-kuliamin
20100927 28 reqformalization-kuliamin
 
2020 03-31-lection
2020 03-31-lection2020 03-31-lection
2020 03-31-lection
 
Настрой контент под пользователя!
Настрой контент под пользователя!Настрой контент под пользователя!
Настрой контент под пользователя!
 
Cpp0x Introduction
Cpp0x IntroductionCpp0x Introduction
Cpp0x Introduction
 
Cтиль программирования
Cтиль программированияCтиль программирования
Cтиль программирования
 
В поисках математики. Михаил Денисенко, Нигма
В поисках математики. Михаил Денисенко, НигмаВ поисках математики. Михаил Денисенко, Нигма
В поисках математики. Михаил Денисенко, Нигма
 
язык програмирования
язык програмированияязык програмирования
язык програмирования
 
Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?Для чего мы делали свой акторный фреймворк и что из этого вышло?
Для чего мы делали свой акторный фреймворк и что из этого вышло?
 
02 if for
02 if for02 if for
02 if for
 
Борзунов Александр, Cpmoptimize
Борзунов Александр, CpmoptimizeБорзунов Александр, Cpmoptimize
Борзунов Александр, Cpmoptimize
 
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
Автоматическая оптимизация алгоритмов с помощью быстрого возведения матриц в ...
 
Алгоритмизация
АлгоритмизацияАлгоритмизация
Алгоритмизация
 
условные и безусловные операторы
условные и безусловные операторыусловные и безусловные операторы
условные и безусловные операторы
 
Александр Гладыш — Visual editor for business logic in Lua and JS
Александр Гладыш — Visual editor for business logic in Lua and JSАлександр Гладыш — Visual editor for business logic in Lua and JS
Александр Гладыш — Visual editor for business logic in Lua and JS
 

Применение модели GOMS

  • 1. Применение модели GOMS Евгений Гуринович, руководитель отдела юзабилити и UX ARTOX media @GurinovichEvgen gurinovich.evgen@gmail.com
  • 2. История Разработали в 1983 г. Стюард Кард, Томас П.Моран и Ален Ньювел The Psychology of Human Computer Interaction Goals Operators Methods and Selection rules - своего рода специализированная информационная модель человеческого процесса взаимодействия с компьютером.
  • 3. Что за модель? GOMS это семейство методов, позволяющих провести моделирование выполнения той или иной задачи пользователем и на основе такой модели оценить качество интерфейса. Время, необходимое на выполнение какой-то задачи, является суммой всех элементарных действий в системе. • Нажатие клавиши (K=0,2 c) • Указание (P=1,1 c) • Перемещение (H=0,4 c) • Ментальная подготовка (M=1,35) • Ответ (R)
  • 4. Правила 0-2 Более сложным расчѐтом является определение точек, в которых пользователь остановится, чтобы выполнить ментальную операцию. Правило 0 Операторы M следует устанавливать перед всеми операторами K Начальная (нажатие клавиши), а также перед всеми операторами P (указание с расстановка помощью ГУВ), предназначенными для выбора команд; но перед операторов M операторами P, предназначенными для указания на аргументы этих команд, ставить оператор M не следует. Правило 1 Если оператор, следующий за оператором M, является полностью Удаление ожидаемым с точки зрения оператора, предшествующего M, то этот ожидаемых оператор M может быть удален. Например, если вы перемещаете ГУВ с операторов M намерением нажать его кнопку по достижении цели движения, то в соответствии с этим правилом следует удалить оператор M, устанавливаемый по правилу 0. В этом случае последовательность P M K превращается в P K. Правило 2 Если строка вида M K M K M K... принадлежит когнитивной единице, то Удаление следует удалить все операторы M, кроме первого. Когнитивной единицей операторов M является непрерывная последовательность вводимых символов, которые внутри могут образовывать название команды или аргумент. Например Y, когнитивных перемещать, Елена Троянская или 4564.23 являются примерами единиц когнитивных единиц.
  • 5. Правила 3-5 Правило 3 Если оператор K означает лишний разделитель, стоящий в конце Удаление когнитивной единицы (например, разделитель команды, следующий операторов M сразу за разделителем аргумента этой команды), то следует удалить перед оператор M, стоящий перед ним. последовательн ыми разделителями Правило 4 Если оператор K является разделителем, стоящим после постоянной Удаление строки (например, название команды или любая последовательность операторов M, символов, которая каждый раз вводится в неизменном виде), то следует которые удалить оператор M, стоящий перед ним. (Добавление разделителя являются станет привычным действием, и поэтому разделитель станет частью прерывателями строки и не будет требовать специального оператора M.) Но если команд оператор K является разделителем для строки аргументов или любой другой изменяемой строки, то оператор M следует сохранить перед ним. Правило 5 Любую часть оператора M, которая перекрывает оператор R, Удаление означающий задержку, связанную с ожиданием ответа компьютера, перекрывающи учитывать не следует. х операторов M
  • 6. Минусы На практике указанные значения могут варьироваться в широких пределах. • Рассчитана для опытных пользователей. • Не учитывает контекст использования. • Не учитывает ошибки. • Не учитывает физические ограничения. • Субъективная оценка специалистом.
  • 7. Плюсы Хорошо подходит, когда не нужна точная величины времени. • Быстро. • Легко сравнить 2 интерфейса. • Можно рассчитать.
  • 8. Все модели Сравнение различных моделей описано в книге John, Bonnie E. «Why GOMS?» или «Using GOMS for User Interface Design and Evalution: Which Technique?» • Card, Moran and Newell GOMS (CMN- GOMS • Cognitive Perceptual Model (CPM) • Keystroke-level Model (KLM) • Natural GOMS Language (NGOMSL)
  • 9. Пример расчета Рассчитаем время перевода валюты в существующем интерфейсе конвертора BelSwissBank Возьмем сценарий конвертации валют из долларов в белорусские рубли.
  • 10. Пример расчета С использование «Enter»: H+M+P+K+H+M+K+M+K+K+K+K+ M+K=8,7 с С использованием мыши: H+M+P+K+H+M+K+M+K+K+K+K+ H+M+P+K=10,2 c
  • 11. Пример расчета NEW Рассчитаем время перевода валюты в новом интерфейсе конвертора BelSwissBank Сценарий конвертации валют из долларов в белорусские рубли.
  • 13. Задание Небольшое задание по модели GOMS. Результаты напишу в комментариях позже. Посчитайте, сколько займет времени получить результат конвертации белорусских в доллары в существующем и новом интерфейсе.
  • 14. Вопросы Спасибо за внимание! Евгений Гуринович, руководитель отдела юзабилити и UX ARTOX media @GurinovichEvgen gurinovich.evgen@gmail.com @uxbelarus facebook.com/UXBelarus