Book a Demo

Author Topic: Version Control (CVS) Experiences  (Read 6296 times)

AndyJ

  • EA User
  • **
  • Posts: 337
  • Karma: +5/-3
  • It's only a model
    • View Profile
Version Control (CVS) Experiences
« on: April 18, 2011, 02:35:25 pm »
Hi people,

The current project has 4 Business Analysts, and will have a team of developers in the near future.

We're already in a position of needing version control and have been looking at the Version Control Best Practices whitepaper.

So far, the project has been considering the "Distributed Team" approach (everyone has a local .eap file and manages version control through .xmi files), using CVS, but it looks to be really clumsy...

As a consequence of that, we're now considering the "Centralised Team" approach where the project resides in a DBMS (which is then version controlled via CVS).

I would be very interested to hear people's experiences of using either method.
Sun Tzu: "If you sit by the river long enough, eventually the body of MS Visio floats past."

Josef Stadelmann

  • EA User
  • **
  • Posts: 59
  • Karma: +0/-0
  • as simple as possible, but not too simple
    • View Profile
Re: Version Control (CVS) Experiences
« Reply #1 on: April 19, 2011, 01:45:25 am »
why CVS? At as time when a lot SW developers have been gone since long to SVN (Subversion) or are already migrating to Mercurial or GIT.

Personally I prefere Subversion(SVN) as it has a JSVN project as open source, runs on Java, and offers all you need to integrate version control with your own code; and binary SVN clients exists for many platforms.

Otherwhise, the TeamFoundation Server é all is where Microsoft goes today with theire version control. This because Visual SourceSafe is dead and since 1. of April 2011 no longer supported.

The most big projects are version controlled using subversion and mercurial. i.e. you can find the apache software foundations projects under http://svn.apache.org/repos/asf

AND sooner then later you may think about how to integrate task which can be done automatically into apache/maven or any other GUI based tool like VS or NB or ECLIPS or EA ... and then open source is a good selction as all you need along is know-how and a debugger to figure things out which are poorly documented.

And further you may have an issue to continously build something, then integrating with a continous build server is maybe one more thing you would consider.

This my few cents.
Josef :)

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: Version Control (CVS) Experiences
« Reply #2 on: April 19, 2011, 04:11:24 am »
Prepare to meet the devil. There are a thousand ways to configure a collaboration. And none of those works well (enough).

q.

AndyJ

  • EA User
  • **
  • Posts: 337
  • Karma: +5/-3
  • It's only a model
    • View Profile
Re: Version Control (CVS) Experiences
« Reply #3 on: April 19, 2011, 08:17:44 am »
Yes, we're heading towards SVN here too, but CVS is what we currently have in place.

Ditto on the automated build environments, currently cruise control/maven, likely to be ant in the future.

 :)

However, I'm keen to hear specifics. Has anyone prepared step by step instructions for their BAs?

I'm keen to avoid pitfalls|pratfalls if possible.
Sun Tzu: "If you sit by the river long enough, eventually the body of MS Visio floats past."

Josef Stadelmann

  • EA User
  • **
  • Posts: 59
  • Karma: +0/-0
  • as simple as possible, but not too simple
    • View Profile
Re: Version Control (CVS) Experiences
« Reply #4 on: April 19, 2011, 05:35:04 pm »
What are the expected input artifacts to the BA process?
What are the expected output artifacts from the BA process?
What are the resources input artifacts and
What are the control input artifacts to the BA process?

IF YOU DONT KNOW THEM, YOU SHOULD DEFINE AND TAILOR YOUR SW ENGINEERING LIFECYCLE PROCESS FIRST.

Then if you know the artifacts to/from the BA process, one by one, you can start to sample, store and version control them.

Artifacts of a BA are worth to be version controlled if your BA process has iterations. i.e. if your BUSINESS is to large to be analysed at once.

It is essential to have the business process drawn prior to do any scoping execises.

SCOPING EXERCISES allows to identify and do mission critical parts of the business first.  A demand to plan a potential iterative delivery of all the follow-up artifacts.

BA is just one activity among mayn other key processes demanding and delivering artifacs, "worth to be defined first" then said "worth to be stored" and "worth to be version controlled".  

For a working copy of our SW engineering life cycle process drop me a mail.

Josef

AndyJ

  • EA User
  • **
  • Posts: 337
  • Karma: +5/-3
  • It's only a model
    • View Profile
Re: Version Control (CVS) Experiences
« Reply #5 on: April 20, 2011, 08:49:27 am »
The BA inputs and artifacts are defined in the Requirements Management Plan.

We use a formal methodology.

Your response seems somewhat irrelevant to the question.
Sun Tzu: "If you sit by the river long enough, eventually the body of MS Visio floats past."

AndyJ

  • EA User
  • **
  • Posts: 337
  • Karma: +5/-3
  • It's only a model
    • View Profile
Re: Version Control (CVS) Experiences
« Reply #6 on: April 20, 2011, 08:56:28 am »
So...

Back to the question...

Does anyone have any experience of using SparxEA with an external version control system?

I would like to hear about any "lessons learned" to avoid pitfalls for this current project (3 - 8 year expected time frame).

I'm asking this, because, so far, I have concerns with the level of integration between EA and CVS as detailed in the Version Control white paper.
Sun Tzu: "If you sit by the river long enough, eventually the body of MS Visio floats past."

Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: Version Control (CVS) Experiences
« Reply #7 on: April 21, 2011, 05:32:16 pm »
Andy,

I've used SVN in conjuction with distributed eap files, TFS with SQL-Server and PVCS with Oracle.

One of the major "best practices" is to keep the controlled packages as small as possible (otherwise VC operations take too long).
Another issue (that should be solved in v 9) is the problem with disappearing relations depending on the order in which packages are imported.
There's a whole lot of forums posts about the latter issue (and ways to prevent/fix the issues).

Geert

qwerty

  • EA Guru
  • *****
  • Posts: 13584
  • Karma: +397/-301
  • I'm no guru at all
    • View Profile
Re: Version Control (CVS) Experiences
« Reply #8 on: April 22, 2011, 12:25:05 am »
Geert,
have you verified that the issue is gone with V9 or are you just repeating Sparx' parole?

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: Version Control (CVS) Experiences
« Reply #9 on: April 22, 2011, 03:30:01 am »
I have not verified it myself. (that's why it read "should" and not "is") ;D

Geert