CS349: the project

[home] [syllabus] [lecture notes] [assignments] [project] [documentation]

Click here for the list of project assignments
Project description

The goal of the project is to design and implement a model of a commercial web site. The web site serves as an inteface to a relational database which contains information about products offered at the web site, orders, and customers. The database will be implemented on Mckoi SQL Database which runs on a server birch.wellesley.edu (hence the picture on this web page). You will use the following Java technologies:

  • Java swing package to implement forms that a custmer can fill,
  • JDBC (Java Database Connectivity) package to build a Java interface to the database and to retrieve and update information in the database,
  • Java Servlets to process customer's requests on a web page,
  • Java Cookies to implement shopping carts,
  • various Java packages to implement secure communications.
Project assignments will be done in groups of 3-4 students (3 is the ideal number, but if the number of students in the class is not divisible by 3, then we will have 1 or 2 groups of 4 students). Project groups are formed in the beginning of the semester and do not change.

In the end of the course the project groups will be assigned at random to test other group's web sites. After the tester's comments have been submitted to the group, the group is given another week to fix the problems and improve its web site. In the end, every group submits a final report on their work. The report will discuss which parts of their work have been successful and which haven't been quite so. An important part of the report is the discussion of what you would have done differently if you had a chance to start the project all over again.

The last two meetings of the class are presentations of student's work and discussion.

Project groups

It is important to form balanced project groups in terms of programming experience with Java, SQL, and LINUX, and also to have a group of students where everyone is comfortable working with everyone else. Please discuss possibilities for project groups with your fellow students, in person, or in the FirstClass conference CS349-S02 Talk. When you feel that you have decided on a team, please let me know (in person or by e-mail). Note that you need to get my approval of your project group and a project account before you can start working.

If all goes well, then all the members of a project group get the same grade for their project. Click here to read the grading policy for a project and the strategy for grade problems resolution.

Project accounts

Once project groups has been approved, I'll set up an account on puma for each project group. You may work on your individual accounts if you want, but all your finished code should be copied to the project account (and tested there) before submission. I recommend that you do all your programming on puma because of Java compatibility issues.

How to submit project assignments

Project assignments and timeline

Unless specified otherwise, all programming assignments are done on puma.

Requests for project groups due: please send me an e-mail (cc to all team members) or give me a note on a piece of paper Feb. 8 (Friday)
Project groups formed, project accounts set up. Feb. 15 (Friday)
Project Assignment I (Design of the web site and of the database) posted Feb. 15 (Friday)
Project Assignment I due Feb. 26 (Tuesday)
Project Assignment II (Java interface to a database) posted Feb. 26 (Tuesday)
Project assignment II due March 12 (Tuesday)
Project assignment III (implementing a shopping cart) posted March 12 (Tuesday)
Project assignment III due April 2 (Tuesday)
Project assignment IV (implementing a secure payment mechanism) posted April 2 (Tuesday)
Project assignment IV due April 12 (Friday)
Project assignment V (testing another group's web site) posted April 12 (Friday)
Project assignment V due April 19 (Friday)
Project assignment VI (modifications and preparing a final report) posted April 19 (Friday)
Presentation schedule finalized (make requests before this day!) April 23 (Tuesday)
Project assignment VI (final report) due April 30 (Tuesday)
In-class presentations May 3 (Friday), May 7 (Tuesday)
Discussion and cookies (real ones!) May 7 (Tuesday)


This page has been created and is maintained by Elena Machkasova
Comments and suggestions are welcome at emachkas@wellesley.edu

Spring Semester 2002