BACK

Description of Individual Course Units


Course Unit Code Course Unit Title Type of Course Unit Year of Study Semester Number of ECTS Credits
9105055542017 Domain-specific Languages 1 2 8,00

Yüksek Lisans


Turkish


This course aims at providing: - an introduction of domain-specific modeling (DSM), domain-specific languages (DSLs) and domain-specific modeling languages (DSMLs) - a comprehension of the differences between general-purpose languages (GPLs) and DSLs / DSMLs - an ability to design and implement DSLs/DSMLs with the newest technologies and language tools


Prof. Dr. Geylani Kardaş


1 Having knowledge of DSLs / DSMLs
2 Ability to apply DSM for constructing languages
3 Ability to apply metamodeling approach for the derivation of DSL / DSML syntax
4 Ability to implement semantics of DSLs / DSMLs
5 Making your own software development environment with DSM
6 Ability to use cutting-edge techniques and tools for DSL / DSML development

Face to Face


Recommended to take course “9105055252007 Object-oriented Programming” or another course with similar content before selecting this course


[Yok]


Introduction to DSM, DSLs and DSMLs, doman analysis and metamodeling for DSL / DSML, use of model-driven techniques in DSL / DSML development, design and implementation of abstract syntax, concrete syntax and semantics for DSLs / DSMLs


Week Subjects (Theoretical) Teaching Methods Preparatory
1 Introduction. Reasons and motivation for the course
2 Model-driven development and Model-driven Architecture
3 Domain Analysis and Abstract Syntax
4 Concrete syntax and Static Semantics
5 Model and Program Transformation
6 SEA_ML: A DSML for Multi-agent Systems
7 DSML4DT: A DSMLfor Device Trees Preparing research report
8 MIDTERM EXAM
9 Usability Evaluation of DSLs / DSMLs
10 Model-driven Rountrip Engineering
11 Artificial Intelligence for DSL / DSML Development and DSL / DSML Development for Artificial Intelligence
12 Introduction to Low-code Development
13 Low-code Development Platforms
14 Project Presentations
15 Project Presentations
16 FINAL EXAM

Course Books: • Domain-specific Languages: Effective Modeling, Automation and Reuse, Andrzej Wąsowski and Thorsten Berger, Springer, 2023 • Domain-Specific Languages, Martin Fowler, Addison-Wesley Professional, 2010 • DSL Engineering: Designing, Implementing and Using Domain-Specific Languages, Markus Voelter, CreateSpace Independent Publishing Platform, 2013 • Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit, Richard Gronback, Addison-Wesley Professional, 2009 • Formal and Practical Aspects of Domain-Specific Languages: Recent Developments, Marjan Mernik, Information Science Reference, 2013 • Implementing Domain Specific Languages with Xtext and Xtend, Lorenzo Bettini, Packt Publishing, 2016 • Model-Driven Software Engineering in Practice, Second Edition, Marco Brambilla, Jordi Cabot, and Manuel Wimmer, Morgan & Claypool, 2017 • The Low-code Handbook, Jordi Cabot, 2024 Resources: • Lecture Slides • Various journal articles and conference papers Course Materials: • Eclipse Sirius • Software development tools for various DSLs / DSMLs


Theoretical Courses Reading Internet search Term Project Project Presentation Midterm Exam a) Exam b) Individual study for exam Final Exam a) Exam b) Individual study for exam


Term (or Year) Learning Activities Quantity Weight
Midterm Examination 1 100
Total 100
End Of Term (or Year) Learning Activities Quantity Weight
Final Examination 1 100
Total 100
Term (or Year) Learning Activities 40
End Of Term (or Year) Learning Activities 60


Activities Number Time (hours) Total Work Load (hours)
Total Work Load (hours) 0

PO 1 PO 2 PO 3 PO 4 PO 5 PO 6 PO 7
LO 1 2
LO 2 2 2 2
LO 3 2 2 2 1
LO 4 3 3 3 3 1 3 1
LO 5 4 3 2 3
LO 6 2 4 5
* Contribution Level: 1 Very low 2 Low 3 Medium 4 High 5 Very High