diff --git a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/data/BPMNNumericConstraint.java b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/data/BPMNNumericConstraint.java
index 3c577aa69d67de30b205f5e4ab06aef44fa1745a..9ed98de4140ec4a0bcb19f0f8b32c6e2de53593b 100644
--- a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/data/BPMNNumericConstraint.java
+++ b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/data/BPMNNumericConstraint.java
@@ -5,6 +5,10 @@ public class BPMNNumericConstraint implements BPMNFieldConstraint {
 	private Long min;
 	private Long max;
 	
+	public BPMNNumericConstraint() {
+		
+	}
+	
 	public BPMNNumericConstraint(Long min, Long max) {
 		this.min = min;
 		this.max = max;
diff --git a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/data/BPMNStringConstraint.java b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/data/BPMNStringConstraint.java
index e839860339e6f3b9d31fe9817b22f106aafcfdbb..9df88fc62daeb729454097d869b80dcd62b1b908 100644
--- a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/data/BPMNStringConstraint.java
+++ b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/data/BPMNStringConstraint.java
@@ -5,6 +5,10 @@ public class BPMNStringConstraint implements BPMNFieldConstraint {
 	private Long minLength;
 	private Long maxLength;
 	
+	public BPMNStringConstraint() {
+		
+	}
+	
 	public BPMNStringConstraint(Long minLength, Long maxLength) {
 		this.minLength = minLength;
 		this.maxLength = maxLength;
diff --git a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/processfragmentation/BPMNVariableBoundaryScanner.java b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/processfragmentation/BPMNVariableBoundaryScanner.java
index f5f3485e2beaac35684ccaeaaa21d7e77b93bd2a..dddc89ad8a630b449d5fe3b0b42a884c9deeee91 100644
--- a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/processfragmentation/BPMNVariableBoundaryScanner.java
+++ b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/processfragmentation/BPMNVariableBoundaryScanner.java
@@ -412,7 +412,7 @@ public class BPMNVariableBoundaryScanner {
 
 		if (searchGlobalMax != null) {
 			final Long globalMax = searchGlobalMax;
-			List<Long> boundaryExceedingValues = testdata.getValues().stream().filter(value -> value > globalMax)
+			List<Long> boundaryExceedingValues = testdata.getValues().stream().filter(value -> value != null).filter(value -> value > globalMax)
 					.collect(Collectors.toList());
 
 			boundaryExceedingValues.forEach(v -> testdata.removeValue(v));
diff --git a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/processfragmentation/BPMNVariableFormFieldScanner.java b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/processfragmentation/BPMNVariableFormFieldScanner.java
index 4d4d269e7d4f00273565277090fa1e7b7933c552..2dd2eb0b5cdac2fb207f8c0df0ea2a57ff6398cd 100644
--- a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/processfragmentation/BPMNVariableFormFieldScanner.java
+++ b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/bpmn/processfragmentation/BPMNVariableFormFieldScanner.java
@@ -98,11 +98,37 @@ public class BPMNVariableFormFieldScanner {
 			for(Element input : inputs) {
 				String variableName = input.attr(CAMUNDA_VARIABLE_NAME);
 				String variableType = input.attr(CAMUNDA_VARIABLE_TYPE);
+				
 				Boolean variableRequired = false;
+				Integer minlength = null;
+				Integer maxlength = null;
+				Integer min = null;
+				Integer max = null;
+				
 				for(Attribute a : input.attributes()) {
 					if(a.getKey().equals("required")) {
 						variableRequired = true;
 					}
+					if(a.getKey().equals(CONSTRAINT_MIN_LENGTH)) {
+						if(a.getValue() != null && !a.getValue().equals("")) {
+							minlength = Integer.parseInt(a.getValue());
+						}
+					}
+					if(a.getKey().equals(CONSTRAINT_MAX_LENGTH)) {
+						if(a.getValue() != null && !a.getValue().equals("")) {
+							maxlength = Integer.parseInt(a.getValue());
+						}
+					}
+					if(a.getKey().equals(CONSTRAINT_MIN)) {
+						if(a.getValue() != null && !a.getValue().equals("")) {
+							min = Integer.parseInt(a.getValue());
+						}
+					}
+					if(a.getKey().equals(CONSTRAINT_MAX)) {
+						if(a.getValue() != null && !a.getValue().equals("")) {
+							max = Integer.parseInt(a.getValue());
+						}
+					}
 				}
 				
 				System.out.println("Scan Formfield " + variableName + " with type " + variableType + " und required: " + variableRequired);
@@ -114,6 +140,33 @@ public class BPMNVariableFormFieldScanner {
 				
 				formFields.addUserTaskVariable(baseElement.getId(), embeddedVariable.getName());
 				formFields.addVariableEmbedded(variableName, embeddedVariable);
+				
+				BPMNBooleanConstraint bc = new BPMNBooleanConstraint();
+				bc.setRequired(variableRequired);
+				formFields.addTaskSpecificConstraint(baseElement.getId(), variableName, bc);
+				
+				if(minlength != null || maxlength != null) {
+					BPMNStringConstraint stringConstraint = new BPMNStringConstraint();
+					if(minlength != null) {
+						stringConstraint.setMinLength(minlength.longValue());
+					}
+					if(maxlength != null) {
+						stringConstraint.setMaxLength(maxlength.longValue());
+					}
+					
+					formFields.addVariableConstraints(variableName, stringConstraint);
+				}
+				if(min != null || max != null) {
+					BPMNNumericConstraint numericConstraint = new BPMNNumericConstraint();
+					if(min != null) {
+						numericConstraint.setMin(min.longValue());
+					}
+					if(max != null) {
+						numericConstraint.setMax(max.longValue());
+					}
+					
+					formFields.addVariableConstraints(variableName, numericConstraint);
+				}
 			}
 		}
 	}
diff --git a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/utils/BPMNParseUtils.java b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/utils/BPMNParseUtils.java
index 1fb2e7bee62a83a9472dfb5c3d71dff504b33d4d..83f8838ea3ac1666aa36d6c5bee14ce278e2ae52 100644
--- a/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/utils/BPMNParseUtils.java
+++ b/Testgenerator/src/main/java/de/fhmuenster/masterthesis/Testgenerator/utils/BPMNParseUtils.java
@@ -262,6 +262,7 @@ public class BPMNParseUtils {
 
 	private static List<Integer> getIntProposals(String variable, BPMNTestdata<? extends Object> variableTestdata) {
 		return variableTestdata.getValues().stream() //
+				.filter(value -> value != null)
 				.map(value -> ((Long) value).intValue()) //
 				.collect(Collectors.toList()); //
 	}