CECS 332: Design Document

Due Thursday, Oct. 23, 5 p.m.

Submit one copy per group:

Hand in a print-out of your Design Document in a notebook with your graded Specifications Document.

 

You will incrementally build your final project report in 3 stages.

Stage 1 was your Specifications Document.

Stage 2 is your Design Document (this assignment).

Stage 3 will be your final project report handed in at the end of the semester.

 

For the Design Document, we will use the same basic outline with expanded sections to highlight the design.  Revise sections appropriately based on the comments you received on your graded Specifications Document.

 

OUTLINE FOR DESIGN DOCUMENT

  1. Table of Contents
  2. Introduction
    • Include the basic idea and the motivation for the project
  3. Glossary
    • Define special terms, especially domain terms (i.e., terms that are specific to your application domain)
  4. User requirements definition
    • A high-level description for users in paragraph or bullet form
    • Expand your problem statement
    • Include functional and non-functional requirements and any domain requirements.
  5. System architecture
    • Context diagram showing how your system interacts with its environment. The context diagram shows one block which represents your system and other blocks for external components with which your system must interact.
    • (Required) Architecture diagram of your system  (i.e., the Architectural Design)
    • Include a brief description of each block for both the Context diagram and the Architecture diagram.
  6. System requirements specification
    • A more technical description in paragraph or bullet form for the software developers
    • Include functional and non-functional requirements and any domain requirements.
  7. System models
    • Requirements specification
      1. Use case diagram
      2. For each use case, include the starting and ending conditions, the sequence of steps and the exception handling
    • Design: Include other models as appropriate for specifying the system design
      1. Each system with a database component should include one or more Entity-Relationship Diagrams.
      2. One or more Data Flow Diagrams (or UML Sequence Diagrams for object-oriented languages) for systems with sequential process flow.
      3. One or more Statecharts for systems that are event-driven (e.g., games, web interfaces and other interactive interfaces)
      4. A model of the user interface such as sample screen shots for input and output.
      5. A layout of any printed reports.
      6. A hierarchy diagram showing the structure of the design, i.e., what functionality is contained in each module. (This will be refined at the end of the project to show the actual design.)  For object-oriented languages, use a UML class diagrams showing the associations.
  8. System evolution
    • (Optional) projected maintenance requirements
  9. Appendices (if applicable)
  10. Index (optional)