SlideShare a Scribd company logo
1 of 12
Download to read offline
Juha-Pekka Tolvanen
jpt@metacase.com
Collaborative
modeling and metamodeling
Agenda
 Collaborative metamodeling
 Collaborative modeling
 Q&A
Experts define languages
& generators
Team models with domain
concepts & generate code
 Integrated
language definition
 No programming
needed
 Language evolution
 Several integrated
languages
 Collaborative
language
engineering
(metamodeling)
 Models update
on any change
 Scalable to
large models
(4 billion)
 Fast
generators
 Interfaces to
various IDEs
(VS, Eclipse)
 Collaborative
modeling
Context for collaboration: MetaEdit+
Why collaboration on language
engineering?
 A language definition has several parts:
abstract syntax, constraints, notation & semantic rules
– Single person is often not master of them all
 Language definition need to be consistent,
complete and correct
– If not: see UML standard containing hundreds of errors1 in
abstract syntax and their related constraints
 Single language is not enough, we use several
(integrated) languages
– Multiple persons almost always involved
361 errors in UML 2.0: Bauerdick et al, in Procs of UML 2004, LNCS 3273, Springer, 2004;
320 errors in UML 2.3: Wilke & Demuth, 2010, journal.ub.tu-berlin.de/eceasst/article/download/669/682‎
Collaborative metamodeling
(example: TDL by ETSI)
A) Concepts
(Abstract syntax)
B) Constraints
(Static semantics)
C) Notation
(Concrete syntax)
D) Generators
(Semantics)
Demonstration:
Benefits of collaborative
metamodeling
 Leads to better quality languages
– Languages can be checked early while being defined
– Users may immediately test the language, incl. validation
– When defined in smaller increments the risk of creating the
wrong language constructs is reduced
 Development of languages and generators is faster:
– Parallel effort
– Work shared based on expertise
 Language adoption and acceptance improves since
language users are directly involved
Why collaborative modeling?
 Collaboration means working together with the same
model - even at the same time
– Even in the same diagram (not typical, but possible)
– Partly with the same model elements (typical)
 Known and proven technology to enable collaboration:
Repository with concurrency control
– Conflicts detected and handled at the modeling time
• Trace to users
– No need to diff
– No need to merge
– Scales to large models
Collaborative modeling
(example: automotive system)
A) Hardware
B) Functions
C) Allocation
D) Behavior
+ 16 other
– Safety
– Errors
– Timing
– ...
Demonstration:
Benefits of collaborative modeling
 Team can work in the same design space in parallel
– E.g. If feedback is needed from colleagues they all can see
the same model (or model element) and update it
 No time and effort is needed to handle conflicts
 Development is faster as all model information is
available as needed
 Work from multiple views – often based on different
languages – can be integrated at model level
 Trace is available among views and model elements
 Models can be checked and verified early – not based on
one diagram only but on larger model which may be
based on different languages
Cases, tutorial, videos, manuals
and evaluation version available
at:
www.metacase.com
Contact: Juha-Pekka Tolvanen (jpt@metacase.com)
Company: info@metacase.com
Thank you!

More Related Content

Viewers also liked

Collaborative Modeling In A Nutshell
Collaborative Modeling In A NutshellCollaborative Modeling In A Nutshell
Collaborative Modeling In A NutshellKent McDonald
 
Real-Time Metamodeling in the Web Browser
Real-Time Metamodeling in the Web BrowserReal-Time Metamodeling in the Web Browser
Real-Time Metamodeling in the Web BrowserMichael Derntl
 
Web based tool for domain specific modeling
Web based tool for domain specific modeling Web based tool for domain specific modeling
Web based tool for domain specific modeling PG Scholar
 
Collaboro - EclipseCon France 2013 - Ignite Talks Session
Collaboro - EclipseCon France 2013 - Ignite Talks SessionCollaboro - EclipseCon France 2013 - Ignite Talks Session
Collaboro - EclipseCon France 2013 - Ignite Talks SessionHugo Bruneliere
 
Domain specific modelling (DSM)
Domain specific modelling (DSM)Domain specific modelling (DSM)
Domain specific modelling (DSM)PG Scholar
 
Collaborative editing of emf ecore meta models and models conflict detection,...
Collaborative editing of emf ecore meta models and models conflict detection,...Collaborative editing of emf ecore meta models and models conflict detection,...
Collaborative editing of emf ecore meta models and models conflict detection,...Amanuel Alemayehu
 
