Author Topic: Best practice of extending a modeling language  (Read 3172 times)

EA_enthusiast

  • EA User
  • **
  • Posts: 172
  • Karma: +0/-0
  • I'm a lifelong learner
    • View Profile
Best practice of extending a modeling language
« on: December 27, 2023, 01:34:53 am »
 Hello EA experts,

I want to get your views on the best practices for extending modeling languages, especially ArchiMate.

Scenario: If I want to model the strategy layer in an organization, which uses these elements: vision, mission, goals, objectives and initiatives.

Out of these 5 elements, ArchiMatr has only one, that is “goal”. In this case, which one of the 2 options below is considered a best practice?

Option 1: Use “driver” (already available in ArchiMate) and stereotype it as “mission” and “vision”, Use “goal” (already available in ArchiMate) and stereotype it as “objective” and Use “work package” (already available in ArchiMate) and stereotype it as “initiative”.

Option 2: create totally new 4 elements for vision, mission, objectives and initiatives.

Thank you!
« Last Edit: December 27, 2023, 01:36:53 am by EA_enthusiast »
Thank you to all the contributors who spread their knowledge and experience!

dge98753

  • EA Novice
  • *
  • Posts: 9
  • Karma: +0/-0
    • View Profile
Re: Best practice of extending a modeling language
« Reply #1 on: January 02, 2024, 09:53:26 pm »
Hello,

I am not an expert and I found your question really relevant.
I would also be interested to have some expert point of view on that topic.
In between I have found some interesting thoughts into the EA COMPENDIUM first chapter "Why modelling, and why with EA ?".
https://sparxsystems.com/resources/booklets/ebook_list.html
Perhaps it could help your thought too.

EA_enthusiast

  • EA User
  • **
  • Posts: 172
  • Karma: +0/-0
  • I'm a lifelong learner
    • View Profile
Re: Best practice of extending a modeling language
« Reply #2 on: January 09, 2024, 06:33:13 am »
Quote
Perhaps it could help your thought too.
Thank you for sharing this.
Thank you to all the contributors who spread their knowledge and experience!

sjf

  • EA Novice
  • *
  • Posts: 19
  • Karma: +1/-0
    • View Profile
Re: Best practice of extending a modeling language
« Reply #3 on: January 10, 2024, 01:34:03 am »
I have used the same concepts in our metamodel. I have used Initiative from BizBok, goal from Archimate, the rest I have used from a standard UML Class and then added the connectors that we wanted, for instance an Initiative Produces an Outcome (Archimate)

EA_enthusiast

  • EA User
  • **
  • Posts: 172
  • Karma: +0/-0
  • I'm a lifelong learner
    • View Profile
Re: Best practice of extending a modeling language
« Reply #4 on: January 10, 2024, 03:43:14 am »
Thank you, sjf, for your input.
There are 3 potential issues with this approach.
(1) Having a collection of perspectives and modeling languages within the same view. If you are modeling the Architecture of the Enterprise and sharing the model with other Architects, the expectations are that you are using ArchiMate.
(2) the look and feel of each perspective and modelling language are different, which will make the view lacks homogeneity.
(3) creating relationships between elements (from different perspectives/modeling languages) may be challenging, and you may end up using non-standard relationships to link the elements. 

What I found to be more practical is using the existing ArchiMate elements to cover your architecture needs. For example, in order to model initiatives, you could use ArchiMate "CourseOfAction" and stereotype it as "Initiative". Similarly, you could use ArchiMate "Goall" and stereotype it as "Objective", and so on.
« Last Edit: January 10, 2024, 09:17:19 am by EA_enthusiast »
Thank you to all the contributors who spread their knowledge and experience!

sjf

  • EA Novice
  • *
  • Posts: 19
  • Karma: +1/-0
    • View Profile
Re: Best practice of extending a modeling language
« Reply #5 on: January 11, 2024, 02:47:01 am »
In answer to your points:
1.) Your perspective can contain different modelling languages, it is upto you in the definition of your metamodel what is included in  your toolboxes and what relationships between the elements are allowed. I would also argue that many Business Architects are used to using BizBok rather than Archimate (as per https://www.businessarchitectureguild.org/)
2.) You can define the look and feel of your new stereotypes to match (using ShapeScript, inheritance and icons)
3.) You will always face this as a challenge, for instance moving from a high-level Archimate view to going to a lower level BPMN view or moving from a Strategic Business Architecture (BizBok) model to an Archimate view (Archimate acknowledge this challenge).

We found that just allowing Archimate without restriction meant that we had the same concepts modelled in different ways, we therefore decided to create a metamodel to restrict the stereotypes & relationships that would be allowed.

We also wanted to utilise the Gartner TIME Framework for Application Portfolio Management which meant adding tags to the stereotypes and this was easier to do by implementing our own metamodel.

EA_enthusiast

  • EA User
  • **
  • Posts: 172
  • Karma: +0/-0
  • I'm a lifelong learner
    • View Profile
Re: Best practice of extending a modeling language
« Reply #6 on: January 20, 2024, 04:04:35 am »
Thank you, Sif, for sharing your perspective.
Thank you to all the contributors who spread their knowledge and experience!