Courses
Design Patterns and Frameworks
Lecture with exercise (WS 13) - LectureLectures
The lectures require reading of the material indicated in the "Obligatory Reading" slides.
You'll find links to the lecture PDFs for each lecture which will be updated shortly before each lecture.
Structure of the lecture
Introduction | ||
---|---|---|
2013-10-15 | Introduction | |
Overview of the course. What is a design pattern? Alexander's theory of beauty. Other kinds of patterns. | ||
Classic Patterns | ||
2013-10-22 | Simple Variability Patterns | |
Variability patterns from the Gamma-Book. The Template-Hook concept. Template Method, Template Class and derived patterns, such as Bridge. | ||
2013-10-22 | Patterns for Dimensional and Layered Systems | |
Facet models. How to realize facets with Multi-Bridges, Chain Bridges, and other patterns. Influence on layered systems. | ||
2013-10-29 | Creational Patterns | |
Creational Patterns. Abstract Factory. Different forms of Factory Method. Builder. | ||
2013-11-05 | Extensibility Patterns | |
Object Recursion as basis of extensibility patterns. Decorator. Composite. Observer. Visitor. | ||
2013-11-12 | Architectural Glue Patterns | |
Architectural Mismatch. Adapter. Proxy. Mediator. Facade. | ||
2013-11-19 | Employment of Design Patterns | |
Employment of design patterns in the software process. How to mine and write a pattern. | ||
Framework Patterns | ||
2013-11-19 | Role-Based Design | |
Role-based design. Implementation of roles. Mapping conceptual role models to physical class models (role-based MDA). | ||
2013-11-19 | ObjectTeams and Smart Application Grids | |
The programming language ObjectTeams features role models as "teams". Role models can be inherited and switched on/off at run time. Smart Application Grids (SMAGs) are a new role-based architectural language for context-sensitive apps. | ||
2013-11-26 | Composition of Design Patterns | |
Composition of design patterns with role models. Template-Hook role model. | ||
2013-12-03 | Framework Variability | |
How design patterns can describe variability points in frameworks. Template-hook role model and metapatterns. Framework hook patterns. | ||
2013-12-17 | Framework Extensibility Patterns | |
Extension Object Pattern. Role Object Pattern. Layered Frameworks with ROP. GenVoca Pattern. Mixin Layers with GenVoca Pattern. | ||
2014-01-07 | Tools and Materials Pattern Language (TAM) | |
Structuring 3-tier applications with the pattern language Tools and Materials (TAM). | ||
2014-01-14 | Examples for Frameworks | [21-sap] |
SAP, San Francisco, and Eclipse as examples for big frameworks. | ||
2014-01-14 | Instantiation of frameworks | |
Trustworthy instantiation of frameworks. Documentation of frameworks. | ||
Refactoring | ||
2014-01-21 | Automatic Generation of Backward Compatibility Adapters for Frameworks | |
Comebacks are pseudo-inverses of refactoring operations. They can be used to generate backward compatibility adapters (white-box and black-box) between an evolving framework and existing adapters. | ||
2014-01-28 | Refactoring and Beyond | |
Refactoring as basic operation in IDEs. Invasive Software Composition relies on refactoring, but unifies connectors, generics, role model merging, views, inheritance, aspects. | ||
Outlook | ||
2014-02-04 | Visions | |
Frameworks on different abstraction levels for models and code. Framework engineering between MDA and CBSE. | ||
2014-02-04 | Conclusion | |
Concluding remarks. |