EA as a discipline encompasses a wide range of issues, most of them often handled through dedicated tools. Whatever the effectiveness of these tools their harnessing to EA objectives is bound to remain a nonstarter without a principled framework that could first enable some functional interoperability, before paving a way to an integrated EA engineering platform.
In practice such a challenging venture will require the equivalent of an EA bus supporting sound and stable interfaces with enterprises’ business and engineering resources. Assuming ontological prisms as symbolic hubs of EA engineering platforms, those interfaces would be of two kinds:
- Cross interfaces, to deal with black-box integration
- Dedicated interfaces, to deal with white-box integration
Cross Interfaces
Cross interfaces rely on syntactic constructs to provide shallow access to all resources according to names (thesauruses), structure (XML), and purpose (RDF):
- Thesauruses ensure access to the semantics attached to names
- Resources Description Framework (RDF) are the Swiss Army Knife of graph-based representation of symbolic contents
- Extensible Markup Language (XML) is the Swiss Army Knife for the representation of documents structure, ensuring the storing, transmitting, and reconstructing of arbitrary contents independently of their meaning
These interfaces give access to symbolic artifacts independently of purposes and semantics.
Dedicated Interfaces
Dedicated interfaces allow deep access to symbolic artifacts according to purpose and semantics:
- Data files: JSON
- Data/Facts: SQL (datasets), statistical series (SAS, MATLAB, SPS), references (NIEM), Object-oriented analysis (ORM, NIAM)
- Information/Categories: general (UML) and specialised (Archimate, SysML, BPMN) modeling languages and methods (OOD)
- Knowledge and concepts: ontology (OWL) and logic (Prolog) languages
Conclusion
Compared to meta-models approaches like tte OMG’s Unified architecture framework (UAF), the use of ontological prisms avoids a double confusion, first between the semantics of general-purpose and domain-specific languages, and then between enterprise and systems architectures.