|
Contents for Design DocumentUse the same format for the title page that you used in the specifications document. Following is an outline of the material to be included in the design document. I Scope of solutionA. Referencing your specifications, which of the systems (kernel system, cheap but usable system, standard system, or super system) discussed does your design focus on?B. State any assumptions or restrictions about inputs and outputs that are important to your design formulation. (If there are none, so indicate).C. (Optional) State any critical or important design objectives that your proposal is intended to meet, in addition to the prime objective of providing a correct solution. For example, minimal execution time or portability.II Overall ApproachA. Develop an entity relational diagram.B. Provide a hierarchy of data flow diagrams of your solution along with a brief description of each transformation.C. Develop a data dictionaryD. Develop a structure chart that shows the overall program structure or control hierarchy of the system. Transformations, which are part of the level 1 data flow diagram along with other necessary control blocks, should be represented.E. If object oriented design is being used then develop a class table which shows each class along with its attributes and methods. Develop a table showing the object - client relationships.III Provide the details of your designA. Show the final refinement of your structure chart.B. For each module provide1. An abstract indicating what this module is supposed to accomplish.2. Any special information that the writer of other modules would need to know about this module or that the potential user would need to know.3. Describe the basic design of the module.4. Explain or reference any special algorithms used.5. What routines does this module make available to other modules?6. Imports- What procedures defined in other modules are used?7. What are the input parameters?8. What are the output parameters and what values will they return.9. Subparts- What are the sub-modules that make up this module?i. Error Handling-What is the legal range of values?ii. What happens when other values are found?10. Test Cases-List ideas for test cases.11. Side effects- Hopefully there aren't any, but if there are, make them explicit.12. Miscellaneous.i. Show pseudocode representation at least at the block level to enhance the design description.C. If an object oriented design is used then for each class1. Give a brief description of the class2. List all attributes of the class3. Describe each method of the class providing the pertinent information from the outline for module descriptions given above.IV Design to facilitate maintenanceA. What are the most likely modifications that a client might ask for? How easy would it be for you to make those changes? What modules would be affected and how extensively?B.
What are the implications of alternate design decisions on
higher/lower/same level modules?
|