2. 1. Guidance for User-Interface Architecture
1.1. Design Space & Rules
1.1.1. The Utility of Codified Knowledge
1.1.2. The Notion of Design Space
1.2. A Design space for User Interface Architecture
1.2.1. A Basic Structural Model
1.2.2. Sample functional Dimensions
1.2.3. Sample Structural Dimensions
1.3. Design Rules for User-Interface Architecture
1.3.1. Sample Rules
1.4. Applying the Design Space
1.5. A Validation Experiment
1.6. How the Design Space was prepared
3. 1.1. Design Spaces and Rules
Alternate for system designer by constructing a
design space.
Formulate design rules that indicates good and bad
combination of choices
For s/w engineers – day –to-day practice
Need not to be perfect or best possible.
So the rules should be complete, reliable .
4. 1.1.2. The Utility of Codified Knowledge
Software design knowledge in a useful form.
Developing vocabulary of well-understood , reusable
design concepts and patterns.
Benefits of Vocabulary : aids in creating design, helps
to understand or predicting the properties of a design
by offering a context for the creation and application
of knowledge, reduces the effort needed to
understand another person’s design by reducing the
number of new concepts to be learned.
6. 1.2. A Design space for User Interface Architecture
User Interface Management systems(UIMS), graphic
packages, UI tool kits, window managers, stand alone
applns.,
U I into 3 components:
1.2.1. Basic Structural Model:
1. An application specific component : codes
2. A shared user interface: codes and I/O devices
specific
3. A device-dependent component: specific code to
particular I/O devices
8. 1.2.2. Sample Functional Dimensions
Functional Dimensions fall into 3 categories
1. External requirements: applications, users, I/O
devices, constraints
2. Basic Interactive behavior: key decisions about
UI behavior which influence internal structure.
3. Practical considerations: covers development
cost considerations , adaptability of the system
9. External requirements
3 alternatives:
No external events, Process events while waiting for
input, External events preempt user commands.
3 levels of user customizability:
High : add, redefine commands
Medium : modify but without affecting UI
Low: no user customizability is required.
10. User-interface adaptability across devices depends on the expected
range of I/O devices .
Dimension indicates the extent of change in user interface behavior
when changing I/O devices
None, Local Behavior changes, Global behavior changes,
Application semantics changes, Computer system organization,
Uniprocessing, Multiprocessing, Distributed processing
11. Basic Interactive Behavior
Basic interface class identifies the basic kind of interaction
supported by the user-interface system.
Menu selection: Alternatives.
Form Filling: Entry of values
Command Language: Symbolic language, procedure
definition
Natural language: Human language-English, Resolution to
ambiguous input.
Direct Manipulation: Graphs manipulation, Incremental
12. Practical Consideration
Application portability across user interface
styles….
3 level degrees to which application-specific code is
insulated from user interface style changes.
High: Portable across significantly different styles
Medium: Independent of minor variations
Low: User interface variability is not a concern, or
application changes are acceptable when modifying
13. Design Rules for User interface Architecture
( Functional to structural dimensions)
Event Handling – Preemptive, Non Preemptive control thread
mechanism – Response time
User customizability
User interface adaptability – user interface code or application
code
Event based communication( Distributed system) or state
based communication (Shared memory).
Direct manipulation – no form filling and menus.
Extensible managers and toolkits are favored.
Hybrid communication – is normally tuned to particular
14. Design Rules for User interface Architecture
(Interconnecting structural dimensions)
Choice of notations
Implicit representation is usually sufficient
Toolkit system include implicit and internal
declarative notations
Interaction managers of all types use external and/or
internal declarative notations.
Extensible interaction managers rely heavily on
procedural notations, particularly internal procedural
notation, since customization is often done by