SlideShare a Scribd company logo
1 of 18
Download to read offline
KIT – The Research University in the Helmholtz Association
SOFTWARE DESIGN AND QUALITY GROUP
INSTITUTE FOR PROGRAM STRUCTURES AND DATA ORGANIZATION, FACULTY OF INFORMATICS
www.kit.edu
A Graphical Approach to Modularization and
Layering of Metamodels
Amine Kechaou, Misha Strittmatter
November 9, 2017 – SiriusCon, Paris
Software Design and Quality Group
Institute for Program Structures and Data Organization
2 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Background
Student research assistant at the Software Design and
Quality (SDQ) research group
Areas of work
Since 2015: Graphical editors for the Palladio Component
Model (PCM)
Summer term 2017: Bachelor's thesis «A Graphical Approach
to Modularization and Layering of Metamodels»
Second time to attend SiriusCon
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
3 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Motivating example
The Palladio Component Model (PCM)
A metamodel for component-based architectures
In numbers
19 (sub-)subpackages
more than 150 EClassifiers
Conventional tooling not adapted to
modularization
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
4 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
PCM, an example of a complex metamodel
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
5 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
PCM, an example of a complex metamodel
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
6 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
09.11.2017
PCM, an example of a complex metamodel
PCMPCM-Core
PCM-Composition
PCM-Reliability
PCM-Performance
PCM-Behavior
PCM-Repository
FeedbackConcept DemoIntroduction Future work Conclusion
: Metamodel
Software Design and Quality Group
Institute for Program Structures and Data Organization
7 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Layering of metamodels
«Depend upon abstractions. Do not depend upon concretions»
- Robert C. Martin, Design Principles and Design Patterns
A Modular Reference Structure for Component-based Architecture
Description Languages [strittmatter2015]
Organize (sub-)metamodels inside layers
No dependencies to lower layers
No cyclical dependencies between modules
Benefits: reusability, understandability, maintainability
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
8 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Concept
A tool support for the modular reference structure
Graphical representation
Detection of violations (e.g. cycles)
Assistance in the task of modularization
Manipulate metamodels and assign them to layers
Load referenced metamodels automatically
Deliver information about the nature of dependencies
Use cases:
Design a modular metamodel from scratch
Modularize existing metamodels
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
9 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
LIVE
DEMO
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
10 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Support of EMF Profiles
09.11.2017
Excerpt from the PCM
pcmReliability (simplified)
ReliabilityProfile
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
11 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Support of EMF Profiles
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
12 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Future work
Usability
Inform the user about broken dependencies
Hide transitive dependencies
Choose the direction of abstraction (up/down)
…
Refactoring
Factor out the EMF Profiles part
New features
Load related metamodels
Further aspects (e.g. model transformations, VSMs)
Metamodel clustering
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
13 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Limitations and feedback
Limitations of the MRS graphical editor
Intermediate results are not saved
Redundant dependency computation and cycle detection
Improvement potential for Sirius
Run operation on refresh/modification?
Stateful Java services?
"Diagram" variables in the VSM?
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
14 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Feedback
Flexibility and fluidity
Development time
A very responsive community
Autocompletion
Casting (oclAsType)
Available variables
Diagram extension
Edge redefinition
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
15 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Conclusion
Benefits
Easier modularization
Modular metamodeling
Available at:
https://sdqweb.ipd.kit.edu/eclipse/mrs-editor/nightly/
https://github.com/kit-sdq/MRS-Editor
Feedback, suggestions, questions? amine.kechaou@student.kit.edu
09.11.2017
FeedbackConcept DemoIntroduction Future work Conclusion
Software Design and Quality Group
Institute for Program Structures and Data Organization
16 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
References
[strittmatter2015] A Modular Reference Structure for Component-based
Architecture Description Languages”. In: 2nd International Workshop on Model-
Driven Engineering for Component-Based Systems (ModComp). CEUR, 2015,
pp. 36–41. url: http://ceur-ws.org/Vol-1463/paper6.pdf
09.11.2017
Software Design and Quality Group
Institute for Program Structures and Data Organization
17 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
BACKUP
09.11.2017
Software Design and Quality Group
Institute for Program Structures and Data Organization
18 Amine Kechaou, Misha Strittmatter –
A Graphical Approach to Modularization and Layering of Metamodels
Implementation
A Sirius-based graphical editor
The MRS metamodel
defines the basis of the modular reference structure
The Viewpoint Specification Model (VSM)
Java services and external Java actions
09.11.2017

More Related Content

What's hot