IBM Connections 4.5 bidirectional synchronization
IBM Connections 4.5 bidirectional synchronizationIBM Connections 4.5 bidirectional synchronization
IBM Connections 4.5 bidirectional synchronizationmichele buccarello
 
Cómo descargar vídeos de Facebook
Cómo descargar vídeos de FacebookCómo descargar vídeos de Facebook
Cómo descargar vídeos de FacebookFacebook Descargar
 
Cómo recuperar mensajes borrados de
Cómo recuperar mensajes borrados deCómo recuperar mensajes borrados de
Cómo recuperar mensajes borrados dedescargarfacebook1
 
problems of Transgenders
problems of Transgendersproblems of Transgenders
problems of Transgendersameera sahadad
 
Dover Street Market Brand Report
Dover Street Market Brand ReportDover Street Market Brand Report
Dover Street Market Brand ReportJames Tustin
 
20 examples on Domain-Specific Modeling Languages
20 examples on Domain-Specific Modeling Languages20 examples on Domain-Specific Modeling Languages
20 examples on Domain-Specific Modeling LanguagesJuha-Pekka Tolvanen
 
Social Collaboration und Moderne Kunst
Social Collaboration und Moderne KunstSocial Collaboration und Moderne Kunst
Social Collaboration und Moderne KunstJoachim Haydecker
 
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...Obeo
 
Gulp入門 - コーディングを10倍速くする
Gulp入門 - コーディングを10倍速くするGulp入門 - コーディングを10倍速くする
Gulp入門 - コーディングを10倍速くするHayashi Yuichi
 

Viewers also liked (20)

Collaborative Modeling In A Nutshell
Collaborative Modeling In A NutshellCollaborative Modeling In A Nutshell
Collaborative Modeling In A Nutshell
 
Real-Time Metamodeling in the Web Browser
Real-Time Metamodeling in the Web BrowserReal-Time Metamodeling in the Web Browser
Real-Time Metamodeling in the Web Browser
 
What is clooca
What is cloocaWhat is clooca
What is clooca
 
Interactive DSML Design
Interactive DSML DesignInteractive DSML Design
Interactive DSML Design
 
Web based tool for domain specific modeling
Web based tool for domain specific modeling Web based tool for domain specific modeling
Web based tool for domain specific modeling
 
Collaboro - EclipseCon France 2013 - Ignite Talks Session
Collaboro - EclipseCon France 2013 - Ignite Talks SessionCollaboro - EclipseCon France 2013 - Ignite Talks Session
Collaboro - EclipseCon France 2013 - Ignite Talks Session
 
Dianóstico
DianósticoDianóstico
Dianóstico
 
Domain specific modelling (DSM)
Domain specific modelling (DSM)Domain specific modelling (DSM)
Domain specific modelling (DSM)
 
Collaborative editing of emf ecore meta models and models conflict detection,...
Collaborative editing of emf ecore meta models and models conflict detection,...Collaborative editing of emf ecore meta models and models conflict detection,...
Collaborative editing of emf ecore meta models and models conflict detection,...
 
IBM Connections 4.5 bidirectional synchronization
IBM Connections 4.5 bidirectional synchronizationIBM Connections 4.5 bidirectional synchronization
IBM Connections 4.5 bidirectional synchronization
 
Cómo descargar vídeos de Facebook
Cómo descargar vídeos de FacebookCómo descargar vídeos de Facebook
Cómo descargar vídeos de Facebook
 
Laura
LauraLaura
Laura
 
Cómo recuperar mensajes borrados de
Cómo recuperar mensajes borrados deCómo recuperar mensajes borrados de
Cómo recuperar mensajes borrados de
 
Evaluacion
EvaluacionEvaluacion
Evaluacion
 
problems of Transgenders
problems of Transgendersproblems of Transgenders
problems of Transgenders
 
Dover Street Market Brand Report
Dover Street Market Brand ReportDover Street Market Brand Report
Dover Street Market Brand Report
 
20 examples on Domain-Specific Modeling Languages
20 examples on Domain-Specific Modeling Languages20 examples on Domain-Specific Modeling Languages
20 examples on Domain-Specific Modeling Languages
 
Social Collaboration und Moderne Kunst
Social Collaboration und Moderne KunstSocial Collaboration und Moderne Kunst
Social Collaboration und Moderne Kunst
 
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...
SiriusCon2016 - Une plateforme de modelisation support au PLM de l'ingenierie...
 
