From: kling@ics.uci.edu (Rob Kling)
Subject: Re:  Paradigms of Computer Science (was: Are computer "scientists" really scientists? (was: Are programmers Computer Scientists?))
In-reply-to: Your message of Tue, 08 Sep 92 04:51:56 +0000.
             <1992Sep8.045156.6935@m.cs.uiuc.edu>
Newsgroups: comp.edu
Date: 9 Sep 92 04:04:42 GMT


Hi .. I agree with your observation ... the distinction between
usability and computability as distinct traditions in CS is pretty
fundamental ... This is a paper   which explores that distinction.

/Rob Kling
----------------

                    USABILITY VERSUS COMPUTABILITY:
                 SOCIAL ANALYSES BY COMPUTER SCIENTISTS

                               Rob Kling
             Department of Information and Computer Science
                   University of California - Irvine
                            Irvine, Ca 92717

                              714-856-5955
                        email:kling@ics.uci.edu

        Based on a presentation at IFIP'89 -- San Francisco, CA
                             (August 1989)

                       Draft 4C-2 -- August 1991


INTRODUCTION

Computer specialists' views of the relationship of the social
order in which they live and work to computerization are very
important. They permeate professional discussions about what
should be computerized, which parties' interests merit attention,
how computerization should proceed, what will be the consequences
-- good and bad -- of different approaches. Computer specialists
do not agree on these matters. In fact, they hold several
different views of the relationship of the social order  to
computerization.

Computer scientists are one important group of computer
specialists. They have a specially important role in developing
advanced computer technologies, in educating a large fraction of
computer specialists in universities, and in acting as
spokespeople about computing matters within elite scientific
circles. Their perspectives shape curricula and public discourse
about what should be computerized and how. I will briefly sketch
five perspectives about the relationship of society to
computerization which are held by computer scientists.



USABILITY VERSUS COMPUTABILITY

The main topic of this paper is a characterization of five
different perspectives which computer specialists hold about the
relationship of the social order in which they live and work to
computerization.  These perspectives differ in a key dimension
that underlies many key debates about the nature of computer
science research and education -- computability versus usability.
The computability tradition in computer science examines the
capabilities and efficiencies of computer-based systems in
mathematical terms. The theories of computation anchored in
automata theory and theories of algorithmic complexity are the
cornerstones of this tradition. In contrast, the usability
tradition is concerned with understanding and developing
computer-based systems which gracefully fit into and support (or
transform) human activity in various social settings. This line
of inquiry is represented in computer science by human factors
studies of computer systems, concerns for reducing the social
risks of computer-based systems, etc. The primary underlying
theories derive from the social sciences rather than from
mathematics.

This dimension -- computability versus usability -- does not
absorb all lines of research and teaching in computer science.
Nor is it intended to. Studies of novel computer architectures,
programming environments, and artificial intelligence, for
example, sometimes emphasize neither computability nor usability
criteria. But they are often focussed on developing novel
technologies which expand the range of activities that can be
readily done with computer-based systems.

In practice, effective computer-based systems should be very
usable, although we have many examples of clumsy technologies
which are widely used (e.g., the vi editor in Unix, programming
languages such as COBOL, FORTRAN, and C, DBASE III, etc.). Since
people like responsive systems, the speed of interaction is one
critical dimension that facilitates the usability of computer-
based systems. For highly interactive tasks, like text editing
and conducting computer-based searches, swift response times can
make a system a pleasure to use. Very usable systems often rely
on fast algorithms for searching, sorting, managing screens, etc.
But people also relish other features of interfaces which are not
amenable to mathematical analysis such as coherent command sets,
harmonious colorful displays, and readily intelligible output
(Shneiderman, 1980; Shneiderman, 1987).

FIVE PERSPECTIVES

I've developed this set of five perspectives informally. It is
not the result of systematic reading of a specific body of
literature or an empirical analysis of beliefs held by a
particular group of computer specialists. Even so, I have some
confidence that these perspectives characterize important
assumptions and beliefs of many computer specialists. But the
list and characterizations should be read as provisional. I have
ordered these five perspectives by the richness of their views of
the social order -- from simplest to most complex.

Perspective #1: Computing is a mathematical and engineering
     venture with no deep social content

One commonplace view of computer science and engineering is
reflected in a recent report by the ACM Task Force on the  Core
of Computer Science. (Denning, et. al., 1989).

     Computer Science and Engineering is the systematic
     study of algorithmic processes -- their theory,
     analysis, design, efficiency, implementation and
     application -- that describe and transform information.
     The fundamental question underlying all of computing
     is, What can be (efficiently) automated? .... The roots
     of computing extend deeply into mathematics and
     engineering. Mathematics imparts analysis to the field;
     engineering imparts design (Denning, et. al. 1989).

