diff --git a/components/org.eclipse.papyrus.designer.components.validation/META-INF/MANIFEST.MF b/components/org.eclipse.papyrus.designer.components.validation/META-INF/MANIFEST.MF
index b89c19b..f8dac5d 100644
--- a/components/org.eclipse.papyrus.designer.components.validation/META-INF/MANIFEST.MF
+++ b/components/org.eclipse.papyrus.designer.components.validation/META-INF/MANIFEST.MF
@@ -2,10 +2,14 @@
 Require-Bundle: org.eclipse.core.runtime,
  org.eclipse.uml2.uml;bundle-version="3.0.1",
  org.eclipse.emf.validation;bundle-version="1.3.0",
- org.eclipse.papyrus.designer.transformation.core;bundle-version="0.7.5",
- org.eclipse.papyrus.designer.components.fcm.profile;bundle-version="0.7.4",
  org.eclipse.ui,
- org.eclipse.papyrus.uml.tools.utils;bundle-version="1.2.0"
+ org.eclipse.papyrus.uml.tools.utils;bundle-version="1.2.0",
+ org.eclipse.papyrus.designer.languages.idl.codegen,
+ org.eclipse.papyrus.designer.components.transformation;bundle-version="0.7.5",
+ org.eclipse.papyrus.designer.transformation.base;bundle-version="0.7.5",
+ org.eclipse.papyrus.designer.transformation.core;bundle-version="0.7.5",
+ org.eclipse.papyrus.designer.components.fcm.profile;bundle-version="0.7.5",
+ org.eclipse.papyrus.designer.transformation.library;bundle-version="0.7.5"
 Bundle-Vendor: %providerName
 Bundle-ActivationPolicy: lazy
 Bundle-Version: 0.7.5.qualifier
@@ -15,3 +19,4 @@
 Bundle-ManifestVersion: 2
 Bundle-SymbolicName: org.eclipse.papyrus.designer.components.validation;singleton:=true
 Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Import-Package: org.eclipse.papyrus.designer.deployment.tools
diff --git a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/AggregationKindValid.java b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/AggregationKindValid.java
index eeb1068..9782166 100644
--- a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/AggregationKindValid.java
+++ b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/AggregationKindValid.java
@@ -10,7 +10,7 @@
 import org.eclipse.emf.validation.AbstractModelConstraint;
 import org.eclipse.emf.validation.IValidationContext;
 import org.eclipse.papyrus.designer.components.FCM.ConfigurationProperty;
-import org.eclipse.papyrus.designer.components.transformation.core.Utils;
+import org.eclipse.papyrus.designer.deployment.tools.DepUtils;
 import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil;
 import org.eclipse.uml2.uml.AggregationKind;
 import org.eclipse.uml2.uml.Class;