Gulp入門 - コーディングを10倍速くする
Gulp入門 - コーディングを10倍速くするGulp入門 - コーディングを10倍速くする
Gulp入門 - コーディングを10倍速くする
 

Similar to Collaborative modeling and metamodeling in MetaEdit+

Collaborative modeling and metamodeling
Collaborative modeling and metamodelingCollaborative modeling and metamodeling
Collaborative modeling and metamodelingJuha-Pekka Tolvanen
 
Collaborative language engineering and language use: demo with MetaEdit+
Collaborative language engineering and language use: demo with MetaEdit+Collaborative language engineering and language use: demo with MetaEdit+
Collaborative language engineering and language use: demo with MetaEdit+Juha-Pekka Tolvanen
 
The Economics of OptimJ
The Economics of OptimJThe Economics of OptimJ
The Economics of OptimJPatrick Viry
 
DAE Tools 1.8.0 - Introduction
DAE Tools 1.8.0 - IntroductionDAE Tools 1.8.0 - Introduction
DAE Tools 1.8.0 - IntroductionDragan Nikolić
 
Notes on software engineering
Notes on software engineeringNotes on software engineering
Notes on software engineeringErtan Deniz
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...Benoit Combemale
 
Usability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific LanguagesUsability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific LanguagesAnkica Barisic
 
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)Jordi Cabot
 
Writing good C# code for good cloud applications - Draft Oct 20, 2014
Writing good C# code for good cloud applications - Draft Oct 20, 2014Writing good C# code for good cloud applications - Draft Oct 20, 2014
Writing good C# code for good cloud applications - Draft Oct 20, 2014Marco Parenzan
 
Standards Based Approach to User Interface Development
Standards Based Approach to User Interface DevelopmentStandards Based Approach to User Interface Development
Standards Based Approach to User Interface DevelopmentSameer Chavan
 
Agile paris 2022 sharing
Agile paris 2022   sharingAgile paris 2022   sharing
Agile paris 2022 sharingJas Chong
 
STATICMOCK : A Mock Object Framework for Compiled Languages
STATICMOCK : A Mock Object Framework for Compiled Languages STATICMOCK : A Mock Object Framework for Compiled Languages
STATICMOCK : A Mock Object Framework for Compiled Languages ijseajournal
 
The I in PRIMM - Code Comprehension and Questioning
The I in PRIMM - Code Comprehension and QuestioningThe I in PRIMM - Code Comprehension and Questioning
The I in PRIMM - Code Comprehension and QuestioningSue Sentance
 
Envisioning the Future of Language Workbenches
Envisioning the Future of Language WorkbenchesEnvisioning the Future of Language Workbenches
Envisioning the Future of Language WorkbenchesMarkus Voelter
 
Our research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringOur research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringJordi Cabot
 
Domain-specific Modeling and Code Generation for Cross-platform Mobile and Io...
Domain-specific Modeling and Code Generation for Cross-platform Mobile and Io...Domain-specific Modeling and Code Generation for Cross-platform Mobile and Io...
Domain-specific Modeling and Code Generation for Cross-platform Mobile and Io...Università degli Studi dell'Aquila
 
What would Jesus Developer do?
What would Jesus Developer do?What would Jesus Developer do?
What would Jesus Developer do?Lukáš Čech
 
10 Things You Should Know About MDD
10 Things You Should Know About MDD10 Things You Should Know About MDD
10 Things You Should Know About MDDJohan den Haan
 

Similar to Collaborative modeling and metamodeling in MetaEdit+ (20)

Collaborative modeling and metamodeling
Collaborative modeling and metamodelingCollaborative modeling and metamodeling
Collaborative modeling and metamodeling
 
Collaborative language engineering and language use: demo with MetaEdit+
Collaborative language engineering and language use: demo with MetaEdit+Collaborative language engineering and language use: demo with MetaEdit+
Collaborative language engineering and language use: demo with MetaEdit+
 
The Economics of OptimJ
The Economics of OptimJThe Economics of OptimJ
The Economics of OptimJ
 
DAE Tools 1.8.0 - Introduction
DAE Tools 1.8.0 - IntroductionDAE Tools 1.8.0 - Introduction
DAE Tools 1.8.0 - Introduction
 
