DB Scheme Design and Programming - Project
The objective of this project is to provide students with practical experience in object-relational database schema design, modern database application development, and data analytics. In order to attend, students must follow the registration process outlined below. During the course, four mandatory worksheets will be assigned, with each worksheet to be solved within three weeks. Each project group will consist of two students. Assessments will be conducted on both group and individual basis. Additionally, there will be a Q&A session for students to demonstrate and explain their solutions. More information about the course will be provided during the kick-off meeting.
Overview
- Survey of relevant functionalities of PostgreSQL (or any other ORDBMS), its components, and extensions needed for writing complex database queries (SQL, JSON, XQuery, etc.).
- Analysis and documentation of the given object-relational schemas.
- Design and develop complex SQL queries, functions, procedures, views, and triggers for the given object-relational DB requirements.
- Development of a web-based standalone application using an enterprise Java application framework and docker.
- Database design and schema modeling for the given application from semi-structured datasets.
- Transformation, cleaning, loading, and indexing of the application data.
- Session management, caching, and performance improvements using NoSQL datastores.
- OLAP and Business Analytics on real-world datasets.
Registration Process
To register, download the JSON template, rename it to {yourmatriculationnumber}.json, fill the details, and send it via email using the subject "[DB-Project] Registration" to the person listed under Contact.
We'll announce the kick-off meeting date once registration is complete. The meeting is mandatory and will cover organizational aspects.
Deadlines
- Registration: 21-April-2024
- Create a Git account: 29-April-2024
Prerequisites
- Knowledge in database designing, user-defined functions, stored procedures, and triggers.
- Deep understanding of relational database systems.
- Hands-on experience with advanced SQL queries.
- Java programming skills.
- Knowledge of three-tier architectures and web development.