When is the right time to introduce meta-modelling?
Advice for the new modeller #3 – Fixing your meta-model
At a recent conference on Enterprise Architecture, we met a surprising number of people who said ‘I’ve just been made the Enterprise Architect for my Enterprise. What should I do?”
These were people who looked genuinely worried, and quite right too. It’s a big job to give to someone who doesn’t know what it is. We had a steady stream of these people through the day. I wish we’d been selling counselling and not software tools.
But in the middle of all these struggling EAs was a real treat. A very smart gentleman who said – ‘I have my Enterprise Architect Metamodel, now I need a tool to implement it”.
He expanded. “We’ve haven’t started modelling yet, but this is what we need the tool to contain.”.
Wow. So he’s about to start out doing what has to be the hardest bit of modelling there is – capturing all that’s interesting about a large organisation – and he already knows exactly what information he’ll be capturing, and how it will be organised.
We chatted for a while, gave him some brochures, and wished him well.

I’d happily bet the farm that his meta model now isn’t the one he showed us. The idea that such a complicated thing as an EA MM can be designed in advance is pure hubris.
I know this, because I fell into this bear trap.
Long ago, we had a great workshop, designing a meta-model for a project. We had modelling experts, domain experts, and even a Project manager to keep it all real. And at the end we had a MM which we all agreed would capture the essence of what we needed to model. Now just go away and populate it.
I was SO confident we’d nailed it – after all, it wasn’t the first time we’d thought about this – that I offered to customise our chosen tool to implement the MM. With Sparx EA, this is fiddly, but fairly straightforward. So a spent a couple days organising a set of diagrams, toolboxes and stereotype definitions, and it all went into an ‘MDG” file which was in effect our own modelling language. A “Meta-model in a box”.
Our team of 5 then started modelling.
We had a team stand-up every week to start with. Things were developing fast. We were discovering all kinds of new stuff about the domain, so sharing was essential. but the MM didn’t quite keep up. We needed new stereotypes, new kinds of links, and even new kinds of diagram, almost weekly. So I spent hours each week re-designing the MDG – which contained all these new ideas – and re-releasing it to the team. This went on for about 2 months, after which I finally got tired of endless re-writes, and we decided as a team that whilst we’d DOCUMENT our MM, we’d wait until it stabilised before we committed it to code.
And finally it did stabilise. Right before the modelling was complete.
The Lesson
Don’t fix on your MM too early. And by ‘too early’ I mean before you’ve done at least one full project with a stable MM. And even then, only commit to code those bits of the MM which you haven’t changed for AGES. Keep the rest as documented standards which need to be manually applied (or, if suitable tooling is available, applied in a way which you can change quickly)
If you’re on your first project – like our smart friend – then by all means document what you think your MM will be, but be prepared to change it rapidly as your model unfolds, and don’t commit it to code.
More Insights
Using Excel to create an EA dashboard
16 February 2021
A simple example of an EA dashboard, to show how you can create your own and show the information in your EA model to your project team
Learn MoreWhere's the best place to start modelling?
19 October 2020
Advice for the new modeller #1 - Where do you start?
Learn MoreProcess based model styles
25 August 2020
How to use BPMN and UML to make models which last.
Learn MoreModels matter - nearly as much as deliverables
25 August 2020
Models matter - nearly as much as model deliverables
Learn MoreImproving model quality using a Sparx EA reference model
25 August 2020
Maintain quality with tools to find and fix mechanical errors in your modelling
Learn MoreHow much domain modelling is enough?
25 August 2020
Advice for the new modeller #2 – (not) Melting the Pan
Learn MoreWhat needs to be included in your EA model content?
25 August 2020
Advice for the new modeller #4 – (not) Modelling The World
Learn MoreKnowing when to give up
25 August 2020
Knowing when to step back makes for better Business Analysts
Learn MoreUsing Enterprise Architect to document decision making
25 August 2020
Make your models more useful for future modellers
Learn MoreBeck’s Map: an EA model abstraction example
25 August 2020
Possibly the best model abstraction in the world
Learn MoreSimplifying ideas in a BPMN Process Diagram
25 August 2020
How to find the right number of ideas to include in your model.
Learn MoreExplaining EA Sparx Systems to non-modellers
25 August 2020
Model driven analysis - the best way to define what we do?
Learn MoreHow to simplify BPMN Data Models
25 August 2020
Why simplifying your diagrams can actually make them more informative.
Learn MoreCreate useful models using the Sparx EA Tool
18 August 2020
Advice for the new modeller #3 - Producing useful outputs with your new EA tool.
Learn MoreBeginners guide to Enterprise Architect software
18 August 2020
Our advice for new EA modellers
Learn MoreUML Business Analyst Solutions
14 August 2020
Using UML to resolve inconsistencies, gaps and overlaps.
Learn MoreCleaning: How to Simplify Enterprise Architecture Models
14 August 2020
Model Curation Techniques # 1 - Cleaning your EA model before you let other people see it
Learn MoreIncluding Sparx EA Model Provenance
14 August 2020
Sparx EA model help to explain to others why your models look the way they do.
Learn MoreWhat to include in your enterprise architect documentation
29 July 2020
How to create documents which communicate your ideas efficiently and effectively to stakeholders.
Learn MoreOrganising an Enterprise Architect Model
28 July 2020
Seven ways to organise your EA models so that other people can understand them
Learn MoreChoosing Your UML Subset
27 July 2020
Narrowing down the modelling ideas in your Enterprise Architect model to make consistent, understandable models.
Learn MoreWebinar: Using Interactive Documents to Collate Sparx EA Model Feedback
17 July 2020
A webinar from the EA Global Summit 2020.
Learn MoreWebinar: How to successfully scale up your Enterprise Architect team
30 June 2020
A webinar from the EA Global Summit 2020.
Learn MoreNavigating Models: Enterprise Architect Help and Techniques
16 April 2020
EA Model Curation Techniques #2 - Making models easy to navigate.
Learn MoreValidation: Improving your Enterprise Architecture Model Structure
16 April 2020
EA Model Curation Techniques #3 - Validating your model
Learn MoreExplaining the General with a Specific
16 April 2020
Explaining ideas using Object diagrams
Learn MoreDifferent documents for Different People
16 November 2018
How to tailor information to each user - making it as easy as possible for everyone to engage with your work, project or deliverables.
Learn MoreColor your Knowledge
25 April 2018
A while ago a client asked me to look at some process diagrams which had been created for them by a well-known consultancy.
Learn MoreModel Curation
6 March 2018
How cleaning, navigating and validating your EA model makes sharing and collaborating much more effective.
Learn MoreContext - Where are we?
20 October 2017
I’m occasionally asked “What’s the most re-usable bit of a model – where should I start?“.
Learn MoreGlossary
12 October 2017
In a recent talk, I asked the audience of about 100 BAs which of them maintained a glossary as part of their work.
Learn MoreHard and Soft
11 October 2017
No, not about Brexit… More about styles of Business Analyst.
Learn MorePrinting connectors
18 October 2016
Creating documents that start with the connections between the things in your model
Learn MoreUsing Multi-hop relationships to display Branch/Merge with EA13
11 August 2016
One of the most common requests we see from new EA users is: "Why can’t I do branch/merge with EA?
Learn More