Author Topic: Profile and Stereotypes - Newbie Questions  (Read 5452 times)

Viking

  • EA User
  • **
  • Posts: 424
  • Karma: +2/-2
    • View Profile
Profile and Stereotypes - Newbie Questions
« on: December 06, 2024, 08:57:20 am »
Hi,
(1)
I want to create a stereotype (or whatever) that behaves as a BPMN Activity in an BPMN diagram and as an ArchiMate Business Process in an ArchiMate Value Stream Diagram. So, I investigated a lot of tutorials (like the one from Ajiniza Mohamed Sultan from Sparx) but cannot understand, which MetaClasses to extend and which Stereotypes to inherit. Help with an explanation would be very welcome (Rem.: I know that I need a shapescript).

(2)
The same problem with another new stereotype, which behaves like an ArchiMate ApplicationComponent in an ArchiMate Layered Diagram and as a Pool in a BPMN-Diagram. Which MetaClasses do I need to extend and which Stereotypes to inherit?
« Last Edit: December 06, 2024, 06:51:41 pm by Viking »

Takeshi K

  • EA User
  • **
  • Posts: 569
  • Karma: +35/-1
    • View Profile
Re: Profile and Stereotypes - Newbie Questions
« Reply #1 on: December 06, 2024, 09:57:49 am »
Hi,

About the second question, if I were you, I would not create the 'hybrid' objects but apply the ArchiMate ApplicationComponent to a Pool as a Classifier. In other words, it seems that you do not need to define your own new type but you can realize what you want as-is.

Usually Pools contains objects on the Pools, that means the contained objects are stored as children in the Browser window. Even if you could define the type, it might not work well in this point. By creating Pools for each diagram, each child object is stored correctly under the proper Pool object.

Please try to create a BPMN Pool and right-click it | Advanced | Instance Classifier | specify the ArchiMate ApplicationComponent, and place the ApplicationComponent directly onto the BPMN diagram (assumed as the component is a Pool), then place BPMN object onto the both 'Pool's. You can understand when you create two or more BPMN diagrams and do the same operations for the two 'Pools'.

HTH,
--
t-kouno

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13274
  • Karma: +556/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Profile and Stereotypes - Newbie Questions
« Reply #2 on: December 06, 2024, 05:12:17 pm »
It's quite simple. You inherit from stereotypes (ArchiMate, BPMN), and extend UML basetypes.

Geert

Viking

  • EA User
  • **
  • Posts: 424
  • Karma: +2/-2
    • View Profile
Re: Profile and Stereotypes - Newbie Questions
« Reply #3 on: December 06, 2024, 06:11:53 pm »
It's quite simple. You inherit from stereotypes (ArchiMate, BPMN), and extend UML basetypes.
Geert

Yes, but which ones? I do not understand the exact rules behind it. I only have a common understanding about them. And everything I tried looks buggy.

Viking

  • EA User
  • **
  • Posts: 424
  • Karma: +2/-2
    • View Profile
Re: Profile and Stereotypes - Newbie Questions
« Reply #4 on: December 06, 2024, 07:00:38 pm »
About the second question, if I were you, I would not create the 'hybrid' objects but apply the ArchiMate ApplicationComponent to a Pool as a Classifier. In other words, it seems that you do not need to define your own new type but you can realize what you want as-is.

Thanks for sharing this idea.

At the moment I prefer that the "hybrid" elements can be selected from a toolbox to reflect the common understanding of the users.

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13274
  • Karma: +556/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Profile and Stereotypes - Newbie Questions
« Reply #5 on: December 06, 2024, 07:11:27 pm »
It's quite simple. You inherit from stereotypes (ArchiMate, BPMN), and extend UML basetypes.
Geert

Yes, but which ones?
As you mentioned, BPMN Activity and AchiMate Business Process (although I would be inclined to combine BPMN Business Process with ArchiMate Business Process)
You then extend from the UML Basetype both stereotypes are based upon (in this case Activity)

If they don't have a common UML base type, you can choose one and see if this all works.
If not you can still forgo inheriting the stereotype. You will then have to apply the shapescript and all quicklinker relations yourself.

Geert

Viking

  • EA User
  • **
  • Posts: 424
  • Karma: +2/-2
    • View Profile
Re: Profile and Stereotypes - Newbie Questions
« Reply #6 on: December 06, 2024, 08:14:53 pm »
As you mentioned, BPMN Activity and AchiMate Business Process (although I would be inclined to combine BPMN Business Process with ArchiMate Business Process)
You then extend from the UML Basetype both stereotypes are based upon (in this case Activity)

If they don't have a common UML base type, you can choose one and see if this all works.
If not you can still forgo inheriting the stereotype. You will then have to apply the shapescript and all quicklinker relations yourself.

Many thanks, @Geert.

(1)
In her tutorial, Ajiniza Mohamed Sultan extends Metaclass "Activity" (as you did), but also inherits from Stereotype "Archimate_BusinessProcess". Why is this necessary? Why not also extending Stereotype "BMPN::Activity"?

(2)
Could you also propose MetaClass(es) and Stereotype(s) for the hybrod object BPMN Pool and Archimate ApplicationComponent, please?

(3)
"although I would be inclined to combine BPMN Business Process with ArchiMate Business Process" Could you explain this, please?


Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13274
  • Karma: +556/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Profile and Stereotypes - Newbie Questions
« Reply #7 on: December 06, 2024, 10:34:51 pm »
Many thanks, @Geert.

