Author Topic: Developing a meta model and aplying it to an existing project  (Read 14643 times)

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 7740
  • Karma: +165/-21
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Developing a meta model and aplying it to an existing project
« Reply #15 on: March 30, 2016, 12:45:58 am »
Maybe you should try to explain in detail (with pictures?) at which step you get stuck.

Geert

Modesto Vega

  • EA User
  • **
  • Posts: 151
  • Karma: +0/-1
    • View Profile
Re: Developing a meta model and aplying it to an existing project
« Reply #16 on: March 30, 2016, 01:25:12 am »
I am not exactly getting stuck, just getting confused.

I have the folllowing structure:

Root Node - ABC
--------------------Package - ABC1
--------------------Package - ABC2
--------------------Package - ABC3

Package ABC1 uses UML2, classes and activities, where I have added custom stereotypes, using Project\Settings\UML Types

Package ABC2 uses UML2, mainly components

Package ABC3 contains mainly database models, currently all Oracle

When I run the MDG creation on the root node and go through all screens, the reuslting MDG profile is essentially empty, except for the name version and description. With empty I mean it does not contain any metaclasses, it does not contain any of the custom stereotypes on ABC1, it also does not contain anything related to the Oracle pattern.

Perhaps, I am missing something but I was empty the MDG Creation to do something similar to reverse engineering my packages and construct something I can use to extend the metamodel. I am probably wrong but have no idea where I missed a step.


Geert Bellekens

  • EA Guru
  • *****
  • Posts: 7740
  • Karma: +165/-21
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Developing a meta model and aplying it to an existing project
« Reply #17 on: March 30, 2016, 04:19:21 am »
EA will not "reverse" engineer whatever you have used into a UML profile.
You will have to create the stereotypes as model elements yourself.
Following the instructions in the help file should suffice.

Geert

Modesto Vega

  • EA User
  • **
  • Posts: 151
  • Karma: +0/-1
    • View Profile
Re: Developing a meta model and aplying it to an existing project
« Reply #18 on: April 02, 2016, 12:22:11 am »
Just to summarise the contents of this thread so far:

1) Generating an MDG techology file from an existing model will not include the existing profiles associated with the various packages within a project or any customisation to any of the profiles associated with the packages

[Question: If the above is correct, what is the point of Generating an MDG technology file from an existing project]

2) The only profile which can customised is the UML profile

3) The only way to customise the UML profile is by using steretypes and associating them with metaclasses as described in http://sparxsystems.com/enterprise_architect_user_guide/12.1/building_models/umlprofiles_2.html

4) Other profiles, such as database profiles, cannot be customised

5) Once a profile has been customised there is no easy way to apply it to an existing model.


Geert Bellekens

  • EA Guru
  • *****
  • Posts: 7740
  • Karma: +165/-21
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Developing a meta model and aplying it to an existing project
« Reply #19 on: April 02, 2016, 02:25:04 am »
I don't think any of your "conclusions" is correct ???

Geert

Modesto Vega

  • EA User
  • **
  • Posts: 151
  • Karma: +0/-1
    • View Profile
Re: Developing a meta model and aplying it to an existing project
« Reply #20 on: April 02, 2016, 03:16:20 am »
I don't think any of your "conclusions" is correct ???

Geert
Geert - generally you are very helfulp except when you choose to use telegraph code or speak Sparkinglish. Which you have been doing in this thread for a while. It will be good if you used more words.

So far I have not managed to produce an MDG containing any profiles used on any of the packages in the project.

It will be a good starting point of if you could provide a step-by-step guide on how to generate an MDG that contains the profiles used in the packages contained within a root node. And please don't tell me again to follow the online help because I have and is rubish.




Geert Bellekens

  • EA Guru
  • *****
  • Posts: 7740
  • Karma: +165/-21
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Developing a meta model and aplying it to an existing project
« Reply #21 on: April 02, 2016, 03:35:22 am »
Thomas Kilian wrote some articles about creating MDG technologies.
http://liquit.biz/brain/enterprise.html
Maybe they are more helpful to you.

Geert

Sunshine

  • EA User
  • **
  • Posts: 500
  • Karma: +33/-1
  • Amicorum omnia communia
    • View Profile
Re: Developing a meta model and aplying it to an existing project
« Reply #22 on: April 02, 2016, 02:18:30 pm »

[/quote]
 And please don't tell me again to follow the online help because I have and is rubish.
[/quote]

Well I have to disagree. I've found online help very useful when creating an MDG. I've managed to successfully extend ArchiMate MDG. The online help for Sparx EA is head and shoulders above other tools I've used in this space.



Glassboy

  • EA User
  • **
  • Posts: 898
  • Karma: +52/-54
    • View Profile
Re: Developing a meta model and aplying it to an existing project
« Reply #23 on: April 04, 2016, 06:45:30 am »
1) Generating an MDG techology file from an existing model will not include the existing profiles associated with the various packages within a project or any customisation to any of the profiles associated with the packages

[Question: If the above is correct, what is the point of Generating an MDG technology file from an existing project]

