Book a Demo

Author Topic: Guarding a namespace?  (Read 4351 times)

Tarja

  • EA Novice
  • *
  • Posts: 17
  • Karma: +1/-0
    • View Profile
Guarding a namespace?
« on: November 25, 2015, 04:59:00 am »
I noticed that EA does not guard namespace any more in the repository. So it is possible to create two processes or other items with the same name in the same package.

Why is this? The whole idea is that we have one element only once in the package, even though it might appear in several diagrams.

And if there are two same kind of elements with a same name, how can I merge them? To get rid of duplicates.


Boron

  • EA User
  • **
  • Posts: 111
  • Karma: +6/-0
    • View Profile
Re: Guarding a namespace?
« Reply #1 on: November 26, 2015, 06:13:55 pm »
Are you referring to the "names" of elements in the Project Explorer?
Since my first contact with EA (version 7.5) EA never cared about identical names.
EA identifies "elements" by their GUID (or UUID if you like) which serves as primary key wherever possible in the database tables.

So for EA it is allowed to have multiple elements (packages, classes, etc.), even on the same hierarchy level in the Package Browser, with identical name as long as the GUIDs are unique.

Maybe you could write a script checking for uniqueness of namespace names.

AnnaT

  • EA Novice
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Re: Guarding a namespace?
« Reply #2 on: December 04, 2015, 03:20:27 am »
If Sparx is used to create Enterprise Architecture, meaning EA as it is in business level, at least some support for modeler is required to find out if there exists elements with the same name.

Alternatives:
- forbidding to create similar element with same name to a package
- suggesting to user "would you like to use this element you already created instead" (preferably within whole repository)
- or something equivalent.

Also feature to merge two elements together afterwards, if you anyway end up having multiple with the same name, is needed.

Key point to succeed in EA is to be able to use same elements in different diagrams. If toll does not support that only way is manually instruct all users "use find before you create anything".

Continuing Tarjas's question. Are we really the only ones missing this feature??
« Last Edit: December 04, 2015, 03:21:41 am by AnnaT »

Uffe

  • EA Practitioner
  • ***
  • Posts: 1859
  • Karma: +133/-14
  • Flutes: 1; Clarinets: 1; Saxes: 5 and counting
    • View Profile
Re: Guarding a namespace?
« Reply #3 on: December 04, 2015, 04:02:20 am »
Hi Anna,


In brief, yes. You're the only ones. ;)

It is true that reusing elements between diagrams is a key point, but it does not follow that there should only ever be one element with each name.

EA does not equate name with identity. Doing so would be severely restrictive and make it more or less impossible to model different aspects of a single system or architecture.

You can write an Add-In to implement either of your suggestions within your organisation, but I don't think you'll have much success convincing others on this forum that it would be a good idea for EA generally.

As to merging two elements, an element is very complex and it wouldn't be an easy function to implement. But if the two elements only differ in what attributes and operations they have, you can move those between the two elements in the project browser by drag-and-drop.

Cheers,


/Uffe
My theories are always correct, just apply them to the right reality.