Displaying items by tag: vcs

Software and Systems Engineering, as any other interdisciplinary activity, requires the ability and means to build systems which are so large and complex that they have to be built by teams or even by teams of teams of engineers. In combination with a model-based approach, these teams need the possibility for modeling in a concurrent way. With other words, multiple users must be able to work on the same model in parallel or even on multiple versions of the same system. In code-centric software engineering, developers profit for years from the features provided by Version Control Systems (VCS), whereby one of the most important features is the possibility of comparing and merging changes of the same file. The key technique hereby is the so called three-way difference analysis which is also considering the common ancestor version of the artefact under comparison. Traditional approaches uses text- and line-based comparison tools, which are not suitable for graphical-based models.

In general, two different versioning strategies exist to cope with the concurrent evolution of one artifact. These are described in the following:

 

When pessimistic versioning is applied like it is implemented in EA, an artifact is locked while it is changed by one developer. Since other developers cannot perform any changes while the artifact is locked, conflicts are completely avoided with this strategy. However, the drawbacks are possible idle times for developers waiting for the release of a locked artifact.

To avoid such idle times, optimistic versioning allows the developers to change the same artifact in parallel and independently of each other. This process is depicted in the following figure:

 

The following videos give you insights into the latest developments in model versioning and act as tutorials in how you can set Enterprise Architect models under optimistic version control:

Tutorial 1 – LemonTree Introduction to Model Versioning

 

Tutorial 2 – LemonTree Model Comparison Tutorial

 

Tutorial 3 – LemonTree Concurrent Modeling Tutorial

For more information please visit: lemontree.lieberlieber.com

Published in Tutorials
Tuesday, 20 September 2016 10:30

Fresh Modeling Versioning with LemonTree

LieberLieber is proud to present a brand new Enterprise Architect tool named LemonTree (c). The most important function of this ground-breaking product is the diffing and merging of model versions.

Now, you do not have to lock your packages. Just check-in your eap files in your version control system!

Standard approaches use line- and text-based applications that do not suffice for graphic models. Only the finely-grained 3-way diffing algorithm that considers the model’s graph structure enables an exact comparison between two models.

 LemonTree highlights:

  • Diff & Merge: Diffing and merging of Enterprise Architect models
  • Model Versioning: Parallel editing of models with optimistic model versioning
  • Integration: Seamless integration with Subversion (Tortoise) included
  • Automation Interface: Automate LemonTree and integrate it in your versioning tool such as Git, PTC, or SVN
  • Model Branches: Branches of models (longer-term, parallel development of versions and variants)
  • Merge Preview: Diagram merge and merge preview
  • Review: Changes are visualized clearly and understandably for review (including preview)

Stefan Mueller, HIMA Paul Hildebrandt, Safety-Related Automation Solutions: “In general, standards such as IEC 61508 demand the application of configuration management. This applies to all artifacts, including UML models. LemonTree from LieberLieber is our key to revealing the changes that have been made to a revision.”

 

Test LemonTree now and give us your feedback!

 

For more information: http://lemontree.lieberlieber.com/

 

Published in News