In this view, computer science focusses primarily upon algorithms
rather than systems that anyone would actually use. It has no
explicit social content. The report suggests an interest in
implementations and applications -- and consequently the
usability of computer-based systems through its focus on
"engineering" as well as mathematics. But the only legitimate
analytical approaches are mathematical and hence, a-social. The
ACM Task Force's report is not completely consistent. For
example, it suggests that courses be offered in human-factors
studies without acknowledging that psychology (and perhaps
physiology), rather than mathematics, provide the analytical
underpinnings of these inquiries.

This view of computing is very commonplace among academic
computer scientists in the U.S., especially those with a
mathematical orientation. It shapes most computer science
curricula so that they ignore the social dimensions of
computerization. Consequently, tens of thousands of college
students graduate as computer science majors annually in the US.
without understanding the social assumptions about design or
development that they will make as practitioners.

The expansion of computing (and Computer Science) has depended
upon the improved usability of computer based systems base, not
simply their efficiency. The "micro revolution," for example, has
placed tens of millions of computers and terminals on the desks
of many managers, professionals and clerks in industrial
countries. Networking has made electronic mail accessible to
millions of managers and professionals. Whatever theories help
explain the expansion of computing applications, which ones work
well or badly (and in what terms), they are not fundamentally
mathematical studies of algorithms or systems optimization. This
perspective contributes important insights to "computing in the
laboratory." But it cannot readily help computer specialists
understand who computerizes, what it takes to computerize
effectively, and the consequences of different computerization
strategies in the larger world.

Perspective #2: Societies are Customers for a Cavalcade of
     Improved Technical Products

Many computer specialists expect continuous technological
progress. They focus on the improvements in discrete
technological innovations - whether they are novel technologies,
such as optical disks or hypertext, or incremental improvements
in more mature technologies such as databases.  This sensibility
is reflected in many technical and trade journals. It is visible
through special issues and articles devoted to the nuances of a
specific new technology without corresponding articles devoted to
examining the social meanings of these technologies, the ways
they are likely to be used, the social choices involved, etc..
This perspective is somewhat similar to Perspective #1 in
focussing on discrete artifacts. But its approach to evaluation
may include human factors and other psychological criteria for
refined systems engineering.

While specialists of this persuasion are often keenly aware of
the applications of computing technologies, they do not publish
coherent analyses of how they add up in concrete settings. To
take a simple example, a popular technically-oriented North
American microcomputing journal, Byte Magazine, publishes
hundreds of notes and articles each year about a variety of new
products and computing techniques. Each product is treated in
isolation, and in a way that encourages Byte's readers to desire
better technologies. These technologies are anchored in diverse
vendor worlds -- IBM, Apple, Atari, Sun, etc. But the best
technologies from each of these vendor worlds do not necessarily
add up into a well integrated and affordable computing world.
However, Byte's editors and writers do not examine how
participants in actual organizations work with and try to
integrate diverse technologies of varying age into workable
computing milieus.

Perspective #3: Computerization Can and Should Revolutionize
     Societies

Many organizations are adopting computing equipment much more
rapidly than they understand how to organize positive forms of
social life around it. However, some fervent advocates of
computerization see the actual pace of computerization in
schools, offices, factories, and homes slower than they wish.
These "computer revolutionaries" argue that many key institutions
-- such as schools, businesses, family life, public agencies --
can be progressively reformed through the appropriate application
of computer-based systems.

Computer revolutionaries make five key assumptions: (a) Computer-
based technologies are central for a reformed world; (b) Improved
computer-based technologies can further reform society (c) No one
loses from computerization; (d) More computing is better than
less, and there are no conceptual limits to the scope of
appropriate computerization; and (e) Perverse or undisciplined
people are the main barriers to social reform through computing
(Kling and Iacono, 1988). Computer revolutionaries see computer
technologies as essential  instruments for solving important and
previously intractable social problems (Feigenbaum and McCorduck,
1984; Papert, 1980; Yourdon, 1986). But they underplay the ways
in which the forms of computerization which they advocate can
also create significant problems.

Computer revolutionaries rely on an "undersocialized" conceptual
scheme which isolates computer use from key elements of social
life and ignores the details of computerization processes. They
help inspire readers to trust in a "computer revolution" made by
acquiring and using computer equipment under commonplace social
conditions.

