Skip to content

General-Purpose Modeling

Represent multiple kinds of system structure and behavior through a reusable modeling language whose metamodel is intentionally broader than any one application domain.

Version
v3 · 2026-09-19 · History
Domain-specific #
1920
Domain group
Applied Sciences & Engineering
Origin domain
Computer Science & Software Engineering
Subdomain
Model Driven Engineering → Computer Science & Software Engineering
Aliases
GPM, General-purpose modelling, General-purpose systems modeling

Core Idea

General-purpose modeling uses a broadly reusable modeling language to represent several facets and many classes of systems instead of baking one application domain's concepts into the language. A general-purpose language supplies generic constructs—class, component, activity, state, relationship, constraint—and expects a modeler to configure, profile, or combine them for the subject at hand.

UML is explicitly standardized as a general-purpose visual modeling language for specifying and documenting systems. EXPRESS provides a standardized information-modeling language used across product-data domains.

How would you explain it like I'm…

Build-Anything Blocks

Think of plain building blocks that can make a house, a car or a zoo, instead of a kit that only builds one pirate ship. General-Purpose Modeling uses a drawing language with plain pieces like boxes, arrows and steps. You can use them to draw plans for lots of different kinds of things.

One Language, Many Systems

General-Purpose Modeling means describing systems with a modeling language that works for many kinds of projects, not just one. Instead of having special words for, say, only banks or only robots, the language has general pieces like parts, connections, activities, states and rules. The person making the model arranges and adjusts those pieces to fit whatever they're working on. UML is a well-known example: a standard drawing language for planning and documenting systems.

Domain-Neutral Modeling Languages

General-Purpose Modeling uses a reusable modeling language that can represent many kinds of systems and several of their aspects, rather than building one field's vocabulary into the language. It provides generic constructs such as class, component, activity, state, relationship and constraint. The modeler then configures, profiles or combines these constructs to fit the subject. This contrasts with a domain-specific modeling language, whose concepts are tailored to one application area. UML is standardized as a general-purpose visual modeling language for specifying and documenting systems, and EXPRESS is a standardized information-modeling language used across product-data domains.

 

General-Purpose Modeling represents systems using a modeling language designed to be reusable across many classes of systems and multiple facets, rather than encoding one application domain's concepts. Such a language supplies generic constructs like classes, components, activities, states, relationships and constraints. Adapting it to a particular subject is the modeler's job, done by configuring constructs, applying profiles or extensions, or combining views. The trade-off against domain-specific modeling languages is breadth and reuse versus built-in domain semantics. UML is explicitly standardized as a general-purpose visual modeling language for specifying and documenting systems. EXPRESS is a standardized information-modeling language applied across product-data domains.

Scope of Application

The practice appears in software and systems architecture, product-data exchange, enterprise modeling, business processes, and model-driven engineering. ISO/IEC/IEEE 42010 makes architecture description explicitly viewpoint- and concern-relative, preventing one general notation from being mistaken for one complete model. Fowler contrasts general-purpose host languages with domain-specific languages optimized for narrower expressive tasks.

Clarity

Name the modeling language and version, metamodel, viewpoints, intended analyses, semantic interpretation, conformance level, profiles, exchange format, and consistency obligations. State which target properties are deliberately omitted.

Manages Complexity

One shared language reduces the number of notations a team must integrate and lets tools reuse parsers, repositories, transformations, and interchange formats. The cost is semantic distance: generic constructs often require conventions or profiles before domain experts can read them reliably.

Abstract Reasoning

  1. Identify stakeholders, questions, and system boundary.
  2. Select a general-purpose language with adequate construct coverage.
  3. Choose viewpoints and model kinds for each concern.
  4. Bind target entities to generic metamodel elements.
  5. Add profiles or constraints only where semantics remain unambiguous.
  6. Maintain traceability and consistency across views.
  7. Run analyses supported by the declared semantics.
  8. Reassess whether repeated specialization warrants a domain-specific language.

Knowledge Transfer

The portable pattern is reuse a broad representational grammar across domains, then make each specialization and semantic loss explicit. It transfers to general-purpose data schemas. The proposed immediate parent is Representation.

Relationships to Other Abstractions

Local relationship map for General-Purpose ModelingParents appear above the current abstraction, mutual partners to the right, and children below. Node labels state whether each abstraction is prime or domain-specific; colors identify relation types.General-PurposeModelingDOMAINPrime abstraction: Representation — is a kind ofRepresentationPRIME

Current abstraction General-Purpose Modeling Domain-specific

Parents (1) — outgoing typed relations

  • General-Purpose Modeling is a kind of Representation Prime

    Representation is the broader abstraction this entry instantiates.

Hierarchy path (1) — routes to 1 parentless root

Neighborhood in Abstraction Space

General-Purpose Modeling sits in a sparse region of the domain-specific corpus (95th percentile for distinctiveness): few abstractions share its structure, so a faithful description tends to retrieve it precisely.

Family — Unclustered & Miscellaneous (2769 abstractions)

Nearest neighbors

Computed from structural-signature embeddings · 2026-10-25