diff --git a/srp_analysis/src/main.rs b/srp_analysis/src/main.rs
index eadd7bd16692cedba8dfcdfc1597e50659dbe386..fd2ddac9a78562e63d6ee411f0e0a2476ac837c0 100644
--- a/srp_analysis/src/main.rs
+++ b/srp_analysis/src/main.rs
@@ -6,6 +6,21 @@ use srp_analyser::*;
 
 
 fn main() {
+    let tasks: Tasks = create_tasks();
+
+    println!("tasks {:?}", &tasks);
+    println!("tot_util {}", total_load_factor(&tasks));
+
+    let (ip, tr) = pre_analysis(&tasks);
+    println!("ip: {:?}", ip);
+    println!("tr: {:?}", tr);
+
+    let analysis = analyse(&tasks, &ip, &tr, true);
+    println!("Analysis {:#?}", analysis);
+}
+
+
+fn create_tasks() -> Tasks {
     let t1 = Task {
         id: "T1".to_string(),
         prio: 1,
@@ -67,19 +82,9 @@ fn main() {
             }],
         },
     };
-
+    
     // builds a vector of tasks t1, t2, t3
     let tasks: Tasks = vec![t1, t2, t3];
-
-    println!("tasks {:?}", &tasks);
-    println!("tot_util {}", total_load_factor(&tasks));
-
-    let (ip, tr) = pre_analysis(&tasks);
-    println!("ip: {:?}", ip);
-    println!("tr: {:?}", tr);
-
-    let analysis = analyse(&tasks, &ip, &tr, true);
-    println!("Analysis {:#?}", analysis);
+    return tasks;
 }
 
-