diff --git a/scripts/MooBench-cmd/META-INF/kieker.aop.xml b/scripts/MooBench-cmd/META-INF/kieker.aop.xml
new file mode 100644
index 0000000000000000000000000000000000000000..21d93b0ad698128b77dfe0433b4214ac8265fa8d
--- /dev/null
+++ b/scripts/MooBench-cmd/META-INF/kieker.aop.xml
@@ -0,0 +1,10 @@
+<!DOCTYPE aspectj PUBLIC "-//AspectJ//DTD//EN" "http://www.aspectj.org/dtd/aspectj_1_5_0.dtd">
+<aspectj>
+    <weaver options="">
+        <include within="mooBench.monitoredApplication.*"/>
+        <include within="kieker.monitoring.probe..*"/>
+    </weaver>
+    <aspects>
+        <aspect name="kieker.monitoring.probe.aspectj.flow.operationExecution.FullInstrumentation" />
+    </aspects>
+</aspectj>
diff --git a/scripts/MooBench-cmd/META-INF/kieker.legacy.aop.xml b/scripts/MooBench-cmd/META-INF/kieker.legacy.aop.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a3e02fd16fe213174a8dfb2d151d4d0cda093477
--- /dev/null
+++ b/scripts/MooBench-cmd/META-INF/kieker.legacy.aop.xml
@@ -0,0 +1,9 @@
+<!DOCTYPE aspectj PUBLIC "-//AspectJ//DTD//EN" "http://www.aspectj.org/dtd/aspectj_1_5_0.dtd">
+<aspectj>
+    <weaver options="">
+        <include within="mooBench.monitoredApplication.*"/>
+    </weaver>
+    <aspects>
+        <aspect name="kieker.monitoring.probe.aspectj.operationExecution.OperationExecutionAspectFull"/>
+    </aspects>
+</aspectj>
diff --git a/scripts/MooBench-cmd/META-INF/kieker.logging.properties b/scripts/MooBench-cmd/META-INF/kieker.logging.properties
new file mode 100644
index 0000000000000000000000000000000000000000..f98649baf98e11754e888f5e06069b9dba5df31b
--- /dev/null
+++ b/scripts/MooBench-cmd/META-INF/kieker.logging.properties
@@ -0,0 +1,5 @@
+handlers = java.util.logging.FileHandler
+java.util.logging.FileHandler.level = ALL
+java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
+java.util.logging.FileHandler.append = true
+java.util.logging.FileHandler.pattern = kieker.log
diff --git a/scripts/MooBench-cmd/META-INF/kieker.monitoring.properties b/scripts/MooBench-cmd/META-INF/kieker.monitoring.properties
new file mode 100644
index 0000000000000000000000000000000000000000..86af7e2c5aaa651378383fa87f937a8fc18693a1
--- /dev/null
+++ b/scripts/MooBench-cmd/META-INF/kieker.monitoring.properties
@@ -0,0 +1,27 @@
+kieker.monitoring.enabled=true
+kieker.monitoring.name=KIEKER-BENCHMARK
+
+kieker.monitoring.adaptiveMonitoring.enabled=false
+kieker.monitoring.periodicSensorsExecutorPoolSize=0
+
+kieker.monitoring.writer.AsyncDummyWriter.QueueSize=100000
+kieker.monitoring.writer.AsyncDummyWriter.QueueFullBehavior=1
+
+kieker.monitoring.writer.filesystem.SyncFsWriter.bufferSize=16777216
+kieker.monitoring.writer.filesystem.SyncFsWriter.flush=false
+
+kieker.monitoring.writer.filesystem.AsyncFsWriter.QueueSize=100000
+kieker.monitoring.writer.filesystem.AsyncFsWriter.QueueFullBehavior=1
+kieker.monitoring.writer.filesystem.AsyncFsWriter.bufferSize=16777216
+kieker.monitoring.writer.filesystem.AsyncFsWriter.flush=false
+
+kieker.monitoring.writer.filesystem.AsyncBinaryFsWriter.QueueSize=100000
+kieker.monitoring.writer.filesystem.AsyncBinaryFsWriter.QueueFullBehavior=1
+kieker.monitoring.writer.filesystem.AsyncBinaryFsWriter.bufferSize=16777216
+
+kieker.monitoring.writer.filesystem.AsyncBinaryZipWriter.QueueSize=100000
+kieker.monitoring.writer.filesystem.AsyncBinaryZipWriter.QueueFullBehavior=1
+kieker.monitoring.writer.filesystem.AsyncBinaryZipWriter.bufferSize=16777216
+
+kieker.monitoring.writer.tcp.TCPWriter.QueueFullBehavior=1
+kieker.monitoring.writer.tcp.TCPWriter.QueueSize=100000
diff --git a/scripts/MooBench-cmd/MooBench.jar b/scripts/MooBench-cmd/MooBench.jar
new file mode 100644
index 0000000000000000000000000000000000000000..9232679c05b83488fc352c39f0e838e8ca9f551b
Binary files /dev/null and b/scripts/MooBench-cmd/MooBench.jar differ
diff --git a/scripts/MooBench-cmd/lib/kieker-1.9_aspectj.jar b/scripts/MooBench-cmd/lib/kieker-1.9_aspectj.jar
new file mode 100644
index 0000000000000000000000000000000000000000..1eccaeeec73b0737030ce3ba782e3f72209f7eba
Binary files /dev/null and b/scripts/MooBench-cmd/lib/kieker-1.9_aspectj.jar differ
diff --git a/scripts/MooBench-cmd/startMooBench.cmd b/scripts/MooBench-cmd/startMooBench.cmd
new file mode 100644
index 0000000000000000000000000000000000000000..a3735bd3a9c3485b317f8fea8e2ad49cf70fbd52
--- /dev/null
+++ b/scripts/MooBench-cmd/startMooBench.cmd
@@ -0,0 +1,9 @@
+
+set cp=.;MooBench.jar;META-INF/kieker.monitoring.properties;META-INF/kieker.logging.properties
+set jvmParams=-javaagent:lib/kieker-1.9_aspectj.jar -Dorg.aspectj.weaver.loadtime.configuration=META-INF/kieker.aop.xml -Dorg.aspectj.weaver.showWeaveInfo=true -Daj.weaving.verbose=true -Dkieker.monitoring.writer=kieker.monitoring.writer.tcp.TCPWriter
+set params=-d 10 -h 1 -m 0 -t 1000000 -o tmp/test.txt -q
+set runs=%1
+
+for %%i in (1,1,%runs%) do (
+	java -cp %cp% %jvmParams% mooBench.benchmark.Benchmark %params%
+)
\ No newline at end of file
diff --git a/scripts/teetime-cmd/lib/kieker-1.9_aspectj.jar b/scripts/teetime-cmd/lib/kieker-1.9_aspectj.jar
new file mode 100644
index 0000000000000000000000000000000000000000..1eccaeeec73b0737030ce3ba782e3f72209f7eba
Binary files /dev/null and b/scripts/teetime-cmd/lib/kieker-1.9_aspectj.jar differ
diff --git a/scripts/teetime-cmd/startTeetime.cmd b/scripts/teetime-cmd/startTeetime.cmd
new file mode 100644
index 0000000000000000000000000000000000000000..32fa1e1274745c3173662acefb8a0787a7399c56
--- /dev/null
+++ b/scripts/teetime-cmd/startTeetime.cmd
@@ -0,0 +1,6 @@
+
+set cp=.;teetime.jar;lib/kieker-1.9_aspectj.jar
+set jvmParams=
+set params=
+
+java -cp %cp% %jvmParams% teetime.variant.methodcallWithPorts.examples.traceReconstructionWithThreads.ChwWorkTcpTraceReconstructionAnalysisWithThreadsTest %params%
\ No newline at end of file
diff --git a/scripts/teetime-cmd/teetime.jar b/scripts/teetime-cmd/teetime.jar
new file mode 100644
index 0000000000000000000000000000000000000000..51192f5d7c11547cffcac399416c5b8b8e6c34d2
Binary files /dev/null and b/scripts/teetime-cmd/teetime.jar differ
diff --git a/src/test/java/teetime/variant/methodcallWithPorts/examples/traceReconstructionWithThreads/ChwWorkTcpTraceReconstructionAnalysisWithThreadsTest.java b/src/test/java/teetime/variant/methodcallWithPorts/examples/traceReconstructionWithThreads/ChwWorkTcpTraceReconstructionAnalysisWithThreadsTest.java
index 579cefb7aef0933b054bff13ec19c98e00a88d67..544c0b5e1d6b663bfc5cc5822af7917cf328bb13 100644
--- a/src/test/java/teetime/variant/methodcallWithPorts/examples/traceReconstructionWithThreads/ChwWorkTcpTraceReconstructionAnalysisWithThreadsTest.java
+++ b/src/test/java/teetime/variant/methodcallWithPorts/examples/traceReconstructionWithThreads/ChwWorkTcpTraceReconstructionAnalysisWithThreadsTest.java
@@ -48,9 +48,23 @@ public class ChwWorkTcpTraceReconstructionAnalysisWithThreadsTest {
 	}
 
 	@Test