Notes on software engineering
Notes on software engineeringNotes on software engineering
Notes on software engineering
 
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
A Tool-Supported Approach for Omniscient Debugging and Concurrent Execution o...
 
Usability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific LanguagesUsability evaluation of Domain-Specific Languages
Usability evaluation of Domain-Specific Languages
 
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)Agile and Modeling / MDE : friends or foes? (Agile Tour  Nantes 2010)
Agile and Modeling / MDE : friends or foes? (Agile Tour Nantes 2010)
 
Writing good C# code for good cloud applications - Draft Oct 20, 2014
Writing good C# code for good cloud applications - Draft Oct 20, 2014Writing good C# code for good cloud applications - Draft Oct 20, 2014
Writing good C# code for good cloud applications - Draft Oct 20, 2014
 
Standards Based Approach to User Interface Development
Standards Based Approach to User Interface DevelopmentStandards Based Approach to User Interface Development
Standards Based Approach to User Interface Development
 
Agile paris 2022 sharing
Agile paris 2022   sharingAgile paris 2022   sharing
Agile paris 2022 sharing
 
STATICMOCK : A Mock Object Framework for Compiled Languages
STATICMOCK : A Mock Object Framework for Compiled Languages STATICMOCK : A Mock Object Framework for Compiled Languages
STATICMOCK : A Mock Object Framework for Compiled Languages
 
L05 Design Patterns
L05 Design PatternsL05 Design Patterns
L05 Design Patterns
 
ERP_Up_Down.ppt
ERP_Up_Down.pptERP_Up_Down.ppt
ERP_Up_Down.ppt
 
The I in PRIMM - Code Comprehension and Questioning
The I in PRIMM - Code Comprehension and QuestioningThe I in PRIMM - Code Comprehension and Questioning
The I in PRIMM - Code Comprehension and Questioning
 
Envisioning the Future of Language Workbenches
Envisioning the Future of Language WorkbenchesEnvisioning the Future of Language Workbenches
Envisioning the Future of Language Workbenches
 
Our research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software EngineeringOur research lines on Model-Driven Engineering and Software Engineering
Our research lines on Model-Driven Engineering and Software Engineering
 
Domain-specific Modeling and Code Generation for Cross-platform Mobile and Io...
Domain-specific Modeling and Code Generation for Cross-platform Mobile and Io...Domain-specific Modeling and Code Generation for Cross-platform Mobile and Io...
Domain-specific Modeling and Code Generation for Cross-platform Mobile and Io...
 
What would Jesus Developer do?
What would Jesus Developer do?What would Jesus Developer do?
What would Jesus Developer do?
 
10 Things You Should Know About MDD
10 Things You Should Know About MDD10 Things You Should Know About MDD
10 Things You Should Know About MDD
 

More from Juha-Pekka Tolvanen

How to formalize a ubiquitous language into a domain-specific language.pdf
How to formalize a ubiquitous language into a domain-specific language.pdfHow to formalize a ubiquitous language into a domain-specific language.pdf
How to formalize a ubiquitous language into a domain-specific language.pdfJuha-Pekka Tolvanen
 
Measuring Productivity from Model-Based Development
Measuring Productivity from Model-Based DevelopmentMeasuring Productivity from Model-Based Development
Measuring Productivity from Model-Based DevelopmentJuha-Pekka Tolvanen
 
How domain specific modeling languages address variability: investigation of ...
How domain specific modeling languages address variability: investigation of ...How domain specific modeling languages address variability: investigation of ...
How domain specific modeling languages address variability: investigation of ...Juha-Pekka Tolvanen
 
Effort Used to Create Domain-Specific Modeling Languages
Effort Used to Create Domain-Specific Modeling LanguagesEffort Used to Create Domain-Specific Modeling Languages
Effort Used to Create Domain-Specific Modeling LanguagesJuha-Pekka Tolvanen
 
Automating safety engineering with model based techniques
Automating safety engineering with model based techniquesAutomating safety engineering with model based techniques
Automating safety engineering with model based techniquesJuha-Pekka Tolvanen
 
Automotive architecture examples with EAST-ADL models
Automotive architecture examples with EAST-ADL modelsAutomotive architecture examples with EAST-ADL models
Automotive architecture examples with EAST-ADL modelsJuha-Pekka Tolvanen
 
Model level debugging and profiling, Code Generation Conference 2014
Model level debugging and profiling, Code Generation Conference 2014Model level debugging and profiling, Code Generation Conference 2014
Model level debugging and profiling, Code Generation Conference 2014Juha-Pekka Tolvanen
 
