Displaying items by tag: versioning
EA UserGroup (may 2017) - EA and version control in practice
The slidedeck of the presentation about EA and version control as presented during the London EA usergroup event of may 2017.
Feel free to contact me for any additional questions
Dennis Geluk
Fresh News: Enterprise Architect and Git
It started off over 24+ months ago... there was a product we were building that created a solution to a problem called LemonTree (c).
Now if you haven't heard of it, it's a tool to help alleviate a common challenge that many EA modelers face: Branching and merging Enterprise Architect projects (models).
Fast forward18 months later, after huge success of LemonTree, we started to recognize the next challenge, support of other popular version-control systems - more particularly Git.
And that's when LemonTree with Git integration was born.
Today, we are EXCITED to announcetheofficial major release of LemonTree with Git support to the public.
You cansee it in action, how it works here!
Here's LemonTree at a glance:
- Uses fine-grained 3-way diffing algorithm.
- Enables the development of multiple parallel branches of models to target and merge individual models.
- Acts like an external diff/merge program (EA independent).
- Seamlessly integrated into TortoiseSVN and Git.
- Shares the benefits of Version Control repository.
- And much more..
Go check our latest release v1.2: LemonTree here..
Tutorials: Optmistic Model Versioning for Enterprise Architect Models
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
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.