Book a Demo

Author Topic: Clone New Element Version  (Read 5051 times)

Shapirho

  • EA Novice
  • *
  • Posts: 5
  • Karma: +0/-0
    • View Profile
Clone New Element Version
« on: May 02, 2019, 10:36:30 pm »
Hi all,

my very first post. I am new to Sparx EA and learning the ins and outs. Currently I am struggling to use the clone new version for use case elements. I am on EA version 14 and I am working on a in-house developed system that has releases a couple of times in the year. Sometimes use cases need amending logic.

Two key challenges I am facing are:
    1. I cannot clone as new version a use case that references a component via the use case's structured scenario context reference. I kindly ask, what would be the best way to make a clone of such a use case?
    2. does cloning of elements allow for parallel cloning? Most use cases I have found in-situ are massive (essentially you could break them down to 5 or so smaller ones). My plan - as and when a new release references these big use cases - is to break them down into the parts and make these parts traceable to the whole (which would reside in the previous release package.... Not sure if cloning is even the correct feature for this problem

I kindly ask your assistance. I could not find any existing thread addressing either of these two issues

Regards,
Shapirho Modisha

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Clone New Element Version
« Reply #1 on: May 03, 2019, 01:43:39 am »
My advise? Don't use this "versioning" technique at all.
It creates a bunch of duplicates in your model until you drown in them.

Geert

Shapirho

  • EA Novice
  • *
  • Posts: 5
  • Karma: +0/-0
    • View Profile
Re: Clone New Element Version
« Reply #2 on: May 03, 2019, 07:50:44 am »
My advise? Don't use this "versioning" technique at all.
It creates a bunch of duplicates in your model until you drown in them.

Geert

I am grateful for the feedback. I kindly ask, what would be a better approach?
Some more context though, please bear in mind that the primary driver I have been looking at the "Clone Element as New Version.." feature, is to achieve traceability of changes across the different releases. Would this approach still be unadvisable, and what would be the alternative?

Shapirho Modisha

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: Clone New Element Version
« Reply #3 on: May 03, 2019, 04:33:05 pm »
You can look into the auditing feature if you're after change traces. It's easy to use and proven but (DB) memory consuming. Also you can also look into package snapshots (Package control context menu).

q.

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Clone New Element Version
« Reply #4 on: May 03, 2019, 06:01:30 pm »
Also:

- connection to version control
- regular backups
- HTML exports
- Generated documents

Anyway, the idea is that a model only represents one single version of your system. Never try to keep multiple versions of the same object in the same model.

Geert

Shapirho

  • EA Novice
  • *
  • Posts: 5
  • Karma: +0/-0
    • View Profile
Re: Clone New Element Version
« Reply #5 on: May 07, 2019, 09:36:18 pm »
Hi,

Thanks for the response.

You can look into the auditing feature if you're after change traces. It's easy to use and proven but (DB) memory consuming. Also you can also look into package snapshots (Package control context menu).

I recently had auditing set up to check who, what, when, etc.. that sort of thing as it had not been configured before. However, from my second question in my initial query, we are looking to trace the LOGIC contained in elements e.g. the logic of an old use case being broken down into the logic of 3 or so newer (smaller) use cases.... and then being able to show that the new use cases are an abstraction of the old. Is this doable with the auditing facility you have mentioned?

Also:

- connection to version control
- regular backups
- HTML exports
- Generated documents

Anyway, the idea is that a model only represents one single version of your system. Never try to keep multiple versions of the same object in the same model.

Geert
For the other "versioning" techniques, we have in place DB backup already and I recently set us up to start using Baseline snapshots. We do generate reports for use with various stakeholders. I have not done version control such as SVN as I read somewhere on this forum that it is not ideal in the least with Sparx. I have no idea what HTML exports is but will look into it.


I agree that it would be ideal to have one single version of the model, and that is what I am trying to work towards. Unfortunately the challenge I have run into is that the previous model setup literally has no structure. Everything was dumped into a single view with a couple of packages that are either incorrectly named (compared to their contents) or is a mixture of "LIVE elements", "experimental elements" or "deprecated elements" WITHOUT the appropriate labels/tags to make the distinction. Only a few old heads who have been with the company long can tell the difference, so tracing what is "LIVE" today is proving non-trivial; Unless it is just my lack of familiarity with Sparx EA??.

The transitional plan so far is to allow multiple versions of objects in the same model using three views for separation of the versions
  • old/former model view (containing all the folders of the elements as they exist today)
  • future solution view
  • current solution view (with restricted access)

Versioning of elements would follow the path:
a) ----> Elements in the former model view that are required/impacted in the next release are cloned into the future solution view for the design modeling tasks
b) ----> Once signed off, the approved release elements are promoted to the current solution view on deployment
c) ----> for the next release, the "current release" in the current solution view folder is cloned into the future solution view and designed as appropriate. However, if an element/diagram that is required in this future release is not in the package, then it will be cloned from the former model view...
the process is repeated

It is worth noting that a release does not cover the entire end-to-end system processes but I have been made to understand that after about 6 iterations of this process, all the LIVE elements will have been impacted at least once, which means I can then have a "FULL" current solution at that point. and I can then retire the former model view and move the current solution into a separate model or view.

It is also worth noting that trying a bottom-up approach i.e. getting to grips with the physical model is non-trivial too; because delivery of the solution is via a 3rd party company, hosted on another 3rd party private cloud and any request for documentation results in no less that 2000 pages of gibberish. I am also working to change this.

I am happy to hear any alternative approaches that may ease my predicament. But so far, this is the planned course of action based on what I know about the tool so far.

Regards,
Shapirho Modisha

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Clone New Element Version
« Reply #6 on: May 07, 2019, 09:54:28 pm »
Really, don't start cloning/duplicating elements. You will loose any kind of traceability and oversight you have, and you will drown in the duplicates:
 - searching for ElementA returns 28 results, all with the same name.
 - checking relations on one of these ElementA shows relations to 15 (different versions of) elementB
 - and so on.

A real nightmare if you ask me.

What we do to keep track of changes is using refGUID tagged values on to Change objects.
In the taggedValue notes we keep user, date and comment (managed by a script)
This allows us to figure out if an element has been updated recently and what the state is of the change it is linked to.

Geert

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: Clone New Element Version
« Reply #7 on: May 07, 2019, 10:54:53 pm »
I don't know the details, but maybe you could have a look into LemonTree by LieberLieber. Else it's an area which needs lots of investigation and can not be clarified with a forum discussion. It's more like a job for Geert (if he got time and you're not located somewhere at the other side of the world).

q.