Source code visualization (SourceViz)
Source code visualization (SourceViz)Source code visualization (SourceViz)
Source code visualization (SourceViz)
Anas Bilal
 
Vre ci presentation -ric workshop - july 26th
Vre ci presentation -ric workshop - july 26thVre ci presentation -ric workshop - july 26th
Vre ci presentation -ric workshop - july 26th
djmichael156
 
Jiali_Han_Resume
Jiali_Han_ResumeJiali_Han_Resume
Jiali_Han_Resume
Jiali Han
 

What's hot (11)

View Based Near Real Time Collaborative Modeling for Information Systems Engi...
View Based Near Real Time Collaborative Modeling for Information Systems Engi...View Based Near Real Time Collaborative Modeling for Information Systems Engi...
View Based Near Real Time Collaborative Modeling for Information Systems Engi...
 
Source code visualization (SourceViz)
Source code visualization (SourceViz)Source code visualization (SourceViz)
Source code visualization (SourceViz)
 
SyncMeta: Near Real-time Collaborative Conceptual Modeling on the Web
SyncMeta: Near Real-time Collaborative Conceptual Modeling on the WebSyncMeta: Near Real-time Collaborative Conceptual Modeling on the Web
SyncMeta: Near Real-time Collaborative Conceptual Modeling on the Web
 
Ray lukas
Ray lukasRay lukas
Ray lukas
 
Vre ci presentation -ric workshop - july 26th
Vre ci presentation -ric workshop - july 26thVre ci presentation -ric workshop - july 26th
Vre ci presentation -ric workshop - july 26th
 
BabelNet Workshop 2016 - Making sense of building data and building product data
BabelNet Workshop 2016 - Making sense of building data and building product dataBabelNet Workshop 2016 - Making sense of building data and building product data
BabelNet Workshop 2016 - Making sense of building data and building product data
 
Jiali_Han_Resume
Jiali_Han_ResumeJiali_Han_Resume
Jiali_Han_Resume
 
IBM Think Milano
IBM Think MilanoIBM Think Milano
IBM Think Milano
 
Data for Science Service Portfolio
Data for Science Service PortfolioData for Science Service Portfolio
Data for Science Service Portfolio
 
Yjs: A Framework for Near Real-time P2P Shared Editing on Arbitrary Data Types
Yjs: A Framework for Near Real-time P2P Shared Editing on Arbitrary Data TypesYjs: A Framework for Near Real-time P2P Shared Editing on Arbitrary Data Types
Yjs: A Framework for Near Real-time P2P Shared Editing on Arbitrary Data Types
 
CIB W78 2015 - Keynote "The Web of Construction Data:Pathways and Opportunities"
CIB W78 2015 - Keynote "The Web of Construction Data:Pathways and Opportunities"CIB W78 2015 - Keynote "The Web of Construction Data:Pathways and Opportunities"
CIB W78 2015 - Keynote "The Web of Construction Data:Pathways and Opportunities"
 

Similar to SiriusCon17 - A Graphical Approach to Modularization and Layering of Metamodels

01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
AftaZani1
 
Creating a Use Case
Creating a Use Case                                               Creating a Use Case
Creating a Use Case
CruzIbarra161
 
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWAREPATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
ijseajournal
 
towards a model-based framework for development of engineering1 (1)
towards a model-based framework for development of engineering1 (1)towards a model-based framework for development of engineering1 (1)
towards a model-based framework for development of engineering1 (1)
Jinzhi Lu
 

Similar to SiriusCon17 - A Graphical Approach to Modularization and Layering of Metamodels (20)

01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
 
Creating a Use Case
Creating a Use Case                                               Creating a Use Case
Creating a Use Case
 
Introduction to MDE
Introduction to MDEIntroduction to MDE
Introduction to MDE
 
OOAD-Unit1.ppt
OOAD-Unit1.pptOOAD-Unit1.ppt
OOAD-Unit1.ppt
 
Studying Software Engineering Patterns for Designing Machine Learning Systems
Studying Software Engineering Patterns for Designing Machine Learning SystemsStudying Software Engineering Patterns for Designing Machine Learning Systems
Studying Software Engineering Patterns for Designing Machine Learning Systems
 
Towards Design-space Exploration of Component Chains in Vehicle Software
Towards Design-space Exploration of Component Chains in Vehicle SoftwareTowards Design-space Exploration of Component Chains in Vehicle Software
Towards Design-space Exploration of Component Chains in Vehicle Software
 
3 d molding and casting2
3 d molding and casting23 d molding and casting2
3 d molding and casting2
 
