Author Topic: Merge components  (Read 9311 times)

Sunshine

  • EA User
  • **
  • Posts: 952
  • Karma: +83/-7
  • Its the results that count
    • View Profile
Merge components
« on: October 31, 2014, 01:34:01 pm »
One of the common problem when modelling with a team of many people is that two people sometimes create the same object. It would be a really great feature to be able to merge objects. Something like dragging an object with the ctrl or shft key pressed in the project browser and dropping it onto the another of the same type. A dialog would pop up saying do you want to merge with options of overwrite target or source (for properties and tag values). Sparx EA would then merge the two objects into one, replacing the instances in diagrams and combining relationships with other objects.
This would facilitate rationalisation of objects when working large teams.
« Last Edit: October 31, 2014, 01:34:31 pm by phenzell »
Happy to help
:)

skiwi

  • EA Practitioner
  • ***
  • Posts: 1903
  • Karma: +41/-81
    • View Profile
Re: Merge components
« Reply #1 on: November 06, 2014, 12:37:37 pm »
yus, gets my vote
Orthogonality rules
Using EA15.1 (1526) on Windows 10 Enterprise/64 bit. Repositories in SQLServer2014 R2 & Access2003/JET4.0

qwerty

  • EA Guru
  • *****
  • Posts: 11388
  • Karma: +295/-262
  • I'm no guru at all
    • View Profile
Re: Merge components
« Reply #2 on: November 06, 2014, 10:59:29 pm »
Yes. Though I think it's quite tricky to make it user friendly. Especially replacing occurrences of the replaced element (be it in diagrams or as classifier) is challenging.

q.

Sunshine

  • EA User
  • **
  • Posts: 952
  • Karma: +83/-7
  • Its the results that count
    • View Profile
Re: Merge components
« Reply #3 on: November 07, 2014, 07:34:25 am »
Quote
Yes. Though I think it's quite tricky to make it user friendly. Especially replacing occurrences of the replaced element (be it in diagrams or as classifier) is challenging.

q.
Tricky maybe but not impossible. I've seen it implemented on another tool  ;)
Happy to help
:)

qwerty

  • EA Guru
  • *****
  • Posts: 11388
  • Karma: +295/-262
  • I'm no guru at all
    • View Profile
Re: Merge components
« Reply #4 on: November 07, 2014, 07:52:00 am »
I just wanted to point Sparx' nose in the right direction. They should make a requirements analysis followed by an use case synthesis, shouldn't they? Looking at most of the recent "improvements" I get the feeling that these were done directly from the programmers :P

q.

François C

  • EA Novice
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Re: Merge components
« Reply #5 on: December 12, 2019, 10:52:33 am »
That would really solve a lot of my problems. Do you know if it's been implemented finally?

skiwi

  • EA Practitioner
  • ***
  • Posts: 1903
  • Karma: +41/-81
    • View Profile
Re: Merge components
« Reply #6 on: December 13, 2019, 12:12:26 pm »

That would really solve a lot of my problems. Do you know if it's been implemented finally?
lol
While it may have some challenges some basic ideas might be for an entity, or for a relationship (but not a package):
* aggregate notes, files, and similar
* aggregate tags (if different)
* move relationships from the object selected be replaced to the master object
* merge any relationships that are the same (sameness to be defined)
* update diagrams
might be trickier for classifiers and lot of other things

Orthogonality rules
Using EA15.1 (1526) on Windows 10 Enterprise/64 bit. Repositories in SQLServer2014 R2 & Access2003/JET4.0

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 7411
  • Karma: +176/-120
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Merge components
« Reply #7 on: December 13, 2019, 04:50:43 pm »

That would really solve a lot of my problems. Do you know if it's been implemented finally?
lol
While it may have some challenges some basic ideas might be for an entity, or for a relationship (but not a package):
* aggregate notes, files, and similar
* aggregate tags (if different)
* move relationships from the object selected be replaced to the master object
* merge any relationships that are the same (sameness to be defined)
* update diagrams
might be trickier for classifiers and lots of other things
We've done some work on defining (and processing) Semantic Equivalence of Arcs

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

skiwi

  • EA Practitioner
  • ***
  • Posts: 1903
  • Karma: +41/-81
    • View Profile
Re: Merge components
« Reply #8 on: December 16, 2019, 08:32:45 am »

We've done some work on defining (and processing) Semantic Equivalence of Arcs


Please tell me more
Orthogonality rules
Using EA15.1 (1526) on Windows 10 Enterprise/64 bit. Repositories in SQLServer2014 R2 & Access2003/JET4.0

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 7411
  • Karma: +176/-120
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Merge components
« Reply #9 on: December 16, 2019, 09:38:59 am »

We've done some work on defining (and processing) Semantic Equivalence of Arcs


Please tell me more
It's not quite "rocket science", but as we discovered not trivial.  If you're really interested, we could start a new discussion specifically on this topic.  It may also help us to improve our mechanism.

Ours is written in VBA because it's handled by an EXCEL side-in, but the business rules would be generally applicable.

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

Glassboy

  • EA Practitioner
  • ***
  • Posts: 1360
  • Karma: +110/-75
    • View Profile
Re: Merge components
« Reply #10 on: December 16, 2019, 10:47:34 am »
I don't need a merge so much as a move relationships function.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 7411
  • Karma: +176/-120
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Merge components
« Reply #11 on: December 16, 2019, 07:03:40 pm »
I don't need a merge so much as a move relationships function.
Don't try and use the API.  It doesn't behave in any sane way.  Use SQL directly to remap the object_IDs.  However, once you've moved the relationships, you still have a potential consolidation problem (as we discovered).  So the question of Semantic Equivalence still applies.

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

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 10406
  • Karma: +342/-30
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Merge components
« Reply #12 on: December 16, 2019, 09:38:59 pm »
I don't need a merge so much as a move relationships function.
Don't try and use the API.  It doesn't behave in any sane way.  Use SQL directly to remap the object_IDs.  However, once you've moved the relationships, you still have a potential consolidation problem (as we discovered).  So the question of Semantic Equivalence still applies.

Paolo
I'm not sure why you say that Paolo.
I've written a bunch of scripts manipulating connectors, some even for the exact purpose of merging elements together.

In none of these I had any kind of trouble like you indicate.

Geert

qwerty

  • EA Guru
  • *****
  • Posts: 11388
  • Karma: +295/-262
  • I'm no guru at all
    • View Profile
Re: Merge components
« Reply #13 on: December 16, 2019, 09:41:43 pm »
You're all talking on a zombie thread. You won't see any of that coming from Sparx. Write your own merge (like Geert did).

q.

Paolo F Cantoni

  • EA Guru
  • *****
  • Posts: 7411
  • Karma: +176/-120
  • Inconsistently correct systems DON'T EXIST!
    • View Profile
Re: Merge components
« Reply #14 on: December 17, 2019, 09:21:55 am »
I don't need a merge so much as a move relationships function.
Don't try and use the API.  It doesn't behave in any sane way.  Use SQL directly to remap the object_IDs.  However, once you've moved the relationships, you still have a potential consolidation problem (as we discovered).  So the question of Semantic Equivalence still applies.

Paolo
I'm not sure why you say that Paolo.
I've written a bunch of scripts manipulating connectors, some even for the exact purpose of merging elements together.

In none of these, I had any kind of trouble like you indicate.

Geert
The problem had to do with diagram links - not the connectors themselves.  Once you've got the connectors sorted, you need to sort out the diagrams they appear on - that's when you come across the problems.

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