Institute of Computer Science
  1. Courses
  2. 2021/22 spring
  3. Enterprise System Integration (MTAT.03.229)
ET
Log in

Enterprise System Integration 2021/22 spring

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

Lectures (Mon. 14:15 - 16:00)

1. Introduction to Enterprise System Integration (7/2/2022)

Covers:

  • Course Introduction (Course Description, Scope of the course, Structure of the Course, Grading, Exam, Instructors, etc.).
  • Introduction to Enterprise System Integration (Why Enterprise System Integration is important? motivating scenario, classical systems VS enterprise systems, 1-N tier(s) architecture, Microservices, etc.).
    • Course introduction
    • Core Assignments and Exam
    • Lecture 1

2. Fundamental principles of [enterprise] systems engineering (14/2/2022)

Covers:

  • [Enterprise] System requirements.
  • [Enterprise] System Architecture.
  • Conceptual/Meta/Domain Modeling.
    • Lecture 2

3. Domain-driven design (DDD) Approach I - Domain models and domain modeling (21/2/2022)

Covers:

  • Models and modeling
  • Domain models and domain modeling
    • Lecture 3

4. Domain-driven design (DDD) Approach II - Domain-Oriented Microservice Architecture (28/2/2022)

Covers:

  • What is the DDD approach.
  • The key building blocks DDD (e.g., Entities, Value objects, Aggregates, Repositories), and demonstrate how they can be applied.
  • How we can use the DDD approach.
  • Advantages and disadvantages of using DDD.
    • Lecture 4

5. Web Services - SOAP (7/3/2022)

Covers:

  • What are web services? their communication protocols, their differences and similarities, etc.
  • SOAP (Simple Object Access Protocol)
    • Lecture 5

6. Web Services - REST (14/3/2022)

Covers:

  • Principles of the REST architecture, key concepts, and how they can be applied.
    • Lecture 6

7. Building RESTful API - (CRUD) (21/3/2022)

Covers:

  • CRUD principles and concepts, and how they can be mapped to REST commands.
    • Lecture 7
    • Spring Boot - The CSR Pattern in practice
    • Installing and using PostgreSQL (Postgres)

8. Thick Client Applications (Vue.Js) - I (28/3/2022)

Covers:

  • How can we use the Vue.js framework for building sophisticated Single-Page Applications (SPA).
    • Lecture 8
    • Installing Node.js, NPM, and Vue.js extensions and plugins
Github repo: https://github.com/M-Gharib/ESI2022-Vue-1.git
Cloning the App
> git clone https://github.com/M-Gharib/ESI2022-Vue-1.git

Project setup
> npm install

Compiles and hot-reloads for development
>npm run serve

9. Thick Client Applications (Vue.Js) - II (4/4/2022)

Covers:

  • Vue.js + SpringBoot CRUD Operations.
    • Lecture 9
Github repo (updated): https://github.com/M-Gharib/ESI2022-Vue-1.git

10. Security Aspects of Integration, REST Security (Authorisation and Authentication) (11/4/2022)

Covers:

  • How can we build a RESTful API with a well-defined authentication and authorization strategy.
    • Lecture 10

11. Security Aspects of Integration, REST Security (Authorisation and Authentication) - practical examples (18/4/2022)

Covers:

  • Three different practical examples for Authentication/Authorisation in Spring Boot.
    • Lecture 11
    • Spring Boot Security - In-memory authentication
    • Spring Boot Security - Authentication with JPA
    • Spring Boot Security - Authorization with OAuth2

12. Role-based Access Control (Front-end + Back-end) (25/4/2022)

Covers:

  • A practical examples (Vue.js + Spring Boot Security).
    • Role-based Access (Front-end)
Github VUE repo: https://github.com/M-Gharib/ESI-VUE-SEC.git
Github Spring Boot repo: https://github.com/M-Gharib/ESI-SB-SEC.git

13. Project consultation (2/5/2022)

14. Project checkpoint #1 (9/5/2022)

15. Course Wrap-up, review, and exam preparation (16/5/2022)

  • Lecture 15

16. Exam (23/5/2022)

  • 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