Archive | 2021

Deconstructing UML, Part 1: Modeling Classes with Categories

 
 
 
 

Abstract


This is the first series of papers critiquing the Unified Modeling Language (UML) and proposing an alternative modeling language based on a branch of mathematics called category theory (CT). We argue that modeling in CT provides a richer and more precise formal structure than UML, while still supporting many of the intuitive and diagrammatic features which engineers appreciate. Deep ties connect CT to formal logic, physics, and computer science, helping to connect our high-level models to simulation and implementation. In this paper, we focus on modeling UML’s structural component, as exemplified by the class diagram using CT models. To do this, first, we introduce CT and walk through the constructs of the class diagram one by one. Later, we show how UML class models are implemented through standard CT constructions. As we do, we show that some UML constructs are redundant while others smuggle in assumptions that should be made explicit. Thus, we argue that the use of CT in information modeling could make our models less ambiguous, more precise, and more formal.

Volume None
Pages None
DOI 10.6028/NIST.IR.8358
Language English
Journal None

Full Text