Recent Question

Software engineering – Design Document (Assignment # 3)

The requirements document(assignment # 2) and design document(assignment # 3). In this discussion thread, you will ask me questions about the term project as if I am your client. The only requirements that can be included in your requirements document come from this discussion.
For the project in this course I will act as the 'client'.

This is the start:
I would like a computer system to manage my small zoo. I would like for it to keep track of all the animals and their needs and the staff and volunteers. There is no need to keep track of financial data. I have a system for that, but this system would need to interface with that one eventually. If I like the final version enough, I might want to market this to other small zoos.

Here is an initial list of functional requirements:
The program must be able to:
• Mange the needs of the animals, such as feeding, medications, care, etc.
• Keep track of my workers and volunteers, such as availability, work schedule, etc.
• Contain a web interface for easy access to the application.

The first project deliverable is a requirements document that must be approved by the client. I have given you very little to work with, so start by considering what the client might require from such a product. Please use this discussion forum to ask me requirements questions as you would any client for a new system.

The program must be developed using an OO approach and must be able to run on typical MS Windows computers.

Assignment # 3 - Term Project (design document)
The Design Document – Part B
The following is a template for a Design Document. Feel free to add to this
template as you see fit.
Remember this is only a template to give you an idea of what a design document should contain.
The design document is the document which programmers will use to know how
to implement the system. Thus, the design document needs to be clear on how
your system will be implemented, as opposed to what it is supposed to do
(this is handled in the requirements document which you did in the previous
[Project Name] Design Document
[Document Version Number]
1. Introduction
Provide a brief description of the purpose of this document

2. Project Scope and Description
This section is similar to the Project Description but add a little more info.

3. Related Documents
Any other documents you used during the development of the design document.

4. System Overview
Provide an overview of the system in this section, detailing the subsystems
and modules of your system design.

5. Design Description
This section presents the architectural design of your system.
Data Flow/Structure, Object Diagrams, Class Diagrams, Sequence Diagrams, etc.
Describe the important data flow paths or class diagrams of your design.

6. Subsystem and Module Specification
Specify the design for each subsystem and module in your software system.
All functions should be described in detail. (Detail means providing a brief
description of the subsystem and more detailed information about the modules
including a processing narrative, a description of the interface(s)
associated with this module, references to other modules used by this
module, any data structure internal to the module and any additional
information (comments, restrictions or limitiations) about the module. Feel
free to use diagrams in this section to help describe the
subsystems/modules. Very high-level, English-like pseudocode is fine -- this does
not need to be specified in a programming language.

In other words, your class diagrams describe the classes in the system. This
section should tell the reader what those classes do and what other classes they
collaborate with to accomplish their goals.
7. File Structure and Global Data

Describe any information pertaining to database requirements and the types
of data which will reside in the database. (Identify data, describe
organization of data, specify types of data, note any constraints or
valid/invalid ranges of data and any other information you might deem
important! This data might be data maintained in a file, database or in
common memory.)

8. Interface Design
Human-Machine Interface Specification
For example: GUI designs

External Interface Design
Interfaces to External Data
Interfaces to External Systems or Devices
Internal Interface Design Rules
Rules that specify how modules, functions, methods, etc. interface with
other modules, functions or methods.
9. Requirements Cross Reference
List any additional/changed requirements which are identified during the
design process. Also provide a cross reference of design to the requirements
in the requirements document to show that all the requirements are being met
by your design. Discuss any requirements that are not fulfilled by the

10. Document Revision History
This section includes a list of significant
changes that have been made to this document after 1.0 version has been
submitted for assessment. The revision history should contain a dated list
of revisions to the document consisting of: the date of each change, the
person responsible for the change, and a description of the change. You
should be able to trace changes to the individual who completed the
modification. Changes are to be listed in reverse chronological order,
recording the following information for changes: Version File version
number. Name(s) Name of individual(s) responsible for the change. Date Date
of change. Change Description Description of the changes made to the file.