What are the four design models required for a complete specification of a software design? Describe the role of one of them in your own words.
You have been asked to lead a software development team to build a system fulfilling the Statement of Need specified in project 1. Your team is employed by a small company. The customer wants a project that balances reasonable development cost, timely delivery, software quality, and functionality.
In this project, you will refine your analysis, scenario and behavioral models from projects 1 by:
Describing the interface and component-level design for the B&B software
Updating your Architectural Context Diagram (ACD)
Updating your analysis models from project 1.
Completing this project will require that you produce a software design specification document (SDD) that shows how the system shall be structured to satisfy the requirements described in your SRS. The SDD that you create will have consequences for Projects 3 and 4.
Please use the IEEE std 1016-1998 to develop your SDD. The IEEE Recommended Practice for Software Design Descriptions, standard 1016 is posted in the Reserved Readings section on the Class Menu. Read this to become familiar with the information required in the SDD. Annex A, figure A.1 gives a sample SDD Table of Contents. Use this as a general outline.
Complete the template as best as you can. Make any reasonable assumptions based on your understanding of the problem that allow you to address as many sections of the SDD template as possible. (Please read the “project descriptions” in the project description section of the syllabus for additional context and information on course projects).
Pay special attention to the following phases of design as you complete the SDD template. The bulk of your grade will be decided on how well you address these issues.
Data Design: This phase produces the data structures
Architectural Design: This phase produces the structural units, or classes.
Interface Design: This phase specifies the interfaces between the units
Procedural Design: This phase specifies the algorithms of each method.
Note that specific sections of the SDD template speak to the above 4 design phases.
A key objective in the design phase is to translate and map the outputs or deliverables from the requirements model into the four design models (See Module 3, Figure 3.8 of the course module commentaries).
Hints and suggestions: At a minimum, I expect:
An updated data model (class diagram or ERD) from project 1. Represent the data model as a table so that you can reflect the attributes of the object.