Introduction - What is Analysis?
User Interface Design is a well used
term and one that most of us believe we understand. User Task Analysis
is other widely used term and again one which most of us would claim
to comprehend. So what is User Interface Analysis and how does it
differ from the User Interface Design and User Task Analysis?
In any software development lifecycle
it is widely accepted that there must be a Requirement Phase, followed
by an Analysis and Design Phase, followed by a Development Phase,
followed by several Testing Phases. Actually Analysis and Design
are usually advocated as two separate stages but the working reality
is that they are effectively one stage. Why should we need this
division of Analysis from Design?
Analysis is essentially the understanding
and refinement of the requirement and the documenting of such in
a clear and logical fashion from which a Design can be developed.
A Design for software is essentially the adoption of the analysis
and the adaption of it to the technology available for implementation.
It is possible to have a single Analysis of a Problem Domain but
a separate Design for say a C++ based implementation and a Java
based implementation. Design is generally influenced by the technology
to be used and is adapted to that technology, thus it is difficult
to re-use a design across varying technologies. The Analysis, however,
can be re-used to produce a suite of designs. It makes sense, therefore,
to separate Analysis from Design.
So User Interface Analysis is about understanding
and refining the detail of the Problem Domain and documenting it
in a design independent fashion. The Analysis is technology independent.
It can later be used to produce a design which is technology specific.
Why use analysis strategies?
What are analysis strategies? Analysis
strategies are tools that the User Interface Designer needs in order
to bring some repeatability to the process of analysing a system
requirement and identifying the key design ideas which will formulate
the shape, behaviour and information displayed by a finished product.
How great it feels when you complete
a design, and it's elegant, it works well, Users like it and it
looks good too. How often has this happened and next time, you've
failed to produce such a good result? What was the difference? Perhaps
you had that "Eureka" moment on the first one, and something
similar just didn't happen next time around. Designers block? Maybe!
Wouldn't it be nice to have some methods
at hand which can be employed to facilitate the "Eureka"
experience more often - to help you produce that optimal, elegant,
functional, and aesthetic design, again and again? How can you put
some predictability behind your creativity?
Behavioural psychologist Mihaly Csikszentmihalyi
described the process of creative thinking in his recent book, "Creativity
- Flow and the psychology of discovery and invention". A simpler
treatment of the subject was given in another recent book, "How
to get ideas?" by Jack Foster. The essence of the issue is
that the creative person must first assimilate as much as there
is to know about the problem domain, then allow a gestation period
and often the "Eureka" moment arrives. Something creative
happens. Its more than simply luck.
The possibility of Good Fortune
happens when preparation meets opportunity.
As a User Interface Designer, you have
to give yourself the possibility to have the good fortune of a "Eureka"
moment, to produce a great design. This article on Analysis Strategies
describes how I currently work to partition up and better understand
a Domain, in order to facilitate the creative process. Over the
years I have developed and refined these techniques. I was finally
persuaded to write them down by my current boss, Jeff
De Luca, who has been an inspiration and spur to the completion
of this work.
I do this strategy analysis both alone
and in teams, working with Domain experts, Developers and Users.
The team working process is the subject for another article ( scheduled
for UIDesign April edition ).
What I am looking for from the Analysis
Strategies process, is enough understanding in order to piece together
the outline shape at different levels within the UI, and enough
understanding of the required behaviour to test out the acceptability
of the shape.
I hope that these Analysis Strategies
will be part of greater work which will help lift User Interface
Design from the realms of "Black Magic" into a well understood
discipline. The mission statement for uidesign.net .
This work on Strategies for UI Design
has been inspired by similar work done by Peter Coad in the sphere
of Object Modelling. This is documented in his book, Object Models
- Strategies, Patterns and Applications, Peter Coad, North, Mayfield
2nd Ed., Yourdon Press, Prentice Hall, 1997.
How to use Strategies
The strategies presented in parts 2,
3 and 4 are designed to be used in sequence as the output from each
one builds up and provides input for subsequent strategies. However,
it will quickly become evident to the reader that not all strategies
will apply or have relevance to every application or domain area.
So the reader is encouraged to pick and choose - to select strategies
which seem relevant to the domain, the target audience and the target
system.
Strategies are designed to flesh out
the information required to select the appropriate User Interface
layout (shape) and the behaviour, navigation and interaction which
make up the feel of the interface. They would not normally be used
in isolation. They would be employed as part of the whole UI Design
process.
How Analysis Strategies are used with
UI Design Patterns as part of the larger UI Design process will
be covered in other papers over the coming months.
| Dave's Demon
Distribution Co. - An example system |
|
Throughout this paper, we will
refer to a fictitious distribution company and its requirement
for a simple sales order processing system.
The system will provide a product catalogue with a number
of products (goods). The customer should be able to place
an order over the phone and have that order dispatched from
the warehouse to his delivery address. The bill should be
sent to his billing address.
There are several system users. These are salesman, sales
clerks, credit clerks, sales manager, chief accountant, warehouse
clerk, warehouse manager.
The goal for the system is to facilitate the business of the
company and each User's Job Function, whilst eliminating the
use of paper and improving process quality and traceability.
We will shorten the name to DDD Co. for brevity.
|
|