Book a Demo

Author Topic: DBMS Repository and Versioning  (Read 3779 times)

tzman

  • EA Novice
  • *
  • Posts: 10
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
DBMS Repository and Versioning
« on: January 10, 2008, 11:16:39 am »
I am looking into integrating Accurev with an Oracle Repository. The question I have is versioning and how/where the model is actually stored.

I have created a project with a db repository and added several controlled packages. I have also set up the version control to use Accurev. Now within my workspace I have xml files that are added to accurev for each of the packages I set to control.

When a user gets a package from version control, is the dbms repository actually used? If it is, how does that interact with multiple versions or streams in accurev? Are all versions of the ea project stored in the dbms repository? Or is Accurev really the repository?

Thanks in advance for any clarification.


Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: DBMS Repository and Versioning
« Reply #1 on: January 10, 2008, 11:57:42 pm »
The dbms repository is actually used. It holds the latest version of the changes done in the model. Your version control will use xmi files in the background to synchronise the model in the database. If you would get a previous version from your version control system then it import that version of the xmi file into the database.
There is a catch however. With a central database you cannot work with multiple persons on the same package. You have to work with exclusive checkouts.
At the moment you checkout a package from the version control system you will unlock this package for you only to edit. Packages that are not checked-out by you will remain locked.
So your version control system keeps track of the versions, and your dbms repository keeps the (latest version of) the model.
« Last Edit: January 10, 2008, 11:58:04 pm by Geert.Bellekens »

tzman

  • EA Novice
  • *
  • Posts: 10
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: DBMS Repository and Versioning
« Reply #2 on: January 11, 2008, 04:48:40 am »
Thanks for the clarification and the response.

This sounds to me like the design is meant for 1 working model for each project. This is fine for probably most projects.

We have a large project that continues to change and be enhanced. This done through stream based versioning. There are quite a few "current" versions of the project. So, we either need to export/import XMI to each stream and work with that or have a repository for each stream. Neither seem to be ideal.

We are fine with the idea of a single user updating a particular package at a time. This should eliminate any merge concerns.

Again, thanks for the response.


Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: DBMS Repository and Versioning
« Reply #3 on: January 11, 2008, 05:17:43 am »
If you want to work on different versions of the same model at the same time (Branching), that is a bit more complex, but still doable with one dbms.
You'll need to import the xmi files for a branched modelpart with the option "strip GUID's". That should allow you to have multiple versions of the same modelpart in one repository.

tzman

  • EA Novice
  • *
  • Posts: 10
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: DBMS Repository and Versioning
« Reply #4 on: January 11, 2008, 05:50:28 am »
This sounds pretty error prone. Is there a write up on this anywhere?

Again thanks for the repsonse.


Oliver F.

  • EA User
  • **
  • Posts: 573
  • Karma: +2/-1
  • ArenĀ“t we all in the model business ?
    • View Profile
    • Karl Storz homepage
Re: DBMS Repository and Versioning
« Reply #5 on: January 11, 2008, 07:29:40 am »
Quote
This sounds pretty error prone. Is there a write up on this anywhere?


A rather similar scenario applies for us.
While we are working on the product (which is comprised of several different and nearly independent product components) we are fixing bugs and add features for certain customers (which are working with previous releases).

Of course we can check out the model branch (or packages, parts of it, etc.) but we will not check it out into the mainstream model- that would lead to confusion, obviously.

We have not set it up but it I believe it would be possible to create a second repository and check the branch into the second repository to work on it. At least those are XMI files EA writes in a database repository so it could work.

Oliver