<p>This course teaches the concepts of Model-driven Software Development (MDSD) and provides necessary theoretical background. MDSD uses models as the main artifact of the development process, from which significant parts of a system are derived automatically. Models do not only serve as documentation, but actually&nbsp;<em>are code</em>. Besides the foundations of MDSD, the lecture deals with Domain-specific Languages (DSLs) as well as model-to-model and model-to-text-transformations.</p>\n<p>A practical course accompanies the lectures. It consists of several assignments to be solved in teams. The assignments apply the concepts from the lecture to practical scenarios.</p>