Keynote at Code Generation 2014: The business cases of modeling and generators
Keynote at Code Generation 2014: The business cases of modeling and generatorsKeynote at Code Generation 2014: The business cases of modeling and generators
Keynote at Code Generation 2014: The business cases of modeling and generatorsJuha-Pekka Tolvanen
 
Industrial experiences on Domain-Specific Modeling
Industrial experiences on Domain-Specific ModelingIndustrial experiences on Domain-Specific Modeling
Industrial experiences on Domain-Specific ModelingJuha-Pekka Tolvanen
 

More from Juha-Pekka Tolvanen (9)

How to formalize a ubiquitous language into a domain-specific language.pdf
How to formalize a ubiquitous language into a domain-specific language.pdfHow to formalize a ubiquitous language into a domain-specific language.pdf
How to formalize a ubiquitous language into a domain-specific language.pdf
 
Measuring Productivity from Model-Based Development
Measuring Productivity from Model-Based DevelopmentMeasuring Productivity from Model-Based Development
Measuring Productivity from Model-Based Development
 
How domain specific modeling languages address variability: investigation of ...
How domain specific modeling languages address variability: investigation of ...How domain specific modeling languages address variability: investigation of ...
How domain specific modeling languages address variability: investigation of ...
 
Effort Used to Create Domain-Specific Modeling Languages
Effort Used to Create Domain-Specific Modeling LanguagesEffort Used to Create Domain-Specific Modeling Languages
Effort Used to Create Domain-Specific Modeling Languages
 
Automating safety engineering with model based techniques
Automating safety engineering with model based techniquesAutomating safety engineering with model based techniques
Automating safety engineering with model based techniques
 
Automotive architecture examples with EAST-ADL models
Automotive architecture examples with EAST-ADL modelsAutomotive architecture examples with EAST-ADL models
Automotive architecture examples with EAST-ADL models
 
Model level debugging and profiling, Code Generation Conference 2014
Model level debugging and profiling, Code Generation Conference 2014Model level debugging and profiling, Code Generation Conference 2014
Model level debugging and profiling, Code Generation Conference 2014
 
Keynote at Code Generation 2014: The business cases of modeling and generators
Keynote at Code Generation 2014: The business cases of modeling and generatorsKeynote at Code Generation 2014: The business cases of modeling and generators
Keynote at Code Generation 2014: The business cases of modeling and generators
 
Industrial experiences on Domain-Specific Modeling
Industrial experiences on Domain-Specific ModelingIndustrial experiences on Domain-Specific Modeling
Industrial experiences on Domain-Specific Modeling
 

Recently uploaded

Leveling Up your Branding and Mastering MERN: Fullstack WebDev
Leveling Up your Branding and Mastering MERN: Fullstack WebDevLeveling Up your Branding and Mastering MERN: Fullstack WebDev
Leveling Up your Branding and Mastering MERN: Fullstack WebDevpmgdscunsri
 
Building Generative AI-infused apps: what's possible and how to start
Building Generative AI-infused apps: what's possible and how to startBuilding Generative AI-infused apps: what's possible and how to start
Building Generative AI-infused apps: what's possible and how to startMaxim Salnikov
 
5 Ways to Achieve Insprint Test Automation
5 Ways to Achieve Insprint Test Automation5 Ways to Achieve Insprint Test Automation
5 Ways to Achieve Insprint Test AutomationJason Roy
 
A Comprehensive Guide to Measuring and Comparing Cross-Platform Performance M...
A Comprehensive Guide to Measuring and Comparing Cross-Platform Performance M...A Comprehensive Guide to Measuring and Comparing Cross-Platform Performance M...
A Comprehensive Guide to Measuring and Comparing Cross-Platform Performance M...kalichargn70th171
 
Flutter the Future of Mobile App Development - 5 Crucial Reasons.pdf
Flutter the Future of Mobile App Development - 5 Crucial Reasons.pdfFlutter the Future of Mobile App Development - 5 Crucial Reasons.pdf
Flutter the Future of Mobile App Development - 5 Crucial Reasons.pdfMind IT Systems
 
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdf
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdfMobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdf
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdfkalichargn70th171
 
