2. GROUP MEMBERS
Name Class ID
Fabiha Fahrin Medha 1773
Md Atiqul Islam 1796
S.M Siddikur Rahman 1898
3. Choosing
position
What is Linguistic Models
The user’s interaction with a
computer is often viewed in terms of
a language. And linguistic model
works by analyzing the language
interaction between the human and
the computer.
Positioning of
mouse
Right clicking
mouse
4. Types of Linguistic Models
TAG
Task Action Grammar
Linguistic Models
BNF
Backus-Naur Form
5. BNF
Representative of the linguistic approach is Reisner’s use of Backus–Naur Form
(BNF) rules to describe the dialog grammar.
Purely Syntactic level, ignores semantic level.
Represents the user’s actions, not the user’s perception of the system’s
responses.
Breaking down BNF through example
select-line ::=position-mouse + CLICK-MOUSE
Name of the
function
Terminals
Lowest level of user behavior
Non-Terminals
Higher level abstractions
6. BNF
select-line ::= empty | position-mouse + CLICK-MOUSE
non-
terminal
Is
defined
as
choice sequence terminal
Rule
7. Analyzing BNF with Examples
If a graphics system that has a line-drawing
function, that line-drawing function allows the user
to draw a polyline, that is a sequence of line arcs
between points.
o draw-line ::= select-line + choose-points+ last-
point
o select-line ::= position-mouse + CLICK-MOUSE
o choose-points ::= choose-one| choose-one +
choose-points
o choose-one ::= position-mouse + CLICK-MOUSE
o last-point ::= position-mouse + DOUBLE-CLICK-
MOUSE
o position-mouse ::= empty | MOVE-MOUSE +
position-mouse
10. Variants of BNF
Extended BNF
Expresses repetitions directly.
Includes quotes around terminal strings.
Includes mechanism for enhancements
11. Advantages of BNF
High human readability.
Ease of adaptability.
Easy to maintain.
12. Disadvantages of BNF
Repetition has to be expressed by a recursive definition.
Options and alternatives require auxiliary definitions.
Cannot define its own syntax.
Often becomes complex for large interfaces.
13. Who Uses BNF?
YACC(Yet Another Compiler-Compiler)
A computer program for the Unix operating system.
Definitions of markup languages such as XML. (HTML does not
have a grammar).
GOLD
A freeware parsing system.
Other parser generators for JAVA(Parser Objects),
Python(Wormhole).
14. TAG(Task–Action Grammar)
Task-action grammar (TAG), a formal model of the mental
representation of task languages.
It makes predictions about the relative learnability of different command
language structures.
Can be applied to:
-Command line interface.
-Graphical User Interface
16. TAG Example
A graphics system has a line-drawing function. To select the function the
user must select the ‘line’ menu option and choose the type of line to
draw. The line-drawing function allows for several types of lines to be
drawn. For example: to draw a polyline which is a sequence of line arcs
between points. The user selects the points by clicking the mouse
button in the drawing area. The user double clicks to indicate the last
point of the polyline. See example to the right of a polyline. The BNF
(Backus-Nuer-Form) definition of this process at a high level is
presented below.
draw-line ::= select-line + choose-point | choose-point + last-point.
Assume that the above menu is visible and accessible. From this
starting point, develop a TAG which describes a grammar for this
process.
17. Advantages of TAG
Interaction is consistent.
User will use the same set of actions to perform all tasks.
Time complexity will be reduced.
18. Disadvantages of TAG
Physically it is difficult to double click a line ending and have it located at
the correct spot.
Alternative is to click down for start, and release at end.
–Problem is polyline which requires several clicks
Microsoft's solution is to have different lines drawn different ways.
–Not consistent but practical given the physical constraints.
Editor's Notes
NOTE:
To change the image on this slide, select the picture and delete it. Then click the Pictures icon in the placeholder to insert your own image.