Middleware and Distributed Systems (IN2258)

Lecturer (assistant)
Duration3 SWS
TermWintersemester 2021/22
Language of instructionEnglish
Position within curriculaSee TUMonline
DatesSee TUMonline


Admission information


1. Understand the principles and challenges that determine the development of distributed systems and applications 2. Understand and experiment with basic programming abstractions for building distributed systems and applications 3. Understand and experiment with higher-level abstractions for building distributed systems and applications 4. Learn about common middleware abstractions and patterns


A. Distributed applications 1. Overview, origin, characterization, examples 2. Programming abstractions for building distributed applications B. Middleware systems 1. Roots, origins, historic development, principles 2. Role of standards, standardization processes 3. Reference models (e.g., OMA, RMODP, etc.) 4. Interoperability, system integration, multi-tiered systems 5. Patterns (e.g., request/reply, naming, directory, messaging, pub/sub) 6. Middleware paradigms (e.g., DOO, components, SOA, EDA etc.) 7. Objects, components, services 8. Service-orientation, service interfaces, RESTful services 9. Examples & case studies (e.g., DCE, CORBA, RMI, J2EE, Web Services, SCA)


Programming, data structures and algorithms, operating systems, computer networks, databases


Periodic assignments, final exam