Prakash Mana, CEO of Cloudbrink Discusses the Hybrid Workforce Challenges.pptx
Prakash Mana, CEO of Cloudbrink Discusses the Hybrid Workforce Challenges.pptxPrakash Mana, CEO of Cloudbrink Discusses the Hybrid Workforce Challenges.pptx
Prakash Mana, CEO of Cloudbrink Discusses the Hybrid Workforce Challenges.pptxPrakash Mana
 
enhancing workplace efficiency with employee monitoring software.pptx
enhancing workplace efficiency with employee monitoring software.pptxenhancing workplace efficiency with employee monitoring software.pptx
enhancing workplace efficiency with employee monitoring software.pptxMitchell Marsh
 
Case Study on IV&V of the Landing Gear Controller
Case Study on IV&V of the Landing Gear ControllerCase Study on IV&V of the Landing Gear Controller
Case Study on IV&V of the Landing Gear ControllerOak Systems
 
Technical Deep Dive - OpenID-Connect and OAuth 2.0 in UCS IAM - Florian Best ...
Technical Deep Dive - OpenID-Connect and OAuth 2.0 in UCS IAM - Florian Best ...Technical Deep Dive - OpenID-Connect and OAuth 2.0 in UCS IAM - Florian Best ...
Technical Deep Dive - OpenID-Connect and OAuth 2.0 in UCS IAM - Florian Best ...Univention GmbH
 
Building a Robust Integration Architecture with EventStoreDB for No/Low-Code ...
Building a Robust Integration Architecture with EventStoreDB for No/Low-Code ...Building a Robust Integration Architecture with EventStoreDB for No/Low-Code ...
Building a Robust Integration Architecture with EventStoreDB for No/Low-Code ...Serhii Kokhan
 
MinionLabs_Mr. Gokul Srinivas_Young Entrepreneur
MinionLabs_Mr. Gokul Srinivas_Young EntrepreneurMinionLabs_Mr. Gokul Srinivas_Young Entrepreneur
MinionLabs_Mr. Gokul Srinivas_Young EntrepreneurPriyadarshini T
 
Understanding RIP Software for Printers!
Understanding RIP Software for Printers!Understanding RIP Software for Printers!
Understanding RIP Software for Printers!AcroRip
 
Jax, FL Admin Community Group 02.28.2024 Deck.pptx
Jax, FL Admin Community Group 02.28.2024 Deck.pptxJax, FL Admin Community Group 02.28.2024 Deck.pptx
Jax, FL Admin Community Group 02.28.2024 Deck.pptxMarc Lester
 
Co-creating_between_UX_and_Software_Rabobank
Co-creating_between_UX_and_Software_RabobankCo-creating_between_UX_and_Software_Rabobank
Co-creating_between_UX_and_Software_RabobankSimonedeGijt
 
Practical Advice for FDA’s 510(k) Requirements.pdf
Practical Advice for FDA’s 510(k) Requirements.pdfPractical Advice for FDA’s 510(k) Requirements.pdf
Practical Advice for FDA’s 510(k) Requirements.pdfICS
 
Keycloak as the New Identity Provider for UCS - Felix Botner & Erik Damrose -...
Keycloak as the New Identity Provider for UCS - Felix Botner & Erik Damrose -...Keycloak as the New Identity Provider for UCS - Felix Botner & Erik Damrose -...
Keycloak as the New Identity Provider for UCS - Felix Botner & Erik Damrose -...Univention GmbH
 
CAUtion 2023 2st 세미나 - CheatEngine OpenGL.pptx
CAUtion 2023 2st 세미나 - CheatEngine OpenGL.pptxCAUtion 2023 2st 세미나 - CheatEngine OpenGL.pptx
CAUtion 2023 2st 세미나 - CheatEngine OpenGL.pptxJu Chanhyoung
 
알고리즘/자료구조/코딩테스트 강의 제안서 BFS의 동작원리와 코드.pdf
알고리즘/자료구조/코딩테스트 강의 제안서 BFS의 동작원리와 코드.pdf알고리즘/자료구조/코딩테스트 강의 제안서 BFS의 동작원리와 코드.pdf
알고리즘/자료구조/코딩테스트 강의 제안서 BFS의 동작원리와 코드.pdfssuser82c38d
 
Mastering Continuous Testing_ A Definitive Guide to Seamless Software Deliver...
Mastering Continuous Testing_ A Definitive Guide to Seamless Software Deliver...Mastering Continuous Testing_ A Definitive Guide to Seamless Software Deliver...
Mastering Continuous Testing_ A Definitive Guide to Seamless Software Deliver...kalichargn70th171
 