It is too facile to simply characterize computer revolutionaries
as "optimistic." But they evaluate computer based systems
stripped out of the particular contexts in which people live with
them. The computer revolutionary discussions exaggerate the
social power of new computer technologies and their use by
simplifying the social conditions which make them attractive to
some participants, and the complexities and sluggishness of
institutional change. Computerization is a complex set of social
practices, not just the use of a computer system. Different
computerization strategies may better serve different social
interests and have different social consequences. The limits to
computerization may be set by a powerful array of
institutionalized social practices. Computer revolutionaries
usually ignore these important aspects of computerization because
they compromise the innocence, power, and purity of new
technologies and their advocates (Kling and Iacono, 1991).

The questions that underlie the claims of computer
revolutionaries are interesting and important. But I haven't
found good answers framed in the rhetoric of "computer
revolution." The best answers come from close empirical
observation of computer systems in use which suggests the real
possibilities, limitations, paradoxes and ironies of
computerization situated in identifiable social settings (see for
example, Kling, 1987; Kling, 1992).



Perspective #4: Professional Responsibility to Society is
     Essential.

Some computer specialists are specially concerned that computing
technologies should be "sound products." In this view the
computing professions should be responsible to their clients by
delivering practical systems which are usable, reliable, and
safe.

The main foci of attention have been to identify computer systems
which can be major threats to physical safety or civil life and
to identify discrete solutions to reduce these risks. Some forms
of computer technologies can be harmful because of unreliable
software (e.g., life-critical information systems; election
counting systems; social security payments; fly-by-wire aircraft;
military command and control systems.). Other kinds of computer
based systems threaten to diminish personal privacy. Both kinds
of threats have been the subject of a specialized topical
literature, the concern of organizations like Computer
Professionals for Social Responsibility, and special forums,
like the ACM sponsored "Risks" computer bulletin board.

In this perspective the primary reforms will come through
improved software quality and certain changes in organizational
practices (e.g., privacy protections; administrative guidelines
to insure safe software and data handling practices).

Perspective #5: Computerization is a Fundamentally Social Process

Computerization is a fundamentally social process for designing
and deploying technologies in social settings. A starting point
to appreciate this perspective is the observation that the
development and use of the vast majority of computer-based
systems is inherently social. Advancing the argument that some
technology should be developed or adopted are social acts which
usually make claims about how that technology will alter the
lives of people who use technologies or others in their orbit
(e.g., their clients, family members). Designers and developers
make important choices in identifying preferences
("requirements") for systems, setting priorities, and in
convincing people and organizations to alter their practices when
they adopt new technologies. Some aspects of computer systems
design are a form of social design, for many of the same reasons
that the design of buildings and streets is a kind of social
design, rather than only applied engineering or abstract artistic
work with steel, concrete, and glass. The design choices open
some social opportunities and close off others -- thereby shaping
social life.