Hi there, I think the assumption that EA can some how magically iterate your underlying meta-model is just confusing everybody.  People build MDG technologies to support a particular notation or knowledge model.  There's no facility in EA to do it for you.  EA would have to be quite an advanced AI to semantic reasoning to perform this function.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 5880
  • Karma: +71/-77
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Developing a meta model and aplying it to an existing project
« Reply #24 on: April 04, 2016, 09:58:48 am »
1) Generating an MDG techology file from an existing model will not include the existing profiles associated with the various packages within a project or any customisation to any of the profiles associated with the packages

[Question: If the above is correct, what is the point of Generating an MDG technology file from an existing project]

Hi there, I think the assumption that EA can some how magically iterate your underlying meta-model is just confusing everybody.  People build MDG technologies to support a particular notation or knowledge model.  There's no facility in EA to do it for you.  EA would have to be quite an advanced AI to semantic reasoning to perform this function.
And since Sparx EA is internally self inconsistent, the AI would end up in a padded cell screaming at the universe...

As Glassboy implies, MDG generation is (notionally) a forward engineering process.  I do reverse engineer some of the existing MDG elements but only for  the purpose of designing a different MDG.  The reverse engineering, ipso facot, has to be independent of any repository.

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

Glassboy

  • EA User
  • **
  • Posts: 898
  • Karma: +52/-54
    • View Profile
Re: Developing a meta model and aplying it to an existing project
« Reply #25 on: April 04, 2016, 11:02:39 am »
And since Sparx EA is internally self inconsistent, the AI would end up in a padded cell screaming at the universe...

There are some that believe that any AI would be born into pain.  I think this is the show where I heard it discussed http://www.bbc.co.uk/programmes/b06wcsng 

Modesto Vega

  • EA User
  • **
  • Posts: 151
  • Karma: +0/-1
    • View Profile
Re: Developing a meta model and aplying it to an existing project
« Reply #26 on: April 05, 2016, 11:00:54 pm »

Quote
And please don't tell me again to follow the online help because I have and is rubish.

Well I have to disagree. I've found online help very useful when creating an MDG. I've managed to successfully extend ArchiMate MDG. The online help for Sparx EA is head and shoulders above other tools I've used in this space.
Let's start with this and test the process step-by-step with a simple example, the goal of this example is to extend UML:

Step 1) Step one create a project called SimpleUMLTest using Core Modelling/UML 2/Class
Step 2) Leave the project unchanged
Step 3) Whit this project open, from the Tools menu choose MDG technology file
Step 4) On 2nd screen Use an MTS file choose don't use an MTS file at all for the creation of this technology
Step 5)
i - Enter the following; Documentation ID="Sue" Technology ="SimpleUMLExtension" Version="0.5" Notes="Simple UML Extension"
ii - When choosing a file name create a folder called SimpleUMLExtension, and name the file SimpleUMLExtension.xml
Step 6) Under Metamodel just tick Profiles
Step 7) Next screen appears blank, so I leave it blank
Step 8) Choose next and EA starts generating the MDG Technology file
Step 9) Look into SimpleUMLExtension folder, there is only one file there, it is called SimpleUMLExtension.xml and look like

Code: [Select]
  <?xml version="1.0" encoding="windows-1252" ?>
- <MDG.Technology version="1.0">
  <Documentation id="Sue" name="SimpleUMLExtension" version="0.5" notes="Simple UML Extension" />
  </MDG.Technology>

Have I a miss something? If so, what? Where have I gone wrong?

Once we sort that out, we can try more complicated things; in particular, working around EA self inconsistency, which I presume is playing a factor.

P.S.: I tried http://sparxsystems.com/enterprise_architect_user_guide/12.1/building_models/umlprofiles_2.html that and it works.
P.S. 2: No need for AI at all, hopefully everybody in the forum can do NI

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 7740
  • Karma: +165/-21
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Developing a meta model and aplying it to an existing project
« Reply #27 on: April 05, 2016, 11:30:04 pm »
Step1 is where you have an issue.

You have to model the metamodel (e.g. stereotypes extending metaclasses)
Start reading here: http://sparxsystems.com/enterprise_architect_user_guide/12.1/building_models/createprofile.html
(also notice the learning centre reference)

Geert

Modesto Vega

  • EA User
  • **
  • Posts: 151
  • Karma: +0/-1
    • View Profile
Re: Developing a meta model and aplying it to an existing project
« Reply #28 on: April 05, 2016, 11:39:49 pm »
(also notice the learning centre reference)
LOL

Step1 is where you have an issue.

You have to model the metamodel (e.g. stereotypes extending metaclasses)
Start reading here: http://sparxsystems.com/enterprise_architect_user_guide/12.1/building_models/createprofile.html
So, you are saying that the 1st step is to create profile package needs to be created. Correct?

qwerty

  • EA Guru
  • *****
  • Posts: 8964
  • Karma: +136/-123
  • I'm no guru at all
    • View Profile
Re: Developing a meta model and aplying it to an existing project
« Reply #29 on: April 05, 2016, 11:48:30 pm »
The steps you list do not seem to make any sense in creating a MDG.

q.