Advanced Database Systems
INFC20, Informatics, 7.5 ECTS credits
The course is offered on the fifth term of the Bachelor's programme in Design of Information Systems, to exchange students and as a freestanding course.
Course description
Advanced Database Systems provides you with a deep and thorough understanding of both conceptual and technical topics connected to Relational Databases, Relational Database Management Systems (RDBMS), and Structured Query Language (SQL).
The course uses AI-based tools and modern Integrated Development Environments (IDE) for development of database backends and clients. The course utilizes the cloud platform Microsoft Azure for development and deployment of databases.
The course assumes a basic knowledge of conceptual data modelling and basic skills in SQL. Taking this course, you will develop your skills in designing and implementing database solutions that support business operations and business objectives. You will gain a deeper understanding of relational database theory, models, methods, and an ability to use these in different scenarios.
Course content, conceptual aspects:
- Conceptual data modeling using Enhanced Entity Relationship (EER) diagrams in two different notations and comparisons to Object Oriented modelling.
- Capturing business requirements related to persistent data storage in EER diagrams.
- Transformation of conceptual data models to relations (Relational Database Theory).
- Implementation of relations in a Relational Database Management System (RDBMS).
- Normal forms and normalization up to Fourth Normal Form (4NF).
- Database views and implementation of integrity constraints.
Course content, technical aspects:
- Implementation of centralized, decentralized, and distributed databases.
- Transaction Management.
- Data replication and distributed transactions.
- Transaction Concurrency and Recovery.
- Architectural issues related to RDBMS architecture and client architecture.
- Advanced and embedded SQL scripting including SQL triggers and stored procedures. Access management.
- Techniques for efficient and secure data storage, access, and recovery.
- Query optimization and performance tuning.
Teaching methods and examination:
Teaching consists of lectures, lessons, laboratory work, and recorded video materials. The examination comprises assignments, presentations, and a written test.