Book a Demo

Author Topic: Management of Model Fragments  (Read 5110 times)

ef

  • EA Novice
  • *
  • Posts: 5
  • Karma: +0/-0
    • View Profile
Management of Model Fragments
« on: May 06, 2008, 03:04:33 am »
As we break up the model into packages (stored as XMI files). I don't see the EAP file becoming smaller! It seems as if the XMI files contains 'copies' of the packages which then have to be imported/exported manally.

I'm sure there is a better way to do this - any suggestions?

I would have expected that the EAP file would load all the constituent packages (xmi files) when the model is open.

thanks for you help!

peter.zrnko

  • EA User
  • **
  • Posts: 253
  • Karma: +0/-0
    • View Profile
Re: Management of Model Fragments
« Reply #1 on: May 06, 2008, 07:24:35 am »
EAP file or any other DB repository holds the whole model. It is so whether you have (version) controlled packages or not.
Peter

Dermot

  • EA Administrator
  • EA User
  • *****
  • Posts: 591
  • Karma: +7/-0
    • View Profile
Re: Management of Model Fragments
« Reply #2 on: May 06, 2008, 11:34:40 am »
Yes exporting a package does not delete the package from the model it merely creates an XMI 'Copy' of this.  Further, if you do delete the exported package in an eap file, it will not alter the size of the model eap file.  You would need to perform a:
Tools | Maganage Eap file | Compact EAP file  - to compact it.
« Last Edit: May 06, 2008, 11:35:26 am by Dermot »

ef

  • EA Novice
  • *
  • Posts: 5
  • Karma: +0/-0
    • View Profile
Re: Management of Model Fragments
« Reply #3 on: May 06, 2008, 10:38:23 pm »
Are there "Best Practices" established for this mode of operation?

As we break up the model into packages (and associate a file with it), how should we manage the files?

I'm trying to migrate a team from the Rational Rose UML tools where the top model contains only packages that are not already stored as individual control units (files). The top model simply has references to the files containing the packages in that model - which are imported automatically when the model is opened.
I'm trying to understand what the work flow would look like in a Team Development environment.

thanks again for you help, it is greatly appreciated.


Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Management of Model Fragments
« Reply #4 on: May 06, 2008, 11:08:38 pm »
You can keep exactly the same configuration, controlling exaclty the same packages as you would in RR. Make sure you tick the option "save nested subpackages to stub only".
Those controlled packages can then be added to a version control system, preferably (but not mandatory) integrated with EA.
For the models themself (that is, the database(s), not the controlled xmi files) you can choose between (in order of preference)
- A shared (real) database like Oracle, Mysql,...
- Multiple local eap (access format) files
- A shared eap file
There is a pretty good whitepaper on database and version control setup available on this website somewhere.

thomas.kilian

  • Guest
Re: Management of Model Fragments
« Reply #5 on: May 07, 2008, 04:13:37 am »
Search for EAB in the help. That's something like controlled stubs in RR.

RoyC

  • EA Administrator
  • EA Practitioner
  • *****
  • Posts: 1297
  • Karma: +21/-4
  • Read The Help!
    • View Profile
Re: Management of Model Fragments
« Reply #6 on: May 07, 2008, 09:45:12 am »
Specifically, the Help file is:

http://www.sparxsystems.com.au/EAUserGuide/index.html?exportingvcbranches.htm

although you have to apply version control to the branch first - see the topic just before the linked one.
Best Regards, Roy

Dermot

  • EA Administrator
  • EA User
  • *****
  • Posts: 591
  • Karma: +7/-0
    • View Profile
Re: Management of Model Fragments
« Reply #7 on: May 07, 2008, 12:26:16 pm »
Hi,
Given this has come from an RR background there seen that there is a need to store large parts of the RR repository as Control Units which are kept external. In Rose this is to maintain speed of access - a large repository slows it due to the text formating of the repository.  EA being based on mdb or DBMS repositories does not have the same speed issue with larger sized repositories, although if it is a large repository then DBMS is best used. If access speed is the issue I would suggest you do a simple trial of placing all the data in the EA repository and check the access speed.  We do have very large repositories operating with reasonable response.  There are more details of this available in the Deployment whitepaper:
http://www.sparxsystems.com.au/resources/whitepapers/index.html

ef

  • EA Novice
  • *
  • Posts: 5
  • Karma: +0/-0
    • View Profile
Re: Management of Model Fragments
« Reply #8 on: May 29, 2008, 02:19:06 am »
Thanks for you help - very useful!

I have broken the model into fragments (xml files) which I have successfully added to clearcase - very easily!

Here is my question: what do i do with the .EAP file? It seems that if I add this file to Clearcase, the file must be checked out for the tool to open the model.
What is the suggested workflow? does everyone have to check this out when they work?

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: Management of Model Fragments
« Reply #9 on: May 29, 2008, 08:29:19 am »
Don't check the eap file into version control.

There are two basic modes for working with EA and version control (with variations possible).  Each person has there own local eap file and loads the updates into that, or a shared repository is used and version control is used more or less for locking.

For more information have a look at the related white papers?  Deployment of Enterprise Architect andVersion Control in Enterprise Architect.

ef

  • EA Novice
  • *
  • Posts: 5
  • Karma: +0/-0
    • View Profile
Re: Management of Model Fragments
« Reply #10 on: May 29, 2008, 10:02:47 pm »
Thanks Simon.

I noticed that that changes to the fragment XMI files does not occur until the file is checked-in. When changes are made to the model they get stored in the EAP file and copied into the XMI file only during check-in. If I observed this correctly, it means that changes will stored in an uncontrolled file temporarily - is that correct?

What is the relationship between the EAP file and the XMI files? It appears as if the XMI files are 'copies' of the constituent elements in the model, is that the case? Can the EAP file be rebuilt from importing the associated XMI files 'recursively' or in an automated fashio?

thanks!
« Last Edit: May 29, 2008, 10:11:48 pm by efiallos »

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: Management of Model Fragments
« Reply #11 on: May 30, 2008, 08:41:53 am »
Since the eap file itself shouldn't actually be controlled, yes the changes will be stored in an uncontrolled file temporarily.

You are correct that the XMI files are copies of the data in the eap files.  If you look at model branches in the version control part of the help file, this is the easiest way to reconstruct models.

However, the reference data (eg. Glossary and templates) that goes with a model are not handled by EA's version control and will need to be duplicated/controlled separately.