CS 5150
Software Engineering
Fall 2010

Assignments


Home

Syllabus

Projects

Books and Readings

Assignments

Tests

Surveys

Academic Integrity


About this site

 

Assignments

Assignment 1, Feasibility Study and Plan

  • Report, due Friday, September 24 at 11:00 p.m.
  • Survey 1, due Friday, September 24 at 11:00 p.m.

Assignment 2, Milestone 2

  • Presentation, Wednesday October 13 to Friday October 15
  • Report due Friday, October 15 at 11:00 p.m.
  • Survey 2, due Friday, October 15 at 11:00 p.m.

Assignment 3, Milestone 3

  • Presentation, Wednesday November 3 to Friday November 5
  • Report due Friday, November 5 at 11:00 p.m.
  • Survey 3, due Friday, November 5 at 11:00 p.m.

Assignment 4, Demonstration and Handover

  • Presentation and demonstration, Wednesday December 1 to Friday December 3
  • Project delivery, due Friday, December 10 at 11:00 p.m.
  • Survey 4, due Friday, December 10 at 11:00 p.m.

The reports and presentations are group assignments corresponding to major project milestones. The first assignment is a report. The other three assignments consist of 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.

  1. Assignment 1 includes completion of a feasibility study. See below for more information about what to include in a feasibility study.

  2. 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.

  3. 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.

  4. 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.

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). 

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.


[ Home ]


William Y. Arms
Last changed: August 2010