Recently uploaded (20)

Leveling Up your Branding and Mastering MERN: Fullstack WebDev
Leveling Up your Branding and Mastering MERN: Fullstack WebDevLeveling Up your Branding and Mastering MERN: Fullstack WebDev
Leveling Up your Branding and Mastering MERN: Fullstack WebDev
 
Building Generative AI-infused apps: what's possible and how to start
Building Generative AI-infused apps: what's possible and how to startBuilding Generative AI-infused apps: what's possible and how to start
Building Generative AI-infused apps: what's possible and how to start
 
5 Ways to Achieve Insprint Test Automation
5 Ways to Achieve Insprint Test Automation5 Ways to Achieve Insprint Test Automation
5 Ways to Achieve Insprint Test Automation
 
A Comprehensive Guide to Measuring and Comparing Cross-Platform Performance M...
A Comprehensive Guide to Measuring and Comparing Cross-Platform Performance M...A Comprehensive Guide to Measuring and Comparing Cross-Platform Performance M...
A Comprehensive Guide to Measuring and Comparing Cross-Platform Performance M...
 
Flutter the Future of Mobile App Development - 5 Crucial Reasons.pdf
Flutter the Future of Mobile App Development - 5 Crucial Reasons.pdfFlutter the Future of Mobile App Development - 5 Crucial Reasons.pdf
Flutter the Future of Mobile App Development - 5 Crucial Reasons.pdf
 
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdf
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdfMobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdf
Mobile Test Automation with Appium Flutter Driver_ A Comprehensive Guide.pdf
 
Prakash Mana, CEO of Cloudbrink Discusses the Hybrid Workforce Challenges.pptx
Prakash Mana, CEO of Cloudbrink Discusses the Hybrid Workforce Challenges.pptxPrakash Mana, CEO of Cloudbrink Discusses the Hybrid Workforce Challenges.pptx
Prakash Mana, CEO of Cloudbrink Discusses the Hybrid Workforce Challenges.pptx
 
enhancing workplace efficiency with employee monitoring software.pptx
enhancing workplace efficiency with employee monitoring software.pptxenhancing workplace efficiency with employee monitoring software.pptx
enhancing workplace efficiency with employee monitoring software.pptx
 
Case Study on IV&V of the Landing Gear Controller
Case Study on IV&V of the Landing Gear ControllerCase Study on IV&V of the Landing Gear Controller
Case Study on IV&V of the Landing Gear Controller
 
Technical Deep Dive - OpenID-Connect and OAuth 2.0 in UCS IAM - Florian Best ...
Technical Deep Dive - OpenID-Connect and OAuth 2.0 in UCS IAM - Florian Best ...Technical Deep Dive - OpenID-Connect and OAuth 2.0 in UCS IAM - Florian Best ...
Technical Deep Dive - OpenID-Connect and OAuth 2.0 in UCS IAM - Florian Best ...
 
Building a Robust Integration Architecture with EventStoreDB for No/Low-Code ...
Building a Robust Integration Architecture with EventStoreDB for No/Low-Code ...Building a Robust Integration Architecture with EventStoreDB for No/Low-Code ...
Building a Robust Integration Architecture with EventStoreDB for No/Low-Code ...
 
MinionLabs_Mr. Gokul Srinivas_Young Entrepreneur
MinionLabs_Mr. Gokul Srinivas_Young EntrepreneurMinionLabs_Mr. Gokul Srinivas_Young Entrepreneur
MinionLabs_Mr. Gokul Srinivas_Young Entrepreneur
 
Understanding RIP Software for Printers!
Understanding RIP Software for Printers!Understanding RIP Software for Printers!
Understanding RIP Software for Printers!
 
Jax, FL Admin Community Group 02.28.2024 Deck.pptx
Jax, FL Admin Community Group 02.28.2024 Deck.pptxJax, FL Admin Community Group 02.28.2024 Deck.pptx
Jax, FL Admin Community Group 02.28.2024 Deck.pptx
 
Co-creating_between_UX_and_Software_Rabobank
Co-creating_between_UX_and_Software_RabobankCo-creating_between_UX_and_Software_Rabobank
Co-creating_between_UX_and_Software_Rabobank
 
Practical Advice for FDA’s 510(k) Requirements.pdf
Practical Advice for FDA’s 510(k) Requirements.pdfPractical Advice for FDA’s 510(k) Requirements.pdf
Practical Advice for FDA’s 510(k) Requirements.pdf
 
