Welcome to the repository for my MDE coursework, a collection of projects showcasing the application of model-driven engineering principles across various domains. 🌐
- A1 - UML Class Diagrams: Dive into the foundational aspects of MDE with comprehensive UML class diagrams. 📊
- A2 - Language Engineering with MPS: Explore the creation of domain-specific languages using JetBrains MPS. 🛠️
- A3 - EMF and OCL: Get hands-on with Eclipse Modeling Framework (EMF) and Object Constraint Language (OCL) for robust model validation. 🔍
- A4 - Model Transformations: Witness the power of model-to-model and model-to-code transformations. 🔄
- A5 - Visual and Textual Editors: Unleash creativity with Sirius for graphical modeling and Xtext for textual DSLs. ✍️
Embrace visual learning with diagrams and screenshots illustrating key concepts and implementations:
- EMF Model Diagrams ![EMF Model]
- MPS Editor Interface ![MPS Interface]
- Sirius Designer Views ![Sirius Design]
- Xtext Editor Samples ![Xtext Sample]
This project extensively uses Eclipse Modeling Tools for designing, validating, and transforming models. Eclipse provides a rich set of tools that support the development of model-driven applications, enhancing our ability to define, manipulate, and manage complex systems with precision and efficiency. Through Eclipse, we leverage frameworks such as EMF (Eclipse Modeling Framework) for defining models and Ecore metamodels, and OCL (Object Constraint Language) for specifying constraints on models, ensuring robust design and validation of our systems.
Follow these steps to explore and run the projects:
- Clone the repository:
git clone URL
- Navigate to each project folder.
- Refer to specific setup instructions within each assignment's directory.
Your insights and improvements are welcome! 🌟 If you're interested in contributing, please:
- Fork the repo.
- Create a new branch (
git checkout -b feature/amazing-feature
). - Commit your changes (
git commit -m 'Add some amazing feature'
). - Push to the branch (
git push origin feature/amazing-feature
). - Open a Pull Request.
Together, we can push the boundaries of MDE! 🚀