An ontological model of information systems, the Bunge–Wand–Weber (BWW) model, is used to analyse and evaluate the Unified
Modeling Language (UML) as a language for representing concrete problem domains. As a result, each relevant and major UML
construct becomes more precisely defined in terms of the phenomena in and aspects of the problem domain it represents. The
analysis and evaluation shows that many of the central UML constructs are well matched with the BWW-model, but also suggests
several concrete improvements to the UML-metamodel. New metaclasses are proposed to distinguish between (physically) impossible
and (humanly) disallowed events, based on UML-exceptions. New abstract metaclasses are proposed for static and behavioural
constraints, behaviours and static behaviours, as well as binding relationships and coupled events. New meta-subclasses of
UML-objects, -classes, -typesand -relationshipsare proposed to make the UML more orthogonal, and a new definition is proposed
for UML-responsibilities. The analysis also shows that the constructs in the UML must play several roles simultaneously, supporting
representation both of the problem domain, of the development artifacts and of the proposed software or information system,
while fitting together as a tightly integrated, well-defined language.
Object-oriented analysis – Problem domain representation – Ontological analysis and evaluation – Unified Modeling Language (UML) – The Bunge–Wand–Weber model (BWW)