CSc 4710/6710, Spring 1999
Project (Phase I)
Due: 23 February, 1999 (Tuesday)



Before you embark on the project, make sure that you are a member of a team. The team size should be either 3 or 4. The deadline for informing me about your teams is Friday, February 12th (Please send me an e-mail; one e-mail per group).

The first phase of the class project is to decide on an application area which would need a database solution. If you have a real-world application (at work) which needs a database solution, it would be an ideal problem. Otherwise, I shall leave it up to your imagination. It is better to select an area with which you are familiar. Some suggestions: Airline Reservation System; Bank Information System; Video Rentals Database; University Registrar's Database; Investment Portfolio Database; Sports Statistics Information Systems such as NBA database, Major league database, Test Cricket records; Retail Store Information System; Automobile Servicing System; Car Dealership Database; Online Aution System; etc.

After deciding the application area, you need to perform the database design using the Entity-Relationship modeling technique. In addition to the database design, functional requirements must also be specified. This may be in the form of screens the users will see and interact with in the final product. Specifically, I require the following in your report:
  1. A description of the application area.
  2. A detailed E-R diagram representing the database design along with explanations on the various assumptions you have made (such as total/partial participations and N-M/N-1/1-1 relationship types, primary identifiers, weak entities etc.)
  3. A detailed relational schema in Oracle SQL.
  4. Functional requirements (how the system will look like after you have implemented it; user interaction screens etc.)
This must be in the form of a professional report. There will be points assigned to the presentation aspect of the report. Also, do not throw away the report as we will be adding to this report in subsequent phases of the project.

Do not try to cover all aspects of the application area, as this would make your design quite complex and unmanageable at the later phases (programming) of the project. A good rule of thumb would be between 5 and 15 relational tables in your database.