cognitive models Morten Fjeld HCI Course, Spring term 2006 chapter 12 Cognitive models Common assumptions about the architecture of the human mind

Size: px
Start display at page:

Download "cognitive models Morten Fjeld HCI Course, Spring term 2006 chapter 12 Cognitive models Common assumptions about the architecture of the human mind"

Transcription

1 Cognitive models chapter 12 cognitive models 1/42 They model aspects of user: understanding knowledge intentions processing Common categorisation: Competence: What users ideally should do versus Performance: What users actually do 2/42 Common assumptions about the architecture of the human mind Long-term/Short-term memory Problem spaces Interacting Cognitive Subsystems Connectionist Cognitive models 1 Goal and task hierarchies (GOMS, CCT) 2 Linguistic notations (BNF, TAG) 3 Physical and device models (KLM) 4 Automating Inspection Methods (Common assumptions from above are not necessary here) 3/42 4/42 1 Goal and task hierarchies (GOMS, CCT) Granularity Where exactly do we start? Where exactly do we stop? Routine learned behaviour, not problem solving The unit task Conflict More than one way to achieve a goal Error 5/ Goals, Operators, Methods and Selection (GOMS) Goals what the user wants to achieve Operators basic actions user performs Methods decomposition of a goal into subgoals/operators Selection means of choosing between competing methods 6/42 1

2 GOMS example 1.2 Cognitive Complexity Theory (CCT) GOAL: CLOSE-WINDOW. [select GOAL: USE-MENU-METHOD. MOVE-MOUSE-TO-FILE-MENU. PULL-DOWN-FILE-MENU. CLICK-OVER-CLOSE-OPTION GOAL: USE-CTRL-W-METHOD. PRESS-CONTROL-W-KEYS] For a particular user: Rule 1: Select USE-MENU-METHOD unless another rule applies Rule 2: If the application is GAME, select CTRL-W-METHOD 7/42 Two descriptions: User production rules Form: if condition then action (Device generalised transition networks) Example Cognitive model of editing with vi 8/42 CCT example: editing with vi CCT example: editing with vi Why many users like the vi-editor: Vi is available on many platforms; very important for system administrators because they often work on different systems You don't need X or mouse for high efficiency Vi is compact, fully developed, and runs on *any* Unix-system Vi supports syntax highlighting Vi is very well configurable 9/42 10/42 Four rules to model inserting a space Active rules: SELECT-INSERT-SPACE INSERT-SPACE-MOVE-FIRST INSERT-SPACE-DOIT INSERT-SPACE-DONE SELECT-INSERT-SPACE matches current working memory New working memory (GOAL insert space) (NOTE executing insert space) (LINE 5) (COLUMN 23) 2 Linguistic notations Understanding the user's behaviour and cognitive difficulty based on analysis of language between user and system. Similar in emphasis to dialogue models Example Backus Naur Form (BNF) (SELECT-INSERT-SPACE IF (AND (TEST-GOAL perform unit task) (TEST-TEXT task is insert space) (NOT (TEST-GOAL insert space)) (NOT (TEST-NOTE executing insert space))) THEN ( (ADD-GOAL insert space) (ADD-NOTE executing insert space) (LOOK-TEXT task is 11/42 at %LINE %COLUMN))) 12/42 2

3 2.1 Backus-Naur Form (BNF) Very common notation from computer science A purely syntactic view of the dialogue Terminals lowest level of user behaviour e.g. CLICK-MOUSE, MOVE-MOUSE Nonterminals ordering of terminals higher level of abstraction e.g. select-menu, position-mouse Example of BNF Basic syntax: nonterminal ::= expression An expression contains terminals and nonterminals combined in sequence (+) or as alternatives ( ) draw line ::= select line + choose points + last point select line ::= pos mouse + CLICK MOUSE choose points ::= choose one choose one + choose points choose one ::= pos mouse + CLICK MOUSE last point ::= pos mouse + DBL CLICK MOUSE pos mouse ::= NULL MOVE MOUSE+ pos mouse 13/42 14/42 Measurements with BNF Number of rules (not so good) Number of + and operators Complications same syntax for different semantics no reflection of user's perception minimal consistency checking 15/42 Backus-Naur Form (BNF), example Consider this BNF for a US postal address <postal-address> ::= <name-part> <street-address> <zip-part> <personal-part> ::= <name> <initial> ". <name-part> ::= <personal-part> <last-name> [<jr-part>] <EOL> <personal-part> <name-part> <street-address> ::= [<apt>] <house-num> <street-name> <EOL> <zip-part> ::= <town-name> "," <state-code> <ZIP-code> <EOL> 16/42 Backus-Naur Form (BNF), example <postal-address> ::= <name-part> <street-address> <zip-part> <personal-part> ::= <name> <initial> ". <name-part> ::= <personal-part> <last-name> [<jr-part>] <EOL> <personal-part> <name-part>... This translates into English as "A postal-address consists of a name-part, followed by a street-address part, followed by a zip-code part. A personal-part consists of either a first name or an initial followed by a dot. A name-part consists of either: a personal-part followed by a last name followed by an optional "jr-part" (Jr., Sr., or dynastic number) and end-of-line, or a personal part followed by a name part (recursion in BNFs, covering the case of people who use multiple first and middle names and/or initials). 17/42 Backus-Naur Form (BNF), example... continued: <street-address> ::= [<apt>] <house-num> <street-name> <EOL> <zip-part> ::= <town-name> "," <state-code> <ZIP-code> <EOL> This translates into English as (continued) A street address consists of an optional apartment specifier, followed by a street number, followed by a street name. A zip-part consists of a town-name, followed by a comma, followed by a state code, followed by a ZIP-code followed by an end-of-line." 18/42 3

