Author Topic: v15.2 – Time to get QuickLinker filter list?  (Read 14104 times)

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8074
  • Karma: +118/-20
    • View Profile
Re: v15.2 – Time to get QuickLinker filter list?
« Reply #15 on: July 19, 2021, 01:54:23 pm »
No, I think I was unclear. I don't think the perspective is going to help you in this case. But I can use the perspective configuration dialog to help work out where the time is going.

To open the dialog I'm talking about:
  • Start > Desktop > Perspectives > Personal Sets
  • New > Provide a name and set it as strict
  • Add your technology using +
  • Restrict > Your Technology > Link Rules

The purpose of this dialog is to change the connections I can make, at the level of the triple I mentioned earlier. It also happens to be a great way to visualize the rules your technology allows. I've personally found it much more useful for that purpose than what it's actually for. Although interesting, none of that is why I'm mentioning it now. It's filled from the same list as the quicklinker, which means we can separate the different components of the time to work out where your problem is.

1-2 gives you the time taken to calculate all possible combinations for each connector.
3-4 gives you the time taken to build the quicklinker options. For most users they will also see 1-2 included in that first time. They will get closer to this figure when they use the quicklinker from a second type.

Generally speaking 4 needs to be as short as possible. There's a tradeoff between load on demand for 3 and load up front. As I said, the initial behavior was load up front. I think it was released like that, but once more technologies started using metaconstraints instead of the table we found that to get acceptable performance it needed to be load on demand.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8604
  • Karma: +256/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: v15.2 – Time to get QuickLinker filter list?
« Reply #16 on: July 19, 2021, 04:54:43 pm »
Thanks again for that, Eve!
This is, in my view, super cool!  8) 8)  I agree that using it to visualise the rules is a great use case!  I'm going to use it for that!
With your clarification, do I now understand correctly that I can have a number of perspectives (for the present, solely for this purpose) to confirm that the metamodel/MDG we're creating generates the correct set of rules for the particular perspective case?

I'm envisaging one for Power BI management, another for DB management, a third for ETL flow management etc. (you get the idea).  Or have I got it wrong again?  I haven't tried your instructions yet, I'm tasked with something else; but if I've got it right, I'll be taking a closer look soon!

Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +396/-301
  • I'm no guru at all
    • View Profile
Re: v15.2 – Time to get QuickLinker filter list?
« Reply #17 on: July 19, 2021, 07:09:20 pm »
Just a few marginal notes from me. I'm only starting to use these constraints. While the old csv format was just no way to go (trying to hammer a multi-dimensional structure into a flat format) the new approach also has its drawbacks. It's getting crowded quite fast. So it's hard to read what may be related and what not. I'm currently thinking of externalizing this into some data structure (be it JSON or whatever) in order to make it maintainable and then make some sort of bulk import. So although the new approach look much better it's still far from being "sliced bread". My own slices still do not look that delicious too right now :-/

q.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8604
  • Karma: +256/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: v15.2 – Time to get QuickLinker filter list?
« Reply #18 on: July 19, 2021, 09:26:29 pm »
Just a few marginal notes from me. I'm only starting to use these constraints. While the old csv format was just no way to go (trying to hammer a multi-dimensional structure into a flat format) the new approach also has its drawbacks. It's getting crowded quite fast. So it's hard to read what may be related and what not. I'm currently thinking of externalizing this into some data structure (be it JSON or whatever) in order to make it maintainable and then make some sort of bulk import. So although the new approach looks much better it's still far from being "sliced bread". My own slices still do not look that delicious too right now :-/

q.
Ah, yes.  Reading your post, I realise we're in a uniquely fortunate position with our Sparx setup.  As you know, we make extensive use of our diagrammer Add-In which creates "Neighborhood" diagrams.  Consequently, we can get a simplified view of all the relevant relationships and related items to the stereotype or metatype etc.

We can therefore create and manage VERY complex metamodels.  For example,

(NOTE: This is a simplified version of the Neighborhood diagram for the purposes of this discussion)
You can see the central stereotype PBIRprt (Power BI Report) and what other components it extends or inherits from.  This is manageable on a per-item basis.  One REALLY NICE feature of this diagram is the ability to simply create similar stereotypes.  We just select a (central) item that has the required characteristics and copy it using [Ctrl+Shift+V].  A quick rename and any customisations required for the new stereotype and we have a consistent, new item!  The new item then gets its own Neighborhood diagram.

Works a treat! (as it has for over a decade!).

All we need is for the inheritance to work properly over multiple levels of inheritance and (I believe) we'll be sweet!

As I said, we're very fortunate to have solved another enterprise-level modelling problem.

Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +396/-301
  • I'm no guru at all
    • View Profile
Re: v15.2 – Time to get QuickLinker filter list?
« Reply #19 on: July 19, 2021, 10:10:37 pm »
Yes, I know that :-) I try to push peope doing that manually. Policies at my customer do not allow the use of add-ins (well, if he decides that running with weights on your feet will make us faster and he's still paying by time I do't care). I'm just digging out what in reality has been modeled (by going throug diagrams and list the used elements and connectors). It's not bottom up but mere digging out of the grave. Anyhow, I will have to dive into that and see what I can make of it.

q.

P.S. Seeing multiple inheritance in your metamodel makes me shiver. I still think that this is an evil concept. Maybe just me thinking that way.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 8604
  • Karma: +256/-129
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: v15.2 – Time to get QuickLinker filter list?
« Reply #20 on: July 19, 2021, 10:50:02 pm »
[SNIP]

P.S. Seeing multiple inheritance in your metamodel makes me shiver. I still think that this is an evil concept. Maybe just me thinking that way.
Having read and absorbed Bertrand Meyer's Object-Oriented Software Construction, multiple inheritance doesn't worry me.

By using separation of concerns, multiple inheritance works very well and is another form of complexity management.  It's not trivial, but it definitely isn't rocket science, in this case.

We use it mainly for propagating decorations, shapes, property tags and USDPs in a structured and controlled fashion.

You can always simulate the Neighborhoord diagramming with a script (if that's allowed) or manually.

Paolo
Inconsistently correct systems DON'T EXIST!
... Therefore, aim for consistency; in the expectation of achieving correctness....
-Semantica-
Helsinki Principle Rules!

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13381
  • Karma: +563/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: v15.2 – Time to get QuickLinker filter list?
« Reply #21 on: July 19, 2021, 11:34:51 pm »
I'm just digging out what in reality has been modeled (by going throug diagrams and list the used elements and connectors). It's not bottom up but mere digging out of the grave. Anyhow, I will have to dive into that and see what I can make of it.
Ian developed an add-in especially to reverse engineer meta-models from model.

See http://www.abilityengineering.co.uk/index.php/tools/model-expert

Might be helpful

Geert

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +396/-301
  • I'm no guru at all
    • View Profile
Re: v15.2 – Time to get QuickLinker filter list?
« Reply #22 on: July 20, 2021, 12:43:42 am »
See http://www.abilityengineering.co.uk/index.php/tools/model-expert

Might be helpful

Geert
Brings me to a page not found 404 when clicking the model expert icon.

q.