Course syllabus - Model-Driven Engineering
Scope
7.5 credits
Course code
DVA436
Valid from
Autumn semester 2019
Education level
Second cycle
Progressive Specialisation
A1N (Second cycle, has only first-cycle course/s as entry requirements).
Main area(s)
Computer Science
School
School of Innovation, Design and Engineering
Ratified
2014-04-15
Revised
2019-01-25
Literature lists
Course literature is preliminary up to 8 weeks before course start. Course literature can be valid over several semesters.
-
Books
Model-driven software engineering in practice
Second edition. : [San Rafael, California] : Morgan & Claypool Publishers, [2017] - xv, 191 pages
ISBN: 1627057080 LIBRIS-ID: 21710552
Articles
On the Unification Power of Models
Software and Systems Modeling, 4(2):171-188, 2005
Model Transformations in Practice Workshop Call for Papers
Del av MoDELS 2005 konferens, 2005
URL: Link
Meta Object Facility (MOF) 2.0 Query/View/Transformation (QVT), v1.0
Object Management Group (OMG), 2008
URL: Link
-
Books
Domain-specific modeling : enabling full code generation
Hoboken, N.J. : Wiley-Interscience [u.a.], 2008. - XVI, 427 S
ISBN: 0-470-03666-4 LIBRIS-ID: 11264813
URL: Link
Executable UML : a foundation for model-driven architecture
Boston : Addison-Wesley, cop. 2002 - xxxiv, 368 s.
ISBN: 0-201-74804-5 LIBRIS-ID: 8646759
Articles
On the Unification Power of Models
Software and Systems Modeling, 4(2):171-188, 2005
Model Transformations in Practice Workshop Call for Papers
Del av MoDELS 2005 konferens, 2005
URL: Link
Meta Object Facility (MOF) 2.0 Query/View/Transformation (QVT), v1.0
Object Management Group (OMG), 2008
URL: Link
Objectives
Model-Driven Engineering is a technique aiming at reducing the complexity of development and management of modern software applications through the exploitation of models. Even it is a young methodology, it is gaining more and more interest from the industry, which considers it as a possible solution for the ever growing quality factors, notably time-to-market, performances, and maintainability. The aim of the course is to give an in-depth knowledge in the fundamentals of software systems modeling and the automated generation of the implementation, with special focus on the management of evolution. The student will be made aware of both the state of art in research and state of practice in industry.
Learning outcomes
Upon fulfilling the course, the student should be able to:
1. Describe relevant state-of-the-art achievements and open problems in Model-Driven Engineering research.
2. Understand the possibilities and limitations of Model-Driven Engineering for the automated generation of software applications.
3. Evaluate scenarios and apply appropriate software modeling techniques in development projects.
4. Analyze evolution pressures and foresee possible issues in the management of the application lifecycle.
Course content
The focus of this course will be on Model-Driven Engineering. The basics on software modeling technologies will be provided together with the issues related to the automated derivations of corresponding artifacts (models, code, documentation) and evolution management.
The course includes:
- Introduction to Software Engineering and Modeling
- Model-Based Development, Model-Driven Engineering, Model-Driven Architecture
- UML, Modeling languages, Metamodeling, Profiling, Action languages, Domain-Specific Languages
- Model transformations, classification of model transformations
- Model weaving and higher-order transformations
- Evolution management in Model-Driven Engineering
- Model versioning (difference calculation and representation), conflicts
- Model synchronization, incremental and change propagating transformations
- Metamodel evolution and model co-evolution
- Other relevant cases of coupled evolution (grammars, XMLs and document formats, data schema)
The contents will reflect the latest research topics as well as industrial practices. Guest lectures by both academy and industrial experts will be the highlight of this course.
Specific requirements
120 credits where 60 credits are in computer science including basic knowledge of software engineering. This can be achieved by completing the course Software Engineering 1: Basic Course 7.5 credits or equivalent. In addition Swedish course B/Swedish course 3 and English course A/English course 6 are required. For courses given entirely in English exemption is made from the requirement in Swedish course B/Swedish course 3.
Examination
Exercise (INL1), assignments/reports (individual), 5 credits, marks Fail (U), 3, 4 or 5, (covers learning objectives 1-2)
Seminar (SEM1), project presentations (groups), 2,5 credits, marks Fail (U) or Pass (G), (covers learning objectives 2-4)
A student who has a certificate from MDU regarding a disability has the opportunity to submit a request for supportive measures during written examinations or other forms of examination, in accordance with the Rules and Regulations for Examinations at First-cycle and Second-cycle Level at Mälardalen University (2020/1655). It is the examiner who takes decisions on any supportive measures, based on what kind of certificate is issued, and in that case which measures are to be applied.
Suspicions of attempting to deceive in examinations (cheating) are reported to the Vice-Chancellor, in accordance with the Higher Education Ordinance, and are examined by the University’s Disciplinary Board. If the Disciplinary Board considers the student to be guilty of a disciplinary offence, the Board will take a decision on disciplinary action, which will be a warning or suspension.
Grade
Pass with distinction, Pass with credit, Pass, Fail
Interim Regulations and Other Regulations
The course completely 7,5 credits with DVA411 Model-driven Engeineering, 7,5 ECTS credits.