CS333 Project: Second Handout

Tue Mar 27 15:57:24 EST 2001

This page describes schedule requirements for the project in more detail. (The original project description is here and the planning slides shown in class are here.)

Schedule

   March 2001
             1  2  3
 4  5  6  7  8  9 10    meeting with bwk by 13th
11 12 13 14 15 16 17	initial proposal
18 19 20 21 22 23 24	spring break
25 26 27 28 29 30 31	draft plan, TA meetings  <= You are here.
   April 2001
 1  2  3  4  5  6  7
 8  9 10 11 12 13 14	prototype
15 16 17 18 19 20 21
22 23 24 25 26 27 28	alpha test
29 30
   May 2001
       1  2  3  4  5	beta test
 6  7  8  9 10 11 12	demo day
13 14 15 16 17 18 19	Dean's date

Further details will follow for later dates; there may be minor changes in requirements.


  • March 30: Detailed plan. By this date, each group must meet with their assigned TA to go over their project plans in more detail.

    Description: You must be prepared to describe your project carefully; although I won't ask for another planning document, it's not a bad idea to write down a significantly more precise and complete version of what you have already done. It might include

    Schedule: You should list the tasks to be performed, who will be performing them, and target dates for when they will be done:

    Miscellaneous:

    Your plan is not a binding commitment, since you will undoubtedly have to revise as you gain experience. But you will be graded according to how thorough and reasonable your planning appears to be, so try to do a good job.

    In particular, you should freeze the list of features around this point; if you don't get them all done, that's fine, and if through some miracle you have time for more, that's fine too. But you should not be making major changes in what you have planned after this point.


  • April 13: Prototype. By this date, you should have a bare-bones prototype that shows approximately what you are trying to do, and what your system will look like. It need not do much, but it must do some minimal part of the job. You should not be considering major or even very many minor feature changes after this date. This should be one of the stages that you planned for.

    You must meet with your TA by this date to demo the prototype, so he or she can assess your progress and report to me.


  • April 27: Alpha test. This should be another stage in your plan. By this date, you must demonstrate an "almost working" version of the core functionality of your project. "Core" means the basic operations that form the essence of your project; if you were doing Amazon-2, for instance, this might mean searching for books and accepting orders. "Almost working" means that wizards (you) can help experienced programmers (us) to use the system. Ideally, since this is a user-interface project, the use should be obvious, but some hand-holding is permitted. Your code may crash and need restarting. Since you have been testing carefully as you go, crashes should be quite infrequent. You must be able to convince us that your project can be completed by the deadline.

    You must meet with your TA by this date for another demo, so he or she can assess your progress and report to me.


  • May 4: Beta test. Your code should largely work, all intended features should be installed and working, no major component should be incomplete. A determined sadist might be able to break your system, but a casual experimenter should not. (Your TA will be somewhere between these extremes.) Drafts of written material and web page should be done.


  • May 10: Demo day. Each group will give a brief (20-25 minute) quasi-public presentation of their work; other groups are strongly encouraged to attend, for instruction and moral support. You will also be required to attend at least a few other presentations, for instruction and moral support. A one-page marketing blurb and a web page must be available for interested users. I would also like to encourage real use by naive users: your classmates on other teams. You must attempt to use some of the systems written by others and see how well they work.


  • May 15: Dean's date. Everything must be done and handed in by 5PM on this date, without exception. Final submission has to include your code, installation procedure, a man page, a web page that would induce others to use your system, an internals document describing the implementation, and a report on how the project and the team worked out and what was learned. (These will be specified in more detail later.)