Abstract

Modern complex systems include products and services that comprise many interconnected pieces of integrated hardware and software, which are expected to serve humans interacting with them. As technology advances, expectations of a smooth, flawless system operation grow. Model-based systems engineering, an approach based on conceptual models, copes with this challenge. Models help construct formal system representations, visualize them, understand the design, simulate the system, and discover design flaws early on. Modeling tools can benefit tremendously from querying capabilities that enable gaining deep insights into system aspects that direct model observations do not reveal. Querying mechanisms can unveil and explain cause-and-effect phenomena, identify central components, and estimate impacts or risks associated with changes. Being connected networks of system elements, models can be effectively represented as graphs, to which queries are applied. Capitalizing on established graph-theoretic algorithms to solve a large variety of problems can elevate the modeling experience to new levels. To utilize this rich set of capabilities, one must convert the model into a graph and store it in a graph database with no significant loss of information. Applying the appropriate algorithms and translating the query response back to the original intelligible and meaningful diagrammatic and textual model representation is most valuable. We present and demonstrate a querying approach of converting Object-Process Methodology (OPM) ISO 19450 models into graphs, storing them in a Neo4J graph database, and performing queries that answer complex questions on various system aspects, providing key insights into the modeled system or phenomenon and helping to improve the system design.

Highlights

  • Systems engineering, business processes, and workflows are few examples of domains that benefit greatly from conceptual modelling, which expresses them formally and visually.The increase in the complexity of systems, reflected in their models, is manifested in the ever-increasing number of components participating in the model’s structure and behavior and the sheer amount of interdependencies

  • An Object-Process Methodology (OPM) model of such a complex system, converted to a graph in a graph database (GDB), can reveal and explain what went wrong or what can go wrong with objects that the processes along the path of execution transform, what objects are required as enablers for these processes to happen, and what needs to be done to avoid failures

  • To demonstrate the OPM query capability, we focus on the Pilot Operated Relief Valve (PORV) component in the steam generating subsystem

Read more

Summary

Introduction

Business processes, and workflows are few examples of domains that benefit greatly from conceptual modelling, which expresses them formally and visually. The increase in the complexity of systems, reflected in their models, is manifested in the ever-increasing number of components participating in the model’s structure and behavior and the sheer amount of interdependencies This complexity renders simple inspection of the model insufficient for answering questions and queries related to relationships among the components, such as “what if”, explaining cause-and-effect interactions, and gap analysis. For evolving systems that undergo continuous changes, impact analysis is very important for decision-making and introducing changes to control flows Tackling such complex tasks requires analytical queries. We present a methodology for querying a conceptual model of a (possibly very complex) system to answer questions related to issues such as the structural relations among system objects, possible execution scenarios, cause-and-effect, and “what if” questions about the behavior of the system.

OPM—Object-Process Methodology
Conceptual Model Querying
NOSQL Databases
Key-value store
Column store
Document stores
Object-oriented databases
Graphs and Graph Databases
Mapping an OPM Model to a Graph
Nested OPM Thing Flattening
Stateful Object De-Stating
Processing Links in Nested OPM Things
From an OPM Model to a Cypher Query
The Neo4j Cypher Query Language
Applying Cypher Queries on the OPM Model
Use Cases for OPM Queries
Cause and Effect in Model-Based System Engineering
Impact Analysis by Forward Chaining
2: RETURN p
Possible Causes by Backward Chaining
Business Process Optimization Using Path Finding
Path Finding Queries Implementation
Path Finding UI Implementation
Shortest Path Implementation
Longest Path Implementation
Neighborhood Queries
Neighborhood UI Implementation
Neighborhood Queries Implementation
Centrality Queries
Centrality UI Implementation
PageRank
Conclusions and Future Work
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call