Background
An enterprise architecture reduces the cost of operations, through reuse of standard pieces of technology, application and data, and network .
However siloes of information in specialist corporate IT teams are not making it through to a central knowledge base, meaning that function and data are repeated in a string of parallel universes, that are not congruent, and have synergies that remain largely unexplored.
Enterprise architectures are often seen as not addressing the coalface reality of reuse and accessibility of data and services.
An Enterprise Information Model can address the gap between business and technology owners, practicality and principle, concept and delivery.
Deploying from an Enterprise Model
Metadata links most of the common Enterprise Planning and Business Process Automation domains:
Customers are linked to products, enterprise asset management is referenced geospatially, and of course organisation data provides the basis for linking web interfaces to identity and access management systems.
Workflows start or are started by scheduled and triggered events, and web content/assets can be linked and reused by multiple workflows.
An Enterprise Model can be deployed from a set of domain classes. Relevant metadata databases can be directly generated, and runtime objects can also be generated from the same Platform Independent Model in a specific technology, for example .Net, Java, XML. Code stubs can be deployed by common development IDEs to complete the build of runtime systems.
This is an enormous saving in architecture, design and development processes, leaving people free to invest in newer technologies and innovation, rather than having to iteratively process, develop and deploy.
From concept to code is getting ever closer. With the advent of quantum computing, the recognition of algorithmic patterns that have quantum mechanical analogs is key to moving ICT to the next level.
Models and Modelling
Models are the ideal way to commence the process of pattern recognition for ICT deployment
Although every organization has a unique set of processes, and a unique language for describing these processes, in essence, there is an enormous degree of commonality. While subject areas involved in a business are are published as conceptual models, cohesion outside of the project is rarely considered.
An opportunity is missed, as subject area models can be readily mapped to standard business domains.
Accessibility of information complies with all the ‘nice to have’ enterprise principles covering information architecture, SOA and reuse of existing capability.
An Enterprise Information Model serves as a natural method of documentation for business domain functionality at an enterprise level.
While design principles are useful, they are no substitute for a coherent model.
An Enterprise Information Model can be used to support design and development.
For business users, a model supports the basic concepts, and provides a common language with which to communicate with designers and developers. At the operational level, a model can be built in such a way as to facilitate decision making by facilitating communication about performance (Business Activity Monitoring) to business owners.
An EIM has to be be clearly stated and understandable to the system owners, builders and users.
Enterprise Information Management
A centrally managed model can be version controlled.
Business Domain UML Models can be deployed as a metadata database to enable cohesion across business areas by deployment as an integration data hub, as well as publication mechanism for data services. Well-constructed, a Business Domain Model can generate databases, and engineer code that provides a starting point for implementation of data, XML and web services, implementation classes and procedures for deployment (allied with the principles of MDA).
Business Process Models (in BPMN or UML) and User Interaction Models can be mapped to the business domains, providing not only a shared knowledge base, but also a ready conversation between business analysts and developers.
Enterprise data can not only be explored and managed to avoid duplication, an Enterprise Metadata Model can facilitate integration. Data can be shared (except where exempted by security policy) through metadata management. Mapping physical data to a metadata database provides a publication mechanism and the basis for messaging, both data centric and middleware style, using RDBMS SQL, SPARQL for the semantic web or XQuery for XML data collections.
This promotes both federated and consolidated data integration, with a clear separation from from application services and processes, facilitating optimum database infrastructure performance. It also facilitates the development of service taxonomies for ESB, SOA and other integration platforms.
Enterprise Architecture Process
Allied with program governance, architecture governance is equally important. An enterprise architecture process is equally as essential as a project management process, providing the structure, timeline and delivery framework to meet release target dates.
Using an Enterprise Information Model as the knowledge repository for a team based approached to ICT project delivery allows for a clear delineation of responsibility, in the context of technology delivery prerequisites and dependencies.
This means an evidence based approach for project estimation based on architecture, design and development project deliverables, traceable to business requirements and business priorities.
It also means that business and technology specialists can share a perspective, collaborate on the implementation of ICT systems, on time and on budget, with a good appreciation of the whole project, and the part that every role plays in the delivery.
View a worked example of an Enterprise Information Model