Databases

My teaching philosophy:

  • Learn by Doing
    All courses I teach are project based - students work individually or in small groups towards a successful project implementation
  • Guided and Personalized
    I personally supervise the project work - week by week, and offer menthorship and guidance through individualized comments and critique towards advancement
  • Fully online since 2020
    Lectures and exams are held online using videoconferencing systems, and practical work is realized using special software systems (dbLearn* and EPRMS) that I developed, which enable hands-on practice assignments and exams and iterative development and grading

This is just a short decription of the course and my general teaching philosophy. For more details regularly check the information at the web-site: bazi.finki.ukim.mk where you can also find samples of past students projects.

Lecture topics

  1. Introduction
  2. Entity-Relationship Modeling
  3. ER notations comparioson
  4. Relational model
  5. Translation of ER model to relational model
  6. SQL
  7. UML Diagrams
  8. Relational algebra
  9. Relational algebra with NULL values
  10. Relational Calculus
  11. Database integrity
  12. Application Development
  13. Functional Dependencies
  14. Normalization and Normal Forms

Project work

Project Phases

  1. ER Modeling
  2. Translation of ER model to relational database schema
  3. SQL DDL
  4. SQL DML
  5. DB Application Development - Building a prototype application using the database schema developed during Labs.
  6. Functional Dependencies and Normalization
  7. Advanced DB Application Development - Transactions, Services and Background jobs