Understanding Relations in OPM — Part 1: Structural Links

OPM structural links
Fundamental Structural Relationships in a System

What is Object Process Methodology?

When it comes to conveying ideas and capturing complexities, modelling often proves to be more effective than traditional textual documentation. Object Process Methodology (OPM) stands out as a powerful modelling paradigm that is widely applicable across various domains, including MBSE, concept development, and scenario modelling. Recognised as one of the six leading MBSE methodologies, OPM is favoured by industrial and academic giants like NASA, Airbus, and MIT for its intuitive and versatile framework.

At the heart of OPM is a minimal universal ontology consisting of two core elements: entities and links. Entities include processes, objects and their states, while links define the relationships between them. This simplicity makes OPM an accessible tool for modelling and understanding complex concepts.

In OPM, relations are categorised into two main types: structural and procedural. Structural relations describe the system’s structure or form, while procedural relations focus on its function or behaviour. This article is the first in a two-part series exploring these concepts. Here, we’ll dive into the structural relationships within OPM, showing how they help model the architecture and organisation of systems.

Want to learn more about OPM in general? check out our previous article here!

The Four Fundamental Structural Relations

Structure and hierarchy are fundamental aspects of nearly every system we encounter, whether in technology, like aircrafts and vehicles, in nature, like bee colonies and ecosystems, or in society, like our communities and financial systems. They provide the framework that allows us to understand how different elements within a system are interconnected, shaping the system’s overall identity.

One of the most obvious examples of structural relationships is the composition relationship. Take an aircraft, for instance, it is composed of various systems like flight control, navigation, and communication, each of which is further divided into subsystems and components. This layered structure ensures that each part of the aircraft contributes to its overall functionality, with every element playing a specific role in the larger system.

However, composition is just one type of structural relationship that can exist within a system. Object Process Methodology identifies four fundamental structural relationships: Aggregation-Participation, Exhibition-Characterization, Generalization-Specialization, and Classification-Instantiation. These relationships provide a comprehensive way to model and understand the intricate connections within any system. Let’s explore what each of these relationships entails and how they help us better understand the structure of complex systems.

Fundamental structural links
Fundamental structural links, created by author using Canva
Aggregation-Participation

In OPM, aggregation-participation links play a crucial role in modelling systems by illustrating how one item aggregates, or contains, other items. This relationship is used to represent the composition of a system, showing how various parts come together to form a whole. For instance, when modelling the composition of a car, we can use aggregation-participation links to depict the car as an aggregation of several key components: the chassis, powertrain, suspension and steering, braking system, and control system. These components are all integral parts that collectively make up the car.

Composition of car, created by author using Canva
Composition of car, created by author using Canva

In most cases, the composition of a system might not follow a specific order, as is the case with a car. However, there might be instances where the order of components is significant. For example, when describing an article, one might want to specify that it consists of a header, body, and footer, in that particular order. OPM provides the capability to model such ordered relationships by designating a structural link as ordered. This functionality is useful when the sequence of components or parts is crucial to the understanding of the system being modelled.

Article composition, created by author using Canva
Article composition, created by author using Canva
Exhibition-Characterization

On a more general sense, while procedural links are used to model dynamic, short-lived interactions between entities, structural links are used to capture the persistent, long-term relationship. One such relationship is the exhibition-characterization relationship. This relationship is used to indicate that an entity exhibits a feature, or a that a feature characterizes an entity, essentially describing the attributes or properties of a thing.

For example, in modelling a person, the exhibition-characterization link can be employed to show that the person exhibits attributes such as age and gender. In this context, the “Age” and “Gender” objects act as placeholders for specific values, such as 12, 25, 70, or male, female, and other, that can be entered in as states.

Attribute of Person
Attribute of Person, created by author using Canva

Another valuable use case is the modelling of a system function. Using exhibition-characterization link, we can denote a certain process as an operation, method or function of a system. For example, we can model the aircraft’s function as flying, the flight control system’s function as flight regulating, manoeuvre coordinating, etc. This application of the link helps to clarify how various processes contribute to the overall functionality of the system, providing a comprehensive view of how functions are allocated within the system architecture.

