Bringing Design to Software
Selected quotes from
Terry Winograd (Editor).
Bringing Design to Software.
Addison-Wesley (ACM Press), 1996.
compiled by
Tom Verhoeff.
Reading these quotes is no substitute for reading the book.
In fact, I hope that these quotes will make you more interested in the material.
Preface
- p.v
-
Software is an ambiguous word.
...
Design is an ambiguous word.
Among its many meanings,
there runs a common thread,
linking the intent and activities of a designer to the results
that are produced when a designed object is experienced in practice.
...
In Bringing Design to Software,
our goal is to improve the practice of software design,
through thinking about design from a broader perspective ...
Introduction (by Terry Winograd)
- p.xv-xvi
-
The education of computer professionals has often concentrated on
the understanding of computational mechanisms, and on engineering
methods that seek to ensure that the mechanisms behave as the
programmer intends.
The focus is on the objects designed: the hardware and software.
The primary concern is to implement a specified functionality efficiently.
When software engineers or programmers say that a piece of software
works,
they typically mean that it is robust, is reliable, and meets its
functional specification.
These concerns are indeed important.
Any designer who ignores them does so at the risk of disaster.
But this inward-looking perspective,
with its focus on function and construction, is one-sided.
To design software that really works,
we need to move from a constructor's-eye view to a designer's-eye view,
taking the system, the users, and the context all together as a starting
point.
When a designer says that somethings works
(for example, a layout for a book cover or a design for a housing complex),
the term reflects a broader meaning.
Good design produces an object that works for people in a context of
values and needs, to produce quality results and a satisfying experience.
...
In this book, we emphasize software as a medium for the creation
of virtualities--the world in which a user of the software
perceives, acts, and responds to experiences.
- p. xvii
-
Software design is like architecture:
When an architect designs a home or an office building,
a structure is being specified.
More significantly, though, the patterns of life for its inhabitants
are being shaped.
People are thought of as inhabitants rather than as
users of buildings.
In this book,
we approach software users as inhabitants, focusing on how they live
in the spaces that designers create.
Chapter 1. A Software Design Manifesto (by Mitchell Kapor)
- p.3
-
Despite the enormous outward success of personal computers,
the daily experience of using computers far too often is still
fraught with difficulty, pain, and barriers for most people...
...
The lack of usability of software and the poor design of programs
are the secret shame of the industry.
- p.5
-
I would claim that software design needs to be recognized as a
profession in its own right,
a disciplinary peer to computer science and software engineering,
a first-class member of the family of computing disciplines.
One of the main reasons most computer software is so abysmal is
that it's not designed at all, but merely engineered.
Another reason is that implementors often place more emphasis
on a programs' internal construction than on its external design,
despite the fact that as much as 75 percent of the code in a
modern program deals with the interface to the user.
...
The overall design of a program is to be clearly distinghuished
from the design of its user interface.
- p.6
-
The software designer is concerned primarily with the overall
conception of the product.
Dan Bricklin's invention of the electronic spreadsheet is one
of the crowning achievements of software design.
It is the metaphor of the spreadsheet itself,
the tableau of rows and columns with their precisely interrelated
labels, numbers, and formulas--rather than the user interface
of VisiCalc--for which he will be remembered.
The look and feel of a product is but one part of its design.
...
If software design is to be a profession in its own right,
then there must be professional training that develops
the consciousness and skills central to the profession.
Profile 1. Software Design and Architecture
(by Terry Winograd and Philip Tabor)
- p.12
-
The tradition of teaching in architecture differs from that
of teaching in computing.
It is grounded in the study of concrete examples and in direct
engagement by students in a series of design projects.
- p.13
-
Kapor proposes a curriculum with courses such as the
History of the Word Processor...
Chapter 2. Design of the Conceptual Model
(interview with David Liddle)
- p.21
-
The most important component to design properly is ...
the user's conceptual model.
Everything else should be subordinated to making that model
clear, obvious, and substantial.
That is almost exactly the opposite of how most software is designed.
...
This [user's conceptual] model represents what the user is likely to think,
and how the user is likely to respond.
For example,
one of the events that changed civilization in the past decade
was Dan Bricklin's choice of the spreadsheet metaphor and
its underlying conceptual model...
Neither the information display
(limited by the machines that were available,
and by how much space his programs, VisiCalc, required),
nor the command invocation were great.
However, that conceptual model was exceptionally durable.
...
The purpose of computer metaphors, in general, and particularly of
graphical or icon-oriented ones, is to let people use recognition
rather than recall.
People are good at recognition, but tend to be poor at recall.
- p.29
-
[I] recommend ... that prototyping always precede any writing of code...,
provided you can make prototypes that are good enough for users to test.
If you cannot, then you can show the users screen views and other visual
representations, so at least you can start with thoroughly
specified user functionality.
The Role of the Artist-Designer (by Crampton Smith and Tabor)
- p.39
-
[T]he customary ... assumption,
that substance--the real thing--is separate from,
and is priviliged over, appearance, is misleading.
As far as the user is concerned, ... [t]he interface is the product.
- p.45
-
[C]losely related to the [mistaken] notion
that content and form are separable
is the myth that function and aesthetics are divisible.
...
Aesthetics ... are concerned with more than visual appearance.
There is delight in a program that is rigorously consistent,
elegantly clear and lean,
where sound and vision are perfectly at one,
or where the representation chosen neatly fits the ways
that users think about what they are doing.
These qualities cannot be added on at the end:
They are integral to the design and engineering of the product.
Reflection (by Terry Winograd)
- p.297
-
[D]esign--of any kind--is not an activity that can be reduced to the
application of formalized methods, calculations, and standard
procedures.
...
Part of the complexity arises because software design draws on so many
other disciplines:
software engineering, software architecture, programming, human factors,
graphic information design, art and aesthetics, sound production,
psychology, and more.
...
What expertise do software designers need, then?
They need to be able to envision, to create and to develop
a representation of their vision that they can communicate.
They need to be able to speak the language of all people
involved in the enterprises addressed by software design:
the user, the programmer, the graphic designer, the database architect,
the marketing specialists, and all the rest.
They need to be able to understand each discipline well enough to know
when to involve relevant collaborators and how to incorporate the
contributions of experts from other disciplines into the software
design vision that they create.
- p.298
-
There are still questions about whether the most appropriate
training environment is in colleges and universities, in special
courses and institutes, or on the job.
- p.299
-
In every mature field of design,
standards of quality are a focus of attention,
even when they cannot be quantified and measured objectively.
...
In teaching programs,
experienced practitioners work with students in an ongoing round
of trial and critique, ...
For practicing designers,
assessment comes from their clients, and from their peers in the form
of design competitions and awards.