The aim of this course is to provide participants with the principles behind model-driven development of software systems and the application of such a methodology in practice. Modelling is an effective solution to reduce problem complexity and, as a consequence, to enhance time-to-market and properties of the final product.
- Basic concepts of modelling; what are models, metamodels, model transformations, modelling languages
- Model-Driven Engineering in practice; domain-specific languages, UML profiles, design, analysis, and implementation of software systems through model-driven techniques
- Practical problems in modelling usage; evolution management, tool chaining
Learning objectives: After the successful completion of the course the students should be able to:
- Understand the general principles underlying Model-Driven Engineering techniques
- Analyse the contextual success factors and pitfalls for the adoption of Model-Driven software development in their own organization
- Analyse potential issues related to tool compatibility, needs for modelling language extensions/customizations, support for distributed development
Related industrial challenges addressed in the course:
- Foresee potentials and pitfalls entailed by the adoption of Model-Driven Engineering techniques in the current organization setting
- Draw a sustainable plan for introduction of modelling techniques in the development process
- Recognize tool maintenance and vendor locking factors
- Course title in Swedish: Modellbaserad utveckling: teori och praktik
- Course code: DVA471 (at MdH), MDH-24141 (at antagning.se or universityadmissons.se)
- Course syllabus at Mälardalen University
- Apply at antagning.se or universityadmissons.se
- Autumn 2019 instance at Mälardalen University
- Admission requirements: 120 credits of which at least 80 credits within technology or informatics, including at least 30 credits in programming or software development.
Applicants with at least 12 month (full-time) documented work-experience from software development have priority in the selection process.