diff --git a/src/main/java/kieker/analysis/graph/export/dot/DotFileWriterStage.java b/src/main/java/kieker/analysis/graph/export/dot/DotFileWriterStage.java
index e82d1432d0913f1d5892bd622e7788bd2f6fad00..84093915d6928dab51e99e0fe108d216e545111f 100644
--- a/src/main/java/kieker/analysis/graph/export/dot/DotFileWriterStage.java
+++ b/src/main/java/kieker/analysis/graph/export/dot/DotFileWriterStage.java
@@ -3,19 +3,19 @@ package kieker.analysis.graph.export.dot;
 import java.io.FileWriter;
 import java.io.IOException;
 import java.io.Writer;
+import java.util.function.Function;
 
 import kieker.analysis.graph.Graph;
-import kieker.analysis.graph.mapping.GraphMapper;
 import kieker.analysis.graph.mapping.SimpleFileNameMapper;
 
 public class DotFileWriterStage extends DotWriterStage {
 
-	public DotFileWriterStage(final GraphMapper<String> fileNameMapper) {
-		super(new GraphMapper<Writer>() {
+	public DotFileWriterStage(final Function<Graph, String> fileNameMapper) {
+		super(new Function<Graph, Writer>() {
 			@Override
-			public Writer map(final Graph graph) {
+			public Writer apply(final Graph graph) {
 				try {
-					return new FileWriter(fileNameMapper.map(graph));
+					return new FileWriter(fileNameMapper.apply(graph));
 				} catch (IOException e) {
 					throw new IllegalArgumentException(e);
 				}
diff --git a/src/main/java/kieker/analysis/graph/export/dot/DotWriterStage.java b/src/main/java/kieker/analysis/graph/export/dot/DotWriterStage.java
index e9e8f4470b01ca79434f59a6466818f923d27576..8879fe561302392840126bc5574f5207ddc73ff0 100644
--- a/src/main/java/kieker/analysis/graph/export/dot/DotWriterStage.java
+++ b/src/main/java/kieker/analysis/graph/export/dot/DotWriterStage.java
@@ -1,24 +1,24 @@
 package kieker.analysis.graph.export.dot;
 
 import java.io.Writer;
+import java.util.function.Function;
 
 import kieker.analysis.graph.Graph;
-import kieker.analysis.graph.mapping.GraphMapper;
 
 import teetime.framework.AbstractConsumerStage;
 
 public class DotWriterStage extends AbstractConsumerStage<Graph> {
 
-	private final GraphMapper<Writer> writerMapper;
+	private final Function<Graph, Writer> writerMapper;
 
-	public DotWriterStage(final GraphMapper<Writer> writerMapper) {
+	public DotWriterStage(final Function<Graph, Writer> writerMapper) {
 		super();
 		this.writerMapper = writerMapper;
 	}
 
 	@Override
 	protected final void execute(final Graph graph) {
-		DotExporter dotExporter = new DotExporter(graph, writerMapper.map(graph));
+		DotExporter dotExporter = new DotExporter(graph, writerMapper.apply(graph));
 		dotExporter.transform();
 	}
 
diff --git a/src/main/java/kieker/analysis/graph/export/graphml/GraphMLFileWriterComposite.java b/src/main/java/kieker/analysis/graph/export/graphml/GraphMLFileWriterComposite.java
index 3c52f3199d8f1a4ac4e30e4096c0f1b69ed86070..cc9f5223245178c3721d7f9e2e508b96d4336236 100644
--- a/src/main/java/kieker/analysis/graph/export/graphml/GraphMLFileWriterComposite.java
+++ b/src/main/java/kieker/analysis/graph/export/graphml/GraphMLFileWriterComposite.java
@@ -3,19 +3,19 @@ package kieker.analysis.graph.export.graphml;
 import java.io.FileNotFoundException;
 import java.io.FileOutputStream;
 import java.io.OutputStream;
+import java.util.function.Function;
 
 import kieker.analysis.graph.Graph;
-import kieker.analysis.graph.mapping.GraphMapper;
 import kieker.analysis.graph.mapping.SimpleFileNameMapper;
 
 public class GraphMLFileWriterComposite extends GraphMLWriterComposite {
 
-	public GraphMLFileWriterComposite(final GraphMapper<String> fileNameMapper) {
-		super(new GraphMapper<OutputStream>() {
+	public GraphMLFileWriterComposite(final Function<Graph, String> fileNameMapper) {
+		super(new Function<Graph, OutputStream>() {
 			@Override
-			public OutputStream map(final Graph graph) {
+			public OutputStream apply(final Graph graph) {
 				try {
-					return new FileOutputStream(fileNameMapper.map(graph));
+					return new FileOutputStream(fileNameMapper.apply(graph));
 				} catch (FileNotFoundException e) {
 					throw new IllegalArgumentException(e);
 				}
diff --git a/src/main/java/kieker/analysis/graph/export/graphml/GraphMLTransformationStage.java b/src/main/java/kieker/analysis/graph/export/graphml/GraphMLTransformationStage.java
index 539d9217ffce77329f26aa57798cd76d8dd38f80..311b5bee8b7b5f2ce4b406a115a5e942feff45a0 100644
--- a/src/main/java/kieker/analysis/graph/export/graphml/GraphMLTransformationStage.java
+++ b/src/main/java/kieker/analysis/graph/export/graphml/GraphMLTransformationStage.java
@@ -1,6 +1,7 @@
 package kieker.analysis.graph.export.graphml;
 
 import java.io.OutputStream;
+import java.util.function.Function;
 
 import javax.xml.bind.JAXBElement;
 
@@ -8,7 +9,6 @@ import org.graphdrawing.graphml.GraphmlType;
 import org.graphdrawing.graphml.ObjectFactory;
 
 import kieker.analysis.graph.Graph;
-import kieker.analysis.graph.mapping.GraphMapper;
 import kieker.analysis.util.JAXBMarshalElement;
 
 import teetime.stage.basic.AbstractTransformation;
@@ -16,9 +16,9 @@ import teetime.stage.basic.AbstractTransformation;
 public class GraphMLTransformationStage extends AbstractTransformation<Graph, JAXBMarshalElement<GraphmlType>> {
 
 	private final ObjectFactory objectFactory = new ObjectFactory();
-	private final GraphMapper<OutputStream> outputStreamMapper;
+	private final Function<Graph, OutputStream> outputStreamMapper;
 
-	public GraphMLTransformationStage(final GraphMapper<OutputStream> outputStreamMapper) {
+	public GraphMLTransformationStage(final Function<Graph, OutputStream> outputStreamMapper) {
 		this.outputStreamMapper = outputStreamMapper;
 	}
 
@@ -30,7 +30,7 @@ public class GraphMLTransformationStage extends AbstractTransformation<Graph, JA
 		graphmlType.getGraphOrData().add(graphTypeTransformer.transform());
 		final JAXBElement<GraphmlType> jaxbElement = objectFactory.createGraphml(graphmlType);
 
-		final OutputStream outputStream = outputStreamMapper.map(graph);
+		final OutputStream outputStream = outputStreamMapper.apply(graph);
 		final JAXBMarshalElement<GraphmlType> marshalElement = new JAXBMarshalElement<>(jaxbElement, outputStream);
 
 		this.getOutputPort().send(marshalElement);
diff --git a/src/main/java/kieker/analysis/graph/export/graphml/GraphMLWriterComposite.java b/src/main/java/kieker/analysis/graph/export/graphml/GraphMLWriterComposite.java
index db75adf952baa2e3a87257be0db342dc44a4e1ae..2c7a708b9c1a036ae7320b6a3f8744cd186252ee 100644
--- a/src/main/java/kieker/analysis/graph/export/graphml/GraphMLWriterComposite.java
+++ b/src/main/java/kieker/analysis/graph/export/graphml/GraphMLWriterComposite.java
@@ -1,11 +1,11 @@
 package kieker.analysis.graph.export.graphml;
 
 import java.io.OutputStream;
+import java.util.function.Function;
 
 import org.graphdrawing.graphml.GraphmlType;
 
 import kieker.analysis.graph.Graph;
-import kieker.analysis.graph.mapping.GraphMapper;
 import kieker.analysis.util.JAXBMarshalStage;
 
 import teetime.framework.CompositeStage;
@@ -15,7 +15,7 @@ public class GraphMLWriterComposite extends CompositeStage {
 
 	private final InputPort<Graph> inputPort;
 
-	public GraphMLWriterComposite(final GraphMapper<OutputStream> outputStreamMapper) {
+	public GraphMLWriterComposite(final Function<Graph, OutputStream> outputStreamMapper) {
 		final GraphMLTransformationStage graphTypeTransformer;
 		final JAXBMarshalStage<GraphmlType> jaxbMarshaller;
 
diff --git a/src/main/java/kieker/analysis/graph/mapping/GraphMapper.java b/src/main/java/kieker/analysis/graph/mapping/GraphMapper.java
deleted file mode 100644
index 7b874af38e14bba89edd66e16412c3505c7d87fc..0000000000000000000000000000000000000000
--- a/src/main/java/kieker/analysis/graph/mapping/GraphMapper.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package kieker.analysis.graph.mapping;
-
-import kieker.analysis.graph.Graph;
-import kieker.analysis.graph.util.IMapper;
-
-public interface GraphMapper<O> extends IMapper<Graph, O> {
-
-}
diff --git a/src/main/java/kieker/analysis/graph/mapping/SimpleFileNameMapper.java b/src/main/java/kieker/analysis/graph/mapping/SimpleFileNameMapper.java
index 066edda6435427cd24017d693c49a2b8b8d7132d..2b9431cb9adc8a7dc9df249c04e314eb817fa9d1 100644
--- a/src/main/java/kieker/analysis/graph/mapping/SimpleFileNameMapper.java
+++ b/src/main/java/kieker/analysis/graph/mapping/SimpleFileNameMapper.java
@@ -1,5 +1,7 @@
 package kieker.analysis.graph.mapping;
 
+import java.util.function.Function;
+
 import kieker.analysis.graph.Graph;
 
 /**
@@ -9,7 +11,7 @@ import kieker.analysis.graph.Graph;
  * @author Sören Henning
  *
  */
-public class SimpleFileNameMapper implements GraphMapper<String> {
+public class SimpleFileNameMapper implements Function<Graph, String> {
 
 	private final String outputDirectory;
 	private final String fileExtension;
@@ -20,7 +22,7 @@ public class SimpleFileNameMapper implements GraphMapper<String> {
 	}
 
 	@Override
-	public String map(final Graph graph) {
+	public String apply(final Graph graph) {
 		return outputDirectory + '/' + graph.getName() + '.' + fileExtension;
 	}
 
diff --git a/src/main/java/kieker/analysis/graph/util/IMapper.java b/src/main/java/kieker/analysis/graph/util/IMapper.java
deleted file mode 100644
index fdfd9108b018951b7318a7eefb1fdb8716ee6f48..0000000000000000000000000000000000000000
--- a/src/main/java/kieker/analysis/graph/util/IMapper.java
+++ /dev/null
@@ -1,7 +0,0 @@
-package kieker.analysis.graph.util;
-
-public interface IMapper<I, O> {
-
-	public O map(I object);
-
-}