Lecture: Patterns in Software Engineering

Learning Objectives

Students learn the principles of patterns in software development and the structure of pattern-based software systems. They become familiar with the application of patterns in a variety of situations and apply the pattern in concrete applications. They practice the application of the patterns in exercises during interactive workshops.

Note the special course format: Interactive workshops combine theory and practice following the interactive learning philosophy: you practice a pattern right after it was introduced.

Course Information

  • SWS: 4
  • ECTS: 5
  • Module number: IN2081
  • Prerequisite: Introduction to Software Engineering (IN0006)
    • Format: Onsite workshops with in-class exercises (no traditional lecture!)
  • Time and Location:
    • Workshops include exercises and will take place on Monday from 10:00 to 14:00 in HS1 with small breaks.
    • For slide downloads and discussion regarding class, access https://artemis.cit.tum.de.
  • Exam: TBD
  • B. Bruegge and A. H. Dutoit, Object-Oriented Software Engineering Using UML, Patterns, and Java, 3rd ed. Prentice Hall, 2009.
  • F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, and M. Stal, Pattern-Oriented Software Architecture Volume 1: A System of Patterns, Wiley, 1996.
  • E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design patterns: elements of reusable object-oriented software, Addison Wesley, 1995.
  • Refactoring Guru: https://refactoring.guru/design-patterns
  • Source Making: https://sourcemaking.com/design_patterns

Instructors

Exercise Instructor Maximilian Sölch

For further questions, please contact us via pse.ase@xcit.tum.de.