diff --git a/TestON/JenkinsFile/README b/TestON/JenkinsFile/README
new file mode 100644
index 0000000..18307e2
--- /dev/null
+++ b/TestON/JenkinsFile/README
@@ -0,0 +1,68 @@
+Jenkins script for Jenkins Pipeline jobs **
+*******************************************
+
+All the Jenkins files are under the dependencies folders are the dependencies of the Jenkins file.
+
+Some tips for the Jenkins File:
+
+
+1. If you want to change the branch to be run on weekdays and weekends (VM, BM) :
+
+  1) go to VM_BMJenkinsfileTrigger
+  2) change the portion on line 31 :
+     current_version = "master"
+     previous_version = "1.13"
+     before_previous_version = "1.12"
+
+
+2. If you want to change the branch to be run for the Segment Routing tests :
+
+  1) go to the FabricJenkinsfileTrigger
+  2) change the variable values on line 32:
+     current_version = "master"
+     previous_version = "1.13"
+     before_previous_version = "1.12"
+  3) If you want certain branch to be run on different machine then change
+     a) line 157 - 159:
+        testcases[ "SR1" ][ "nodeName" ][ <node you want> ] 0 : Fabric2, 1: Fabric3
+     b) Then, go to dependencies/JenkinsCommonFuncs.groovy
+        change def fabricOn( branch ) on line 86.
+        Currently, only 1.12 runs on Fabric3 and rest are running Fabric2.
+     c) Make sure to change the URLs on Wiki as well. If 1.12 runs on Fabric2 instead of Fabric3, then you
+        have to update the URL from
+          https://jenkins.onosproject.org/view/QA/job/postjob-Fabric3/lastSuccessfulBuild/artifact/SRBridging_onos-1.12_20-builds_graph.jpg
+
+          to
+
+          https://jenkins.onosproject.org/view/QA/job/postjob-Fabric2/lastSuccessfulBuild/artifact/SRBridging_onos-1.12_20-builds_graph.jpg
+
+
+3. If you want to upload additional logs for the Segment Routing tests:
+
+   1) go to dependencies/JenkinsCommonFuncs.groovy,
+   2) change def copyLogs( testName ) on line 174.
+   3) you may change/add/remove files from there.
+
+
+4. If you want to add a new test. ( non-SCPF tests like FUNC,HA,USECASE, and SR ):
+
+   1) go to dependencies/JenkinsTestONTests.groovy.
+   2) Add the new test on the list.
+   3) Make sure to also create a new wiki page for wiki link before running the test.
+      Since publish to confluence does not make new page, it has to be there before gets published.
+   4) If your new test's category is not scheduled :
+       a) For non-Segment Routing test :
+          i) go to VM_BMJenkinsFileTrigger
+          ii) add your new category on any days you want it to be run after line 223.
+       b) For Segment Routing test:
+          i) go to FabricJenkinsfileTrigger
+          ii) add your new category after line 113.
+   5) add your new graph to the wiki page.
+
+5. If you want to add a new test ( SCPF ):
+   1) Outside the Jenkins file requirement : need to add new table, function, view and its rule to the database first.
+   2) go to dependencies/JenkinsTestONTests.groovy and follow the 4 steps procedure for scheduling.
+   3) go to dependencies/PerformanceFuncs.groovy and add a new test in the dictionary.
+   4) It explains details about which to add in the file.
+   5) Make a Rscript for that test.
+   6) add your new graph to the wiki page.
\ No newline at end of file
diff --git a/TestON/JenkinsFile/SCPF_Graph_Generator b/TestON/JenkinsFile/SCPF_Graph_Generator
index 06e2db4..e12b9e2 100644
--- a/TestON/JenkinsFile/SCPF_Graph_Generator
+++ b/TestON/JenkinsFile/SCPF_Graph_Generator
@@ -48,7 +48,6 @@
 }
 
 // generate the graphs sequentially.
-parallel tests
-//for ( test in tests.keySet() ){
-//    tests[ test ].call()
-//}
+for ( test in tests.keySet() ){
+    tests[ test ].call()
+}
diff --git a/TestON/JenkinsFile/Trend_Graph_Generator b/TestON/JenkinsFile/Trend_Graph_Generator
index 1cd34ba..b95504d 100644
--- a/TestON/JenkinsFile/Trend_Graph_Generator
+++ b/TestON/JenkinsFile/Trend_Graph_Generator
@@ -55,7 +55,6 @@
     tests[ test ] = funcs.runTest( test, true, prop, test, true, [], graph_generator_file, graph_saved_directory )
 }
 
-parallel tests
-//for ( test in tests.keySet() ){
-//    tests[ test ].call()
-//}
+for ( test in tests.keySet() ){
+    tests[ test ].call()
+}
