diff --git a/frameworks/common-functions.sh b/common-functions.sh
similarity index 91%
rename from frameworks/common-functions.sh
rename to common-functions.sh
index d0e528bbd51b52abb7d42aa635ececbbf68f3a61..d8cd9ba117c36f5c360bd0f82e44ed6a173dd21a 100755
--- a/frameworks/common-functions.sh
+++ b/common-functions.sh
@@ -238,24 +238,12 @@ RESULTS_DIR="${BASE_DIR}/results-${FRAMEWORK_NAME}"
 RAWFN="${RESULTS_DIR}/raw"
 
 # Initialize all unset parameters
-if [ -z $SLEEP_TIME ]; then
-	SLEEP_TIME=30             ## 30
-fi
-if [ -z $NUM_OF_LOOPS ]; then
-	NUM_OF_LOOPS=10           ## 10
-fi
-if [ -z $THREADS ]; then
-	THREADS=1                 ## 1
-fi
-if [ -z $RECURSION_DEPTH ]; then
-	RECURSION_DEPTH=10        ## 10
-fi
-if [ -z $TOTAL_NUM_OF_CALLS ]; then
-	TOTAL_NUM_OF_CALLS=2000000     ## 2000000
-fi
-if [ -z $METHOD_TIME ]; then
-	METHOD_TIME=0             ## 500000
-fi
-if [ -z $DEBUG ]; then
-	DEBUG=false	  	  ## false
-fi
+SLEEP_TIME=30              ## 30
+NUM_OF_LOOPS=10            ## 10
+THREADS=1                  ## 1
+RECURSION_DEPTH=10         ## 10
+TOTAL_NUM_OF_CALLS=2000000 ## 2 000 000
+METHOD_TIME=0              ## 500 000
+DEBUG=false	  	   ## false
+
+# end
diff --git a/config.rc b/config.rc
deleted file mode 100644
index 0872ef3c3347a9cb7fe3dcd99b7a684b46e8fe7f..0000000000000000000000000000000000000000
--- a/config.rc
+++ /dev/null
@@ -1,5 +0,0 @@
-## Moobench setup script
-
-MOOBENCH_ARCHIVE="${BASE_DIR}/tools/benchmark/build/distributions/benchmark.tar"
-
-
diff --git a/config.rc b/config.rc
new file mode 120000
index 0000000000000000000000000000000000000000..9a7859b1eccca833856dcd11e7256febca0f8e21
--- /dev/null
+++ b/config.rc
@@ -0,0 +1 @@
+experiment.rc
\ No newline at end of file
diff --git a/experiment.rc b/experiment.rc
new file mode 100644
index 0000000000000000000000000000000000000000..23ad510656fb85dd8db075bdcbdfe709c62bb29f
--- /dev/null
+++ b/experiment.rc
@@ -0,0 +1,8 @@
+export SLEEP_TIME=30
+export NUM_OF_LOOPS=10
+export THREADS=1
+export RECURSION_DEPTH=10
+export TOTAL_NUM_OF_CALLS=200000
+export METHOD_TIME=0
+export DEBUG=false
+
diff --git a/frameworks/Kieker/java/benchmark.sh b/frameworks/Kieker/java/benchmark.sh
index 8cfc3fac4a6616350e16ce11d6679becc9c7741e..f415b3b455a57680a2c914dc6221ddf8a2614ffe 100755
--- a/frameworks/Kieker/java/benchmark.sh
+++ b/frameworks/Kieker/java/benchmark.sh
@@ -17,18 +17,20 @@ if [ ! -d "${BASE_DIR}" ] ; then
 	exit 1
 fi
 
-# load configuration and common functions
-if [ -f "${BASE_DIR}/config.rc" ] ; then
-	source "${BASE_DIR}/config.rc"
+MAIN_DIR="${BASE_DIR}/../../.."
+
+if [ -f "${MAIN_DIR}/common-functions.sh" ] ; then
+	source "${MAIN_DIR}/common-functions.sh"
 else
-	echo "Missing configuration: ${BASE_DIR}/config.rc"
+	echo "Missing library: ${MAIN_DIR}/common-functions.sh"
 	exit 1
 fi
 
-if [ -f "${MAIN_DIR}/frameworks/common-functions.sh" ] ; then
-	source "${MAIN_DIR}/frameworks/common-functions.sh"
+# load configuration and common functions
+if [ -f "${BASE_DIR}/config.rc" ] ; then
+	source "${BASE_DIR}/config.rc"
 else
-	echo "Missing library: ${MAIN_DIR}/frameworks/common-functions.sh"
+	echo "Missing configuration: ${BASE_DIR}/config.rc"
 	exit 1
 fi
 
diff --git a/frameworks/Kieker/java/config.rc b/frameworks/Kieker/java/config.rc
index bcf839f01ab6e3cd0fe962ba3b9485a878ad0e6d..0bd82fcfd533db4ca1d9669c45c4d5adf0ef892e 100644
--- a/frameworks/Kieker/java/config.rc
+++ b/frameworks/Kieker/java/config.rc
@@ -1,6 +1,8 @@
 ##
 # MooBench configuration parameter
 
+source ${MAIN_DIR}/config.rc
+
 # path setup
 JAVA_BIN=`which java`
 
diff --git a/frameworks/Kieker/python/benchmark.sh b/frameworks/Kieker/python/benchmark.sh
index 3a7776b8e2cf719fdebf8034e02b08d02237346b..cdb96b4213e37782f09dca9d5c8273cb0539405f 100755
--- a/frameworks/Kieker/python/benchmark.sh
+++ b/frameworks/Kieker/python/benchmark.sh
@@ -17,25 +17,27 @@ if [ ! -d "${BASE_DIR}" ] ; then
 	exit 1
 fi
 
-# load configuration and common functions
-if [ -f "${BASE_DIR}/config.rc" ] ; then
-	source "${BASE_DIR}/config.rc"
+MAIN_DIR="${BASE_DIR}/../../.."
+
+if [ -f "${MAIN_DIR}/common-functions.sh" ] ; then
+	source "${MAIN_DIR}/common-functions.sh"
 else
-	echo "Missing configuration: ${BASE_DIR}/config.rc"
+	echo "Missing library: ${MAIN_DIR}/common-functions.sh"
 	exit 1
 fi
 
-if [ -f "${MAIN_DIR}/frameworks/common-functions.sh" ] ; then
-	source "${MAIN_DIR}/frameworks/common-functions.sh"
+# load configuration and common functions
+if [ -f "${BASE_DIR}/config.rc" ] ; then
+	source "${BASE_DIR}/config.rc"
 else
-	echo "Missing library: ${MAIN_DIR}/frameworks/common-functions.sh"
+	echo "Missing configuration: ${BASE_DIR}/config.rc"
 	exit 1
 fi
 
 if [ -f "${BASE_DIR}/functions.sh" ] ; then
 	source "${BASE_DIR}/functions.sh"
 else
-	echo "Missing: ${BASE_DIR}/functions.sh"
+	echo "Missing functions: ${BASE_DIR}/functions.sh"
 	exit 1
 fi
 if [ -f "${BASE_DIR}/labels.sh" ] ; then
diff --git a/frameworks/Kieker/python/config.rc b/frameworks/Kieker/python/config.rc
index 79326a4e3348667671bffedec85ba53062e2ec8b..3991c89dd85949a4507d34420fb6be1b957aba69 100644
--- a/frameworks/Kieker/python/config.rc
+++ b/frameworks/Kieker/python/config.rc
@@ -1,5 +1,7 @@
 # benchmark setup script
 
+source ${MAIN_DIR}/config.rc
+
 PYTHON=`which python3`
 
 PIP=`which pip`
@@ -11,7 +13,6 @@ GIT=`which git`
 
 RSCRIPT_PATH="${BASE_DIR}/../../statistics.r"
 
-MAIN_DIR="${BASE_DIR}/../../.."
 DATA_DIR="${BASE_DIR}/data"
 
 KIEKER_4_PYTHON_REPO_URL="https://github.com/rju/kieker-lang-pack-python.git"
