ARGELY as a rallying cry, the term software
engineering was coined in 1969 to name a NATO workshop on software
development. Since then many have criticized the use of the word
engineering to describe modern software production, since it
has so little in common with mature engineering disciplines. One mark
of a mature engineering discipline is separation of routine from
innovative design. In the beginning of an engineering discipline's
life, a few people with vision bring a new kind of product into the
world. In this period, every act of creation is a virtuosic
performance; every design is innovative. But as the field matures,
practioners gain experience, and building the product becomes more
routine, less costly, and less error-prone. Once the field is
established, most design work is routine, and ordinary practioners are
capable of doing it. These practioners innovate only when
For design practice to make the transition from innovative to routine, design knowledge must be captured, organized, and disseminated. Handbooks are a popular means of doing this. One example, Perry's Chemical Engineers' Handbook, is a tome several inches thick, filled with tables, diagrams, and schematics that cover topics from the basics of the metric system to the intricate innards of heat pumps. In the bulk of the text, noted practioners give useful, specific advice about the standard solutions to common design tasks.
The creator of the original engineering handbook was a first century BCE Roman architect, named Marcus Vitruvius Pollio. His De architectura libri decem (Ten books on architecture) carefully described existing practices, not only in the design and construction of buildings, but also in what are today thought of as engineering diciplines. His books include such varied topics as the manufacture of building materials and dyes (material science), machines for heating water for public baths (chemical engineering), amplification in ampitheaters (acoustics), and the design of roads and bridges (civil engineering). His writing is prescriptive and gives direct advice: "I have drawn up definite rules to enable you, by observing them, to have personal knowledge of the quality both of existing buildings and of those which are yet to be constructed." (Preface, Book I, Morgan's translation) As a handbook, De architectura was wildly successful, and Vitruvius' advice was followed for centuries. Indeed, many of the illustrations included in this web site are taken from an edition of the ten books published during the Renaissance.
If software engineering is to earn its name, we too must capture, organize, and disseminate tried-and-true design knowledge. The Vitruvius Project at CMU is taking steps toward this goal and therefore chooses its name to pay hommage to the forward-thinking Roman, who in a real sense was the world's first engineer.