Institute of Computer Science
  1. Courses
  2. 2024/25 spring
  3. Enterprise Systems Integration (MTAT.03.229)
ET
Log in

Enterprise Systems Integration 2024/25 spring

  • Home
  • Lectures
  • Practicals
  • Assignements
  • Project and exam
  • Message Board

Practical session 14:15-16:00 (Group 1) and 16:15-18:00 (Group 2) - Delta Room 1022

The lab materials and associated code will be published as we proceed in the course. The labs are organized into five parts:

Part 1 - Essential Technologies for ESI

1. Introduction to the course programming languages, frameworks, and technologies - (11/2/2025)

  • Session 1.1: Git and GitHub - [Pre Lab]
  • Session 1.2: Installing Spring Boot – VSCode
  • Session 1.3: Docker, and Docker hub - documentation and practical examples

2. Spring boot - REST (18/2/2025)

  • Session 2.1: Spring Boot - Rest API - [Pre Lab]
  • Session 2.2: Postman - [Pre Lab]
  • Session 2.3: Installing and using PostgreSQL (Postgres) - [Pre Lab]
  • Session 2.4: Spring Boot – REST - CRUD - I

3. Spring boot - Building RESTful API (CRUD operations) - I (25/2/2025)

  • Session 3.1: Spring Boot – REST - CRUD - II
  • Session 3.2: OpenAPI-Swagger
  • Session 3.3: Docker compose, and play with Docker - documentation and practical examples

Part 2 – Designing and implementing a microservices architecture

4. Spring Boot - Microservices – I Microservices communications (4/3/2025)

  • Session 4.1: Microservices communications

5. Spring Boot - Microservices – II - Microservices discovery & load balancing (11/3/2025)

  • Session 5.1: Microservices - Microservices discovery & load balancing

6. Spring Boot - Microservices – III - API Gateway & Resilient microservices patterns (18/3/2023)

  • Session 6.1: Microservices - API Gateway
  • Session 6.2: Microservices - Resilient microservices patterns

7. Spring Boot - Microservices integration patterns in practice (25/3/2025)

  • Session 7.1: Microservices integration patterns - Event Driven Architecture - Apache Kafka -I -[Pre Lab]
  • Session 7.2: Microservices integration patterns - Event Driven Architecture - Apache Kafka -II

Part 3 – Designing and implementing frontend apps (Vue.js)

8. Vue.js (1/4/2025)

  • Session 8.1: Installing Node.js, NPM and creating a Vue.js project - [Pre Lab]
  • Session 8.2: Vue.js - basic concepts - [Pre Lab]
  • Session 8.3: Vue.js - CRUD

Part 4 – Designing and implementing security mechanisms/techniques for ESI

9. Security Aspects of Integration – Basic concepts & Building a JWT-based Auth Service for a Spring Boot App (8/4/2025)

  • Session 9.1: Spring Boot Security - in-memory authentication - [Pre Lab]
  • Session 9.2: Spring Boot Security - Authentication and Authorization through JPA
  • Session 9.3: Spring Boot Security - Auth-service (JWT)
  • Session 9.4: Spring Boot Security - Authorization with OAuth2 - [Extra - not part of the course]

10. Security Aspects of Integration - III – Building a "Secure" project (Spring Boot + VueJs) using JWT (15/4/2025)

  • Session 10.1: "Secure" project (A Single Spring Boot App + VueJs) - Auth Service (JWT)
  • Session 10.2: "Secure" project (Spring Boot + VueJs) - Auth Service (JWT) for a Microservice-based Systems

Part 5 – Project checkpoints and final presentation

11. Project description (22/4/2024)

12. Project checkpoint #1 (29/4/2024)

12. Project consultation (29/4/2024)

13. Project checkpoint #1 - Backend - (6/5/2024)

14. Project checkpoint #2 - Frontend + Backend - (13/5/2024)

15. Project checkpoint #3 - Project presentations -Frontend + Backend + Security - (20/5/2024)

16. No Practice Session - final exam (27/5/2024)

  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment