Category classes unify modeling levels for clearer software design

Category-Based MLM: Unifying Powertypes with Superclasses

Software Engineering

Summary

Software models often need multiple layers to represent different types of things and their relationships. The authors found current ways to organize these layers can be confusing because of how certain connections are treated. They propose a new model that better distinguishes the roles of category classes, making it easier to decide hierarchy and classification. This helps software designers create models that more accurately reflect real-world domains.

What this means in practice

  • For software architects: Improve classification structures in complex domain models by using clear criteria for assigning levels and relationships.
  • For enterprise system designers: Design multi-layered data schemas that better handle concept abstraction and inheritance in large software systems.

A theory result. No direct application yet.

Authors

Mira Balaban, Azzam Maraee, Arnon Sturm

Abstract

MultiLevel software Modeling (MLM) suggests that conceptual modeling in broad subject domains might require abstraction of multiple classification levels. The MLM approach relies on philosophical arguments, claiming that faithful modeling of real-world domains involves repeated type classification as in ontologies of natural kinds. MLM leveled architecture is interwoven and defined by instance-of interlevel relationships between clabject classes in lower levels to classes termed category classes, in upper levels. The instance-of relation denotes membership of clabjects as type objects in their (powertypes) category classes, and is not transitive. All MLM approaches support forms of deep characterization, i.e., category classes can influence classes in lower levels. Deep characterization is an essential feature of superclasses and contradicts the non-transitive membership meaning of instance-of. In this paper, we introduce the Category-Based MLM (CatMLM) model, in which category classes have dual superclass and powertype facets, based on the distinction between category features that do not participate in deep characterization, and object features that do. This distinction clarifies the role of levels, provides a clear quantifiable criterion for leveling, and yields a decision rule between the subclass and instance-of relations. The contribution of this paper is to introduce a well-defined MLM model that (1) is based on simple, quantifiable level decisions; (2) clarifies how leveling emerges from domain needs; and (3) analyzes gains and losses of MLM vs. plain OO modeling.