@@ -45,7 +45,7 @@
 		if (type instanceof Class) {
 			AggregationKind aggKind = attribute.getAggregation();
 			if (aggKind != AggregationKind.COMPOSITE_LITERAL) {
-				if (StereotypeUtil.isApplicable(attribute, ConfigurationProperty.class) && !Utils.isSingleton((Class) type)) {
+				if (StereotypeUtil.isApplicable(attribute, ConfigurationProperty.class) && !DepUtils.isSingleton((Class) type)) {
 					// no composition, but not singleton: warn user to make up a proper deployment plan
 					// validation has been made Qompass specific by checking whether the Configuration attribute is applicable
 
diff --git a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/ConnectorConnectable.java b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/ConnectorConnectable.java
index 5a1dd49..58680b3 100644
--- a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/ConnectorConnectable.java
+++ b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/ConnectorConnectable.java
@@ -18,8 +18,8 @@
 import org.eclipse.emf.validation.AbstractModelConstraint;
 import org.eclipse.emf.validation.IValidationContext;
 import org.eclipse.papyrus.designer.components.FCM.InteractionComponent;
-import org.eclipse.papyrus.designer.components.transformation.core.templates.ConnectorBinding;
-import org.eclipse.papyrus.designer.components.transformation.core.transformations.TransformationException;
+import org.eclipse.papyrus.designer.components.transformation.templates.ConnectorBinding;
+import org.eclipse.papyrus.designer.transformation.base.utils.TransformationException;
 import org.eclipse.uml2.uml.Class;
 import org.eclipse.uml2.uml.Connector;
 import org.eclipse.uml2.uml.util.UMLUtil;
diff --git a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/ExecutorIsNotUsedAsPartName.java b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/ExecutorIsNotUsedAsPartName.java
index 78e57cd..43b7985 100644
--- a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/ExecutorIsNotUsedAsPartName.java
+++ b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/ExecutorIsNotUsedAsPartName.java
@@ -18,7 +18,7 @@
 import org.eclipse.emf.validation.AbstractModelConstraint;
 import org.eclipse.emf.validation.IValidationContext;
 import org.eclipse.papyrus.designer.components.FCM.RuleApplication;
-import org.eclipse.papyrus.designer.components.transformation.core.transformations.container.ContainerTrafo;
+import org.eclipse.papyrus.designer.components.transformation.container.ContainerTrafo;
 import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil;
 import org.eclipse.uml2.uml.Class;
 import org.eclipse.uml2.uml.Property;
@@ -38,9 +38,9 @@
 		if (StereotypeUtil.isApplied(class_, RuleApplication.class)) {
 			// limit check to classes applying a container rule.
 			for (Property attribute : class_.getOwnedAttributes()) {
-				if (attribute.getName().equals(ContainerTrafo.executorPartName)) {
+				//FIXME if (attribute.getName().equals(ContainerTrafo.executorPartName)) {
 					return ctx.createFailureStatus("A property may not use the reserved name \"_executor\"");
-				}
+				//}
 			}
 		}
 		return ctx.createSuccessStatus();
diff --git a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/InitialEntryPoints.java b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/InitialEntryPoints.java
index 8badde1..746f717 100644
--- a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/InitialEntryPoints.java
+++ b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/InitialEntryPoints.java
@@ -20,8 +20,8 @@
 import org.eclipse.emf.validation.AbstractModelConstraint;
 import org.eclipse.emf.validation.IValidationContext;
 import org.eclipse.papyrus.designer.components.FCM.DeploymentPlan;
-import org.eclipse.papyrus.designer.components.transformation.core.deployment.BootLoaderGen;
-import org.eclipse.papyrus.designer.components.transformation.core.deployment.DepUtils;
+import org.eclipse.papyrus.designer.deployment.tools.DepUtils;
+import org.eclipse.papyrus.designer.transformation.library.transformations.AbstractBootLoaderGen;
 import org.eclipse.uml2.uml.Class;
 import org.eclipse.uml2.uml.Classifier;
 import org.eclipse.uml2.uml.InstanceSpecification;
@@ -66,7 +66,7 @@
 		Classifier cl = DepUtils.getClassifier(is);
 		if (cl instanceof Class) {
 			Class implementation = (Class) cl;
-			if (BootLoaderGen.hasUnconnectedStartRoutine(null, implementation, null)) {
+			if (AbstractBootLoaderGen.hasUnconnectedStartRoutine(null, implementation, null)) {
 				entryPoints.add(implementation.getName());
 			}
 		}
diff --git a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/SystemHasNoPorts.java b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/SystemHasNoPorts.java
index f68bb55..16b852f 100644
--- a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/SystemHasNoPorts.java
+++ b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/SystemHasNoPorts.java
@@ -18,7 +18,7 @@
 import org.eclipse.emf.validation.AbstractModelConstraint;
 import org.eclipse.emf.validation.IValidationContext;
 import org.eclipse.papyrus.designer.components.FCM.DeploymentPlan;
-import org.eclipse.papyrus.designer.components.transformation.core.deployment.DepUtils;
+import org.eclipse.papyrus.designer.deployment.tools.DepUtils;
 import org.eclipse.uml2.uml.Class;
 import org.eclipse.uml2.uml.InstanceSpecification;
 import org.eclipse.uml2.uml.Package;
diff --git a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/TemplateRefWithoutBinding.java b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/TemplateRefWithoutBinding.java
index 583f8ef..82908be 100644
--- a/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/TemplateRefWithoutBinding.java
+++ b/components/org.eclipse.papyrus.designer.components.validation/src/org/eclipse/papyrus/designer/components/validation/constraints/TemplateRefWithoutBinding.java
@@ -18,7 +18,7 @@
 import org.eclipse.emf.validation.AbstractModelConstraint;
 import org.eclipse.emf.validation.IValidationContext;
 import org.eclipse.papyrus.designer.components.FCM.DerivedElement;
-import org.eclipse.papyrus.designer.components.transformation.core.templates.TemplateUtils;
+import org.eclipse.papyrus.designer.transformation.core.templates.TemplateUtils;
 import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil;
 import org.eclipse.uml2.uml.Element;
 import org.eclipse.uml2.uml.Package;
diff --git a/releng/org.eclipse.papyrus.designer.components.main.feature/feature.xml b/releng/org.eclipse.papyrus.designer.components.main.feature/feature.xml
index b4d9828..bf9231e 100644
--- a/releng/org.eclipse.papyrus.designer.components.main.feature/feature.xml
+++ b/releng/org.eclipse.papyrus.designer.components.main.feature/feature.xml
@@ -39,16 +39,10 @@
       <import feature="org.eclipse.papyrus.designer.languages.common.feature"/>
       <import feature="org.eclipse.papyrus.designer.languages.cpp.feature"/>
       <import feature="org.eclipse.papyrus.designer.languages.java.feature"/>
+      <import feature="org.eclipse.papyrus.designer.transformation.main.feature"/>
    </requires>
 
    <plugin
-         id="org.eclipse.papyrus.designer.transformation.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
          id="org.eclipse.papyrus.designer.components.transformation.ui"
          download-size="0"
          install-size="0"
@@ -77,20 +71,6 @@
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.papyrus.designer.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.papyrus.designer.components.transformation.cpp"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
          id="org.eclipse.papyrus.designer.components.modellibs.core"
          download-size="0"
          install-size="0"
@@ -111,4 +91,11 @@
          version="0.0.0"
          unpack="false"/>
 
+   <plugin
+         id="org.eclipse.papyrus.designer.components.transformation.cpp"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
 </feature>
diff --git a/targetplatform/org.eclipse.papyrus.designer.targetplatform.neon-papyrusmilestone/org.eclipse.papyrus.designer.targetplatform.neon-papyrusmilestone.target b/targetplatform/org.eclipse.papyrus.designer.targetplatform.neon-papyrusmilestone/org.eclipse.papyrus.designer.targetplatform.neon-papyrusmilestone.target
index 12ca63c..b2bc7f3 100644
--- a/targetplatform/org.eclipse.papyrus.designer.targetplatform.neon-papyrusmilestone/org.eclipse.papyrus.designer.targetplatform.neon-papyrusmilestone.target
+++ b/targetplatform/org.eclipse.papyrus.designer.targetplatform.neon-papyrusmilestone/org.eclipse.papyrus.designer.targetplatform.neon-papyrusmilestone.target
@@ -27,9 +27,5 @@
 <unit id="org.eclipse.papyrus.marte.core.feature.feature.group" version="0.0.0"/>
 <repository location="https://hudson.eclipse.org/papyrus/view/MARTE/job/papyrus-marte-neon/ws/releng/org.eclipse.papyrus.marte.p2/target/repository/"/>
 </location>
-<!--location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
-<unit id="org.eclipse.swt.dummyfragments.feature.group" version="0.0.0"/>
-<repository location="https://eclipseguru.github.io/missing-swt-fragments/"/>
-</location-->
 </locations>
 </target>
diff --git a/transformation/org.eclipse.papyrus.designer.transformation.library/src/org/eclipse/papyrus/designer/transformation/library/transformations/AbstractBootLoaderGen.java b/transformation/org.eclipse.papyrus.designer.transformation.library/src/org/eclipse/papyrus/designer/transformation/library/transformations/AbstractBootLoaderGen.java
index efda397..19179b2 100644
--- a/transformation/org.eclipse.papyrus.designer.transformation.library/src/org/eclipse/papyrus/designer/transformation/library/transformations/AbstractBootLoaderGen.java
+++ b/transformation/org.eclipse.papyrus.designer.transformation.library/src/org/eclipse/papyrus/designer/transformation/library/transformations/AbstractBootLoaderGen.java
@@ -173,7 +173,7 @@
 	 * @param containerSlot
 	 * @return
 	 */
-	public boolean hasUnconnectedStartRoutine(LazyCopier copier, Class implementation, Slot containerSlot) {
+	public static boolean hasUnconnectedStartRoutine(LazyCopier copier, Class implementation, Slot containerSlot) {
 		Port startPort = AllocUtils.getStartPort(implementation);
 		if (startPort != null) {
 			return !isConnected(copier, containerSlot, startPort);
