Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2024/2025
NOTICE: Study plans for the following academic year are available.

Software Architectures

Display time-table
Code Completion Credits Range Language
B4M36SWA Z,ZK 6 2P+2C Czech
Relations:
It is not possible to register for the course B4M36SWA if the student is concurrently registered for or has already completed the course BE4M36SWA (mutually exclusive courses).
The requirement for course B4M36SWA can be fulfilled by substitution with the course BE4M36SWA.
It is not possible to register for the course B4M36SWA if the student is concurrently registered for or has previously completed the course BE4M36SWA (mutually exclusive courses).
Course guarantor:
Miroslav Bureš
Lecturer:
Miroslav Bureš, Karel Frajták
Tutor:
Petr Aubrecht, Miroslav Blaško, Miroslav Bureš, Karel Frajták, Martin Komárek, Petr Křemen, Jiří Šebek
Supervisor:
Department of Computer Science
Synopsis:

In this course students become familiar with the general requirements for software (SW) architecture and related quality parameters that are monitored by software architectures. Individual requirements and parameters are discussed in the context of current architectural standards and design patterns that students practically learn through exercises. In this course, besides the technology perspective on software architecture is also taken into an account the management aspect.

Requirements:
Syllabus of lectures:

1. Introduction to SW architectures, Krutchen's view

2. Architectural styles, communication, patterns

3. SOA, WebServices, SOAP, REST

4. Architectures in the wild

5. J2EE, MVC, frameworks front-end architecture

6. Microservices and cloud

7. Microservices and cloud

8. Multi-container applications, container orchestration, automatic deployment and scaling

9. IoT systems architectures

10. CI/CD

11. Serverless architecture (guest lecture)

12. Big Data and knowledge systems architectures

13. reserve

14. pre-term exam

Syllabus of tutorials:

1. Introduction - Configuration, Containerization & Logging

2. REST API - REST, Swagger, HATEOAS

3. Microservices Patterns - Service discovery, Circuit breaker, Load balancing

4. Microservices Patterns - Event Sourcing, CQRS

5. Microservices Patterns - Database per service, Sagas, Messaging, AsyncAPI

6. Testing Microservices - Service Component Test, Service Integration Contract Test, Consumer-side contract test

7. Microservices Patterns

8. Semestral project consultations

9. Microservices security

10. Microservices orchestration

11. Actor model

12. Very brief introduction to Kubernetes

13. Reserve

14. Semestral project presentation

Study Objective:
Study materials:

1.Fowler, M .: Patterns of Enterprise Application Architecture, Addison-Wesley Professional, 2002.

2.Bass, L .: Software Architecture in Practice, Addison-Wesley Professional, 2012.

3.James Turnbull: The Docker Book

4.Jeff Nickoloff: Docker in Action

5.Kelsey Hightower: Kubernetes: Up and Running

6.Sam Newman, Building Microservices

7.Claus Ibsen, Jonathan Anstey: Camel in Action

8.https://docs.openshift.org/latest/welcome/index.html

9.Matt Stine: Migrating to Cloud Native Application Architectures

10.Michael T. Nygard: Release It!

11.Markus Eisele: Modern Java EE Design Patterns

Note:
Further information:
https://moodle.fel.cvut.cz/local/kos/course_info.php?code=B4M36SWA  
Time-table for winter semester 2024/2025:
Time-table is not available yet
Time-table for summer semester 2024/2025:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Mon
roomKN:E-301
Frajták K.
Bureš M.

11:00–12:30
(lecture parallel1)
Karlovo nám.
roomKN:E-328
Frajták K.
16:15–17:45
(lecture parallel1
parallel nr.101)

Karlovo nám.
roomKN:E-310
Frajták K.
14:30–16:00
(lecture parallel1
parallel nr.102)

Karlovo nám.
roomKN:E-311
Frajták K.
14:30–16:00
(lecture parallel1
parallel nr.103)

Karlovo nám.
Tue
Wed
Thu
Fri
The course is a part of the following study plans:
Data valid to 2025-04-09
For updated information see http://bilakniha.cvut.cz/en/predmet4701806.html