The dominant explicit paradigms in academic computer science
focus on computability, rather than usability (Perspective #1).
They do not help technical professionals comprehend the social
complexities of computerization.  For example, the recent ACM
Task Force on the Core of Computer Science quoted above claims
that all the analyses of computer science are mathematical.  We
find this view much too narrow-minded to be helpful, and in fact
it does not withstand much scrutiny.  The lines of inquiry where
it might hold are those where mathematics can impart all the
necessary analysis. But there are whole subfields of computer
science -- such as artificial intelligence, computer-human
interaction, social impacts studies, and parts of software --
where mathematics cannot impart all the all the necessary
analysis.  The social sciences provide a complementary
theoretical base for studies of computing which examine or make
assumptions about human behavior.

In the classic Turing machine model of computability, there is no
significant difference between a modest microcomputer like an
Apple Macintosh SE and a supercomputer like a Cray YMP.  Of
course, these two machines differ substantially in their
computational speed and memory.  But the Mac SE, with software
designed to match its graphical interface, is a much more usable
computer for many small-scale tasks such as writing memos and
papers, graphing data sets of  500 data points, etc.
Unfortunately, the computability paradigm doesn't help us
understand a Mac's relative advantage over a Cray for tasks where
the ease of a person's interacting with software, rather than
sheer CPU speed or file size, is the critical issue.

This contrast between Macs and Crays is a small-scale machine-
centered example.  More significant examples can found whenever
one is trying to ask questions like: What should be computerized
for these particular people; How should computerization proceed;
Who should control system specifications, data, etc.?  These are
"usability" questions on a social scale.  Paradigms that focus on
the nature of social interaction provide much better insights for
designing computer systems in support of group work than does the
computability paradigm (Ehn, 1988; Ehn, 1989; Kling, 1989;
Winograd, 1988).

Mathematical analyses help us learn about the properties of
computer systems abstracted from any particular use, such as the
potential efficiency of an algorithm or the extent to which
computers can completely solve certain problems in principle
(e.g., the question of undecidability).  As long as a computer
scientist doesn't make claims about the value of any kind of
computer use, mathematical analyses might be adequate.  But most
computer scientists do make professional claims about how people
and organizations should computerize, although often informally
as members of committees and consultants. In fact, they often
recommend technologies which are either easy to use or which
represent some kind of technological advance (e.g., teaching
programming in Pascal, Ada, or C++ rather than Basic).

The advances in computer interface design which led to the Mac,
and other graphical user interfaces, rested on psychological
insights, rather than mathematical insights.  Similarly, advances
in programming languages, software development tools, and data-
base systems have come, in part, through analyses of what makes
technologies easier for people and organizations to use. While
some of these technologies have a mathematical base, their
fundamental justifications have been psychological and social.
Claims about how groups of people should use computers are social
and value-laden claims.

For example, suppose a computer scientist argues that
organizations should computerize by developing networks of
highperformance workstations, with one on every employee's desk.
This claim embodies key assumptions about good organizational
strategies, and implicitly rules out alternatives DD such as
having a large central computer connected to employees'
terminals, with a few microcomputers also available for those who
prefer to use micro-oriented software.  These two alternative
architectures for organizational computing raise important social
and political questions:  Who will get access to what kinds of
information and software?  What skill levels will be required to
use the systems?  How much money should be spent on each worker's
computing support?  How should resources and status be divided
within the organization? Who should control different aspects of
computerization projects? And so on.  The question here is one of
social and political organization, in addition to computer
organization.  Many computer scientists are keenly interested in
having advanced computer-based systems widely used, not just
studied as mathematical objects.  These hopes and related claims
rest on social analyses and theories of social behavior.

Mathematical frames of reference lead analysts to focus on
behavior that can be formalized and "optimal arrangements."
Concerns for optimality make most sense when the objective
functions of a group are known, and are consistent.  Social
analyses usually help analysts identify the ways that different
participants in a computerization project may have different
preferences for the way that computing technologies are woven
into social arrangements. Their "objective functions" may differ,
and even be incompatible, to the extent that people know what
they are.  Participants are most likely to have different
preferences when computerization projects are socially complex
and a project cuts across key social boundaries -- identified by
characteristics such as roles, occupational identity, reward
structures, culture, or ethnicity. We do not see social analyses
as panaceas. But they help identify the kinds of opportunities
and dilemmas participants will actually experience and respond to
in their daily lives.



CONCLUSION

I have briefly sketched five perspectives about the role of
social analysis in understanding key issues of computerization.
They range from Perspective #1 which emphasizes computability to
Perspective #5 which views computerization as an inherently
social venture. The computability perspective appears to be the
most "scientific" and "elegant" because it focuses on
mathematical analysis and a laboratory conception of engineering
design. It helps give computer scientists prestige by identifying
their analyses with mathematics ("queen of the sciences").
Unfortunately, it is  impotent in understanding many key aspects
of computerization in the world -- even basic questions, such as
what really makes computer-based systems effective, why computer-
based systems of different kinds have been adopted by different
kinds of organizations, and what have been the consequences of
their implementation.

The other four perspectives acknowledge that social choices play
a key role in understanding the value and problems of different
approaches to computerization. Perspective #2 (societies are
customers for a cavalcade of improved technical products)
captures much of the excitement of computerization, but ignores
most of the key social choices and dilemmas. Not every solution
can come in a cardboard box or shrink-wrapped package.
Perspective #3 (computerization can and should revolutionize
societies) places computerization on a large and dramatic social
stage. The key dilemma is that computer revolutionaries  tend to
fetishize equipment (like Perspective #2), to overestimate the
rate at which computer-based systems can act as catalysts for
social change, to ignore the extent to which key social choices
are linked to different forms of computerization, and to ignore
the potential problems of large scale, intensive computerization.

Perspective #4 focuses on identifying and minimizing the socially
harmful effects of specific kinds of computer-based systems.
Perspective #1 is socially isolated and non-responsible and
Perspective #2 is producer-oriented. Perspective #4
counterbalances these by being consumer oriented, socially
responsible, and focused on tractable problems. Perspective #5
goes beyond Perspective #4 by promising an analytical approach to
understanding the opportunities, choices, and dilemmas of
computerization. It relies on the social sciences rather than
mathematics for its analytical underpinnings.

The education of hundreds of thousands of computer science
students has been shaped by Perspective #1. They leave academic
computer science programs with some skills in designing software
systems  and programming them. They usually take courses in data
structures and algorithms in which they learn to appreciate and
carry out mathematical analyses of computer performance. But they
leave systematically ignorant of the ways in which social
analyses of computer systems provide comparably important
insights into the effectiveness of computing in the world. Many
segments of the computing community would much better understand
computerization and be able to play more responsible professional
roles by adopting a more fundamentally social view of the
process.

 REFERENCES

Denning, Peter J. et. al.
1989      Computing as a Discipline. CACM 31(1)(January 1989):9--
          23.

Dunlop, Charles & Kling, Rob (eds.).
1991      Computerization and Controversy: Value Conflicts and
          Social Choices. Boston, Ma. Academic Press,  Boston.

Ehn, Pelle.
1988      Work-Oriented Design of Computer Artifacts. Stockholm,
          Arbetslivcentrum.

Ehn, Pelle.
1989      The Art and Science of Designing Computer Artifacts."
          Scandinavian Journal of Information Systems, 1
          (August), pp. 21-42. Reprinted in Dunlop, Charles &
          Kling, Rob (eds.). 1991

Feigenbaum, Edward and Pamela McCorduck
1984      Fifth Generation: Artificial Intelligence and Japan's
          Computer Challenge to the World.  New York:  New
          American Library.

Kling, Rob
1980      Computer abuse and computer crime as organizational
          activities." Computers and Law Journal, 2(2), 403-427.
          Reprinted in Dunlop, Charles & Kling, Rob (eds.). 1991

Kling, Rob
1983      "Value conflicts in the deployment of computing
          applications: Cases in developed and developing
          countries." Telecommunications Policy,  (March), 12-34.
          Reprinted in Dunlop, Charles & Kling, Rob (eds.). 1991

Kling, Rob
1987      "Defining the boundaries of computing across complex
          organizations." Critical Issues in Information Systems.
          Richard Boland and Rudy Hirschheim (eds.) London, John
          Wiley.

Kling, Rob.
1992.     "Behind the Terminal: The Critical Role of Computing
          Infrastructure In Effective Information Systems'
          Development and Use." in  Challenges and Strategies for
          Research in Systems Development. William Cotterman and
          James Senn (Eds.) New York, John Wiley.

Kling, Rob and Suzanne Iacono
1984      "The control of information systems development after
          implementation." Communications of the ACM. (December)
          27(12), 1218-1226.

Kling, Rob and Suzanne Iacono
1988      "The mobilization of support  for computerization: The
          role of computerization movements." Social Problems 35
          (3), 236-243.

Kling, Rob & Suzanne Iacono.
1990      "Making the Computer Revolution" Journal of Computing
          and Society. 1(1). Reprinted in Dunlop, Charles &
          Kling, Rob (eds.). 1991

Kling, Rob and Scacchi, Walt
1982      "The web of computing: Computer technology as social
          organization." Advances in Computers, 21,  New York,
          Academic Press.

Laudon, Kenneth. C.
1986      Dossier Society:  Value Choices in the Design of
          National Information Systems. New York: Columbia
          University Press.

Papert, Seymour
1980      Mindstorms: Children, Computers and Powerful Ideas. New
          York: Basic Books.

Shneiderman, Ben.
1980      Software psychology: human factors in computer and
          information systems Cambridge, Mass.: Winthrop
          Publishers.

Shneiderman, Ben
1987      Designing the user interface: strategies for effective
          human-computer interaction. Reading, Mass.: Addison-
          Wesley.

Star, Leigh and Karen Wieckert
1989      The Central Tension in Computer Science. Unpublished
          ms. Deaprtment of Information and Computer Science,
          University of California, Irvine.

Winograd, Terry
1988      A Language/action Perspective on the Design of
          Cooperative Work,'' Human-Computer Interaction 3:1
          (1987--88), 3--30.   Reprinted in   Greif, Irene (Ed.),
          Computer-Supported Cooperative Work: A Book of
          Readings, San Mateo, California: Morgan-Kaufmann, 1988,
          623--653.

Yourdon, Edward
1986      Nations at Risk: The Impact of The Computer Revolution.
          New York, Yourdon Press.
Newsgroups: comp.edu,comp.lang.fortran,comp.lang.misc,comp.arch,sci.math