Designing Big Systems
Engineers and designers have always used a variety of models as part of their disciplines. Designing a car, a power plant, information application, or a transportation system relies heavily on creating a model of the system. Similarly, models are used extensively in trying to understand how complex systems such as the human body or climate works. In the computing age, it has become far easier to create and share these models. These models carry an ontology, expressing a theory or a set of assumptions, about the world or some part of it.
Different fields deploy models of varying sophistication, though in many, the conceptualizations or semantics - the meaning - of the model and its parts are implicit or governed by inconsistent convention. But the promise of model reuse, a desired goal, is hindered by these differences. So a gradual shift to explicit semantics and consistent conceptualizations is underway, first in engineering and slowly in other fields.
The various disciplines within engineering are evolving from using informal modeling, to using formal languages to model their systems; to underpinning said languages with explicit semantics; to recognizing the importance of understanding the underlying ontology of the elements of the languages. Ontological analysis ensures that assumptions about concepts used in models are made explicit and reuse insights the profession has to offer on fundamental relations such as “component” or “sub-class”.
There are various standardization efforts underway to advance the semantic and ontological foundations, from the development of ISO 15926, to providing formal semantics for the Unified Modeling Language. Similarly, groups are working to build repositories of ontologies, or libraries of ontology patterns - snippets that formalize important aspects of reality such as “part-of” or “is-a”.