Skip to main content
Jump to: navigation, search

UPR Developer Info

General Info

The project uses GIT as source control system. The repository is located here:
git://git.eclipse.org/gitroot/upr/upr.git
To browse the code on the web, go here.
Some more general information (e.g. where to report bugs) can be found on our dev page:
https://projects.eclipse.org/projects/modeling.upr/developer

Maven/Tycho is used to build the project. The main build script is located in the folder "build/org.eclipse.upr.build" in the repository. To compile to to that directory and call e.g. mvn install.

All profiles of the UPR are static profiles, instead of dynamic profiles (which are more common). This means that it is not defined by having the corresponding EMF classes for the stereotypes being attached to the profile, but by having a separate EMF GenModel for the profile that can be used to generate Java code. This e.g. enables implementing derived properties in Java. For more information have a look here:
http://nyssen.blogspot.de/2009/09/defining-static-profiles-with-eclipse.html
For infos how to define dynamic profiles, have a look here:
http://wiki.eclipse.org/MDT/UML2/Introduction_to_UML2_Profiles#Defining_Profiles

Generation of the EMF code from the profile models is currently not part of the build process and has to be triggered manually by the developer. Therefore the generated Java code is also checked into the git repository.

Development Environment

Version 0.9

For development on the master branch we currently suggest Eclipse Modeling Tools Luna. Papyrus should be installed afterwards (e.g. via the menu bar "Help -> Install Modeling Components"). If changes on the BPMN Profile are needed, part of the manual build process is applying a QVT-O transformation (see howto.txt in the model directory). Therefore the QVT-O plugins have to be installed. Alternatively, the needed modifications can be done manually.
Alternatively to using the configuration described above, the target definition defined in "build/org.eclipse.upr.target/upr-0.9.target" can be used to resolve all needed dependencies for the build. Note that this does not include QVT-O, since it is not part of the automated build process.

Contributor Info

If you are not a project member but want to contribute (e.g. provide a new profile or fix an existing bug), have a look here:
http://wiki.eclipse.org/Development_Resources/Contributing_via_Git


Committer (project member) Info

Since the project is still in starting phase the following info should be considered reading:


Things to be done to be able to offer nightly builds:


Things to be done for a release:

Back to the top