1

Our team is using Sparx's EA with the following configuration:

  • EA version 9.3.935
  • Central DBMS repository using Oracle Database, installed on dedicated server
  • Version Control using Subversion
  • Around 30 users connected in one site via LAN
  • WAN Optimizer is not used yet

The primary use of SVN is as versioning and create baseline (to perform roll-back operation if required).

We have problems when performing check-in and check-out operation.

With a package exported to XMI file 500 kB:

  • Check-out operation in EA took 16 seconds
  • Undo Check-out in EA took 46 seconds (said complete), but requires additional 14 seconds before application is ready

With a package exported to XMI file 5 MB:

  • Check-out operation in EA took 30 seconds
  • Undo Check-out in EA took 10 minutes + additional 2.5 minutes
  • Check-out the XMI directly via SVN only took 1 second

The design is quite big, and is still growing.

My questions are:

  1. Is our configuration correct?
  2. How much performance gain will increased typically if using WAN Optimizer?
  3. How to improve performance on such configuration?

I'd happily provide more information if required. Thank you.

David
  • 3,957
  • 2
  • 28
  • 52
  • It is recommended to save small units of packages. If you checkout a branch you prevent users to work concurrently on the sub packages of this branch. In addition, dividing to small units causes smaller XMIs - which causes faster checkin - checkout. Hope this helps. – user3165438 May 28 '14 at 08:04
  • @user3165438: Yes, keeping package small is one idea, but the levelling of packages to control become not similar one to another – David May 28 '14 at 08:40
  • I mean standardizing version controlled of the packages such as all packages on Level 3 (depth of the tree). But seeing the best practice 1 from the Version Control Best Practice document: In a Centralized Team model, apply version control to all Packages in the model hierarchy, which includes sub-Packages and Root nodes, to maximize potential for parallel work. So I guess, it should not be a problem. – David May 28 '14 at 10:29
  • Yes, parallel work is enabled when you do not lock (checkout) the first package in the branch hierarchy. – user3165438 May 28 '14 at 11:23

1 Answers1

0

This is a deployment issue, and as such there are no simple, one-size-fits-all solutions (I consult on these matters and for a mid-sized organization it's usually a week's work or more), but:

  1. No, this configuration is (probably) wrong.
  2. I don't know to what extent version control performance is improved with the WAN Optimizer.
  3. The main thing is that DBMS repository and Version Control do not mix well. With DBMS I always recommend using baselines only; external version control (Subversion, TFS, etc) should only be used with separate file-based projects for each modeller. This is because EA essentially locks the entire project while performing version control operations. Another issue is the size and structure of your version-controlled packages: the bigger they are, the harder everything gets.

So not a solution, but some hints. It should also be noted that with EA 11 (released a few weeks ago) there is yet another deployment option, the "reusable asset service", which might be of use.

There are other questions about all this on SO, check for instance this one.

Community
  • 1
  • 1
Uffe
  • 10,396
  • 1
  • 33
  • 40
  • Thanks Uffe, I've looked on that question too. 1. Any reference to use baseline with DBMS only? 2. Yes, keeping package small is one idea, but the levelling of packages to control become not similar – David May 28 '14 at 08:39
  • Okay, I've found the manage baseline without version control. Also the best practice of keeping all packages (nested) into version control. – David May 28 '14 at 09:03
  • @David, Curious to know how did you manage to improve EA-SVN performance. – user3165438 Jul 02 '14 at 09:09
  • @user3165438: currently by performing check-in/check-out operation in the smallest package – David Jul 07 '14 at 10:13
  • @David. Your posts on the topic here seems to be very useful. Thanks. – user3165438 Jul 07 '14 at 13:41