-	public void performAnalysis() {
+	public void performAnalysisWith1Thread() {
+		this.performAnalysis(1);
+	}
+
+	@Test
+	public void performAnalysisWith2Threads() {
+		this.performAnalysis(2);
+	}
+
+	@Test
+	public void performAnalysisWith4Threads() {
+		this.performAnalysis(4);
+	}
+
+	void performAnalysis(final int numWorkerThreads) {
 		final TcpTraceReconstructionAnalysisWithThreads analysis = new TcpTraceReconstructionAnalysisWithThreads();
-		analysis.setNumWorkerThreads(2);
+		analysis.setNumWorkerThreads(numWorkerThreads);
 		analysis.init();
 
 		this.stopWatch.start();
@@ -79,4 +93,31 @@ public class ChwWorkTcpTraceReconstructionAnalysisWithThreadsTest {
 		assertEquals(21000001, analysis.getNumRecords());
 	}
 
+	public static void main(final String[] args) {
+		ChwWorkTcpTraceReconstructionAnalysisWithThreadsTest analysis = new ChwWorkTcpTraceReconstructionAnalysisWithThreadsTest();
+		analysis.before();
+		try {
+			analysis.performAnalysisWith1Thread();
+		} catch (Exception e) {
+			System.err.println(e);
+		}
+		analysis.after();
+
+		analysis.before();
+		try {
+			analysis.performAnalysisWith2Threads();
+		} catch (Exception e) {
+			System.err.println(e);
+		}
+		analysis.after();
+
+		analysis.before();
+		try {
+			analysis.performAnalysisWith4Threads();
+		} catch (Exception e) {
+			System.err.println(e);
+		}
+		analysis.after();
+	}
+
 }
diff --git a/src/test/java/teetime/variant/methodcallWithPorts/examples/traceReconstructionWithThreads/TcpTraceReconstructionAnalysisWithThreads.java b/src/test/java/teetime/variant/methodcallWithPorts/examples/traceReconstructionWithThreads/TcpTraceReconstructionAnalysisWithThreads.java
index 665bb47b16817ecd27be3155a5ed8933f4becf74..8cea1e903676ad46f54b82207829791dd5eb5fbc 100644
--- a/src/test/java/teetime/variant/methodcallWithPorts/examples/traceReconstructionWithThreads/TcpTraceReconstructionAnalysisWithThreads.java
+++ b/src/test/java/teetime/variant/methodcallWithPorts/examples/traceReconstructionWithThreads/TcpTraceReconstructionAnalysisWithThreads.java
@@ -136,7 +136,7 @@ public class TcpTraceReconstructionAnalysisWithThreads extends Analysis {
 		Pipeline<IMonitoringRecord, IMonitoringRecord> pipeline = new Pipeline<IMonitoringRecord, IMonitoringRecord>();
 		pipeline.setFirstStage(relay);
 		// pipeline.addIntermediateStage(this.recordCounter);
-		pipeline.addIntermediateStage(sysout);
+		// pipeline.addIntermediateStage(sysout);
 		// pipeline.addIntermediateStage(instanceOfFilter);
 		// pipeline.addIntermediateStage(this.recordThroughputFilter);
 		// pipeline.addIntermediateStage(traceReconstructionFilter);