4 Short exercise 1) Describe a Swedish bank account in text. A Swedish bank account description consist of." 2) Then translate the text into Backus-Naur Form (BNF). Short exercise ENGLISH SWEDISH Bank Name Bankens namn t.ex. Nordea Bank Address Bankens Address Bank City Stad Bank Zip Code Postnummer Bank Country land Bank Phone tel nr. till banken Name on Bank Account Kontos ägare namn Account Number kontonummer Bank Routing No. sorteringskod för banken Check No. kontrollnummer Bank Swift Code Swift kod för banken, 8 el 11 tecken sök på banken eller swifts nätsidor Bank IBAN Code kontonummer i IBANform fås från banken 19/42 20/42 Apropos: Backus-Naur Form (BNF) examples comes from Foldoc 3 Physical and device models The Keystroke Level Model (KLM) Buxton's 3-state model FOLDOC is a searchable dictionary of acronyms, jargon, programming languages, tools, architecture, operating systems, networking, theory, conventions, standards, mathematics, telecoms, electronics, institutions, companies, projects, products, history, in fact anything to do with computing. Based on empirical knowledge of human motor system User's task: acquisition then execution. these only address execution Complementary with goal hierarchies 21/42 22/ Keystroke Level Model (KLM) six execution phase operators Physical motor: K - keystroking P - pointing (use Fitt s Law) H - homing D - drawing Mental M - mental preparation System R -response times are empirically determined. T execute = TK + TP + TH + TD + TM + TR 23/42 Fitt s Law for ann Estimation of Pointing Time T = a + b log2(d/s + 1) D: Distance to target S: Size of target a, b: Empirically estimated constants Original form of Fitt s Law, 1954, without a constant: T = log2(2a/w) 24/42 4

5 Fitt s Law, example 1: Fitt s Law, example 2: Demo application intro page Demo application program Width 40, Height 37 time = 0.0 Width 29, Height 22 time =? Width 63, Height 92 time =? 25/42 26/42 Keystroke Level Model (KLM) 1. Move hand to mouse H[mouse] 2. Position mouse after bad character PB[LEFT] 3. Return to keyboard H[keyboard] 4. Delete character MK[DELETE] 5. Type correction K[char] 6. Reposition insertion point H[mouse]MPB[LEFT] KLM example GOAL: ICONISE-WINDOW [select GOAL: USE-CLOSE-METHOD. MOVE-MOUSE-TO- FILE-MENU. PULL-DOWN-FILE-MENU. CLICK-OVER-CLOSE-OPTION GOAL: USE-CTRL-W-METHOD PRESS-CONTROL-W-KEY] compare alternatives: USE-CTRL-W-METHOD vs. USE-CLOSE-METHOD assume hand starts on mouse USE-CTRL-W-METHOD H[to kbd] 0.40 K[ctrlW key] 0.28 Total 2.03 s USE-CLOSE-METHOD P[to menu] 1.1 B[LEFT down] 0.1 P[to option] 1.1 B[LEFT up] 0.1 Total 3.75 s 27/42 28/42 Exercise: Apply KLM Scenario: -- train ride ends, the user wants to delete all desk-top icons starting with T (temporary). -- Find and delete all icons starting with T -- Two conditions: Pad and Pin Exercise: -- Establish a KLM Model aiming to compare Pad and Pin -- Is clutching an issue for this task? Regarding Train Ride Scenario Touch & Type 29/42 USE-PAD-METHOD USE-PIN-METHOD P[to menu] 1.1 H[to kbd] 0.40 B[LEFT down] 0.1 K[ctrlW key] 0.28 P[to option] 1.1 B[LEFT up] 0.1 Total z.x s Total x.y s 30/42 Fallot-Burghardt, Fjeld, Ziegenspeck, Speirs, Läubli ETH Zurich and FBZS Interface h l 5

6 Typing mode Touch mode Typing mode: both hands type on the keyboard Mouse mode: left hand starts mouse mode by touching the mouse buttons, right hand steers mouse pointer by gliding over the keys (keys are not depressed) 31/42 32/42 Isometric Rate Control vs. Elastic Position Control 6DOF Input Devices SpaceCat Martin Sundin (Ph.D. 2001) Morten Fjeld (discussions & advice) ZIP and IHA, ETH Zurich SpaceBall Space Mouse SpaceCat 33/42 34/42 Product Docking Task 35/42 36/42 6

7 3.2 Buxton's 3-state model Mouse vs. light-pen transitions 3.2 Buxton's 3-state model 37/42 38/ Buxton's 3-state model 4: Automating Inspection Methods -- Analysis Support Web UIs 39/42 40/42 4: Automating Inspection Methods -- Analysis Support Web UIs 4: Automating Inspection Methods But also for what pilots do 41/42 42/42 7

cognitive models for GUI design

cognitive models for GUI design cognitive models for GUI design Ch. 15.4 (pp. 706-717 ) 1/56 Alternative Models Mental model Cognitive model Conceptual model 2/56 Cognitive models They model aspects of user: understanding knowledge intentions

More information

cognitive models chapter 12 Cognitive models Cognitive models Goal and task hierarchies goals vs. tasks Issues for goal hierarchies

cognitive models chapter 12 Cognitive models Cognitive models Goal and task hierarchies goals vs. tasks Issues for goal hierarchies Cognitive models chapter 12 cognitive models goal and task hierarchies linguistic physical and device architectural Cognitive models They model aspects of user: understanding knowledge intentions processing

