Book a Demo

Author Topic: Multiple Profiles in an MDG  (Read 3463 times)

Jayson

  • EA User
  • **
  • Posts: 363
  • Karma: +1/-0
    • View Profile
Multiple Profiles in an MDG
« on: February 10, 2021, 04:17:04 pm »
Hi all

My understanding is that you can use multiple profiles in building an MDG.
My questions around this are:

1. Are there any issue with naming conflicts? ie, if I have two stereotypes: profile1::Stereo and profile2::Stereo. Does this cause any problems?
2. Are there any other issues with multiple profiles?

Cheers :-)

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Multiple Profiles in an MDG
« Reply #1 on: February 10, 2021, 04:31:29 pm »
1. Are there any issue with naming conflicts? ie, if I have two stereotypes: profile1::Stereo and profile2::Stereo. Does this cause any problems?
Yes, don't do that. EA has gotten better at differentiating between different fully qualified stereotypes, but it isn't perfect yet.
Another thing is that the Stereotype field contains the non fully qualified stereotype. Having the same stereotype name in multiple profiles makes writing queries harder than it needs to be.
I always add a prefix to my stereotypes, like ArchiMate does. So on your case I would have something like profile1::PR1_Stereo and profile2::PR2_Stereo
It will make your life a lot easier.
Quote
2. Are there any other issues with multiple profiles?
Not that I'm aware of. I have several MDG's that contain more than one profile, and I haven't found any issues with that.

Geert

Jayson

  • EA User
  • **
  • Posts: 363
  • Karma: +1/-0
    • View Profile
Re: Multiple Profiles in an MDG
« Reply #2 on: February 10, 2021, 04:57:40 pm »
Cheers Geert

Another thing I just thought of.
Is it possible to have stereotyped constraints between stereotypes from different profiles?
I note that stereotyped constraints belong to a particular profile, so how (if at all) can that be made to work?
Same goes with quicklinkers I guess???

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Multiple Profiles in an MDG
« Reply #3 on: February 10, 2021, 06:03:22 pm »
Hi Jayson,

Each profile defines it's own meta-constraints independent of the other profiles.
(You can't connect stereotypes from different profiles, you have to recreate them in the using profile, like you would do with ArchiMate or BPMN)

For things like quicklinkers I think it's a matter of choosing in which profile do define the meta-constraint.
Preferably you have a one way dependency from one profile to the other, so you can easily determine in which profile to put the constraints.
If you have a bidirectional dependency (tight coupling) you might even want to consider merging the two profiles into a single one.

Geert

Jayson

  • EA User
  • **
  • Posts: 363
  • Karma: +1/-0
    • View Profile
Re: Multiple Profiles in an MDG
« Reply #4 on: February 10, 2021, 09:45:12 pm »
Thanks for that.
As a curiosity, if I split my model into two UML profiles:

1. Can I have a Ref GUID/Ref GUID List tagged value from one profile referencing a stereotype in the other? That is, when I specify the stereotypes that the Ref GUID can reference, can they include stereotypes in the other profile?
2. As a curiosity can reference a stereotype in a different MDG?

Cheers :-)

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Multiple Profiles in an MDG
« Reply #5 on: February 10, 2021, 10:02:44 pm »
Yes, to both, but again, like with the constraints, you have to "redefine" the external stereotype in your profile.
You can't use the "real" stereotype element from the other profile.

So you'll need to create a stereotype element with name ProfileName::StereotypeName (e.g. ArchiMate3::ArchiMate_ApplicationComponent)

For existing MDG's you can use the metatype element from the toolbox to get the correct name.

Geert