Author Topic: Import from XMI under version control  (Read 2664 times)

Martin Terreni

  • EA User
  • **
  • Posts: 672
  • Karma: +0/-0
  • Sorry, I can't write
    • View Profile
Import from XMI under version control
« on: November 17, 2008, 07:00:18 pm »
Some conversation between one of my emplyees and Sparx support:
Quote
From: Yehuda Assulin
Sent: Friday, 14 November 2008 3:12 AM
To: sparxsupport
Subject: Registered Bug Report - Import XMI file

The following Registered Bug Report was submitted by Yehuda Assulin
 on Fri Nov 14 03:12:19 EST 2008.
------------------------------------------------------------------------
-------

ENVIRONMENT DETAILS

EA Version:  7.1.833
EA Edition:  Corporate Floating
EA Add In:  MDG Link for Doors
Repository Type:  MySQL
Operating System:  Windows XP
Service Pack:  SP2

------------------------------------------------------------------------
-------

ISSUE DETAILS

Subject:

Import XMI file


Details:

Import / Export XMI functionality is inconsistent when using it from the
project browser vs. using it from the Project menu.
Note that we are using SVN to control packages.
When checking out a package that has check-in child packages, and try to
import XMI file into it by right click the package-> the import package
from XMI file is not available.
Using the option (for the same package) from the project menu enables
importing. I would like to see it enabled from the project browser as
well.


Steps to Reproduce:

1. Have a version controlled package, with a couple of child packages
that are under version control themselves.
2. Check out the parent package
3. Right click parent package -->import/export -->import package from
XMI file is not available (that's the BUG) 4. Check the parent package
in the project browser, go to Project--> import/export -->import package
from XMI -->Its available and working.
Please make step 3 work as well.


Quote
From: sparxsupport
Sent: Friday, 14 November 2008 10:34 AM
To: 'Yehuda Assulin'
Subject: RE: Registered Bug Report - Import XMI file

Hi Yehuda,

Thanks for pointing this out.

I have reproduced the issue and logged it as a bug to be fixed (i.e.. So
that the option is available via both methods).

Issue ID:  08112189

Let us know if you have any other issues.

Best Regards,

Simon Cotching
Sparx Systems Pty Ltd
[email protected]
http://www.sparxsystems.com


Quote
-----Original Message-----
From: sparxsupport [mailto:[email protected]]
Sent: Monday, November 17, 2008 7:24 AM
To: Yehuda Assulin
Subject: RE: Registered Bug Report - Import XMI file


Hello Yehuda,

Some time ago, a change was introduced to EA, to disable the "XMI
Import" command whenever the selected package contains child packages
that are version controlled and checked-in or locked through project
security.  (The "XMI Import" command should be enabled, if all of the
child packages are checked-out or unlocked).

The reason for this change is that by allowing XMI Imports, it is
possible to modify, replace or delete the existing packages that are
contained by the parent package into which the import is targetted.
Cleary this would violate the "security" that should exist for these
packages.

Your email does in fact identify a bug, however, it is the fact that
this command is still available through the main menu, when there are
child packages that are locked.


Best Regards,

Howard Britten.
[email protected]
http://www.SparxSystems.com


Quote

-----Original Message-----
From: Yehuda Assulin
Sent: Monday, November 17, 2008 9:32 AM
To: sparxsupport
Cc: Martin Terreni
Subject: RE: Registered Bug Report - Import XMI file

Hello Howard,

Your point is clear, yet a convenient way to import new packages is required, for example to transfer packages from one project to another.
Today we have to uncheck all child packages (could be dozens) or trick the system by adding unversioned new folder, import XMI file to it, then moving it up back under the desirable target parent.
Could there be an option to add new package from XMI, while child packages still checked in?


Thanks,
Yehuda Assulin
IMIS - Integration & PMO -Modeling Tools
Office: 972-9-7762580
Mobile: 972-50-2136128



I think this is quite stupid (sorry for being rude). Importing a package might change any other package in the tree, not just the parent or siblings. Also it could be allowed with "strip GUID" premarked.

Also imagine I have a "user interfaces" package with a sub package for each screen, let's say 15 screens. I will have to do 16 checkouts and check ins to import a new screen created outside, both taking a lot of time and stopping everyone else from working on those screens - doesn't make that much sense...

Also it could be allowed with "strip GUID" premarked.




Recursion definition:
If you don’t understand the definition read "Recursion definition".

Frank Horn

  • EA User
  • **
  • Posts: 535
  • Karma: +1/-0
    • View Profile
Re: Import from XMI under version control
« Reply #1 on: November 17, 2008, 08:49:48 pm »
Martin,

you certainly have a point there. Not being able to import something new into a package which happens to have version controlled child packages is hardly acceptable.

I'm afraid though that Sparx will be hard taken to fix it. Enabling import with the strip guids option only should be easy, and a first step at least. But for all other cases, they would have to check the xmi to be imported whether there is anything in it violating the lock on the checked in packages within the model. Checking for guids from the locked packages wouldn't be enough, cause there might be (perfectly legal) dependencies from the new elements on locked elements. Or they would have to import in a transaction, then check whether a locked package has been changed, and then roll back if one has.