13.07.2015 Views

Software Design 2e - DIM

Software Design 2e - DIM

Software Design 2e - DIM

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

196<strong>Design</strong> processes and design strategiesoccur between phases of the design process are not shown explicitly: the model is concernedwith describing overall strategy rather than the detailed sequencing of actions,since these will be driven by the needs of a specific problem and the experience of thedesigner.Back in Chapter 2, in a brief and introductory discussion about the form of the typicalprocess part of design methods, we made the distinction between a ‘transformation’step and one concerned with ‘elaboration’. Now that we need to consider design processesand strategies in rather more detail, it is useful to examine this categorizationmore closely. This is because each of the procedural steps of any design method,regardless of the strategy employed, can usually be classified as being one of those twoforms.These two forms have quite distinctive roles and characteristics, which can bedescribed as below.nnA transformation step is one where the designer modifies the structuring for theirmodel of the ‘system’ in some way. Typically this consists of reinterpreting it usinga different viewpoint (ultimately, of course, the aim is to produce a constructionalmodel). Such a step will require the designer to make some fairly major design decisionsand is clearly a strongly creative one.An elaboration step is one which does not usually involve any change of viewpoint,but is more concerned with restructuring or reorganizing the design model withinthe current viewpoint. (Examples might include expanding the bubbles in a DFD,or grouping states within a Statechart.) The purpose of an elaboration step is usuallyeither to add further information to the model, or to obtain greater insight intothe current state of the design plan through restructuring, and as such it may be anessential preliminary to a successful transformation step.When we come to examine some examples of design methods, we will see thatmany of these have only one transformation step, usually preceded and followed byelaboration steps. Important factors from a methodological aspect are whether thetransformation step appears early or late in the sequence of steps, and the number (andtypes) of viewpoint that may be involved.It is important to recognize that both types of step involve creative actions,although the forms that the creativity takes are somewhat different. The transformationprocess typically requires the designer to be able to bridge their ideas across twoor more different sets of properties, while the elaboration process is more concernedwith recognizing patterns and structures (or the potential for forming these), while alsopossibly anticipating the needs of subsequent transformation. Figure 9.3 illustratesthese distinctions in an abstract manner. We might also note that the issues of strategythat we discuss later in this section are more likely to be embodied in the proceduresemployed in the elaboration steps of a method.This general model, in which a sequence of procedural steps make up the processpart, is one that we will use extensively in analysing design methods, and the notationsshown in Figures 9.1 and 9.2 will be used for this. In the next section we will introducea slightly more ‘formal’ notation that complements this, and which places moreemphasis upon the use of the viewpoints model, so making a more explicit distinctionbetween transformation and elaboration steps.

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

Saved successfully!

Ooh no, something went wrong!