More information

11/17/2008. CSG 170 Round 8. Prof. Timothy Bickmore. Quiz. Open book / Open notes 15 minutes

11/17/2008. CSG 170 Round 8. Prof. Timothy Bickmore. Quiz. Open book / Open notes 15 minutes Human-Computer Interaction CSG 170 Round 8 Prof. Timothy Bickmore Quiz Open book / Open notes 15 minutes 1 Paper Prototyping Team Project Review Models 2 Categories of User Models 1. Hierarchical structuring

More information

Looking Back: Fitts Law

Looking Back: Fitts Law Looking Back: Fitts Law Predicts movement time for rapid, aimed pointing tasks One of the few stable observations in HCI Index of Difficulty: How to get a and b for a specific device / interaction technique

More information

Recall Butlers-Based Design

Recall Butlers-Based Design Input Performance 1 Recall Butlers-Based Design Respect physical and mental effort Physical Treat clicks as sacred Remember where they put things Remember what they told you Stick with a mode Mental also

More information

SEM / YEAR: VIII/ IV QUESTION BANK SUBJECT: CS6008 HUMAN COMPUTER INTERACTION

SEM / YEAR: VIII/ IV QUESTION BANK SUBJECT: CS6008 HUMAN COMPUTER INTERACTION QUESTION BANK SUBJECT: CS600 HUMAN COMPUTER INTERACTION SEM / YEAR: VIII/ IV UNIT I - FOUNDATIONS OF HCI The Human: I/O channels Memory Reasoning and problem solving; The computer: Devices Memory processing

More information

Analytical Evaluation

Analytical Evaluation Analytical Evaluation November 7, 2016 1 Questions? 2 Overview of Today s Lecture Analytical Evaluation Inspections Performance modelling 3 Analytical Evaluations Evaluations without involving users 4

More information

CSE 12 Abstract Syntax Trees

