We were very proud of our ability to build an enterprise ontology in 4-6 months. (Enterprise Data Models for similarly sized enterprises typically took many years and often didn’t finish at all)
We were also proud of the fact that our enterprise ontologies were often 10-100x simpler than the collective complexity of the systems they were representing.
But despite all this pride of accomplishment, we realized two things:
- Even at 10-100x simpler than the systems they were covering, they were still far too complex for people to understand and implement, and
- Even at 4-6 months, it was too long a delay between analysis and something useful
In parallel with this, we reflected on what we were learning by implementing enterprise ontologies in almost a dozen different industries: there are some concepts that are true in all settings, and the concepts that are different are derivative from those that are the same.
Armed with this, we have postulated, and then implemented on several projects, the idea of an “Agile Enterprise Ontology.” The core ideas are:
- There are a small (<200) number of concepts (classes +properties which is analogous to table + attributes) that form the core of an enterprise information model
- If designed correctly, this “core” set of concepts and relationships will endure over a long period of evolution of the enterprise
- This core can be discovered and modeled in 6-8 weeks. This initial model can be comprehensive (cover most of the core activities of the firm) and structurally stable (later detail design will only have minor, localized change to the core model)
- This core can be populated directly. The idea, promulgated by most Enterprise Architecture Methodologies, that there is a difference between the conceptual, logical and physical models, is an artifact of old technology. The core Enterprise Ontology can be populated and verified directly. Instances so populated can continue on for a long time with minor tuning on their structure.
Further, once we have the core enterprise ontology, we can begin implementing system. These implementations will tell us far more than additional analysis would about the quality and permanence of the enterprise ontology. What we’ve found to date is the core withstands, with some adjustments, the onslaught of implementation.
Our interest is in helping people define the core as rapidly as possible and immediately begin putting it to use. The use will provide further detail to a sub-ontology. It will challenge, and may cause a refactoring of some part of the core. The implementation will inevitably contribute to the architecture in a way that implementing another application wouldn’t. Once you add a feature to the architecture on top of a data centric/ semantic ecology, you’ve helped more than just the immediate problem at hand. You’ve made that capability available to a wide range of functions. It will deliver value.