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.

274Structured systems analysis and systems designFigure 13.10 Selecting the central transform. (a) The DFD. (b) Choose bubble B.(c) Choose bubble C. (d) Choose bubble A.Structured Systems Analysis, the heuristic element is really concerned with the rulesused for performing the operation, rather than with the act of performing it.A second heuristic of this type is known as ‘factoring’. This is a technique used forseparating out functions within a module, where the operations of one module arecontained in the structure of another. There are a number of reasons why we mightwant to do this, some of which are:nnnnto reduce module size (and hence complexity);to help with clarification of functions (and hence to assist with future changes);to help identify and reduce duplication of operations;to help with reuse of code.Associated with the idea of factoring are the concepts of coupling and cohesion, whichwere introduced in Chapter 4 (page 77). Clearly, any factoring that we perform willneed to take these into account. So these too might be considered as design heuristics,in that they can be used to help resolve particular issues and to assist with designchoices.Evidently the heuristics in SSA/SD are very likely to appear during ‘normal’ useof the method, and so are largely concerned with assisting in the performance ofthe regular design transformations. This is in contrast to the use of JSP, describedin the next chapter, where techniques such as program inversion are required only if

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

Saved successfully!

Ooh no, something went wrong!