13.07.2015 Views

Software Design 2e - DIM

Software Design 2e - DIM

Software Design 2e - DIM

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

141.2 The role of the design activityThe nature of the design processAs we saw in the previous section, the principal task for the designer is to specify thebest solution to a problem and produce a description of how this is to be organized.This description then forms a ‘plan’ that can be used by the eventual implementors ofthe system.Just when this concept of the design task having a distinct role in the productionof an artifact first began to emerge is likely to remain largely a matter for conjecture.It is unlikely that any of the major creations of ancient times, such as the pyramids,could have been achieved without a significant degree of ‘design planning’, and so itseems reasonable to identify architecture in its broadest sense as the most probabledomain where this separation from the craft-level entwining of design and constructionis likely to have begun.The recognition of design as a distinct and identifiable task then introduces thequestion of how is a designer to learn their trade? For many centuries this was probablyachieved primarily through some form of ‘apprenticeship’, whether formal orotherwise, and today there is still a strong element of this in many creative disciplines.Indeed, the concept of the ‘design studio’ is considered by some to be a very valuableand effective route for teaching about software design too (Tomayko, 1996). Wemight also note that great engineering designers have also maintained ‘sketchbooks’(Leonardo da Vinci) or the engineer’s ‘commonplace book’ (Isambard KingdomBrunel) both to aid their own thinking and to provide a form of ‘pattern book’ for conveyingthese ideas to others.The designers of pyramids and cathedrals will almost certainly have exchangedideas with, and learned from, their peers. However, each of the resulting artifacts wasa single unique creation, and only with the emergence of engineering practices werethere significant new inputs to the designer’s learning processes. Two of these areworth noting here, not least because of their longer-term implications for softwaredesign.1. The first of these was the knowledge gained from scientific research. As the propertiesof materials became better understood, and the means of predicting theirbehaviour became more refined and dependable, so the designer could employ thisknowledge in helping to create new structures. A good example is that of bridgebuilding in the nineteenth century, when engineers such as I K Brunel were able tocreate structures that were radically different from their predecessors, while alsoproving to be remarkably durable.2. The second was the concept of reuse. One consequence of the industrial revolutionwas the idea of ‘standardizing’ components.* The existence of such componentsextends a designer’s repertoire – on the one hand offering speedier development ofan idea (‘improved time-to-market’) with potentially lower costs, but also introducingnew constraints and trade-offs into the design process.* One of the very earliest examples of standardization of components was Sir Marc Brunel’s block-making machinery,installed in the Portsmouth dockyard in the early 1800s. The intention here was to improve and standardize theproduction of the blocks that formed a major element in the rigging of a sailing vessel. While this might not haveinfluenced the design of sailing ships, it certainly simplified their fitting out and reduced its cost (Rolt, 1970).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!