Topic
We have chosen a library management system as the topic for the project. You can find the requirements for the application here.
Organization
There will be a group project (3 students). The class will collectively choose a topic by 09/05. In the project you will design a database schema for a given application domain, derive a relational schema (and implement an SQL script to create this schema), and write an application accessing the database. The project will be split into three tasks:
- Design an ER database model: You will analyze the requirements of the application and then design an Entity-relationship diagram modelling the domain.
- Implement an SQL script that creates the database: You should use the techniques thought in class to derive an relational schema from the ER model and implement an SQL script that creates this schema using your Oracle account.
- Implement the application: You will an application program that enable a user to store, manipulate, and query the database.
Source Code Management and Handing the Projects
The assignments will be completed in groups of three students. You are responsible for forming groups by September 5th.
Each student will get her/his own git repository on BitBucket. You do not need to create a repository yourself - we will create a repository for everyone in the course. Git is a distributed version control system. Good introductions to git are gitmagic and the official git documentation.
At the beginning of the semester you should receive an invitation to collaborate on a shared BitBucket repository named css425-f13-username. Your project work in this class will be submitted via your shared private repository on BitBucket. We will consider code submitted until midnight of the deadline. Each group has to assign a group leader, this person´s repository will store the handed-in version of the source code. If the TA does not retrieve a notification he will choose a random group member's repository. You can use git to exchange source code from your individual repositories.
Grading of the Project
Each students has to be involved in each of the three tasks (design, schema, application) and will be graded on his individual contribution.
We will check for plagiarism. Plagiarism will result in zero points for the assignment and possibly academic sanctions.
Late policies:
- -20% per day
Stuff to get familiar with
- See resources page for links to documentation and tutorials