Student
Originated Software 2001-2002
Year-Long Project - Spring
Quarter Deliverables
Project Notebook: Deliverables may differ somewhat from team to team, and your
faculty will help you determine the best organization and contents for your
project notebook. All notebooks,
however, should contain a core set of deliverables:
Project Title Page with list of Project Team Members and roles and
responsibilities
a. Statement of learning objectives of the quarter
b. Actual accomplishments and contributions; including what did
you learn
Software Requirements
Specification
This
should include (and be updated as appropriate to reflect changes)
a. Project Goal
b. Statement of Scope
c. Criteria for Success
d. Narrative Overview of Problem Statement and System
Requirements.
e. Assumptions, Constraints & Dependencies. (Nonfunctional requirements.)
f.
Background
Information on the Domain. Existing
systems (a "Software Landscape").
g. User Profile: a clear indication of who your users are.
h. Use Cases
i.
Glossary-
Definitions, Acronyms, Abbreviations.
j.
References and
annotated bibliography.
Project Log (no finer than a weekly granularity)
a. Weekly status reports by individual (email version is fine)
b. Weekly team progress reports
Release/Milestone Overview
Project Schedule
Software Design Specification with design decisions, (as appropriate.)
Detailed
Design Specification (if
appropriate)
Project web
site url (if you have one)
Sample Code (with headers and comments).
Release Notes one page document with:
a. Major
functionality included in this release (bulleted list)
b. Future
enhancements (features not included)
c. Known Bugs
d. Bugs fixed in
this release (relevant if you’ve
done a release)
Technical
Documentation: The audience is those
who will maintain the system after you are gone. It should be 2 - 5 pages and contain:
a.
Narrative
summary of major system functionality, including bulleted list of major
functionality and features for future releases
b.
Information
for operations such as logins and passwords, system requirements (e.g.,
hardware, memory, operating systems, etc.), maintenance tasks as appropriate
for your project (e.g., backup database, how to restore the database, clear log
files every three months or 10,000 records).
c. Programming Maintenance such as any additional notes on
software architecture, coding standards, less intuitive parts of the system,
file naming conventions, etc. If you
made unusual design decisions, you might say why you chose what you did.
Deployment
Plan or Recommendations
for Deployment (as appropriate to your project). One page summary of plan for deployment, including
installation, user training, operations training, and other handoff issues.