CSE 12 Abstract Syntax Trees CSE 12 Abstract Syntax Trees Compilers and Interpreters Parse Trees and Abstract Syntax Trees (AST's) Creating and Evaluating AST's The Table ADT and Symbol Tables 16 Using Algorithms and Data Structures

More information

Theories of User Interface Design

Theories of User Interface Design Theories of User Interface Design High-Level Theories Foley and van Dam four-level approach GOMS Goals, Operators, Methods, and Selection Rules Conceptual level: Foley and van Dam User's mental model of

More information

cs414 principles of user interface design, implementation and evaluation

cs414 principles of user interface design, implementation and evaluation cs414 principles of user interface design, implementation and evaluation Karrie Karahalios, Eric Gilbert 30 March 2007 Reaction Time and Motor Skills Predictive Models Hick s Law KLM Fitts Law Descriptive

More information

GOMS. Adapted from Berkeley Guir & Caitlin Kelleher

GOMS. Adapted from Berkeley Guir & Caitlin Kelleher GOMS Adapted from Berkeley Guir & Caitlin Kelleher 1 GOMS Goals what the user wants to do Operators actions performed to reach the goal Methods sequences of operators that accomplish a goal Selection Rules

More information

GOMS Lorin Hochstein October 2002

GOMS Lorin Hochstein October 2002 Overview GOMS Lorin Hochstein lorin@cs.umd.edu October 2002 GOMS is a modeling technique (more specifically, a family of modeling techniques) that analyzes the user complexity of interactive systems. It

More information

Overview of Today s Lecture. Analytical Evaluation / Usability Testing. ex: find a book at Amazon.ca via search

Overview of Today s Lecture. Analytical Evaluation / Usability Testing. ex: find a book at Amazon.ca via search Overview of Today s Lecture Analytical Evaluation / Usability Testing November 17, 2017 Analytical Evaluation Inspections Recapping cognitive walkthrough Heuristic evaluation Performance modelling 1 2

More information

This book is licensed under a Creative Commons Attribution 3.0 License

This book is licensed under a Creative Commons Attribution 3.0 License 6. Syntax Learning objectives: syntax and semantics syntax diagrams and EBNF describe context-free grammars terminal and nonterminal symbols productions definition of EBNF by itself parse tree grammars

More information

Input Performance. KLM, Fitts Law, Pointing Interaction Techniques. Input Performance 1

Input Performance. KLM, Fitts Law, Pointing Interaction Techniques. Input Performance 1 Input Performance KLM, Fitts Law, Pointing Interaction Techniques Input Performance 1 Input Performance Models You re designing an interface and would like to: - choose between candidate designs without

More information

Chapter 7: Interaction Design Models

Chapter 7: Interaction Design Models Chapter 7: Interaction Design Models The Resonant Interface HCI Foundations for Interaction Design First Edition by Steven Heim Chapter 7 Interaction Design Models Model Human Processor (MHP) Keyboard

More information

Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática. Models for design

Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática. Models for design Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática Models for design Human-Computer Interaction Beatriz Sousa Santos, 2016/2017 All engineering fields use models: To evaluate

More information

Programming Language Definition. Regular Expressions

Programming Language Definition. Regular Expressions Programming Language Definition Syntax To describe what its programs look like Specified using regular expressions and context-free grammars Semantics To describe what its programs mean Specified using

More information

Why? Usability analysis and inspection. Evaluation. Evaluation. Measuring usability. Evaluating usability

Why? Usability analysis and inspection. Evaluation. Evaluation. Measuring usability. Evaluating usability Usability analysis and inspection Why and how? Iterative design Prototyping Measuring usability Why? Objective/subjective feedback Quick and dirty Slow and clean With or without users 1MD113 Evaluation

More information

Usability analysis and inspection

Usability analysis and inspection Usability analysis and inspection Why and how? 1MD113 Why? Iterative design Prototyping Measuring usability Objective/subjective feedback Quick and dirty Slow and clean With or without users 1 Evaluation

More information

CSCE 314 Programming Languages

CSCE 314 Programming Languages CSCE 314 Programming Languages Syntactic Analysis Dr. Hyunyoung Lee 1 What Is a Programming Language? Language = syntax + semantics The syntax of a language is concerned with the form of a program: how

More information

Introduction to Telelogic Tau SDL Suite

Introduction to Telelogic Tau SDL Suite Introduction to Telelogic Tau SDL Suite 200109 Copyright by Telelogic AB 1991-2001 This publication contains course materials and examples of applications of the Program and is owned by Telelogic and is

More information

flex is not a bad tool to use for doing modest text transformations and for programs that collect statistics on input.

flex is not a bad tool to use for doing modest text transformations and for programs that collect statistics on input. flex is not a bad tool to use for doing modest text transformations and for programs that collect statistics on input. More often than not, though, you ll want to use flex to generate a scanner that divides

More information

Usability. CSE 331 Spring Slides originally from Robert Miller

Usability. CSE 331 Spring Slides originally from Robert Miller Usability CSE 331 Spring 2010 Slides originally from Robert Miller 1 User Interface Hall of Shame Source: Interface Hall of Shame 2 User Interface Hall of Shame Source: Interface Hall of Shame 3 Redesigning

More information

Input. Managing text and positional input

Input. Managing text and positional input Input Managing text and positional input ipod Wheel Macbook Wheel (The Onion) http://www.youtube.com/watch?v=9bnlbv6qyca Classifying Computer Input Sensing Method mechanical (e.g., switch, potentiometer)

More information

VELAMMAL COLLEGE OF ENGINEERING AND TECHNOLOGY, MADURAI DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

VELAMMAL COLLEGE OF ENGINEERING AND TECHNOLOGY, MADURAI DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING VELAMMAL COLLEGE OF ENGINEERING AND TECHNOLOGY, MADURAI-625 009 DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING Academic Year : 2017-18 (EVEN) Batch : 2014-18 Branch : CSE Year/ Semester/ Section : IV/

More information

Programming Languages Third Edition

Programming Languages Third Edition Programming Languages Third Edition Chapter 12 Formal Semantics Objectives Become familiar with a sample small language for the purpose of semantic specification Understand operational semantics Understand

More information

Evaluation Types GOMS and KLM PRICPE. Evaluation 10/30/2013. Where we are in PRICPE: Analytical based on your head Empirical based on data

Evaluation Types GOMS and KLM PRICPE. Evaluation 10/30/2013. Where we are in PRICPE: Analytical based on your head Empirical based on data Evaluation Types GOMS and KLM PRICPE Where we are in PRICPE: Predispositions: Did this in Project Proposal. RI: Research was studying users. Hopefully led to Insights. CP: Concept and initial (very low-fi)

More information

Morten Fjeld HCI Course at IFI, UNI ZH, Fall 2008

Morten Fjeld HCI Course at IFI, UNI ZH, Fall 2008 Tangible and Tabletop UIs Pushing the edge of interactive technology... HCI Outlook: Tangible and Tabletop Interaction multiple degree-of-freedom (DOF) input Morten Fjeld Associate Professor Dept. of Computer

More information

Input Models. Jorge Garza & Janet Johnson COGS 230 / CSE 216

Input Models. Jorge Garza & Janet Johnson COGS 230 / CSE 216 Input Models Jorge Garza & Janet Johnson COGS 230 / CSE 216 User Technology: From Pointing to Pondering Stu Card Thomas Moran User technology and Pointing devices Understand The Personal part of personal

More information

Section 3 Formatting

Section 3 Formatting Section 3 Formatting ECDL 5.0 Section 3 Formatting By the end of this Section you should be able to: Apply Formatting, Text Effects and Bullets Use Undo and Redo Change Alignment and Spacing Use Cut, Copy

More information

Double Click issues. UPDD assisted double click setting

Double Click issues. UPDD assisted double click setting Double clicking on a touch screen relies on double click related settings set to a tolerance that allows a touch screen to be used to generate the double click. In most cases it is likely the double click

More information

Models for design. Human-Computer Interaction Beatriz Sousa Santos, 2017/18

Models for design. Human-Computer Interaction Beatriz Sousa Santos, 2017/18 Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática Models for design Human-Computer Interaction Beatriz Sousa Santos, 2017/18 All engineering fields use models: To evaluate

More information

- visibility. - efficiency

- visibility. - efficiency Lecture 18: Predictive Evaluation Spring 2008 6.831 User Interface Design and Implementation 1 UI Hall of Fame or Shame? Spring 2008 6.831 User Interface Design and Implementation 2 From Daniel Gutierrez:

More information

Exercises Software Development I. 02 Algorithm Testing & Language Description Manual inspection, test plan, grammar, metasyntax notations (BNF, EBNF)

Exercises Software Development I. 02 Algorithm Testing & Language Description Manual inspection, test plan, grammar, metasyntax notations (BNF, EBNF) Exercises Software Development I 02 Algorithm Testing & Language Description Manual inspection, test plan, grammar, metasyntax notations (BNF, EBNF) October 15th, 2014 Software Development I Winter term

More information

CS6008-HUMAN COMPUTER INTERACTION Question Bank

CS6008-HUMAN COMPUTER INTERACTION Question Bank CS6008-HUMAN COMPUTER INTERACTION Question Bank UNIT I FOUNDATIONS OF HCI PART A 1. What is HCI? 2. Who is involved in HCI. 3. What are the 5 major senses? 4. List the parts of human Eye. 5. What is meant

More information

Identifying Hierarchical Structure in Sequences. Sean Whalen

Identifying Hierarchical Structure in Sequences. Sean Whalen Identifying Hierarchical Structure in Sequences Sean Whalen 07.19.06 1 Review of Grammars 2 Syntax vs Semantics Syntax - the pattern of sentences in a language CS - the rules governing the formation of

More information

F453 Module 7: Programming Techniques. 7.2: Methods for defining syntax

F453 Module 7: Programming Techniques. 7.2: Methods for defining syntax 7.2: Methods for defining syntax 2 What this module is about In this module we discuss: explain how functions, procedures and their related variables may be used to develop a program in a structured way,

More information

Defining syntax using CFGs

Defining syntax using CFGs Defining syntax using CFGs Roadmap Last time Defined context-free grammar This time CFGs for specifying a language s syntax Language membership List grammars Resolving ambiguity CFG Review G = (N,Σ,P,S)

More information

Metrics Tutorial. Table of Contents. 1. Introduction

Metrics Tutorial. Table of Contents. 1. Introduction Metrics Tutorial Table of Contents 1. Introduction 2. The Set-Up Editor 3. The Project File Manager 4. Data Windows 5. Plot Windows 6. Exporting and Importing Data 7. Linking Metrics and Excel 1. Introduction

More information

MASTERS IN ATMOSPHERIC SCIENCE AND BIOGEOCHEMICAL CYCLES

MASTERS IN ATMOSPHERIC SCIENCE AND BIOGEOCHEMICAL CYCLES HOW TO APPLY FOR: MASTERS IN ATMOSPHERIC SCIENCE AND BIOGEOCHEMICAL CYCLES USING THE SWEDISH ONLINE APPLICATION LINK 1. Go to the online link: www.antagning.se 2. Click on Logga in (eller skapa konto)

More information

Household Information (Portal)

Household Information (Portal) Household Information (Portal) Updating Household Information Updating Household Phone Number Updating Household Address PATH: Campus Portal > Family This tab lists the household phone number and all current

More information

Building Compilers with Phoenix

Building Compilers with Phoenix Building Compilers with Phoenix Syntax-Directed Translation Structure of a Compiler Character Stream Intermediate Representation Lexical Analyzer Machine-Independent Optimizer token stream Intermediate

More information

Using the Keystroke-Level Model to Estimate Execution Times

Using the Keystroke-Level Model to Estimate Execution Times Using the Keystroke-Level Model to Estimate Execution Times David Kieras University of Michigan David Kieras, 2001 Introduction The Keystroke-Level Model (KLM), proposed by Card, Moran, & Newell (1983),

More information

Input Techniques. CS376 6 May 2008

Input Techniques. CS376 6 May 2008 Input Techniques CS376 6 May 2008 Sites to Visit http://mrl.nyu.edu/projects/quikwriting/ Quikwrite2.html http://www.dontclick.it/ Explore > The Button Lab Explore > The Experiments Explore > The MouseCamp

More information

NADAR SARASWATHI COLLEGE OF ENGINEERING & TECHNOLOGY

NADAR SARASWATHI COLLEGE OF ENGINEERING & TECHNOLOGY NADAR SARASWATHI COLLEGE OF ENGINEERING & TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING EIGHTH SEMESTER QUESTION BANK CS6008 -HUMAN COMPUTER INTERACTION UNIT I FOUNDATIONS OF HCI The Human:

More information

Predictive Model Examples. Keystroke-Level Model (KLM) 1 2

Predictive Model Examples. Keystroke-Level Model (KLM) 1 2 Predictive Model Examples Linear prediction equation Fitts law Choice reaction time Keystroke-level model (KLM) Skill acquisition More than one predictor 62 Keystroke-Level Model (KLM) 1 2 One of the earliest

More information

Theory and Compiling COMP360

Theory and Compiling COMP360 Theory and Compiling COMP360 It has been said that man is a rational animal. All my life I have been searching for evidence which could support this. Bertrand Russell Reading Read sections 2.1 3.2 in the

More information

Black Box Testing (revisited) Csci 565 Spring 2007

Black Box Testing (revisited) Csci 565 Spring 2007 Black Box Testing (revisited) Csci 565 Spring 2007 Objectives Cause-Effect Graphs in Functional testing Input validation and Syntax-driven Testing Decision Table-Based Testing State transition testing

More information

AdmiCash conversion to ISO / SEPA

AdmiCash conversion to ISO / SEPA AdmiCash conversion to ISO 20022 / SEPA This document contains all the information necessary to convert AdmiCash to ISO 20022 / Sepa. Read the document carefully and follow the steps in the order described.

More information

Programming Lecture 3

Programming Lecture 3 Programming Lecture 3 Expressions (Chapter 3) Primitive types Aside: Context Free Grammars Constants, variables Identifiers Variable declarations Arithmetic expressions Operator precedence Assignment statements

More information

Starting the QGIS Program. Exercise 1: Exploring QGIS

Starting the QGIS Program. Exercise 1: Exploring QGIS Exercise 1: Exploring QGIS In this exercise you will learn how to open maps, manipulate layers, add spatial data, change symbols, and navigate within QGIS. You will also learn to repair broken data links.

More information

Patient Registration

Patient Registration Patient Registration Adding a Patient Adding a new patient through SequelMed can be accomplished through just a few steps: Defining the Patient Attaching a Plan (optional) Attaching Documents (optional)

More information

Theoretical Part. Chapter one:- - What are the Phases of compiler? Answer:

Theoretical Part. Chapter one:- - What are the Phases of compiler? Answer: Theoretical Part Chapter one:- - What are the Phases of compiler? Six phases Scanner Parser Semantic Analyzer Source code optimizer Code generator Target Code Optimizer Three auxiliary components Literal

More information

Compiler Construction Using

Compiler Construction Using Compiler Construction Using Java, JavaCC, and Yacc ANTHONY J. DOS REIS Stale University ofnew York at New Pallz IEEE computer society WILEY A JOHN WILEY & SONS, INC., PUBLICATION Preface xv Chapter 1 Strings,

More information

CMPT Data and Program Organization

CMPT Data and Program Organization CMPT-201 - Data and Program Organization Professor: Bill Havens Office: APSC-10828 Lectures: MWF 2:30pm - 3:20pm Venue: C-9002 WWW: http://www.cs.sfu.ca/coursecentral/201 Office Hours: Monday @3:30pm January

More information

Creating Postcards in Microsoft Publisher

Creating Postcards in Microsoft Publisher Creating Postcards in Microsoft Publisher Open Publisher either from the desktop or through the Start menu. Once Publisher opens, select Postcards from the menu on the right hand side of the screen. Scroll

More information

The Substitution Model

The Substitution Model The Substitution Model Prof. Clarkson Fall 2017 Today s music: Substitute by The Who Review Previously in 3110: simple interpreter for expression language abstract syntax tree (AST) evaluation based on

More information

Chapter 2 Conceptual Modeling. Objectives

Chapter 2 Conceptual Modeling. Objectives Chapter 2 Conceptual Modeling Basic Entity Relationship Diagrams 1 Objectives Definition of terms Importance of data modeling Write good names and definitions for entities, relationships, and attributes

More information

Chapter 3. Describing Syntax and Semantics

Chapter 3. Describing Syntax and Semantics Chapter 3 Describing Syntax and Semantics Chapter 3 Topics Introduction The General Problem of Describing Syntax Formal Methods of Describing Syntax Attribute Grammars Describing the Meanings of Programs:

More information

SchoolDesk University

SchoolDesk University SchoolDesk University Forms, Surveys, and Polls Module 101 Guided Walk-through for the basic fields, terminology, and location of tools. What is the NEW SD7 Forms Module? The NEW SchoolDesk Forms Module,

More information

Syntax. In Text: Chapter 3

Syntax. In Text: Chapter 3 Syntax In Text: Chapter 3 1 Outline Syntax: Recognizer vs. generator BNF EBNF Chapter 3: Syntax and Semantics 2 Basic Definitions Syntax the form or structure of the expressions, statements, and program

More information

UNIT II Requirements Analysis and Specification & Software Design

UNIT II Requirements Analysis and Specification & Software Design UNIT II Requirements Analysis and Specification & Software Design Requirements Analysis and Specification Many projects fail: because they start implementing the system: without determining whether they

More information

What is Emcee? Actions in Thumbnail View Starting Emcee and Activating the Thumbnail View... 5

What is Emcee? Actions in Thumbnail View Starting Emcee and Activating the Thumbnail View... 5 USING THE DESKTOP ORGANIZER Multi-monitor support. Touch, Keyboard or Mouse Control. Windows 10, Windows 8 and Windows 7. Compatible with TaskView and virtual desktops. Free evaluation trial period before

More information

Analytical evaluation

Analytical evaluation Chapter 15 Analytical evaluation 1 Aims: Describe the key concepts associated with inspection methods. Explain how to do heuristic evaluation and walkthroughs. Explain the role of analytics in evaluation.

More information

Syntax/semantics. Program <> program execution Compiler/interpreter Syntax Grammars Syntax diagrams Automata/State Machines Scanning/Parsing

Syntax/semantics. Program <> program execution Compiler/interpreter Syntax Grammars Syntax diagrams Automata/State Machines Scanning/Parsing Syntax/semantics Program program execution Compiler/interpreter Syntax Grammars Syntax diagrams Automata/State Machines Scanning/Parsing Meta-models 8/27/10 1 Program program execution Syntax Semantics

More information

Run Specifi by clicking on the icon on your Desktop.

Run Specifi by clicking on the icon on your Desktop. Run Specifi by clicking on the icon on your Desktop. Note: If you are using a demo version, once the program is loaded, a message will tell you the remaining days of the evaluation period. The main screen

More information

Homework & Announcements

Homework & Announcements Homework & nnouncements New schedule on line. Reading: Chapter 18 Homework: Exercises at end Due: 11/1 Copyright c 2002 2017 UMaine School of Computing and Information S 1 / 25 COS 140: Foundations of

More information

I N T E R F A C E S I N T E R F A C E S

I N T E R F A C E S I N T E R F A C E S INTERFACES 2 Welcome and Contents Claro Interfaces Welcome to Claro Interfaces Claro Interfaces Ltd. develops software specifically for users who have problems accessing the computer. Offering alternative

More information

Program Development Tools. Lexical Analyzers. Lexical Analysis Terms. Attributes for Tokens

Program Development Tools. Lexical Analyzers. Lexical Analysis Terms. Attributes for Tokens Program Development Tools lex makefiles vi and gvim ctags source level debugging diff and cmp Lexical Analyzers A lexical analyzer reads in a stream of characters as input and produces a sequence of symbols

More information

Formal Semantics. Prof. Clarkson Fall Today s music: Down to Earth by Peter Gabriel from the WALL-E soundtrack

Formal Semantics. Prof. Clarkson Fall Today s music: Down to Earth by Peter Gabriel from the WALL-E soundtrack Formal Semantics Prof. Clarkson Fall 2015 Today s music: Down to Earth by Peter Gabriel from the WALL-E soundtrack Review Previously in 3110: simple interpreter for expression language: abstract syntax

More information

ISO9241 Part 9. What is ISO

ISO9241 Part 9. What is ISO ISO9241 Part 9 I. Scott MacKenzie York University 1 What is ISO 9241-9 ISO 9241 Ergonomic design of visual display terminals (VDTs) used for office work Seventeen parts Part 9: Requirements for non-keyboard

More information

EDAN65: Compilers, Lecture 04 Grammar transformations: Eliminating ambiguities, adapting to LL parsing. Görel Hedin Revised:

EDAN65: Compilers, Lecture 04 Grammar transformations: Eliminating ambiguities, adapting to LL parsing. Görel Hedin Revised: EDAN65: Compilers, Lecture 04 Grammar transformations: Eliminating ambiguities, adapting to LL parsing Görel Hedin Revised: 2017-09-04 This lecture Regular expressions Context-free grammar Attribute grammar

More information

The Substitution Model. Nate Foster Spring 2018

The Substitution Model. Nate Foster Spring 2018 The Substitution Model Nate Foster Spring 2018 Review Previously in 3110: simple interpreter for expression language abstract syntax tree (AST) evaluation based on single steps parser and lexer (in lab)

More information

COLLEGE OF ENGINEERING, NASHIK. LANGUAGE TRANSLATOR

COLLEGE OF ENGINEERING, NASHIK. LANGUAGE TRANSLATOR Pune Vidyarthi Griha s COLLEGE OF ENGINEERING, NASHIK. LANGUAGE TRANSLATOR By Prof. Anand N. Gharu (Assistant Professor) PVGCOE Computer Dept.. 22nd Jan 2018 CONTENTS :- 1. Role of lexical analysis 2.

More information

Model-view-controller. An architecture for UI

Model-view-controller. An architecture for UI Model-view-controller An architecture for UI 1 The flow of information (idealized) Flow of information 0 Event 1 Changes Controller 3 Pixels O S Application Model View 2 State 2003 T. S. Norvell Engineering

More information

Lexical Scanning COMP360

Lexical Scanning COMP360 Lexical Scanning COMP360 Captain, we re being scanned. Spock Reading Read sections 2.1 3.2 in the textbook Regular Expression and FSA Assignment A new assignment has been posted on Blackboard It is due

More information

SIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road QUESTION BANK (DESCRIPTIVE) UNIT I Introduction

SIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road QUESTION BANK (DESCRIPTIVE) UNIT I Introduction UNIT I Introduction 1 a) Define HCI. What is the importance of good design? b) Write a brief history of screen design. 2 a) Write the chronological history of the Internet. b) What are the benefits of

