Due: 11:55pm, December 4, 2009 (Friday), project report and code should be submitted by this deadline. A demonstration of your system will be scheduled during the week of 11/30/09-12/04/09. Exact date of the demo will be announced later.
Sample system: an online
bookshop. You can find an introduction and all the code.
An Introduction to using JDBC in netcluster and sample code.
Introduction
In this project, you are expected to design and develop an online enterprise management system with non-trivial functionalities. You can choose whatever enterprise you want to support, and we tend not to provide detailed specifications. However, as a guideline for grading, we do expect the following features from your system:
More specifically, we want to see the following features in your system:
Accomplishment of all above four features will guarantee you a high B grade (i.e., > 80% of total points) in the project (assuming you do an OK job in the demo and the report). To get a higher grade (up to 110%), you can implement the following extra functionalities:
Getting Started
If you feel uncomfortable designing a non-trivial system from scratch, you can find several sample projects from here. In fact, we strongly recommend you follow the design of one of the examples in that document and code up any functionalities you like. We will also post several successful projects from previous semesters.
Environment
In this project, you choose the platform to work on and show the demo. The most successful demonstrations from previous years were done in standalone machines (e.g., a laptop) where students installed their own DBMS and application servers. I suggest you follow that strategy - by that you are not vulnerable to all kinds of problems caused by sharing a server with other (inexperienced) users.
On the other hand, you can also use the Oracle server at netcluster.csee.usf.edu that has been running for a while. The server has JDBC driver loaded therefore you can start communicating with the database with minor changes in your client machine environment. We will post instructions on how to enable JDBC from a client machine shortly. For those of you who choose to write dynamic pages (e.g., using JSP/ASP), you probably have to set up your own application server.
Deliverables and Grading
You are required to show the functionalities of your system in a 10-minute demonstration. You also need to finish a report describing your design and the main functionalities. You are encouraged to paste sample code to the report to explain your implementation. A sample report can be found here. We also need you to submit all code (JSP, html, Java, procedures, SQL statements …) you wrote for this project. To be specific, you are required to submit two files: one containing your report and another compressed file containing the code. For the latter, you should put all the code files into a folder and compress that folder into a file named proj4-xxx.tar or proj4-xxx.zip where xxx is the NetID of one of the group members. One submission is sufficient for each group.
The project will be graded based on the functionalities implemented (70%), the quality of the demonstration (20%), and the content and format of the project report (10%). We will set up a time for the demo session such that all students can attend and grade the demos shown by other groups.
Other Issues
· This project is supposed to be finished by 3-person groups. If you choose to work by yourself or form 2-person groups, you are expected to do the same amount of work as the other groups. If you have trouble finding partners, please let me know asap.
· Copying code from the Internet or other sources without an explicit statement will be regarded as plagiarism.
· More messages on various technical topics will be posted. But do NOT wait till you see more of such messages. Start NOW by talking to fellow students to form a group!
· Late submissions are still acceptable if you have free tokens left, but each day beyond the deadline will cost you n tokens where n is the number of persons in your group.