Aircraft operation
Aircraft operation, created by author using Canva
Generalization-Specialization

Another fundamental structural relationship is the generalization-specialization relationship. It is a relationship that denotes a general thing and one or more things that are specializations of it. In essence, it describes the category or type something belongs to. For example, consider the concept of “Person”, which specializes into “Man” and “Woman”. Here, “Person” serves as the general category, while “Man” and “Woman” are specific specializations under this general category.

Specialization of Person
Specialization of Person, created by author using Canva

The generalization-specialization link is particularly useful for modelling inheritance. By definition, the specialization inherits all the structural and procedural relationships of its more general parent entity. This means that any attributes or operations defined as the general level are automatically available to the specialized entities. For instance, if the general entity “Person” exhibits the attribute “Gender”, this attribute is inherited by its specializations “Man” and “Woman”. Consequently, both specializations will possess the “Gender” attribute, and its value can be specified according to the context of each specialization.

Feature inheritance of Person
Feature inheritance of Person, created by author using Canva
Classification-Instantiation

Closely related to the generalization-specialization relationship is the classification-instantiation relationship. This relationship helps to define how a general class can be exemplified by unique, individual instances. In this context, a class serves as a template or blueprint, while an instance represents a concrete manifestation of a particular member of that class. Essentially, instances embody all the features, structures and behaviours defined by their class.

The classification-instantiation relationship can be viewed as a more stringent form of inheritance compared to generalization-specialization. An instance of a class must adhere to all the features and states defined by its class and cannot possess attributes or states that are not specified by the class. For example, we could instantiate “John” and “Jane” as specific instances of the classes “Man” and “Woman”, respectively. Their attribute, “Gender”, would then be constrained to “male” and “female”, reflecting the characteristics inherited from their classes.

Feature inheritance of Person with instantiations
Feature inheritance of Person with instantiations, created by author using Canva

Using Tagged Structural Link to Model Complex Relation

In addition to the fundamental structural links, OPM provides a versatile tool for modelling complex relationships through tagged structural links. These links allow modellers to customise the relationship tag, enabling them to represent more nuanced and specific relations that may not be easily captured by the standard structural links.

For instance, consider the relationship between a manager and their team. The basic structural links might not fully capture the subtlety of this relationship. By using a tagged structural link with the “manages” tag, we can clearly depict that the “Manager” manages the “Team”. This approach provides greater clarity adn precision in modelling, allowing relationships to be unidirectional, bidirectional, or reciprocal, depending on the specific needs of the model.

Relationship between Manager and Team
Relationship between Manager and Team, created by author using Canva

Another valuable application of tagged structural links is in modelling persistent processes. Typically, procedural links in OPM are used to represent dynamic, transient interactions. However, some processes are ongoing and stable over time, requiring a different approach to model. For example, consider the relationship where a foundation provides support to a house. This is not a short-lived interaction but a long-term, stable process. In such cases, a tagged structural link can be used to model this persistent relationship, emphasising its enduring nature. This flexibility in OPM allows for more accurate representations of systems where certain processes are integral and continuous, rather than fleeting or temporary.

Persistent process between Foundation and House
Persistent process between Foundation and House, created by author using Canva

Conclusions

Effectively modelling a complex system requires a clear understanding and communication of its architecture, as the underlying structure is what defines and shapes its identity. Object Process Methodology offers a robust framework for this purpose by providing four essential links to represent the fundamental structural relationships between entities — aggregation-participation that denotes the part-whole relationship, exhibition-characterization that captures the features or operations of an entity, generalization-specialization and classification-instantiation that model inheritance.

These foundational relationships are comprehensive, enabling us to model virtually any system or concept with clarity and precision. They serve as the building blocks for creating detailed, yet succinct models that accurately reflect the complexity of the real world.

What are your thoughts on these fundamental structural relationships in OPM? How do you see them shaping your understanding of systems or concepts? Share your thoughts below!

Leave a Reply

Your email address will not be published. Required fields are marked *