More information

CSE 311 Lecture 21: Context-Free Grammars. Emina Torlak and Kevin Zatloukal

CSE 311 Lecture 21: Context-Free Grammars. Emina Torlak and Kevin Zatloukal CSE 311 Lecture 21: Context-Free Grammars Emina Torlak and Kevin Zatloukal 1 Topics Regular expressions A brief review of Lecture 20. Context-free grammars Syntax, semantics, and examples. 2 Regular expressions

More information

Last time. What are compilers? Phases of a compiler. Scanner. Parser. Semantic Routines. Optimizer. Code Generation. Sunday, August 29, 2010

Last time. What are compilers? Phases of a compiler. Scanner. Parser. Semantic Routines. Optimizer. Code Generation. Sunday, August 29, 2010 Last time Source code Scanner Tokens Parser What are compilers? Phases of a compiler Syntax tree Semantic Routines IR Optimizer IR Code Generation Executable Extra: Front-end vs. Back-end Scanner + Parser

More information

Embedded Systems. Problem 1: Getting started with STATEFLOW. Starting STATEFLOW

Embedded Systems. Problem 1: Getting started with STATEFLOW. Starting STATEFLOW Prof. Bernd Finkbeiner, Ph.D. Winter term 2008/2009 Dipl.-Inf. Rüdiger Ehlers Problem Set 2 Dipl.-Inf.Hans-Jörg Peter Due: Thursday,6 th November 2008 Michael Gerke, B.Sc. Embedded Systems STATEFLOW is

