Information Technology Reference
In-Depth Information
code but also an analysis of existing operations, the reorganization of
procedures and personnel, the training of users, the construction of
peripheral support tools and technologies, and the production of new
manuals and other documents.
11
The concept of software encompassed
all of these meanings and more. It was not until the late 1960s
that software became a product that could be purchased separately
from a computer, and even then software as code represented only
a small component of a larger software system of services and support.
To this day, the vast majority of software is custom produced for
individual corporations in a process that resembles more the hiring
of a management consulting fi rm than the purchase of a mass-market
consumer good.
12
Although the idea of software is central to our modern conception of
the computer as a universal machine, defi ning exactly what software is
can be surprisingly diffi cult. It was not until more than a decade after
the development of the fi rst electronic computers that the statistician
John Tukey fi rst applied the word software to those elements of a typical
computer installation that were not obviously “tubes, transistors, wires,
tapes and the like.”
13
Although Tukey clearly intended these other ele-
ments to include primarily computer code, by defi ning software in strictly
negative terms—software was everything not explicitly understood to be
hardware—he left open the possibility of a broader understanding of
software that would quickly be adopted throughout the nascent comput-
ing community. For example, just a few years later the head of the newly
established University of Michigan Computing Center declared that soft-
ware was essentially everything associated with computing that wasn't
the computer: for the user of the center, “the total computing facility
provided for his use, other than the hardware, is the software.”
14
The
implication was that most users could not or did not distinguish between
the elements of the software system: tools, applications, personnel, and
procedures were all considered essential elements of the software experi-
ence.
15
By the end of the decade the term had been expanded even further
to include documentation, development methodologies, user training,
and consulting services.
16
In this broader conception of software, the true
complexity of software development as a human activity becomes appar-
ent. Unlike hardware, which is almost by defi nition a tangible thing that
can readily be isolated, identifi ed, and evaluated, software is inextricably
intertwined with the larger sociotechnical system of computing that
includes machines (computers and their associated peripherals), people
(users, designers, and developers), and processes (the corporate payroll