System Object Model (SOM)
The System Object Model (SOM) is an object-oriented shared library system developed by IBM. SOM defines an interface between programs, or between libraries and programs, so that an object's interface is separated from its implementation. SOM allows classes of objects to be defined in one programming language and used in another, and it allows libraries of such classes to be updated without requiring client code to be recompiled.
SOM provides an API that gives programs access to information about a SOM class or SOM object.