Web-Anwendungen und Serviceorientierte Architekturen (I)

Inhalt

Studierende, die die Vorlesung bei Prof. Abeck besuchen und prüfen lassen möchten, müssen eine Interessensbekundungs-Mail mit ihrer depseudonymisierten KIT-Mail-Adresse (siehe hierzu auch https://my.scc.kit.edu/shib/pseudonymisierung.php) an cm.research@lists.kit.edu zu schicken. Die WASA-Auftaktveranstaltung findet am Mittwoch, den 23.10.2024 um 09:45 Uhr online statt. Den Link zur Auftaktveranstaltung erhalten Sie als Antwort auf Ihre Interessensbekundungs-Mail.

Der Besuch des Praktikums begleitend zur Vorlesung ist empfohlen, da dort die Konzepte aus der Vorlesung praktisch vertieft werden. Es besteht zudem die Möglichkeit, ein mit der Vorlesung abgestimmtes (Pro-)Seminar zu belegen. Das Vorgehen zur Vergabe der begrenzten Plätze wird bei der WASA-Auftaktveranstaltung vorgestellt. Die Vorlesungs- und Praktikumsmaterialien liegen durchgängig in englischer Sprache vor. Die Ausarbeitung zum Praktikum sowie zum Seminar verfasst jeder Studierende in englischer Sprache. Die Vorlesung und die Besprechungen zum Praktikum sowie zum Seminar selbst finden in deutscher Sprache statt. Auch die mündliche Prüfung findet ausschließlich in deutscher Sprache statt. 

Zum Inhalt der Vorlesungen WASA1 und WASA2; weitere Details siehe WASA INTRODUCTION

WASA1 (Bachelor): Current concepts of software development and architectures (including Microservices, REST, gRPC, Domain-Driven Design, DevOps, CI/CD, Build Pipelines, Container-virtualized Infrastructures) as well as related technologies and tools (including HTTP, Go, Swagger, Postman, JavaScript/TypeScript, Angular, GitLab-CI, Docker, Kubernetes, Prometheus) are introduced. These concepts and technologies are applied in a systematic engineering approach, called Unified Microservice Engineering (UME), to develop and deploy microservice-based web applications. The practical course Microservice2Go1 (M2Go1) can optionally be taken in parallel to the WASA1 lecture. 
In M2Go1, the UME approach is practically applied with the example of a microservice-based car rental application. After a compact introduction to the programming language Golang, the M2Go1 participants learn the systematic engineering of a domain microservice and an application microservice which are both implemented in Golang.
WASA2 (Master): A concise summary of the concepts covered by WASA1 is provided. In WASA2, Identity and Access Management (IAM) and Decentralized Identities (DI) as an advanced IAM topic are presented. In its core, IAM is responsible for the authentication and authorization of users and services in a software application. In the lecture, leading IAM concepts and solutions (e.g., Keycloak, Open Policy Agent, Microsoft Entra Verified ID) are introduced to illustrate how the IAM challenges are solved in IT practice. A concrete microservice-based application dealing with the rental of cars is extended by authentication, authorization, and DI functionality based on the current Internet standards OpenID Connect, OAuth2, and DI-related adaptions of these standards.
The practical course Microservice2Go2 (M2Go2) can optionally be taken in parallel to the WASA2 lecture. In M2Go2, the IAM concepts presented in the lecture are practically applied on the existing analysis, design, and implementation artifacts of the microservices which are written in Golang. 

VortragsspracheDeutsch
Literaturhinweise
  • [Ev04Eric Evans: Domain-Driven Design – Tackling Complexity in the Heart of SoftwareAddison-Wesley2004.

  • [Ne15Sam Newman: Building MicroservicesOReilly MediaInc., 2015.

  • [Ne19Sam Newman: Monolith to Microservices - Evolutionary Patterns to Transform Your MonolithO'Reilly Media Inc., 2019.

  • [Sm15John Ferguson Smart: BDD in Action – Behavior-Driven Development for the whole software lifecycleManning Publications2015.