Top 11 model quality tips for Sparx EA modelers
Discover new insights into your model, and spot and resolve problems - missing data or inconsistencies - with the FREE Model Expert meta-model view.
Making sure your model is clear and consistent can be tricky, particularly if lots of people are adding or editing model content, and even harder when they are spread out around the world in lots of different places.
Does everyone have their own way of doing things so there is no ‘standard’ modelling style? Has your modelling style changed, so new content and old content don’t match? Do you suspect that some of your model is incomplete or not connected into the rest as it should be?
Here are 11 tips for using the FREE Model Expert meta-model view to spot and resolve potential problems. Individually each issue is simple, but together they deliver a powerful impact. Your journey to model quality starts here…
Hint: None of these are automatically modelling ‘errors’ – they are just things which you should think about, and maybe investigate a bit more.
Tip #1: Download the FREE Model Expert Sparx EA Tool
When you download Model Expert, the EA snapshot meta-model view (one of the free features of Model Expert) lets you quickly see what’s happening in your model. And even better – helps you fix it.
Check out our remaining tips to see how you can utilise this free tool to improve your Sparx EA model quality.
Tip #2: Find and resolve connector type errors
Model Expert can help you find and resolve connector type errors. The thickness of the line in a Model Expert meta-model diagram gives an idea of how many examples of that connector are in your model. Thin lines mean fewer examples.
To see exactly how many are present, look in the tagged value properties of the connector. In this example, there are 42 ‘Realization’ connectors, and 1 ‘Dependency’.
To look at individual connectors, right click on the connector type you want to change > Specialize > Model Expert > Show in diagram OR Show in Matrix. Then make the change in the EA properties window.
Tip #3: Check connector stereotypes for consistency
As with the example above, the line width indicates a low-usage stereotype, which might mean this is just a simple error.
Use Model Expert to see each of the connector(s) you are interested in. To do this: (Right click on connector > Specialize > Model Expert > Show in diagram OR Show in Matrix).
Then, if you think they are an error, change their type in EA.
Tip #4: Spot where element pairs have multiple connector types
Lots of modeling languages allow several different connections between a pair of element types.
This may be allowed, but it’s really confusing for modelers: they need to know what EACH of the connector types means, and that requires a lot of knowledge.
The Model Expert meta-model diagram will show you if this is happening in your model. If it is, we recommend that you consider reducing the number of ways that the two kinds of elements can be linked to just one or two. And/or make sure they have names and styles which help modelers to pick the right one.
Tip #5: Identify and correct elements which have small numbers of examples
Some element types may have just one or two examples. This could be correct but might also show that someone has used an element type/stereotype which they shouldn’t.
Once you have found the elements, maybe contact the author to confirm what they were trying to model and what the original intentions were. If they are mistakes, Model Expert’s free tool can help you to easily find them and then make the changes you need.
Tip #6: Review and fix inconsistent element stereotypes
In versions of EA before V15, it’s easy for modelers to create their own stereotypes, and therefore it’s easy to create them incorrectly. Model Expert allows you to easily locate and fix these. Firstly, find the occurrences using Model Expert (right click on element > Specialize > Model Expert > show occurrences). Then select each of the elements that are wrong and correct them by editing their EA properties. Or, if there are lots, open them in a spreadsheet to change them using eaDocX/eaXL
Tip #7: Add relationships to orphan elements that have no connections
Any element type which has no connections to other element types is worth looking into, as depending on the element type it could be a problem.
Lots of EA element types don’t have normal connections to other elements. In this example, ‘Signal’ element types appear in Sequence diagrams, and are referenced by other elements, so they are OK.
But if it is a problem, find the occurrences in your model using Model Expert (right click on element > Specialize > Model Expert > show occurrences). Model Expert then creates a new diagram containing all the occurrences. Then, for each element, use the EA option ‘Find in all diagrams’ to add the right connections.
You can also find all orphans by following the link from the Model Expert dashboard.
Tip #8: Bring all MDG elements to the same version
Some models can have a long life, and so they might include elements from different versions of the same MDG. For example, SysML, ArchiMate and BPMN all have multiple MDG versions. Quite an unusual situation.
The Model Expert snapshot meta-model will show you if this has happened in your model. Of course, this is not necessarily a problem, but where it happens the percentages for attribute usage may not be sensible.
To bring all to the same MDG level, as before, use Model Expert to show all occurrences and then change the element properties in EA.
Tip #9: Review how tagged values are being used
Enterprise Architect lets you define any number of tagged values for each EA element type. However, to see what they are, and to find out if they have been used, you must open the properties of each element. A long winded and inefficient process.
The faster way to get a full picture is to use Model Expert to analyze your model or package. This will show you, for each EA element type, all the TVs that have been defined, and how many of them have been populated.
In this example, the ‘Requirement’ element type has lots of tagged values (not necessarily a bad thing) but several of them have low percentage usages – for example, ‘Parent’ is used by only 3.5% of elements.
Again, not necessarily a problem, but it might be useful to see which modelers are using the low usage tagged values, and either discouraging them, or, if they are useful, encouraging other modelers to use them too.
Tip #10: Choose the right level to view your meta-model analysis
So, you’re utilizing Model Expert to analyze your models but if your Model Expert snapshot diagram is like this one, then you’ve chosen to analyze a really complex model. In general, if a diagram has more than 20-30 element types, we think it’s hard to see what’s happening.
Choose a sub-package, and analyze that, then do the same for all the other sub-packages. There’s a good chance that the meta-models will be different for the different sub-packages, with a small number of links between them.
Remember that the meta-models are just normal EA class diagrams, so you can create sub-set diagrams, and EA will add all the relevant connectors.
P.S. you can include diagram contents in your meta-model analysis, so if you analyze a Package which includes a diagram, it will display the results for all the elements shown in that diagram, even if the contents are saved in other packages.
Tip #11: Make sure you can explain your model
A meta-model is a summary of what’s happening in part of your model. If you have fixed all the issues described above, and you STILL have a model which is hard to explain, then maybe you need to simplify your model some more. This is not a mechanical exercise.
Sit down with all the modelers who are contributing to this part of the model and find a way to make things simpler.
This may make the model less precise, but it will also make it easier to understand and so easier to re-use.
The good news – the Model Expert meta-model analysis is a free feature. So, you can find out all these things about your model at any time. No purchase necessary. But now you’ve reviewed your model and sorted all the issues above, wouldn’t it be great if you didn’t have to do all this again?
Using Guided Modelling, your team can be helped with real-time prompts to follow your modeling standards, which means they model right first time. Try Model Expert and see what difference it could make to your modeling team.