Students on this course will already have been introduced to the notation of Task Action Grammar. As a reminder, here is a small example. This is for entering data into a table.
Primitive actions:
"BACK-TAB", "TAB", MOUSE-point, MOUSE-click and
TYPE %... means the user types the thing after the%.Feature types:
Unit: number, name Cell: to-left, to-right, to-above, to-below Edge: right, left, noneRule schemas:
AR1 Add[Unit = name] := TYPE %name AR2 Add[Unit = number] := TYPE %number LR1 Locate[Cell = to-left, Edge = right/none] := "BACK-TAB" LR2 Locate[Cell = to-right, Edge = left/none] := "TAB" LR3 Locate[Cell = any, Edge = any] := Denote DR1 Denote := MOUSE-point + MOUSE-click
Apply the CDs to TAG. Consider viscosity, for example - how much work is required if another feature is to be added? Are there any hidden dependencies? Is premature commitment involved? And so on.
Assume that the TAG is being created with the use of a simple word processor.