CSE 403, Spring 2009
Assignment #9: Final Release

Due: Wednesday, June 3, by 8:00pm
Turnin: via your repository
Demos: in class on Monday, June 8 at 8:30 am
Reflection writeup: due individually, by 8pm on Monday June 8; turnin here

Your work is almost done. The customer is pleased with the effort you have put in, and with the results. Now, your adoring fans, and fame and fortune, await! Your final release contains the same components from your release candidate, with a few minor additions noted below.

The staff may review any materials that you submitted at any time during the project. This means that your grade could go up, if you have fixed problems that were noted earlier. It also means that you could get penalized again, for being appraised of them but not fixing them, or if other problems are noticed.

Additions in this release are the following:

You may make improvements to your release candidate, if you noticed problems worth fixing in the meanwhile. You do not have to tell the staff which problems you fixed. Fixing a problem is usually, but not always, the right thing to do: your goal is high quality, and fixing a bug removes a defect, but has the chance to introduce new defects. So fixing very minor issues that might have significant impact may not be worthwhile at this stage. Fixing problems that are unlikely to impact the rest of the project (this should be most problems, if your software is well-designed!) is still worthwhile.

As a measure of how well designed and extensible your system is, identifying exactly what components must change, and how, to accommodate the below design changes. There should be enough detail for a competent developer to begin making the changes without having to make any significant design decisions. (Write this as a section of your design documentation.)

You will give a demo / presentation during the final exam period, on Monday June 8. This is your opportunity to show off your deliverable and impress your customer in person. This presentation should be roughly 10-12 minutes long. For full credit, at least three (3) of your group members must participate in the presentation, who did not participate in the previous demo in class. (But as always, all members should be present, ready to share the commendations.) You do not have to turn in your slides (ahead of time, or at all). The customer would like to see, in particular:

  1. Working functionality: a live demo of what you have accomplished and how a user interacts with your system.
  2. Reflections on your experience, especially things you did not anticipate beforehand. (You will probably want to use slides for this.)

Individually: Write 1-2 page reflection of lessons learned from the project experience. The lessons can be in terms of specifications, design, planning, teaming, implementation, etc. What worked well? What would you do differently next time? What do you wish you had known ahead of time? What advice would you give future CSE 403 students? Provide concrete examples and experiences to support your conclusions. Each student in the class should submit his or her own writeup, individually.

The staff is also very interested in your feedback about what went well in the class, and what should be done differently in the future. Creating a class is like engineering a system: some problems are inevitable, but feedback helps to identify which ones are most important and to fix those in the future. You'll have an opportunity to fill out a course evaluation form, which we encourage you to complete. We also welcome additional comments in person, by email, etc. Providing us such feedback is not a requirement and will not be graded. You may provide it after grades have been submitted. We find non-anonymous feedback more useful, but you may submit it anonymously if you prefer. Thanks!