Drawing an Object
I see a red door and I want to paint it black. No colors any more I want them to turn black.
Rolling Stones, Paint it Black
If object-oriented programming is the activity of modelling a problem in software, then the kinds of diagrams (and verbal descriptions) that software teams use to convey the features and behavior of those objects are metamodeling – the modeling of models. The rules, for example, the constraints implied when using CRC cards—https://dl.acm.org/citation.cfm?id=74879, are then metametamodels: the models that describe how the models of the models of the problems will work.
Unified Modeling Language
Plenty of such systems (I will avoid the word metametamodels from now on) have been used over time to describe object systems. The UML (Unified Modeling Language) is the result of combining three prior techniques: the three Elven Kings, Grady Booch, Ivar Jacobson, and James Rumbaugh bent their rings of power (respectively, the Booch Method, Object-Oriented...