More information

2 Introduction to operational semantics

2 Introduction to operational semantics 2 Introduction to operational semantics This chapter presents the syntax of a programming language, IMP, a small language of while programs. IMP is called an "imperative" language because program execution

More information

Consider a description of arithmetic. It includes two equations that define the structural types of digit and operator:

Consider a description of arithmetic. It includes two equations that define the structural types of digit and operator: Syntax A programming language consists of syntax, semantics, and pragmatics. We formalize syntax first, because only syntactically correct programs have semantics. A syntax definition of a language lists

More information

Designing the User Interface

Designing the User Interface Designing the User Interface Strategies for Effective Human-Computer Interaction Second Edition Ben Shneiderman The University of Maryland Addison-Wesley Publishing Company Reading, Massachusetts Menlo

More information

Power Editing: Hoxie Ackerman. April 1, Building a Productive Editing Environment for Yourself

Power Editing: Hoxie Ackerman. April 1, Building a Productive Editing Environment for Yourself : Building a Productive Editing Environment for Yourself Hoxie Ackerman UC Berkeley Department of Statistics Student Productivity Seminar April 1, 2011 Goals of This Talk Goals of This Talk 1 Spark interest

More information

ICT IGCSE Theory Revision Presentation 2.1 Input devices and their uses

ICT IGCSE Theory Revision Presentation 2.1 Input devices and their uses ICT IGCSE Theory Revision Presentation The key concepts covered in this chapter are: >> Input devices and their uses >> Direct data entry and associated devices >> Output devices and their uses Identify

