diff --git a/gazelle-proxy-ejb/src/main/java/net/ihe/gazelle/proxy/model/tm/TestInstance.java b/gazelle-proxy-ejb/src/main/java/net/ihe/gazelle/proxy/model/tm/TestInstance.java
index 357f2374a61f8a7f44adac592eca79328ee6c9e8..936d024109e818f3438ee9f577147274cc3806d6 100644
--- a/gazelle-proxy-ejb/src/main/java/net/ihe/gazelle/proxy/model/tm/TestInstance.java
+++ b/gazelle-proxy-ejb/src/main/java/net/ihe/gazelle/proxy/model/tm/TestInstance.java
@@ -9,6 +9,7 @@ import javax.persistence.FetchType;
 import javax.persistence.GeneratedValue;
 import javax.persistence.Id;
 import javax.persistence.OneToMany;
+import javax.persistence.OrderBy;
 import javax.persistence.Table;
 import javax.xml.bind.annotation.XmlAccessType;
 import javax.xml.bind.annotation.XmlAccessorType;
@@ -31,6 +32,7 @@ public class TestInstance {
 	private List<Configuration> configurations;
 
 	@OneToMany(mappedBy = "testInstance", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
+	@OrderBy("stepIndex")
 	@XmlElement
 	private List<Step> steps;