Organising an Enterprise Architect Model
Seven ways to organise your EA models so that other people can understand them
- If you have spent many hours creating a great EA Model, hopefully you want the rest of your organisation to use it as well. But how can you make it readable?
- Or maybe have you just picked-up a model which you created a few years back, only to be baffled by your own work. What exactly was this model all about, and where has all that great stuff gone ?
- Or perhaps you’ve inherited a model from someone else who isn’t available to tell you what’s in it. How are you supposed to sort out what’s complete and useful, from the ‘other stuff’?
Over the years, we’ve come across all of these several times, and have developed a few tricks to avoid them.
If you have more techniques for helping other people to understand your models,
1. A Package is not a Bucket
The most important ‘thing’ in EA is definitely the Package. It’s also the simplest. Just a folder with stuff in it, right? Wrong.
The Package or rather the family of Packages which you create, say more about your model than anything else. If you just use them as a bucket to put things in, then you’re missing-out on a critical way to communicate the intent of your model.
Some rules for Packages:
- Sensible names. It may seem amusing to call a package ‘new stuff’, but nobody else will ever look there to find anything. If it’s ‘new stuff which was invented in the meeting..’ then call it that.
- Descriptions. A Package without a description isn’t just half-dressed, it’s practically naked. There is always something you can say about what’s in the package, where it came from, whether it’s finished or not.
I suggest that anyone who creates a package in a shared model and doesn’t add a description should buy the coffees for all of next week. - Authors. EA will make the Author of the Package the person who created it. But go further, and make the Author the Owner of the information in it. So, even if someone is totally confused at what’s in the package, they can always email the author…
2. Notes, notes, notes
I’ve been teaching UML and other modelling techniques for more than 15 years, so apologies to all former students for repeating this. If you’re in that select group, can you remember the most important UML (or BPMN, or SysML..) modelling construct ?
The Note. The humble note.
They don’t cost anything, they never run out, and they can communicate more about why your diagrams look the way they do than anything else.
Add them to elements, to links, to anywhere you can think of. But make sure to keep them up-to-date: a diagram with misleading notes is worse than one with no notes at all.
3. Single-purpose Packages
If you’re going to follow the rules above, and describe what’s inside each package, then having one, or a small number, of different types of ‘thing’ in a folder is sensible: it’s easier to find things, and easier to write a quick description.
This also becomes important if you are going to document your model using a document generator – either RTF or eaDocX.
A Package with one type of thing in it can be documented as a simple table, with the Package name becoming a title for the table.
4. Different things get different stereotypes
The idea of the Stereotype is one of the key ideas of UML, which EA has extended to cover all the other model types it supports. So whether you’re creating SysML diagrams, BPMN business processes or Use Cases, you can use stereotypes.
So use them.
A stereotype is just a ‘special kind of’ thing. So if you have use cases which are sometimes complete (all scenarios filled-in) then make them <<fully dressed>>Use Cases, or if not <<partially dressed>> . So a reader finding one of these will know whether it will be completed or not: they know what to expect.
The same can be true of any other element. Using a stereotype can tell your readers what they are looking at.
Stereotyping also makes it easier for documentation tools like eaDocX to change how they format their outputs. For example, a <<fully dressed>> Use Case should print its scenarios, and highlight where they are missing – that’s an error. But <<partially dressed>>Use Cases don’t need to.
5. Status is everything, or Somewhere to Play
When you read a model, probably the most common problem is that you don’t know what the status of something is: a diagram, an element, or a whole package of the model.
Is this completed, signed-off and implemented, or just some ideas I had over coffee one day?
So using the EA ‘Status’ fields (with some sensible values) is really, really useful to readers.
Why not have an area of the model which is just a sandpit? Somewhere where modellers can try things out, and to which no standards apply. Readers are not encouraged to look in these packages. Everything is work-in-progress or incomplete.
Equally, the areas which are for ‘real’ content DO obey all the local rules: packages must have descriptions, only the approved stereotypes are used etc.
6. Public and Private diagrams
The great power of EA is that it allows us to create links between all kinds of elements, depending on what kind of problem we’re trying to solve.
There are several ways to create these links: the Relationship Matrix is a quick way, but diagrams are also very common. And this creates a problem for the reader.
Are they looking a ‘proper’ diagram, which they are supposed to understand, or is this a diagram which you just created to establish some relationships, and isn’t really for public use?
So get used to naming diagrams so that this is obvious, and to prevent accidental printing of these diagrams in documents.
Pick a naming convention for ‘do not print’ documents: we add ‘hidden’ in front of the document name. We’d like to use a diagram stereotype, but that doesn’t appear in the Project Browser. So ‘My untidy diagram’ becomes: ‘Hidden – my untidy diagram’. We also tick the box in the diagram properties to “Exclude image from RTF Documents”. Both the EA RTF generator and eaDocX will take this to mean ‘don’t print in any document’.
So now you’re free to create as many untidy diagrams as you like, and readers will know to ignore them.
7. Pick a meta-model, write it down, and stick to it
This final piece of advice is really a summary of all the others.
Each idea we’ve discussed above contributes to your meta-model.
If that sounds like a scary, super-technical idea, it isn’t.
All of your EA models already have a meta-model, whether you know it or not. The meta-model just says what kinds of ‘stuff’ is in your model.
- What kinds of elements have you used? e.g Requirements and Use Cases, but not internal requirements,
- How have you linked them together?
- What stereotypes have you used, and what does each one mean?
- How have you used things like Element Tests, the Glossary, or Project Tasks?
..so not really complicated. The meta-model is just your local modelling standards.
If you want to find out what your meta-model is, use Model Expert. It will draw a diagram of all the element types, stereotypes and links in your model. Be prepared for a surprise! Big models can be complicated!
This is a good reason to make your meta-model clear and simple. Pick a small number of elements, stereotypes and links, and use them consistently.
Communicating the meta-model is critical: one which only you understand is no use. It MUST be written down, preferably in the model itself, and taught to all of your team.
AND kept up-to-date, as your modelling style evolves, as it will certainly do.
More Insights
Documents are dead - or are they?
19 October 2023
If your organization needs documents then you need eaDocX and Revision Manager - for quality documents, easy reviews and fast efficient model updates.
Learn MoreDocument-based EA model collaboration
27 September 2023
eaDocX and eaRevisionManager provide a cost effective and powerful solution for efficient document-based collaboration in Enterprise Architect.
Learn MoreWhy has eaDocX become eaTeamWorks?
27 September 2023
Here are the reasons why eaDocX is now part of eaTeamWorks - and why it's good for you.
Learn MoreCreating Custom Documents in Enterprise Architect 16
21 September 2023
Enterprise Architect 16 offers refined tools for customizable report-building. But sometimes you need even more. And fast. Here's how.
Learn MoreTraceability using Multi-hop Relationships
9 September 2021
Using eaDocX multi-hop relationships you can easily print the end points of 'virtual connectors' showing EA end-to-end traceability.
Learn MoreEnterprise Architect Tables: Using word table styles in EA
25 June 2021
This video shows how to apply Word table styles when you generate eaDocX documents from your Enterprise Architect models.
Learn MoreVideo Masterclass - Adding Detail to EA Matrix Reports with eaDocX
25 June 2021
With eaDocX you can format EA Matrix Reports in Word to include additional details and formatting. Here's how
Learn MoreVideo Masterclass - Creating documents from Model Views
25 June 2021
Use EA Model Views to create simple, flexible documents with eaDocX.
Learn MoreConditional Formatting Tool for Enterprise Architect
25 June 2021
Help readers find the things that need their attention, decisions and actions, with eaDocX conditional formatting.
Learn MoreVideo Masterclass - Attribute mapping with EA, eaDocX and Excel
25 June 2021
With eaDocX and Excel, it's easy to view, edit, create and even delete attribute/attribute links in Sparx EA.
Learn MoreEnterprise Architect Help: Choosing the right document structure
25 June 2021
eaDocX makes it easy to create exactly the document structure your readers need. Here's how...
Learn MoreEnterprise Architect User Guide - quick documents
22 June 2021
Video guides on how to create quick documents with EA's leading add-on, eaDocX.
Learn MoreDocuments in the Enterprise Architect Cloud
6 April 2021
eaDocX in the Cloud: Enterprise Architect document creating for EA SAAS environments
Learn MoreProducing Enterprise Architect RACI reporting
11 March 2021
Producing a RACI report from data held in EA, mapping stakeholders to any project deliverables is straightforward with eaDocX.
Learn MoreModels matter - nearly as much as deliverables
25 August 2020
Models matter - nearly as much as model deliverables
Learn MoreFixing your meta-model
25 August 2020
Advice for the new modeller #3 – Fixing your meta-model
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 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 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 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 MoreModelling techniques for business architecture software to explain general patterns
16 April 2020
Using object diagrams to explain general patterns with specifics.
Learn MoreHow to create personalised documents using Sparx document generation tools
16 November 2018
A guide to creating documents from Sparx EA models so everyone can engage with your work, project or deliverables.
Learn MoreDocument or Enterprise Architect Views?
21 May 2018
Create documents to be used by non-EA users instead of model views.
Learn MoreImprove your enterprise architecture model using colour
25 April 2018
Careful use of colour and shape makes models easier to digest.
Learn MoreModel curation techniques for EA Sparx Systems
6 March 2018
How cleaning, navigating and validating your EA model makes sharing and collaborating much more effective.
Learn MoreThe most re-used model components in Sparx Enterprise Architect.
20 October 2017
Why is the project summary the most read element in an EA model?
Learn MoreCreating a Glossary: Business Analyst Terminology
12 October 2017
Streamline your business understanding with shared definitions.
Learn MoreBusiness Process Analyst Styles
11 October 2017
Find out if you are a 'hard' or 'soft' Business Analyst.
Learn MoreHow to Print Sparx EA Connectors
18 October 2016
Structure your documents using the connectors in your Sparx 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