More information

COSC252: Programming Languages: Semantic Specification. Jeremy Bolton, PhD Adjunct Professor

COSC252: Programming Languages: Semantic Specification. Jeremy Bolton, PhD Adjunct Professor COSC252: Programming Languages: Semantic Specification Jeremy Bolton, PhD Adjunct Professor Outline I. What happens after syntactic analysis (parsing)? II. Attribute Grammars: bridging the gap III. Semantic

More information

Principles of Programming Languages COMP251: Syntax and Grammars

Principles of Programming Languages COMP251: Syntax and Grammars Principles of Programming Languages COMP251: Syntax and Grammars Prof. Dekai Wu Department of Computer Science and Engineering The Hong Kong University of Science and Technology Hong Kong, China Fall 2007

More information

UNIVERSITY OF MALTA THE MATRICULATION CERTIFICATE EXAMINATION ADVANCED LEVEL. COMPUTING May 2011 MARKING SCHEME

UNIVERSITY OF MALTA THE MATRICULATION CERTIFICATE EXAMINATION ADVANCED LEVEL. COMPUTING May 2011 MARKING SCHEME UNIVERSITY OF MALTA THE MATRICULATION CERTIFICATE EXAMINATION ADVANCED LEVEL COMPUTING May 2011 MARKING SCHEME MATRICULATION AND SECONDARY EDUCATION CERTIFICATE EXAMINATIONS BOARD PAPER I 1. XW + XZ =