Keycloak as the New Identity Provider for UCS - Felix Botner & Erik Damrose -...
Keycloak as the New Identity Provider for UCS - Felix Botner & Erik Damrose -...Keycloak as the New Identity Provider for UCS - Felix Botner & Erik Damrose -...
Keycloak as the New Identity Provider for UCS - Felix Botner & Erik Damrose -...
 
CAUtion 2023 2st 세미나 - CheatEngine OpenGL.pptx
CAUtion 2023 2st 세미나 - CheatEngine OpenGL.pptxCAUtion 2023 2st 세미나 - CheatEngine OpenGL.pptx
CAUtion 2023 2st 세미나 - CheatEngine OpenGL.pptx
 
알고리즘/자료구조/코딩테스트 강의 제안서 BFS의 동작원리와 코드.pdf
알고리즘/자료구조/코딩테스트 강의 제안서 BFS의 동작원리와 코드.pdf알고리즘/자료구조/코딩테스트 강의 제안서 BFS의 동작원리와 코드.pdf
알고리즘/자료구조/코딩테스트 강의 제안서 BFS의 동작원리와 코드.pdf
 
Mastering Continuous Testing_ A Definitive Guide to Seamless Software Deliver...
Mastering Continuous Testing_ A Definitive Guide to Seamless Software Deliver...Mastering Continuous Testing_ A Definitive Guide to Seamless Software Deliver...
Mastering Continuous Testing_ A Definitive Guide to Seamless Software Deliver...
 

Collaborative modeling and metamodeling in MetaEdit+

  • 2. Agenda  Collaborative metamodeling  Collaborative modeling  Q&A
  • 3. Experts define languages & generators Team models with domain concepts & generate code  Integrated language definition  No programming needed  Language evolution  Several integrated languages  Collaborative language engineering (metamodeling)  Models update on any change  Scalable to large models (4 billion)  Fast generators  Interfaces to various IDEs (VS, Eclipse)  Collaborative modeling Context for collaboration: MetaEdit+
  • 4. Why collaboration on language engineering?  A language definition has several parts: abstract syntax, constraints, notation & semantic rules – Single person is often not master of them all  Language definition need to be consistent, complete and correct – If not: see UML standard containing hundreds of errors1 in abstract syntax and their related constraints  Single language is not enough, we use several (integrated) languages – Multiple persons almost always involved 361 errors in UML 2.0: Bauerdick et al, in Procs of UML 2004, LNCS 3273, Springer, 2004; 320 errors in UML 2.3: Wilke & Demuth, 2010, journal.ub.tu-berlin.de/eceasst/article/download/669/682‎
  • 5. Collaborative metamodeling (example: TDL by ETSI) A) Concepts (Abstract syntax) B) Constraints (Static semantics) C) Notation (Concrete syntax) D) Generators (Semantics)
  • 7. Benefits of collaborative metamodeling  Leads to better quality languages – Languages can be checked early while being defined – Users may immediately test the language, incl. validation – When defined in smaller increments the risk of creating the wrong language constructs is reduced  Development of languages and generators is faster: – Parallel effort – Work shared based on expertise  Language adoption and acceptance improves since language users are directly involved
  • 8. Why collaborative modeling?  Collaboration means working together with the same model - even at the same time – Even in the same diagram (not typical, but possible) – Partly with the same model elements (typical)  Known and proven technology to enable collaboration: Repository with concurrency control – Conflicts detected and handled at the modeling time • Trace to users – No need to diff – No need to merge – Scales to large models
  • 9. Collaborative modeling (example: automotive system) A) Hardware B) Functions C) Allocation D) Behavior + 16 other – Safety – Errors – Timing – ...
  • 11. Benefits of collaborative modeling  Team can work in the same design space in parallel – E.g. If feedback is needed from colleagues they all can see the same model (or model element) and update it  No time and effort is needed to handle conflicts  Development is faster as all model information is available as needed  Work from multiple views – often based on different languages – can be integrated at model level  Trace is available among views and model elements  Models can be checked and verified early – not based on one diagram only but on larger model which may be based on different languages
  • 12. Cases, tutorial, videos, manuals and evaluation version available at: www.metacase.com Contact: Juha-Pekka Tolvanen (jpt@metacase.com) Company: info@metacase.com Thank you!