Informatics 117: Project in Software System Design

Winter Quarter 2013

Architecture and Module Specifications

Due Date: February 15, 2013. 24:00 PST.


Develop a design that fully satisfies the requirements for your application. This deliverable consists of two elements: a design specification (consisting of an architecture and module specifications) and an integration test plan. NOTE: contents of this deliverable may vary from the description below, depending on the project. View the description below as normative, but if it does not "fit" your project, talk to me about how you believe the deliverable should be changed.

Your document must specify the correspondence between the requirements elements and your design. You may show this correspondence any way you feel is appropriate (e.g., make notations throughout your document or using a table that cross-references design elements to the corresponding requirements elements).

Developing the software design will undoubtedly reveal inadequacies in previous documents. Please note these problems and what was done to resolve them.

Don't forget to include your meeting minutes and performance appraisals with your document; refer to the syllabus for the complete check-list of what has to be turned in. As before, make sure that you post your design documents and your meeting minutes to your team web page.

Deliverable Objectives/Quality

Keep in mind that key objectives of a design document may include: In addition, keep in mind that a design document should exhibit the following qualities:

Document Contents

1. Introduction

Expand your previous introduction to discuss your specific approaches to the design of the system and the organization of this document. This description is essentially just an updated version of the introduction you included in your previous deliverable.

2. Understanding

Expand the understanding section of your previous document. Include brief descriptions of actions you took to understand each technology studied during this phase. If you make changes to this section, add text describing why the change was necessary, and why it more accurately reflects your new understanding. This section need not be different if your understanding hasn't changed.

3. Project Plan

This will be an iterative expansion of your previous submission. Update your project plan to show what you have accomplished so far. Reassess the project risks as necessary. Expand your task network or work breakdown structure to include the effort expended to complete this task, as necessary. Based on the work you have done, revise your estimates on how much your team can accomplish and deliver.

If you make changes, add text describing why the change was necessary or why it will improve the ability of your team to accomplish the work you have proposed.

4. Design Specification

5. Integration Test Plan

A test plan capable of demonstrating that the design meets the requirements. Test cases should cover each module/object interaction specified. The test cases can be grouped with the design entity to which they apply, otherwise a cross reference listing of some sort should be provided.

6. Tracking and Control Mechanisms

6.1 Configuration Management: how will your modules/objects be managed?

6.2 Requirements Cross Reference: what modules/objects satisfy what requirements?

7. Modifications to Prior Documents

If any requirements changed make them explicit. Highlight why the requirement was changed/added/deleted and by whom (customer, developer, etc.). If your requirements have not changed, then so state.

8. Glossary (if needed)

Define any "irregular" terms used in the specifications above. This portion of the document may be written as an extension to the glossary submitted with the requirements, or may be a separate document that only defines terms local to the design activity.

9. Additional Documentation

This section is reserved for any additional documentation developed during this phase of the project. Specifically, if during the course of developing the architecture your understanding of the various technologies involved in the project changed, or you discovered items that were not documented but which are important, include that information here. Also list here the major background sources that you used during this phase or any that you plan to use during the remainder of the project. This includes references to similar systems and/or procedures.

Design Presentations.

See the syllabus for dates. Each team should prepare a 10 minute Powerpoint (or equivalent) presentation.

Your presentation should include the following: