2.3 What is a Design Space?

Figure 2.1: A vacuum cleaner design space

A design space is a combination of requirement dimensions. Architect Christopher Alexander observed that vacuum cleaners with powerful engines and more suction were also heavier, noisier and cost more (Alexander, 1964). One performance criterion has a best point, but two criteria, like power and cost, give a best line. The efficient frontier of two performance criteria is a line, of the maximae of one for each value of the other (Keeney & Raiffa, 1976). System designers must choose a point in a design space with many “best” points, e.g. a cheap, heavy but powerful vacuum cleaner, or a light, expensive and powerful one (Figure 2.1). The efficient frontier is a set of “best” point trade-offs in a design space, given that not all criterion combinations may be achievable, e.g. a cheap and powerful vacuum cleaner may be impossible. Advanced system performance is not a onedimensional ladder to excellence but a station with many trains serving many destinations.

To see other examples we can look at nature. Successful life includes flexible viruses, reliable plants, social insects and powerful tigers, with the latter the endangered species. There is no “best” animal because in nature performance is multi-dimensional, and a multi-dimensional design space gives many best points. In evolution, not just the strong are fit, and too much of a good thing can be fatal, as over specialization can lead to extinction.

Likewise, computing has no “best”. If computer performance was just more processing we would all want supercomputers, but many prefer laptops with less power over desktops with more (David et al., 2003). On the information level, blindly adding software functions gives bloatware, also called featuritis or scope creep. The result is applications with many features no-one needs.

Design is the art of reconciling many requirements in a particular system form, e.g. a quiet and powerful vacuum cleaner. It is the innovative synthesis of a system in a design requirements space (Alexander, 1964). The system then performs according to its requirement criteria.

Most design spaces are not one dimensional, e.g. Berners-Lee chose HTML for the World Wide Web for its flexibility (across platforms), reliability and usability (easy to learn). An academic conference rejected his WWW proposal because HTML was inferior to SGML (Standard Generalized Markup Language). Like the pundits and the elephant, academic specialists saw only their specialty criterion, not system as a whole. Even after the World Wide Web’s phenomenal success, the blindness of specialists to a general system view remained:

Despite the Web’s rise, the SGML community was still criticising HTML as an inferior subset … of SGMLBerners-Lee 2000, p96

What has changed since academia found the World Wide Web inferior? Not a lot. If it is any consolation, an equally myopic Microsoft also found Berners-Lee’s proposal unprofitable, from a business perspective. In the light of the benefits both now freely take from the web, academia and business should re-evaluate their myopic criteria.