Modelling Security Architecture
Modelling Security ArchitectureModelling Security Architecture
Modelling Security Architecture
 
Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...
Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...
Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...
 
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWAREPATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
 
[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture[2017/2018] Introduction to Software Architecture
[2017/2018] Introduction to Software Architecture
 
[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture[2016/2017] Introduction to Software Architecture
[2016/2017] Introduction to Software Architecture
 
Object Oriented Approach for Software Development
Object Oriented Approach for Software DevelopmentObject Oriented Approach for Software Development
Object Oriented Approach for Software Development
 
The state of the art in integrating machine learning into visual analytics
The state of the art in integrating machine learning into visual analyticsThe state of the art in integrating machine learning into visual analytics
The state of the art in integrating machine learning into visual analytics
 
SysML v2 and MBSE: The next ten years
SysML v2 and MBSE: The next ten yearsSysML v2 and MBSE: The next ten years
SysML v2 and MBSE: The next ten years
 
Collaborative Model-Driven Software Engineering: a Classification Framework a...
Collaborative Model-Driven Software Engineering: a Classification Framework a...Collaborative Model-Driven Software Engineering: a Classification Framework a...
Collaborative Model-Driven Software Engineering: a Classification Framework a...
 
towards a model-based framework for development of engineering1 (1)
towards a model-based framework for development of engineering1 (1)towards a model-based framework for development of engineering1 (1)
towards a model-based framework for development of engineering1 (1)
 
[2015/2016] Introduction to software architecture
[2015/2016] Introduction to software architecture[2015/2016] Introduction to software architecture
[2015/2016] Introduction to software architecture
 
Computer vision
Computer visionComputer vision
Computer vision
 
From Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesFrom Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems Architectures
 

More from Obeo

Digitally assisted design for safety analysis
Digitally assisted design for safety analysisDigitally assisted design for safety analysis
Digitally assisted design for safety analysis
Obeo
 
INCOSE IS 2023 | You deserve more than the best in class MBSE tool
INCOSE IS 2023 | You deserve more than the best in class MBSE toolINCOSE IS 2023 | You deserve more than the best in class MBSE tool
INCOSE IS 2023 | You deserve more than the best in class MBSE tool
Obeo
 
Tailoring Arcadia Framework in Thales UK
Tailoring Arcadia Framework in Thales UKTailoring Arcadia Framework in Thales UK
Tailoring Arcadia Framework in Thales UK
Obeo
 
CapellaDays2022 | Politecnico di Milano | Interplanetary Space Mission as a r...
CapellaDays2022 | Politecnico di Milano | Interplanetary Space Mission as a r...CapellaDays2022 | Politecnico di Milano | Interplanetary Space Mission as a r...
CapellaDays2022 | Politecnico di Milano | Interplanetary Space Mission as a r...
Obeo
 
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
Obeo
 
Connecting Textual Requirements with Capella Models
Connecting Textual Requirements with Capella Models Connecting Textual Requirements with Capella Models
Connecting Textual Requirements with Capella Models
Obeo
 
Defining Viewpoints for Ontology-Based DSLs
Defining Viewpoints for Ontology-Based DSLsDefining Viewpoints for Ontology-Based DSLs
Defining Viewpoints for Ontology-Based DSLs
Obeo
 

More from Obeo (20)

Digitally assisted design for safety analysis
Digitally assisted design for safety analysisDigitally assisted design for safety analysis
Digitally assisted design for safety analysis
 
INCOSE IS 2023 | You deserve more than the best in class MBSE tool
INCOSE IS 2023 | You deserve more than the best in class MBSE toolINCOSE IS 2023 | You deserve more than the best in class MBSE tool
INCOSE IS 2023 | You deserve more than the best in class MBSE tool
 
Tailoring Arcadia Framework in Thales UK
Tailoring Arcadia Framework in Thales UKTailoring Arcadia Framework in Thales UK
Tailoring Arcadia Framework in Thales UK
 
CapellaDays2022 | Saratech | Interface Control Document Generation and Linkag...
CapellaDays2022 | Saratech | Interface Control Document Generation and Linkag...CapellaDays2022 | Saratech | Interface Control Document Generation and Linkag...
CapellaDays2022 | Saratech | Interface Control Document Generation and Linkag...
 
CapellaDays2022 | Politecnico di Milano | Interplanetary Space Mission as a r...
CapellaDays2022 | Politecnico di Milano | Interplanetary Space Mission as a r...CapellaDays2022 | Politecnico di Milano | Interplanetary Space Mission as a r...
CapellaDays2022 | Politecnico di Milano | Interplanetary Space Mission as a r...
 
CapellaDays2022 | NavalGroup | Closing the gap between traditional engineerin...
CapellaDays2022 | NavalGroup | Closing the gap between traditional engineerin...CapellaDays2022 | NavalGroup | Closing the gap between traditional engineerin...
CapellaDays2022 | NavalGroup | Closing the gap between traditional engineerin...
 
CapellaDays2022 | Thales | Stairway to heaven: Climbing the very first steps
CapellaDays2022 | Thales | Stairway to heaven: Climbing the very first stepsCapellaDays2022 | Thales | Stairway to heaven: Climbing the very first steps
CapellaDays2022 | Thales | Stairway to heaven: Climbing the very first steps
 
CapellaDays2022 | COMAC - PGM | How We Use Capella for Collaborative Design i...
CapellaDays2022 | COMAC - PGM | How We Use Capella for Collaborative Design i...CapellaDays2022 | COMAC - PGM | How We Use Capella for Collaborative Design i...
CapellaDays2022 | COMAC - PGM | How We Use Capella for Collaborative Design i...
 
CapellaDays2022 | CILAS - ArianeGroup | CILAS feedback about Capella use
CapellaDays2022 | CILAS - ArianeGroup | CILAS feedback about Capella useCapellaDays2022 | CILAS - ArianeGroup | CILAS feedback about Capella use
CapellaDays2022 | CILAS - ArianeGroup | CILAS feedback about Capella use
 
CapellaDays2022 | ThermoFisher - ESI TNO | A method for quantitative evaluati...
CapellaDays2022 | ThermoFisher - ESI TNO | A method for quantitative evaluati...CapellaDays2022 | ThermoFisher - ESI TNO | A method for quantitative evaluati...
CapellaDays2022 | ThermoFisher - ESI TNO | A method for quantitative evaluati...
 
CapellaDays2022 | Thales DMS | A global engineering process based on MBSE to ...
CapellaDays2022 | Thales DMS | A global engineering process based on MBSE to ...CapellaDays2022 | Thales DMS | A global engineering process based on MBSE to ...
CapellaDays2022 | Thales DMS | A global engineering process based on MBSE to ...
 
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
CapellaDays2022 | SIEMENS | Expand MBSE into Model-based Production Engineeri...
 
Gestion applicative des données, un REX du Ministère de l'Éducation Nationale
Gestion applicative des données, un REX du Ministère de l'Éducation NationaleGestion applicative des données, un REX du Ministère de l'Éducation Nationale
Gestion applicative des données, un REX du Ministère de l'Éducation Nationale
 
Simulation with Python and MATLAB® in Capella
Simulation with Python and MATLAB® in CapellaSimulation with Python and MATLAB® in Capella
Simulation with Python and MATLAB® in Capella
 
Connecting Textual Requirements with Capella Models
Connecting Textual Requirements with Capella Models Connecting Textual Requirements with Capella Models
Connecting Textual Requirements with Capella Models
 
Sirius Web Advanced : Customize and Extend the Platform
Sirius Web Advanced : Customize and Extend the PlatformSirius Web Advanced : Customize and Extend the Platform
Sirius Web Advanced : Customize and Extend the Platform
 
Sirius Web 101 : Create a Modeler With No Code
Sirius Web 101 : Create a Modeler With No CodeSirius Web 101 : Create a Modeler With No Code
Sirius Web 101 : Create a Modeler With No Code
 
Sirius Project, Now and In the Future
Sirius Project, Now and In the FutureSirius Project, Now and In the Future
Sirius Project, Now and In the Future
 
Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...
Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...
Visualizing, Analyzing and Optimizing Automotive Architecture Models using Si...
 
Defining Viewpoints for Ontology-Based DSLs
Defining Viewpoints for Ontology-Based DSLsDefining Viewpoints for Ontology-Based DSLs
Defining Viewpoints for Ontology-Based DSLs
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

SiriusCon17 - A Graphical Approach to Modularization and Layering of Metamodels

  • 1. KIT – The Research University in the Helmholtz Association SOFTWARE DESIGN AND QUALITY GROUP INSTITUTE FOR PROGRAM STRUCTURES AND DATA ORGANIZATION, FACULTY OF INFORMATICS www.kit.edu A Graphical Approach to Modularization and Layering of Metamodels Amine Kechaou, Misha Strittmatter November 9, 2017 – SiriusCon, Paris
  • 2. Software Design and Quality Group Institute for Program Structures and Data Organization 2 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Background Student research assistant at the Software Design and Quality (SDQ) research group Areas of work Since 2015: Graphical editors for the Palladio Component Model (PCM) Summer term 2017: Bachelor's thesis «A Graphical Approach to Modularization and Layering of Metamodels» Second time to attend SiriusCon 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 3. Software Design and Quality Group Institute for Program Structures and Data Organization 3 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Motivating example The Palladio Component Model (PCM) A metamodel for component-based architectures In numbers 19 (sub-)subpackages more than 150 EClassifiers Conventional tooling not adapted to modularization 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 4. Software Design and Quality Group Institute for Program Structures and Data Organization 4 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels PCM, an example of a complex metamodel 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 5. Software Design and Quality Group Institute for Program Structures and Data Organization 5 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels PCM, an example of a complex metamodel 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 6. Software Design and Quality Group Institute for Program Structures and Data Organization 6 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels 09.11.2017 PCM, an example of a complex metamodel PCMPCM-Core PCM-Composition PCM-Reliability PCM-Performance PCM-Behavior PCM-Repository FeedbackConcept DemoIntroduction Future work Conclusion : Metamodel
  • 7. Software Design and Quality Group Institute for Program Structures and Data Organization 7 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Layering of metamodels «Depend upon abstractions. Do not depend upon concretions» - Robert C. Martin, Design Principles and Design Patterns A Modular Reference Structure for Component-based Architecture Description Languages [strittmatter2015] Organize (sub-)metamodels inside layers No dependencies to lower layers No cyclical dependencies between modules Benefits: reusability, understandability, maintainability 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 8. Software Design and Quality Group Institute for Program Structures and Data Organization 8 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Concept A tool support for the modular reference structure Graphical representation Detection of violations (e.g. cycles) Assistance in the task of modularization Manipulate metamodels and assign them to layers Load referenced metamodels automatically Deliver information about the nature of dependencies Use cases: Design a modular metamodel from scratch Modularize existing metamodels 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 9. Software Design and Quality Group Institute for Program Structures and Data Organization 9 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels LIVE DEMO 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 10. Software Design and Quality Group Institute for Program Structures and Data Organization 10 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Support of EMF Profiles 09.11.2017 Excerpt from the PCM pcmReliability (simplified) ReliabilityProfile FeedbackConcept DemoIntroduction Future work Conclusion
  • 11. Software Design and Quality Group Institute for Program Structures and Data Organization 11 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Support of EMF Profiles 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 12. Software Design and Quality Group Institute for Program Structures and Data Organization 12 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Future work Usability Inform the user about broken dependencies Hide transitive dependencies Choose the direction of abstraction (up/down) … Refactoring Factor out the EMF Profiles part New features Load related metamodels Further aspects (e.g. model transformations, VSMs) Metamodel clustering 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 13. Software Design and Quality Group Institute for Program Structures and Data Organization 13 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Limitations and feedback Limitations of the MRS graphical editor Intermediate results are not saved Redundant dependency computation and cycle detection Improvement potential for Sirius Run operation on refresh/modification? Stateful Java services? "Diagram" variables in the VSM? 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 14. Software Design and Quality Group Institute for Program Structures and Data Organization 14 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Feedback Flexibility and fluidity Development time A very responsive community Autocompletion Casting (oclAsType) Available variables Diagram extension Edge redefinition 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 15. Software Design and Quality Group Institute for Program Structures and Data Organization 15 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Conclusion Benefits Easier modularization Modular metamodeling Available at: https://sdqweb.ipd.kit.edu/eclipse/mrs-editor/nightly/ https://github.com/kit-sdq/MRS-Editor Feedback, suggestions, questions? amine.kechaou@student.kit.edu 09.11.2017 FeedbackConcept DemoIntroduction Future work Conclusion
  • 16. Software Design and Quality Group Institute for Program Structures and Data Organization 16 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels References [strittmatter2015] A Modular Reference Structure for Component-based Architecture Description Languages”. In: 2nd International Workshop on Model- Driven Engineering for Component-Based Systems (ModComp). CEUR, 2015, pp. 36–41. url: http://ceur-ws.org/Vol-1463/paper6.pdf 09.11.2017
  • 17. Software Design and Quality Group Institute for Program Structures and Data Organization 17 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels BACKUP 09.11.2017
  • 18. Software Design and Quality Group Institute for Program Structures and Data Organization 18 Amine Kechaou, Misha Strittmatter – A Graphical Approach to Modularization and Layering of Metamodels Implementation A Sirius-based graphical editor The MRS metamodel defines the basis of the modular reference structure The Viewpoint Specification Model (VSM) Java services and external Java actions 09.11.2017