Does It Do the Job

This chapter focuses on efficiency of the proposed design code to meet certain goals: (1) The code should be quick to write, efficiently use development time, and be simple to debug; (2) It should help minimize material cost, generate clean documentation, and be modular in design; and (3) it should be extensible and be able to multitask. It presents a design methodology, which starts out with a dissection of the designs requirements document. This dissection carves up the document, looking for every possible nuance of the design, from timing information to the functions and features of the design. When information is found to be missing, the design is held until the questions and ambiguities are resolved. Only when a completely clear picture of the design is generated, the methodology moves on to even the highest level of the design. A methodology should always make an efficient use of the development time—that is, it should reduce the rework associated with missed communications between the group that defined the system and the designers that actually generated it.