diff --git a/pom.xml b/pom.xml
index 68ec3e414a0c52b851ab813c7ad656ad13a16c2c..e3651d0cd0f01c27c61b364c840e3d9c00684907 100644
--- a/pom.xml
+++ b/pom.xml
@@ -117,7 +117,25 @@
 
 	<build>
 		<plugins>
-
+			<plugin>
+				<groupId>org.codehaus.mojo</groupId>
+				<artifactId>cobertura-maven-plugin</artifactId>
+				<version>2.6</version>
+				<configuration>
+					<instrumentation>
+						<excludes>
+							<exclude>src/performancetest/**/*</exclude>
+						</excludes>
+					</instrumentation>
+				</configuration>
+				<executions>
+					<execution>
+						<goals>
+							<goal>clean</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
 			<!-- we want JDK 1.6 source and binary compatibility -->
 			<plugin>
 				<groupId>org.apache.maven.plugins</groupId>
@@ -363,9 +381,27 @@
 				<artifactId>maven-pmd-plugin</artifactId>
 				<version>3.2</version>
 			</plugin>
+			<plugin>
+				<groupId>org.codehaus.mojo</groupId>
+				<artifactId>emma-maven-plugin</artifactId>
+				<version>1.0-alpha-3</version>
+				<inherited>true</inherited>
+				<configuration>
+					<includes>
+						<include>src/main/java/**</include>
+						<include>src/test/java/**</include>
+					</includes>
+				</configuration>
+			</plugin>
+			<plugin>
+				<groupId>org.codehaus.mojo</groupId>
+				<artifactId>cobertura-maven-plugin</artifactId>
+				<version>2.6</version>
+			</plugin>
 		</plugins>
 	</reporting>
 
+
 	<profiles>
 		<profile>
 			<id>performancetest</id>
diff --git a/src/main/java/teetime/framework/RunnableStage.java b/src/main/java/teetime/framework/AbstractRunnableStage.java
similarity index 93%
rename from src/main/java/teetime/framework/RunnableStage.java
rename to src/main/java/teetime/framework/AbstractRunnableStage.java
index 42ed7ec67640e79651660e74fa8cbab00a85d2cf..86e66379f006ecf6228614ad0787965b1e88ec93 100644
--- a/src/main/java/teetime/framework/RunnableStage.java
+++ b/src/main/java/teetime/framework/AbstractRunnableStage.java
@@ -18,13 +18,13 @@ package teetime.framework;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-abstract class RunnableStage implements Runnable {
+abstract class AbstractRunnableStage implements Runnable {
 
 	protected final Stage stage;
 	@SuppressWarnings("PMD.LoggerIsNotStaticFinal")
 	protected final Logger logger;
 
-	public RunnableStage(final Stage stage) {
+	public AbstractRunnableStage(final Stage stage) {
 		this.stage = stage;
 		this.logger = LoggerFactory.getLogger(stage.getClass());
 	}
diff --git a/src/main/java/teetime/framework/RunnableConsumerStage.java b/src/main/java/teetime/framework/RunnableConsumerStage.java
index bc9164173235eea85bd01f7234d7efcabf52299f..1def6debf106b609bdd40cbb4bd003ed9fb12301 100644
--- a/src/main/java/teetime/framework/RunnableConsumerStage.java
+++ b/src/main/java/teetime/framework/RunnableConsumerStage.java
@@ -22,13 +22,13 @@ import teetime.framework.idle.YieldStrategy;
 import teetime.framework.pipe.IPipe;
 import teetime.framework.signal.ISignal;
 
-final class RunnableConsumerStage extends RunnableStage {
+final class RunnableConsumerStage extends AbstractRunnableStage {
 
 	private final IdleStrategy idleStrategy;
 
 	/**
 	 * Creates a new instance with the {@link YieldStrategy} as default idle strategy.
-	 * 
+	 *
 	 * @param stage
 	 *            to execute within an own thread
 	 */
diff --git a/src/main/java/teetime/framework/RunnableProducerStage.java b/src/main/java/teetime/framework/RunnableProducerStage.java
index 573286c5427e6244e6951fd83c7b669ea43844a0..fe82c9705d5a4981db6f0bf6acc195cd9748330a 100644
--- a/src/main/java/teetime/framework/RunnableProducerStage.java
+++ b/src/main/java/teetime/framework/RunnableProducerStage.java
@@ -18,7 +18,7 @@ package teetime.framework;
 import teetime.framework.signal.StartingSignal;
 import teetime.framework.signal.TerminatingSignal;
 
-public final class RunnableProducerStage extends RunnableStage {
+public final class RunnableProducerStage extends AbstractRunnableStage {
 
 	public RunnableProducerStage(final Stage stage) {
 		super(stage);
diff --git a/src/main/java/teetime/framework/Stage.java b/src/main/java/teetime/framework/Stage.java
index a1c271ac036a4d037b55026d635f878c84f46f8c..27f7a11be99507826b20265a20215509251c7154 100644
--- a/src/main/java/teetime/framework/Stage.java
+++ b/src/main/java/teetime/framework/Stage.java
@@ -42,7 +42,7 @@ public abstract class Stage {
 	@SuppressWarnings("PMD.LoggerIsNotStaticFinal")
 	protected final Logger logger;
 
-	/** The owning thread of this stage if this stage is directly executed by a {@link RunnableStage}, <code>null</code> otherwise. */
+	/** The owning thread of this stage if this stage is directly executed by a {@link AbstractRunnableStage}, <code>null</code> otherwise. */
 	protected Thread owningThread;
 
 	protected Stage() {