diff --git a/frameworks/OpenTelemetry/benchmark.sh b/frameworks/OpenTelemetry/benchmark.sh
index 7a836c40b43bea0ffbf63ebccd5c9aecf1559303..470410f695198db766bf98c2d7c4a7ceb84a036f 100755
--- a/frameworks/OpenTelemetry/benchmark.sh
+++ b/frameworks/OpenTelemetry/benchmark.sh
@@ -17,18 +17,20 @@ if [ ! -d "${BASE_DIR}" ] ; then
 	exit 1
 fi
 
-# load configuration and common functions
-if [ -f "${BASE_DIR}/config.rc" ] ; then
-	source "${BASE_DIR}/config.rc"
+MAIN_DIR="${BASE_DIR}/../.."
+
+if [ -f "${MAIN_DIR}/common-functions.sh" ] ; then
+	source "${MAIN_DIR}/common-functions.sh"
 else
-	echo "Missing configuration: ${BASE_DIR}/config.rc"
+	echo "Missing library: ${MAIN_DIR}/common-functions.sh"
 	exit 1
 fi
 
-if [ -f "${BASE_DIR}/../common-functions.sh" ] ; then
-	source "${BASE_DIR}/../common-functions.sh"
+# load configuration and common functions
+if [ -f "${BASE_DIR}/config.rc" ] ; then
+	source "${BASE_DIR}/config.rc"
 else
-	echo "Missing library: ${BASE_DIR}/../common-functions.sh"
+	echo "Missing configuration: ${BASE_DIR}/config.rc"
 	exit 1
 fi
 
diff --git a/frameworks/OpenTelemetry/config.rc b/frameworks/OpenTelemetry/config.rc
index 9f02b1c08401022ca368a0c1343806790b0c43d0..9c6923ea5901f5c1f4d228d78507cd3839dc2937 100644
--- a/frameworks/OpenTelemetry/config.rc
+++ b/frameworks/OpenTelemetry/config.rc
@@ -1,5 +1,7 @@
 # OpenTelementry configuration
 
+source ${MAIN_DIR}/config.rc
+
 JAVA_BIN=`which java`
 
 RSCRIPT_PATH="${BASE_DIR}/../statistics.r"
diff --git a/frameworks/inspectIT/benchmark.sh b/frameworks/inspectIT/benchmark.sh
index f92f56063d1c25e4f7346d6c8ec68cf3fbac9647..4c440710740cdb02d27be3f87e822ed36a643524 100755
--- a/frameworks/inspectIT/benchmark.sh
+++ b/frameworks/inspectIT/benchmark.sh
@@ -17,18 +17,20 @@ if [ ! -d "${BASE_DIR}" ] ; then
 	exit 1
 fi
 
-# load configuration and common functions
-if [ -f "${BASE_DIR}/config.rc" ] ; then
-	source "${BASE_DIR}/config.rc"
+MAIN_DIR="${BASE_DIR}/../.."
+
+if [ -f "${MAIN_DIR}/common-functions.sh" ] ; then
+	source "${MAIN_DIR}/common-functions.sh"
 else
-	echo "Missing configuration: ${BASE_DIR}/config.rc"
+	echo "Missing library: ${MAIN_DIR}/common-functions.sh"
 	exit 1
 fi
 
-if [ -f "${BASE_DIR}/../common-functions.sh" ] ; then
-	source "${BASE_DIR}/../common-functions.sh"
+# load configuration and common functions
+if [ -f "${BASE_DIR}/config.rc" ] ; then
+	source "${BASE_DIR}/config.rc"
 else
-	echo "Missing library: ${BASE_DIR}/../common-functions.sh"
+	echo "Missing configuration: ${BASE_DIR}/config.rc"
 	exit 1
 fi
 
diff --git a/frameworks/inspectIT/config.rc b/frameworks/inspectIT/config.rc
index c64a338eca66d0c053818c61c4cee47eafe4db30..e87b7f0af514abe2ddc64e5f9e8398170c155e0b 100644
--- a/frameworks/inspectIT/config.rc
+++ b/frameworks/inspectIT/config.rc
@@ -1,5 +1,7 @@
 # inspectIT configurations
 
+source ${MAIN_DIR}/config.rc
+
 JAVA_BIN=`which java`
 
 RSCRIPT_PATH="${BASE_DIR}/../statistics.r"