Posted: 14th Feb 2020
Author: Eden Yorke
What is the meta model?
You are a board member of a successful company. Your staff are happy, have the equipment and software to do their job to the peak of their performance. You are leaders in your market and are bringing new products out every week. Your stakeholders and investors are happy with their returns. All seems well.
But something is amiss. You have the feeling your organisation could be a little better. Everyone knows machinery needs constant updates, and you have good maintenance on your production line equipment. However, your IT systems are now a few years old and you have a heard a saying that IT systems mature like milk. You are happy the support teams are keeping up with maintenance schedules and technology patching, but then the CTO tells you the technology needs a refresh, and your analysts have let you know a new market emerging in which the company could be a leader if you act quickly.
How do you understand what your business looks like to make these changes?
You might have some long-standing employees who between them know how the business fits together, but they are busy; this is going to take time. You might have already experienced this type of panic in the past, and ended up with a load of PowerPoint presentations which sort of answered what you wanted. What is common is if you were to ask twenty senior managers to collect data about their part of the business, they would come up with dozens of different formats and ideas.
To gain any sort of order with the data collected, a framework and a nomenclature to keep everyone talking the same language is needed. You need something that will normalise the data being collected and display it in an easy to consume format. What you need is a meta model.
The meta model is an underpinning reference framework onto which you will hang the constituent parts of the business.
A meta model will:
- Show how each element of the business relates to all others
- Demonstrate their effect on the related elements
- Promote the use of a standard language
Without the meta model, you will just end up with a load of catalogues and capabilities that flaps about like a flag on the fourth of July.
What does a meta model look like?
Below is an example of a meta model from the The Open Group Architecture Framework.
There are dozens more, but they all serve the same purpose, which is to convey a method of connecting the various elements of the business into an understandable map; a map that can be queried to answer important business questions, identify gaps, and get the most out of investment. This is covered in another article; Business Intelligence Data, which is all underpinned by the meta model.
Armed with a comprehensive meta model like the one above, would be a Utopia. Imagine having a fully populated model, every part of your business modelled, it’s influences and relationships recorded, and anyone able to question it to gain insights, But the diagram is quite complicated and I would advise any business embarking on this journey to start with something much simpler.
Start simply, gain value immediately
The meta model, as previously mentioned, allows you to record the various elements of your business in a cohesive way. But you would never try and collect too much, because it will take an inordinate amount of time and original data will become stale very quickly. Start small and build on success. Below is a simplified meta model which in my opinion, covers the core data.
Different businesses will decide to collect a different set of elements, but arguably this is probably the simplest meta model you can have to get any value. It clearly shows how an Application supports a Business Function, and in turn the Business Function delivers a Business Capability. The Business Process uses the Application at some point, and also supports a Business Function. Sounds complicated and possibly one of the reason why many organisations have a pretty well-developed business capability model, but then lose steam and don’t go any further. With a simplified model, linked back to your business capability model, you can begin to see how the processes, applications and functions, effect the capabilities.
To help with the definitions of the elements, here is a reproduction from The Open Group (I’m a big believer in not re-inventing the wheel):
- Business Capability – A particular ability that a business may possess or exchange to achieve a specific purpose.
- Business Function – Delivers business capabilities closely aligned to an organisation, but not necessarily explicitly governed by the organisation
- Application – An encapsulation of application functionality aligned to implementation structure, which is modular and replaceable. It encapsulates its behaviour and data, provides services, and makes them available through interfaces.
- Business Process – A collection of linked tasks which find their end in the delivery of a service or product to a client.
While the diagram above is only a small part of a much larger model, it is a good place to start and you can get some real value from populating the model. For example, if a new application is being developed, you can see at a glance it will have an impact on the Business Process it will be used in, and the Business Function it supports.
There’s more to it
So far, I’ve mentioned the most basic elements that would make up the core meta model, but there’s more. Each element has a set of attributes, or data that further explains the element.
Above are examples of the attributes that describe the individual elements. They expand the available data for each element and enrich the reporting. For example, an old Application supporting a core Business Capability (through the Business Function) could have a negative impact on the delivery of that Business Capability.
It is also possible to add attributes to the relationships. Where multiple Applications support a Business Function, you could work out the percentage of support given for each. That in turn will show how important the Application is.
So, why is this important?
This has been a whistle stop tour of a meta model, and while the examples only represent possibly twenty percent of an entire meta model, why is it important? If you want to get benefit of the data to be collected then you will need a guiding framework; you will need a meta model, starting with a small number of core elements which will give the most value. The model above is a good place to start and you can expand as more data becomes available.
Businesses often try and go head-long into collecting everything, designing in hundreds of elements and dozens of attributes for each. Faced with tens of thousands of data points to collect, contributors to the model quickly get data collection fatigue. The value of the model is then drastically reduced and no one will want to use it. If you started with 20% of the model, and collected 80% of the meaningful data, you would get a better outcome and realise value much sooner than trying to collect 100% of the entire model.
Another important use
The main purpose of the meta model is to guide the collection of corporate knowledge, to keep the data about each element and their relationships in order.
Another use is for building the model in a reporting tool. It helps to have a working meta model to guide the model building and setting up the internal model. Tools such as Tableu, Microsoft Power BI, and Qlik Sense, all use an internal model to create the reports. Once the model has been built, users can create their own reports easily and gain instant value.
And the conversation?
When trying to describe to someone how an Application effects a Business Function, you could try and draw it out, describe it for ten minutes, or you could put a simple diagram down, which everyone can recognise. I have used this technique in the past and a conversation that might have taken half an hour was over in just a few minutes. Even without having a fully populated repository with thousands of elements, having just the meta model makes it clear. It gives the element context.
The meta model helps:
- Guide the collection and arrangement of business intelligence data
- In conversations when discussing element relationships
- In building reporting functions for self-service portal
We hope you found this article interesting and it has got you thinking how a good meta model will help in the day to day discussions about your business.