L8 Flashcards
Why might a system be complex?
Domain complexity
users of the system may undertake many different tasks
because task outcomes are not well defined (e.g. wicked problems)
because the combined behaviour of individual parts makes the overall system operation too complex to anticipate
because the system will continue operating when the user is not there to observe it (i.e. programming)
What limitations are encountered when we try to apply classical HCI methods based in first wave HCI (such as CW and KLM/GOMS) to interaction spaces?
CW and KLM/GOMS assume that a user has a well defined goal, and that it is possible to define a task involving a predictable sequence of actions,
This kind of TASK BASED design can be contrasted with the design of INTERACTION SPACES in which users select and configure components
What is an interaction space. Give examples
Interaction space is a UI where users select and configure components
Programming languages, APIs, AI systems, data analytic services, or computed-aided design tools
What is death by detail?
Design of an interactive space requires a broad brush analysis technique, because attempts to describe the individual tasks and specific actions would result in a DEATH BY DETAIL resulting from a combinatorial explosion of possible tasks and potentially relevant domain elements
Rather than describing specific actions that the user will carry out using an interface, broad brush techniques aim to describe interaction at a level of analytical distance from the interface
It is necessary to find an analytical frame that structures the description of an interaction, so that it can then be compared to some ideal characterisation of the application domain in terms of desirable interaction patterns offering a critical perspective
Canonical example of a broad brush analysis technique is CDNs
What steps are involved in performing CD analysis of an interaction space (= information structure + notation)
get to know your system
decide what the user will be doing with the notation
choose some representative tasks
for each step in each task, ask whether the user can choose where to start; how a mistake will be corrected; what if there are second thoughts; what abstractions are being used; etc. for the other domains. This will generate an observed profile
Compare the observed profile with the ideal profile for that type of activity
What is a CDs profile?
When users interact with content, there are a limited number of activities that they can engage in, when considered with respect to the way the structure of the content might change. A CDs evaluation must consider which classes of activity will be the primary type of interaction for all representative system users. If the needs of different users have different relative priorities, those activities can be emphasised when design trade-offs are selected as a CDs profile.
What are some generic activities that can be performed using an interaction space
incrementation: adding formulas to a spreadsheet
transcription: converting a formula into spreadsheet or code terms
modification: changing the layout of a spreadsheet or modifying it for a different problem
exploratory design: designing software, other cases where the final product cannot be envisaged and has to be discovered
searching: hunting for a known target such as where a function is called
exploratory understanding: discovering structure or algorithm, or discovering the basis of classification
collaboration
What is search and what CDs are important
finding information by navigating through the content structure using the facilities provided by he environment e.g. finding a specific value in a spreadsheet
The notation is not changing at all though the parts of it that the users see will vary
Visibility and hidden dependencies can be important factors in search
What is incrementation and what CDs are important
Adding further content without altering the structure in any way (e.g. adding a new formula to a spreadsheet). If the structure will not change, then viscosity is not going to be very important.
creates new information
there may be problems with premature commitment
What is modification and what CDs are important
Changing an existing structure, possibly without adding new content (e.g. changing a spreadsheet for use with a different problem).
What is transcription and what CDs are important
Copying content from one structure or notation to another notation (e.g. reading an equation out of a textbook, and converting it into a spreadsheet formula).
No new information being created so premature commitment not a problem
Nothing being altered so viscosity not a problem
To preserve consistency of treatment from instance to instance, visibility may be required (otherwise the transcribed copy will be missing crucial hidden state).
What is exploratory design and what CDs are important
Combining incrementation and modification, with the further characteristic that the desired end state is not known in advance (e.g. programming a spreadsheet on the fly or “hacking”). Viscosity can make this kind of activity far more difficult. This is why good languages for hacking may not be strictly typed, or make greater use of type inference, as maintaining type declarations causes greater viscosity. Loosely typed languages are more likely to suffer from hidden dependencies (a trade-off with viscosity), but this is not such a problem for exploratory design, where the programmer can often hold this information in his head during the relatively short development timescale.
Designers continually make changes at many levels from detailed tweaks to fundamental rebuilding so
Viscosity as low as possible
Premature commitment needs to be reduced
Visibility must be high
Role expressiveness – understanding what the entities do – must be high
What is collaboration and what CDs are important
If the main purpose of the notation is to be shared or discussed with other people, the design considerations can be very different to those necessary for working by yourself.
What are the four components of a notational system
an interaction language or notation
an environment for editing the notation
a medium of interaction
possibly two kinds of sub-devices: helper devices which offer a new notational view, redefinition defies e.g. macro recorders
Explain how to use CD analysis
Vocabulary for design discussion
Many dimensions reflect common usability factors that experienced designers might have noticed but did not have a name for
Giving them a name allows designers to discuss these factors easily
CDs are based on the observation that there is no perfect user interface any more than na perfect programming language
Any user interface design reflects a set of design tradeoffs that the designers have had tom
Giving designers a discussion vocabulary means that they can discuss the trade-offs that result from their design decisions
The nature of the tradeoffs is reflected in the structure of the dimensions
It is not possible to create a design that has perfect characteristics in every dimensions, making improvements along one dimension often results in degradation along another