SE2 (ECE452/SE464/CS446/CS646): Software Design and Architecture Fall 2008
Prof Ric Holt, Department of Computer Science, Waterloo University
Assignment 0: Project Proposal
BACKGROUND
There is a major software implementation project in this course, organized
around the following assignments:
- Asgn 0: Proposal. Propose a team and software implementation
project.
- Asgn 1: Architecture.. Create a corresponding software
architecture.
- Asgn 2: Detailed design. Create a detailed design.
- Asgn 3: Implementation. Implement the design.
- Asgn 4: Presentation. Present and demonstrate the implemented
system.
The following constraints are imposed by the management:
- Documentation. All documentation (including
the solution to each assignment) is to be web-readable, e.g., in HTML,
PDF, or other form conveniently readable from the web. At the same time,
your report must be printable, and you are to turn in a hard copy of your
reports for marking.
- Team size. You are to work in teams, ideally with 4 people per
team.
DETAILS ABOUT ASSIGNMENT 0
In this assignment (Assignment 0) you are to propose an implementation
project.
This proposal must be approved by the Teaching Assistant.
You may (or may not) choose to implement the VOIP project. See documentation for that project: VOIP
Project Information, Overview
of VOIP Project and VOIP
hardware Interface Description.
Do not expect any special help form the TA if you choose to do the VOIP
project.
Your
report for Assignment 0 should answer these questions:
- Team. Who are the
members of the team (names and student numbers)?
- Proposed project.
What is the purpose of the proposed project? Who will use it? What equipment will it run on? On what operating system(s)? What software will your project
use? What soft of user
interface (if any) will you software have?
- Demo. What will
you demonstrate (and present) for Assignment 4?
- Code size. How
much code (measured in Lines of Code) do you expect your project will
produce?
- Languages and tools. The project will be written in what
language(s)? What software
tools will you use in your project?
- Version control. How
will you handle version control?
- Related projects. What
is the relationship of this project to any projects you have already done
or which you expect to do?
- Risk. What will be
the most risky and most difficult parts of carrying out your project?
- (New) Architecture. How/why does your
proposed system has an interesting, non-trivial architecture.
Limit
your report for Assignment 0 to at most 3 pages.
---------------------------
Last update 8 Sept 2008 RCH