The document discusses cloud-based modeling solutions from IncQuery Labs that enable tool integration. It describes challenges with large-scale collaboration and automation across multiple teams and tools. The IncQuery Model Checking Tool Suite uses a custom query language to perform validation checks and transformations across models stored in a repository. Case studies demonstrate tool integration workflows at companies like Airbus. Live demos of the solutions are also provided.
2. Topics
• Tool Integration Challenges in MBSE
• IncQuery Solutions
• Case study: Tool Integration with A3 by Airbus
• DEMO
3. Context:
Large-scale MBSE
Airframers Car Manufacturers
System Designers and Integrators
Design Tools
Analysis / Simulation Tools
Certification Authorities
Platform Provider
Smart & Safe
Cyber-Physical Systems
4. Today…
• Works well - Desktop tools + repositories
• Languages and standards
• Authoring features
• Extensible platforms + semi-automated workflows
• Basic collaboration: baselines, branches, reviews
• Challenging - “Tool as a Service”
• Collaboration in the large
• Automation in the cloud - orchestration of workflows involving
• Several teams and stakeholders
• Several different kinds of tools
5. Today…
• Works well - Desktop tools + repositories
• Languages and standards
• Authoring features
• Extensible platforms + semi-automated workflows
• Basic collaboration: baselines, branches, reviews
• Challenging - “Tool as a Service”
• Collaboration in the large
• Automation in the cloud - orchestration of workflows involving
• Several teams and stakeholders
• Several different kinds of tools
What if…
• Large-scale change management
• Automated model checking
• Automated tool integration workflows
• … could run in the cloud?
• … with the push of a button?
7. The IncQuery Model Checking Tool Suite
Indexing
Queries,
Transformations,
Check rules
IncQuery
Server
OpenMBEE MMS
8. The IncQuery Model Checking Tool Suite
Indexing
Queries,
Transformations,
Check rules
IncQuery
Server
• Standalone server product
or cloud service
• Both a framework and an end-user
product
• Enterprise-grade access control
OpenMBEE MMS
9. The IncQuery Model Checking Tool Suite
Indexing
Queries,
Transformations,
Check rules
IncQuery
Server
IncQuery
Desktop
• Standalone server product
or cloud service
• Both a framework and an end-user
product
• Enterprise-grade access control
OpenMBEE MMS
10. The IncQuery Model Checking Tool Suite
• Query authoring tool
• Commercial add-on for
MagicDraw / Cameo
• Powerful queries for
validation, visualization,
model comprehension Indexing
Queries,
Transformations,
Check rules
IncQuery
Server
IncQuery
Desktop
• Standalone server product
or cloud service
• Both a framework and an end-user
product
• Enterprise-grade access control
OpenMBEE MMS
11. The IncQuery Model Checking Tool Suite
• Query authoring tool
• Commercial add-on for
MagicDraw / Cameo
• Powerful queries for
validation, visualization,
model comprehension Indexing
Queries,
Transformations,
Check rules
IncQuery
Server
IncQuery
Desktop
• Standalone server product
or cloud service
• Both a framework and an end-user
product
• Enterprise-grade access control
Complex query example:
”Find Input Parameters that are not assigned to an Input Port”
From a folder or system, find the related parameters and check if the
parameter is not the complying end of a Receive or PG Receive link: if
so, flag the parameter as an error.OpenMBEE MMS
12. IncQuery Desktop
Custom model queries
supported by advanced
text editor – content
assist, syntax highlight
Powerful language
tailored to models -
supporting query reuse
and compositionality
13. IncQuery Desktop
Custom model queries
supported by advanced
text editor – content
assist, syntax highlight
Powerful language
tailored to models -
supporting query reuse
and compositionality
Integrated with
MagicDraw
Active Validation –
immediate feedback and
corrective actions
14. Validation rules with the VIATRA Query Language (VQL)
• Deadlock states
• Detect potential deadlock states
• Trivial case: a potential deadlock
state is a
Simple state which
has incoming transitions but
no outgoing ones.
• Composite states: If no sub-state
has a transition that leaves the
composite state’s region(s).
Transition leaving the
region
15. Validation rules with the VIATRA Query Language (VQL)
• Deadlock states
• Detect potential deadlock states
• Trivial case: a potential deadlock
state is a
Simple state which
has incoming transitions but
no outgoing ones.
• Composite states: If no sub-state
has a transition that leaves the
composite state’s region(s).
Transition leaving the
region
Potential deadlock
state
16. Validation rules with the VIATRA Query Language (VQL)
• Deadlock states
• Detect potential deadlock states
• Trivial case: a potential deadlock
state is a
Simple state which
has incoming transitions but
no outgoing ones.
• Composite states: If no sub-state
has a transition that leaves the
composite state’s region(s).
17. Validation rules with the VIATRA Query Language (VQL)
• Deadlock states
• Detect potential deadlock states
• Trivial case: a potential deadlock
state is a
Simple state which
has incoming transitions but
no outgoing ones.
• Composite states: If no sub-state
has a transition that leaves the
composite state’s region(s).
18. Validation rules with the VIATRA Query Language (VQL)
• Deadlock states
• Detect potential deadlock states
• Trivial case: a potential deadlock
state is a
Simple state which
has incoming transitions but
no outgoing ones.
• Composite states: If no sub-state
has a transition that leaves the
composite state’s region(s).
An instance of State
which is not an
instance of FinalState
19. Validation rules with the VIATRA Query Language (VQL)
• Deadlock states
• Detect potential deadlock states
• Trivial case: a potential deadlock
state is a
Simple state which
has incoming transitions but
no outgoing ones.
• Composite states: If no sub-state
has a transition that leaves the
composite state’s region(s).
An instance of State
which is not an
instance of FinalState
Has at least one
inbound reference of
type State::incoming
20. Validation rules with the VIATRA Query Language (VQL)
• Deadlock states
• Detect potential deadlock states
• Trivial case: a potential deadlock
state is a
Simple state which
has incoming transitions but
no outgoing ones.
• Composite states: If no sub-state
has a transition that leaves the
composite state’s region(s).
An instance of State
which is not an
instance of FinalState
Has at least one
inbound reference of
type State::incomingDoes not have any
outbound reference of
type State::outgoing
21. Validation rules with the VIATRA Query Language (VQL)
• Deadlock states
• Detect potential deadlock states
• Trivial case: a potential deadlock
state is a
Simple state which
has incoming transitions but
no outgoing ones.
• Composite states: If no sub-state
has a transition that leaves the
composite state’s region(s).
An instance of State
which is not an
instance of FinalState
Has at least one
inbound reference of
type State::incomingDoes not have any
outbound reference of
type State::outgoing
https://www.eclipse.org/viatra/documentation/tutorial.html
https://www.eclipse.org/viatra/documentation/query-language.html
24. IncQuery Server
Custom model queries in your
browser
Subject to repository access
control – fully integrated with
TWC & enterprise identity
management
25. IncQuery Server
Custom model queries in your
browser
Subject to repository access
control – fully integrated with
TWC & enterprise identity
management
Repository-wide validation
and change impact analysis –
avoid breakage as models
evolve
26. IncQuery Server
Custom model queries in your
browser
Subject to repository access
control – fully integrated with
TWC & enterprise identity
management
Runs 10x faster than graph
databases thanks to hybrid in-
memory engine –full
validation in under a second!
Repository-wide validation
and change impact analysis –
avoid breakage as models
evolve
27. IncQuery Server
Custom model queries in your
browser
Subject to repository access
control – fully integrated with
TWC & enterprise identity
management
Runs 10x faster than graph
databases thanks to hybrid in-
memory engine –full
validation in under a second!
Repository-wide validation
and change impact analysis –
avoid breakage as models
evolve
29. IncQuery Server
OpenAPI standard
compliant interfaces –
integrate with your
tools easily
Jupyter notebook
support – generate
beautiful reports on
the web
30. Case study:
Tool integration at Airbus
• Thousands of applications
• Across several verticals
• engineering, manufacturing, extended enterprise, customer
service, …
• ADAM by A^3
(Advanced Digital, Design and Manufacturing)
• An integration platform to enable data continuity across all
Airbus applications
• Conceptual framework addressing 5 layers
Data
Semantics
Models
Services
Visualization
31. The Challenge
Interoperability platform
Product modeling
Reports and dashboards
Tradeoff analysis
• Web-based automation
• Execute simulation and report
generation through the browser
• Push-button solution
• Scale to large and complex projects
• Fully integrated with collaboration
platform
32. The Solution
1. Edit system model 2. Commit changes to repository
3. Trigger
processing
IncQuery
Server
5. Show results
on web UI /
generate
reports
4. Execute
automated model
checking
https://www.airbus-sv.com/projects/9
33. Open source projects by IncQuery Labs
in the OpenMBEE ecosystem
Frameworks
• V4MD
• http://github.com/viatra/v4md
• MagicDraw bindings for Eclipse VIATRA
• MD_plugin_skeleton
• https://github.com/IncQueryLabs/
MD_plugin_skeleton
• Basic MagicDraw plug-in built using
Gradle (inspired by MDK)
• Demonstrates the usage of V4MD
• MDK fork
• https://github.com/IncQueryLabs/mdk
• Example usage of V4MD within MDK
Benchmarks and demos
• MD model query benchmark
• https://github.com/IncQueryLabs/
magicdraw-viatra-benchmark
• Scalability benchmark for model queries
over MagicDraw models
• Based on scaled-up variants of TMT
• TMT model fork
• https://github.com/IncQueryLabs/TMT-
SysML-Model
• Examples of custom complex validation
queries inspired by NASA JPL
34. Live Demo For The Public OpenMBEE MMS Repository
mms.openmbee.org
openmbee.incquery.io
Jupyter notebook on
mybinder.org
35. Live Demo For The Public OpenMBEE MMS Repository
mms.openmbee.org
openmbee.incquery.io
Jupyter notebook on
mybinder.org
• All public content of mms.openmbee.org accessible
for a subset of features:
custom queries, validation rules, also through the
OpenAPI endpoint
• Contact us for more privileged users (e.g. to see
more organizations/projects and define your own
queries)
36. Live Demo For The Public OpenMBEE MMS Repository
mms.openmbee.org
openmbee.incquery.io
Jupyter notebook on
mybinder.org
• All public content of mms.openmbee.org accessible
for a subset of features:
custom queries, validation rules, also through the
OpenAPI endpoint
• Contact us for more privileged users (e.g. to see
more organizations/projects and define your own
queries)
37. Live Demo For The Public OpenMBEE MMS Repository
mms.openmbee.org
openmbee.incquery.io
Jupyter notebook on
mybinder.org
• All public content of mms.openmbee.org accessible
for a subset of features:
custom queries, validation rules, also through the
OpenAPI endpoint
• Contact us for more privileged users (e.g. to see
more organizations/projects and define your own
queries)
38. Live Demo For The Public OpenMBEE MMS Repository
mms.openmbee.org
openmbee.incquery.io
Jupyter notebook on
mybinder.org
• All public content of mms.openmbee.org accessible
for a subset of features:
custom queries, validation rules, also through the
OpenAPI endpoint
• Contact us for more privileged users (e.g. to see
more organizations/projects and define your own
queries)
39. Development Roadmap
• Summer 2019
• SPARQL support
• Full-text search
• Fall 2019
• Open API for additional data sources and custom transformations
• SysML v2 support
• Early 2020
• Federated search
• Live / streaming queries
40. Key takeaways
• IncQuery can help unlock the potential of the cloud for MBSE
• Deployment
• Automation
• Scalability
• Interoperability
• Pointers
• https://incquery.io
• https://openmbee.incquery.io