|
Schedule of Assignments and Tests
Test 1
- Monday, September 12 at 7:30 p.m.
Assignment 1, Feasibility Study and Plan
- Report,
due Friday, September 23 at 11:00 p.m.
- Survey 1, due Friday, September 23 at 11:00 p.m.
Test 2
- Monday, October 3 at 7:30 p.m.
Assignment 2, Milestone 2
- Presentation, Wednesday October 12 to Friday October 14
- Report, due Friday, October 14 at 11:00 p.m.
- Survey 2, due Friday, October 14 at 11:00 p.m.
Test 3
- Monday, October 24 at 7:30 p.m.
Assignment 3, Milestone 3
- Presentation, Wednesday November 2 to Friday November 4
- Report, due Friday, November 4 at 11:00 p.m.
- Survey 3, due Friday, November 4 at 11:00 p.m.
Test 4
- Monday, November 21 at 7:30 p.m.
Assignment 4, Demonstration and Handover
- Presentation and demonstration, Wednesday November 30 to Friday December 2
- Project delivery, due Friday, December 9 at 11:00 p.m.
- Survey 4, due Friday, December 9 at 11:00 p.m.
Assignments
The reports and presentations are group assignments corresponding to major project milestones. The first assignment is a report. The other three assignments consist of both a presentation and a report or other documentation.
With each assignment there is a survey to be completed individually. See the Surveys page for more information. It is important that everybody completes each survey and submits it on time. The course team uses the surveys to monitor the progress of the projects and to understand the contributions made by each member of the team.
-
Assignment 1 includes completion of a feasibility study. See below for more information about what to include in a feasibility study.
-
If the team is following an iterative process Assignment 2 is likely to include a first set of requirements, a provisional design, and a
prototype that can be used to demonstrate
the functionality of the system. If the team is following a sequential development process, Assignment 2 should include completion of the requirements phase and preliminary design work.
-
If the team is following an iterative process Assignment 3
should mark a major milestone when you can report visible progress to
your client. If you are following a sequential process, this milestone will
include the completion of the design phase and significant progress in the implementation.
-
Assignment 4 consists of a presentation in which you will demonstrate your system in operation followed by the handover of the completed system and documentation to the client.
Presentations
During the semester each team will give three presentations with associated
reports on the work completed. You will make a 45 minute presentation
to the client, the Instructor and the Teaching Assistant. Everybody is expected to be a presenter at least
once.
Available time slots for the presentation will be posted on the
Home page. Please contact Corinne Russell (crussell@cs.cornell.edu)
to schedule a time slot for your presentation. It is your responsibility
to ensure that the client is available
at the time you schedule. The room will be provided with (a) a computer
projector with Internet connection.
Before the first presentation, there will be a discussion in class of the goals of the presentations and how to prepare for them.
Reports
All members of the project team should
share in the production of the reports. When you have completed a report,
(a) deliver it to the client, (b) send it by email to the Instructor and Teaching Assistant, (b) enter it into GForge or another software
project system, for future reference.
Feasibility Study and Plan
The exact form of the feasibility study is up to you.
The length of the report is likely to be between five and ten pages. It should include the following:
- The client for whom the work will be done.
- List of team members and email addresses.
- A statement of the task to be undertaken.
- A preliminary requirements analysis.
- Suggested deliverables.
- Process to be followed, e.g., modified waterfall model,
iterative refinement, incremental development, phased development, etc.
- Outline plan, showing principal activities and milestones.
- Visibility plan. How will you keep in contact
with the client and report progress? How will you communicate
among your team?
- Discussion of business considerations (see the Projects page on the Web site).
- Risk analysis. What can go wrong? What is your fallback
plan?
- Probable technical requirements
Here are some example of reports from earlier classes. They are very different in style, but each provides a good example of an effective report. They are placed here with the permission of the student teams.
Reports for Milestones 1 and 2
The report for each milestone should include:
- Review of progress since the previous milestone
- Revised schedule and plan for the remainder of the project
- Preliminary versions of the documentation for those parts of the project that have been worked up to the current milestone
In writing each report, pay particular attention
to the following:
- The report must be understandable by the client.
- The requirements must be the client's, not your own concepts, and must be specified in sufficient detail to test against
the implementation.
- Design concepts must be clearly separated from requirements.
- The design should include both system and program design.
- Requirements may be partitioned into those that must be met by
the first release and those that are optional.
Here are some example of reports from earlier classes. They are very different in style, but each provides a good example of an effective report. They are placed here with the permission of the student teams.
Final Documentation for the Handover of the Project
During the semester you will be developing a set of documentation for your project. Because every project is different, the exact form of the document is
up to you, but it should be well written and suitable for handover to your
client. The final documentation is likely to include some or all of the following:
- A feasibility study
- Requirements analysis and specification
- System and program design
- User interface design and testing
- Test plan, test examples, and results
- Source and binary code
- Either transfer of the rights in the system to the client or an unrestricted license for the client (see the Projects page on the Web site).
|