More information

DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF TORONTO CSC318S THE DESIGN OF INTERACTIVE COMPUTATIONAL MEDIA. Lecture Feb.

DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF TORONTO CSC318S THE DESIGN OF INTERACTIVE COMPUTATIONAL MEDIA. Lecture Feb. DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF TORONTO CSC318S THE DESIGN OF INTERACTIVE COMPUTATIONAL MEDIA Lecture 10 11 Feb. 1998 INTERACTIVE DIALOGUE STYLES AND TECHNIQUES 1 10.1 A model of interactive

More information

Principles of Programming Languages COMP251: Syntax and Grammars

Principles of Programming Languages COMP251: Syntax and Grammars Principles of Programming Languages COMP251: Syntax and Grammars Prof. Dekai Wu Department of Computer Science and Engineering The Hong Kong University of Science and Technology Hong Kong, China Fall 2006

More information

Mobile Designer Enter your company name

Mobile Designer Enter your company name Mobile Designer Note: To change the product logo for your own print manual or PDF, click "Tools > Manual Designer" and modify the print manual template. Title page 1 Use this page to introduce the product

More information

Lecture 10 Parsing 10.1

Lecture 10 Parsing 10.1 10.1 The next two lectures cover parsing. To parse a sentence in a formal language is to break it down into its syntactic components. Parsing is one of the most basic functions every compiler carries out,

More information

Computer Fundamentals

Computer Fundamentals Computer Fundamentals 1 Draw the block diagram of computer architecture and explain each block. Computer is made up of mainly four components, 1) Central processing unit (CPU) 2) Input section 3) Output

More information

Visual Layout of Graph-Like Models

Visual Layout of Graph-Like Models Visual Layout of Graph-Like Models Tarek Sharbak MhdTarek.Sharbak@uantwerpen.be Abstract The modeling of complex software systems has been growing significantly in the last years, and it is proving to

More information

MICROSOFT POWERPOINT 2016 Quick Reference Guide

MICROSOFT POWERPOINT 2016 Quick Reference Guide MICROSOFT POWERPOINT 2016 Quick Reference Guide PowerPoint What is it? What s new in PowerPoint 2016? PowerPoint is a computer program that allows you to create, edit and produce slide show presentations.

More information

Programming Languages

Programming Languages Programming Languages As difficult to discuss rationally as religion or politics. Prone to extreme statements devoid of data. Examples: "It is practically impossible to teach good programming to students

More information

Interaction design. The process of interaction design. Requirements. Data gathering. Interpretation and data analysis. Conceptual design.

Interaction design. The process of interaction design. Requirements. Data gathering. Interpretation and data analysis. Conceptual design. Interaction design The process of interaction design Requirements Data gathering Interpretation and data analysis Conceptual design Prototyping Physical design Introduction We have looked at ways to gather

More information

Usability Testing. November 9, 2016

Usability Testing. November 9, 2016 Usability Testing November 9, 2016 Announcements Milestone III Average: 77/90 (86%) Most marks lost for not following instructions (e.g. missing sections) 2 Questions? 3 Today More analytical evaluation

More information

User Interface Evaluation

User Interface Evaluation User Interface Evaluation Cognitive Walkthrough Lecture #16 Agenda Evaluation through Expert Analysis Cognitive walkthrough Heuristic evaluation Model-based evaluation Cognitive dimension of notations

More information