Advanced Database Systems
Project Part I
Sep. 19, 2002
Due Oct. 24
Your complete database implementation must be accompanied by a project document. The document should clearly describe the design and implementation of your system as well as how to install and use your system. It should include:
mpage), to save trees.
Everyone is strongly encouraged to choose one partner to do Project Part I jointly. You could choose to work alone, but this will not reduce your scope of work. Groups of three or more are not allowed.
Working with a great partner is an enjoyable experience, with whom you can share happiness and frustration. There are pitfalls in working with a partner whom you do not know well: it can be a frustrating experience to find out that your partner is piggy-backing on you. So, choose your partner carefully--you will need to handle the problems yourselves.
The division of work between partners must be vertical, not horizontal. This means that the two partners must collaborate on each part of the project and be on top of what the other partner is doing. Each student must be aware of and understand the techniques used by his/her partner. Your final document must clearly state who did what part of the job. We will question your design and code.
You have to plan the work on your own. You have a total of five weeks. About midway in the project, you will be asked to describe your major design choices and project status to me. At the end of the project, you will be asked to present a short (15 minute) demo to me or the TA (there will be sign-up sheets).
Your first step should be to produce an Entity-Relationship design and the ER diagram for the database system. The diagram must then be translated into the object-relational model. This diagram and the translation should eventually become part of your project documentation.
The next step is to create your database and populate it with sample data. Then you should write and test the queries to be used by your system.
Following that or starting earlier, you can design the forms for display and input of the data, and then write and test the code needed to produce these forms.
Finally, you can connect the forms to your database queries and test your entire application.
It is your responsibility to come up with reasonable test data. If your data consists of just a few tuples that do not illustrate the queries or size/performance well, your grade will be affected accordingly.