Skip to content

Evaluation of Repository

Stephan Seifermann edited this page Dec 22, 2015 · 15 revisions

Candidates

Requirements

ID Name
R1 Support for Models Compatible to Eclipse
R2 API Access via Eclipse
R3 Versioning
R4 Interactive Modeling
R5 Logging
R6 Operations Support
R7 Source Code Available
R8 Open Source License
R9 Customizable Workflow
R10 Integration Graphical Editor
R11 Integration EA

R1 Support for Models Compatible to Eclipse

Property Value
ID 1
Name Support for Models Compatible to Eclipse
Category Functional
Description The repository shall be model-oriented and able to detect and version changes in models compatible with Eclipse.
Reason Tool shall be realized in Eclipse and has to support corresponding models.
Critical high
Related

R2 API Access via Eclipse

Property Value
ID 2
Name API Access via Eclipse
Category Functional
Description An API allows CRUD operations on the repository. UI access does not guarantee an API.
Reason Implementation of editing environment requires programmatical access repository content and change application.
Critical medium
Related

R3 Versioning

Property Value
ID 3
Name Versioning
Category Functional
Description Versioning tracks all versions of committed files and allows comparing files and versions.
Reason Reverting is resolution strategy for conflicts.
Critical high
Related

R4 Interactive Modeling

Property Value
ID 4
Name Interactive Modeling
Category Functional
Description Interactive modeling becomes possible by a notification mechanism for fine-grained changes. Often, an adapter for a popular editor is available.
Reason Reduces implementation effort for collaborative editor.
Critical medium
Related 10,11

R5 Logging

Property Value
ID 5
Name Logging
Category Maintenance
Description The logging should contain relevant information. The verbosity should be selectable.
Reason Log files allow tracking down issues.
Critical high
Related 6

R6 Operations Support

Property Value
ID 6
Name Operations Support
Category Maintenance
Description The vendors shall still actively maintain the tool. This includes answering questions and fixing bugs.
Reason Found issues are resolved by developers.
Critical medium
Related 5

R7 Source Code Available

Property Value
ID 7
Name Source Code Available
Category Maintenance
Description The source code shall be available in a public repository or on request.
Reason Found issues can be fixed by ourselves.
Critical medium
Related 8

R8 Open Source License

Property Value
ID 8
Name Open Source License
Category Legal
Description The open source license shall include the rights to adjust the software and ship the changed software.
Reason The open source license allows adjusting the source code to our needs if necessary.
Critical medium
Related 7

R9 Customizable Workflow

Property Value
ID 9
Name Customizable Workflow
Category Functional
Description The repository has an internal workflow when changes arrive. This workflow should be customizable to include custom transformations before or after storing the changes in the repository.
Reason Integration of transformations into the repository reduces effort of client or dedicated server.
Critical low
Related

R10 Integration Graphical Editor

Property Value
ID 10
Name Integration Graphical Editor
Category Functional
Description One or more graphical editors can make use of the repository. This includes commits, conflict resolution, and interactive editing if available.
Reason Saved effort for integrating this graphical editor if we choose this one.
Critical optional
Related 4

R11 Integration EA

Property Value
ID 11
Name Integration EA
Category Functional
Description There is an extension for Enterprise Architect that allows importing/exporting models from/to the repository. Ideally, interactive modeling is also available.
Reason Saved effort for integrating Enterprise Architect.
Critical optional
Related 4

Evaluation Results

ModelBus

ModelBus meets the most requirements we specified (see below). Especially, the customizable workflow that allows incorporating transformations, serializations, and so on is beneficial for the project. There are adapters for integrating Enterprise Architect and Papyrus. Nevertheless, there are some drawbacks: The requirements related to maintenance and support are at most partially met. ModelBus is not actively developed or supported anymore. The documentation is not precise and solving issues based on the logs is often not possible. Additionally, the interactive modeling was not stable in our tests.

ID Name Coverage Source Comment
1 Support for Models Compatible to Eclipse full Empirical, Reference
2 API Access via Eclipse full Reference e.g. via TeamProvider
3 Versioning full Empirical, Reference
4 Interactive Modeling full Reference Implemented for Papyrus
5 Logging partial Empirical Error messages often not meaningful. To less information logged.
6 Actively Supported no Reference No recent releases
7 Source Code Available no No source code repository found, no response to request
8 Open Source License full Reference EPL
9 Customizable Workflow full Reference Orchestration allows executing customized workflows including transformations
10 Integration Graphical Editor full Reference Integration in Papyrus
11 Integration EA partial Empirical, Reference Commercial license, does not work with UML 2.5 models, unstable

CDO

CDO meets most of the requirements (see below). It provides stable interactive modeling capabilities for the Papyrus editor and is integrated well in Eclipse. It has a community and is actively maintainted. Our experience shows that filed issues are solved fast. CDO, however, does not provide an integration connector for Enterprise Architect and has no ability to include custom workflows after commits.

ID Name Coverage Source Comment
1 Support for Models Compatible to Eclipse full Empirical, Reference
2 API Access via Eclipse full Empirical, Reference
3 Versioning full Empirical, Reference
4 Interactive Modeling full Empirical, Reference Actively maintained, in development
5 Logging full Empirical, Reference Various log levels possible
6 Operations Support full Reference Reported bugs fixed fast
7 Source Code Available full Reference
8 Open Source License full Reference EPL 1.0
9 Customizable Workflow no
10 Integration Graphical Editor full Reference
11 Integration EA no

Choice

Clone this wiki locally