#TITLE#

Modified: #LAST_MODIFIED#
Humla v#HUMLA_VERSION#

Hellos

Web Engineering Curricula – bird's view

Course at a Glance
Motivation and Scope

What is Middleware?

  • Say anything you think has something to do with middleware
    • Architecture
    • Tehnology
    • Tools
    • Concept or style
    • Methodology
    • ...
    • No worries, there is no bad answer!

Motivation in Brief

  • Systems rely on complex infrastructures
    • A lot of data and many processes, internal and external
    • As people communicate, underlying systems must too
    • But:
      • variety of data formants, technologies, protocols
      • variety of architectures, client-server, peer-to-peer, ...
  • Rapid changes in applications' functionalities
    • modular development
    • reuse of application logic
    • low costs – do it now and quickly!
    • Good performance
      • frequent changes in applications' loads, peek hours
      • scalability – effective load balancing
      • low costs – cheaper to outsource?

Scope

  • Architectural and conceptual basis
    • What is architecture – enterprise, processes, data, software
    • Service concepts, integration patterns, middleware
  • Backend technologies
    • Communication protocols – HTTP, TLS, HTTP/2
    • Application backend and requests handling
    • Advances of REST, MOM
  • Performance and Scalability
    • Performance tuning
    • Load balancers
Requirements and Organization

Prerequisites

  • Object-oriented programming
    • Principles
      • class, object, inheritance, encapsulation, ...
        • basis for service concepts
  • JavaScript
    • All code examples will be in JavaScript
    • All lab work will be in JavaScript
  • Web Architecture
    • Basics of REST, HTTP, URI/URL
  • Other
    • Networking
    • Basics of OS

Organization of Lectures

  • 12 Lectures
    • Czech: Mon 9:15-10:45, T9:107
    • English: TBA
  • Plan
    1. 22.09.2024 – Motivation and Course Overview
    2. 30.09.2024 – Information System Architectures
    3. 09.10.2024 – Service Architecture 1
    4. 07.10.2024 – Service Architecture 2
    5. 14.10.2024 – Communication protocols, HTTP, TLS
    6. 21.10.2024 – HTTP/2 and HTTP/3
    7. 28.10.2024 – No lecture
    8. 11.11.2024 – HATEOAS, Caching, Concurrency Control
    9. 04.11.2024 – Monolithic vs Microservices Architectures
    10. 18.11.2024 – Messaging middleware
    11. 25.11.2024 – High Availability and Performance 1
    12. 02.12.2024 – High Availability and Performance 2
    13. 09.12.2024 – Reserve
    14. 16.12.2024 – Reserve

Organization of Labs

  • Individual work (no teams!)
  • Labs every second week
  • Number of labs: 6
    1. Introduction - FIT Workspaces, setup
    2. REST – Basics, development of a REST service
    3. Security, TLS
    4. Messaging systems
    5. Load balancers, nginx

Methodology for Lab Work

  • No app development, not directly related assignments
    • assignment every second week
    • be prepared for the lab!
    • work alone, ask others for advices
    • Results:
      • 5 completed tasks
      • you will submit results to gitlbab@FIT
Assessment

Assessment

Final Marks

Source: http://www.cvut.cz/pracoviste/pravni-odbor/dokumenty/studijni-predpisy/studijnirad.pdf
Mark Points In words
A 100–90 výborně
B 89–80 velmi dobře
C 79–70 dobře
D 69–60 uspokojivě
E 59–50 dostatečně
F 49–0 nedostatečně
Communication and Resources

Communication

Overview of Resources

About Slides