(1)
In her tutorial, Ajiniza Mohamed Sultan extends Metaclass "Activity" (as you did), but also inherits from Stereotype "Archimate_BusinessProcess". Why is this necessary? Why not also extending Stereotype "BMPN::Activity"?
If your stereotype inherits from an existing stereotype it takes on that stereotypes behavior (mostly shapescript and allowed relations)
If you would inherit from two stereotypes, you would supposedly inherit the behavior from two stereotypes. But that is theory. In practice you would definitely need to define your own shapescript (that can show a different shape depending on the type of diagram) and I'm not sure if the allowed relations will nicely combine.
Quote
(2)
Could you also propose MetaClass(es) and Stereotype(s) for the hybrod object BPMN Pool and Archimate ApplicationComponent, please?
Pools and components are things that exist at a different level. Pools live underneath a process and are not shared.
Components are independent and can be shared.
As suggested by Takeshi K, you should look into something like an instance classifier or a tagged value to link components to pools. The pool is a sort of "instance" of the component.
Quote
(3)
"although I would be inclined to combine BPMN Business Process with ArchiMate Business Process" Could you explain this, please?
A BPMN process corresponds semantically to an ArchiMate process. An Activity is a step in a process.
Activities (as Pools) live in the process and cannot be re-used.
Processes are independent and can be re-used (called by a callProcessActivity)

Geert

Viking

  • EA User
  • **
  • Posts: 424
  • Karma: +2/-2
    • View Profile
Re: Profile and Stereotypes - Newbie Questions
« Reply #8 on: December 07, 2024, 05:32:54 am »
About the second question, if I were you, I would not create the 'hybrid' objects but apply the ArchiMate ApplicationComponent to a Pool as a Classifier. In other words, it seems that you do not need to define your own new type but you can realize what you want as-is.
Usually Pools contains objects on the Pools, that means the contained objects are stored as children in the Browser window. Even if you could define the type, it might not work well in this point. By creating Pools for each diagram, each child object is stored correctly under the proper Pool object.
Please try to create a BPMN Pool and right-click it | Advanced | Instance Classifier | specify the ArchiMate ApplicationComponent, and place the ApplicationComponent directly onto the BPMN diagram (assumed as the component is a Pool), then place BPMN object onto the both 'Pool's. You can understand when you create two or more BPMN diagrams and do the same operations for the two 'Pools'.

Thanks @Takeshi K. In my model the application component *is* a pool and not part of it. If I misunderstood you, please tell me more details about the steps. I followed your instructions and do not see a "result".

Viking

  • EA User
  • **
  • Posts: 424
  • Karma: +2/-2
    • View Profile
Re: Profile and Stereotypes - Newbie Questions
« Reply #9 on: December 07, 2024, 06:58:55 am »
Geert

Due to BPMN, an application (Component) can be represented by a Pool. So, why are they on different levels?

A BPMN Business Process and a BPMN Activity in SparxEA are the same. The BPMN Business Process are just composites and point toe a diagram (with subs). A BPMN Activity is on the lowest level und thus does not point to a diagarm with sub process steps. In Archimate, all levels of a ProcessHierarchy are represented as BusinessProcesses. For my understanding there is no reason not to call the lowest level "BusinessProcessStep". Could you tell me, why they are different (beside the notation, please?
« Last Edit: December 09, 2024, 07:17:26 am by Viking »

Viking

  • EA User
  • **
  • Posts: 424
  • Karma: +2/-2
    • View Profile
Re: Profile and Stereotypes - Newbie Questions
« Reply #10 on: December 09, 2024, 07:38:16 am »
Please try to create a BPMN Pool and right-click it | Advanced | Instance Classifier | specify the ArchiMate ApplicationComponent, and place the ApplicationComponent directly onto the BPMN diagram (assumed as the component is a Pool), then place BPMN object onto the both 'Pool's. You can understand when you create two or more BPMN diagrams and do the same operations for the two 'Pools'.

I tried that, but I do not see what you intended to show me, I am afraid. Could you be more precise, please?

Pool and ApplicationComponent are linked, as you said. But they are still 2 elements in the ProjectBrowser. Why is this the better choice in comparison creating a new stereotype and using a shapescript?
« Last Edit: December 09, 2024, 07:59:53 am by Viking »

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8063
  • Karma: +118/-20
    • View Profile
Re: Profile and Stereotypes - Newbie Questions
« Reply #11 on: December 09, 2024, 10:38:54 am »
Why is this the better choice in comparison creating a new stereotype and using a shapescript?

Because it's working with the existing functionality instead of spending an unknown amount of time trying to make your alternative work.

Viking

  • EA User
  • **
  • Posts: 424
  • Karma: +2/-2
    • View Profile
Re: Profile and Stereotypes - Newbie Questions
« Reply #12 on: December 09, 2024, 06:11:28 pm »
Why is this the better choice in comparison creating a new stereotype and using a shapescript?
Because it's working with the existing functionality instead of spending an unknown amount of time trying to make your alternative work.

Understood.

But the disadvange is having 2 Elements instead of 1 with the "hybrid objects approach".

And if you have "hybrid objects"  anyway because other elements are not supported by the "Classifier approach", than this could make things also very complicated.

That's why I was asking in https://sparxsystems.com/forums/smf/index.php/topic,48846.0.html, if a "redundant elements approach" (creating a sperate element for each notation and link them with a derived relation ship to mark them as redundant) wouldn't be a better choice.

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13274
  • Karma: +556/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Profile and Stereotypes - Newbie Questions
« Reply #13 on: December 09, 2024, 06:27:41 pm »
Pools and Application Components are also things with a different multiplicity and scope.

For each Business Process (and thus diagram) you have a new pool. A pool should never be used on multiple diagrams.

So if you have 5 Business Processes that use SAP, you would have 5 Pools. But you would only have a single Application Component for SAP.

That's why you can't combine them.

The same goes for BPMN Activities and ArchiMate Business processes.

Geert