Book a Demo

Author Topic: Managing changes to multiple releases  (Read 3326 times)

Frans van Gool

  • EA Novice
  • *
  • Posts: 4
  • Karma: +0/-0
    • View Profile
Managing changes to multiple releases
« on: April 03, 2013, 06:59:37 am »
Hello,

In my company we simultaneously work on multiple releases of our IT landscape. Typically release N is in production, release N+1 is in acceptance test, release N+2 is in detailed design and build phase and release N+3 is in feasibility and high level design phase. Obviously, most design changes are made in release N+2 and N+3, but some fixes in release N and N+1 also have design impact.

Managing the code for these releases is rather straighforward using branches in a version control system. Changes in one release/branch are merged into a later release/branch using 3-way diff and merge tools. What would be the best way to manage design changes in such an environment using EA? Note that I did read the whitepapers on version control and deployment, but they only seem to discuss version management with a single branch; not with multiple branches.

Regards, Frans.

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: Managing changes to multiple releases
« Reply #1 on: April 03, 2013, 07:44:22 am »
You must forget the concept of branch and merge for UML models. This works for code. But not for UML. The reason is that you can not merge XMI versions. A model is a view of something complex at a point in time. In contrast a checkout of a VC is a number of singular views. While merging code is simple as each code part is independent of almost everything (that is, it can be looked at as pure text) the model has lots of dependencies you can't isolate. For that reason a merge is almost impossible. You 'can' do it, but the effort by far exceeds that for code merging.

q.

Helmut Ortmann

  • EA User
  • **
  • Posts: 970
  • Karma: +42/-1
    • View Profile
Re: Managing changes to multiple releases
« Reply #2 on: April 03, 2013, 08:49:57 am »
Hi Frans,

I fully agree to q.

Be aware that working with multiple releases (parallel development, branches) is a real feat with an UML modeling tool.

Some points:
- q: XMI isn't really merge able
- no easy diff tool (you invest a lot of time to understand the changes)
- think of a model as of a net, the information is stored in knots and in relations. It's not a book or code to read from line 1 to the end.
- loading a baseline isn't a thing you do in a minute or so
- ...

There are few people who understand the differences of code and model in terms of configuration mangement. Most of them who understand by frustrating experiences.

Best regards,

Helmut


Coaching, Training, Workshop (Addins: hoTools, Search&Replace, LineStyle)

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Managing changes to multiple releases
« Reply #3 on: April 03, 2013, 05:54:11 pm »
I agree with Helmut and q.
Unless you have a very good reason (and want to invest lots of time merging) you should try to avoid merging UML models.

Theoretically it can be done, also with EA, but in 99.9% of the cases it is not worth the trouble.

Geert