diff --git a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/Job.java b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/Job.java
index 330bb892da3866d92dae5e2f887329059628ad0d..64a16889bd262e6916f0b643ba5bf6d86d1365ef 100644
--- a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/Job.java
+++ b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/Job.java
@@ -398,6 +398,10 @@ public class Job {
 		return inputDirectory;
 	}
 
+	public Path getOutputDirectory() {
+		return outputDirectory;
+	}
+
 	private void storeInputOutputDirectory() {
 		if (inputDirectory == null) {
 			useDemoData = true;
diff --git a/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/ShellRoutines.java b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/ShellRoutines.java
new file mode 100644
index 0000000000000000000000000000000000000000..6c4b0047d8eda36e2f794279b0be477821eb8d05
--- /dev/null
+++ b/haas-imagej-client/src/main/java/cz/it4i/fiji/haas/ui/ShellRoutines.java
@@ -0,0 +1,22 @@
+package cz.it4i.fiji.haas.ui;
+
+import java.awt.Desktop;
+import java.io.IOException;
+import java.nio.file.Path;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public interface ShellRoutines {
+	
+	public static final Logger log = LoggerFactory.getLogger(cz.it4i.fiji.haas.ui.ShellRoutines.class);
+	
+	public static void openDirectoryInBrowser(Path directory) {
+		Desktop desktop = Desktop.getDesktop();
+		try {
+			desktop.open(directory.toFile());
+		} catch (IOException e) {
+			log.error(e.getMessage(), e);
+		}
+	}
+}
diff --git a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/BenchmarkJobManager.java b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/BenchmarkJobManager.java
index e565d1d65a5c53e1bcee290802eb4d8bb731e336..f79b9fe96970db24933e075df0722c128ca136df 100644
--- a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/BenchmarkJobManager.java
+++ b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/core/BenchmarkJobManager.java
@@ -267,6 +267,10 @@ public class BenchmarkJobManager implements Closeable {
 			return job.getInputDirectory();
 		}
 
+		public Path getOutputDirectory() {
+			return job.getOutputDirectory();
+		}
+
 		private ProgressNotifier convertTo(Progress progress) {
 			return progress == null ? null : new P_ProgressNotifierAdapter(progress);
 		}
diff --git a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIMController.java b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIMControl.java
similarity index 95%
rename from haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIMController.java
rename to haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIMControl.java
index cf34023108706defbe30d1456a720d107a8837c1..dbe847aacfcf1f0d2ab39b11ceb38bae18154b46 100644
--- a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIMController.java
+++ b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIMControl.java
@@ -2,7 +2,6 @@ package cz.it4i.fiji.haas_spim_benchmark.ui;
 
 import static cz.it4i.fiji.haas_spim_benchmark.core.Constants.CONFIG_YAML;
 
-import java.awt.Desktop;
 import java.awt.Window;
 import java.io.IOException;
 import java.nio.file.Files;
@@ -33,6 +32,7 @@ import cz.it4i.fiji.haas.ui.InitiableControl;
 import cz.it4i.fiji.haas.ui.JavaFXRoutines;
 import cz.it4i.fiji.haas.ui.ModalDialogs;
 import cz.it4i.fiji.haas.ui.ProgressDialog;
+import cz.it4i.fiji.haas.ui.ShellRoutines;
 import cz.it4i.fiji.haas.ui.TableViewContextMenu;
 import cz.it4i.fiji.haas_java_client.JobState;
 import cz.it4i.fiji.haas_java_client.UploadingFile;
@@ -54,7 +54,7 @@ import javafx.scene.layout.Region;
 import net.imagej.updater.util.Progress;
 
 //FIXME: fix Exception during context menu request on task with N/A state
-public class BenchmarkSPIMController extends BorderPane implements CloseableControl, InitiableControl {
+public class BenchmarkSPIMControl extends BorderPane implements CloseableControl, InitiableControl {
 
 	@FXML
 	private TableView<ObservableBenchmarkJob> jobs;
@@ -76,9 +76,9 @@ public class BenchmarkSPIMController extends BorderPane implements CloseableCont
 	private ObservableBenchmarkJobRegistry registry;
 
 	private static Logger log = LoggerFactory
-			.getLogger(cz.it4i.fiji.haas_spim_benchmark.ui.BenchmarkSPIMController.class);
+			.getLogger(cz.it4i.fiji.haas_spim_benchmark.ui.BenchmarkSPIMControl.class);
 
-	public BenchmarkSPIMController(BenchmarkJobManager manager) {
+	public BenchmarkSPIMControl(BenchmarkJobManager manager) {
 		this.manager = manager;
 		JavaFXRoutines.initRootAndController("BenchmarkSPIM.fxml", this);
 
@@ -132,8 +132,7 @@ public class BenchmarkSPIMController extends BorderPane implements CloseableCont
 				log.error(e.getMessage(), e);
 			}
 		}, job -> JavaFXRoutines.notNullValue(job,
-				j -> j.getState() == JobState.Running || j.getState() == JobState.Finished
-						|| j.getState() == JobState.Failed || j.getState() == JobState.Canceled));
+				j -> true));
 
 		menu.addItem("Upload data", job -> executeWSCallAsync("Uploading data", p -> job.getValue().startUpload()),
 				job -> executeWSCallAsync("Stop uploading data", p -> job.getValue().stopUpload()),
@@ -226,12 +225,7 @@ public class BenchmarkSPIMController extends BorderPane implements CloseableCont
 
 	private void open(BenchmarkJob j) {
 		executorServiceUI.execute(() -> {
-			Desktop desktop = Desktop.getDesktop();
-			try {
-				desktop.open(j.getDirectory().toFile());
-			} catch (IOException e) {
-				log.error(e.getMessage(), e);
-			}
+			ShellRoutines.openDirectoryInBrowser(j.getDirectory());
 		});
 	}
 
diff --git a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIMWindow.java b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIMWindow.java
index d2a19cdb5d8463e2fd9e48054304b8f2b930873a..840e058eb57ff7e768c203b5ee0d00ebbc6761eb 100644
--- a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIMWindow.java
+++ b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIMWindow.java
@@ -8,14 +8,14 @@ import cz.it4i.fiji.haas_spim_benchmark.core.BenchmarkJobManager;
 import cz.it4i.fiji.haas_spim_benchmark.core.BenchmarkSPIMParameters;
 
 
-public class BenchmarkSPIMWindow extends FXFrame<BenchmarkSPIMController>{
+public class BenchmarkSPIMWindow extends FXFrame<BenchmarkSPIMControl>{
 
 	private static final long serialVersionUID = 1L;
 		
 	public BenchmarkSPIMWindow(Window parentWindow, BenchmarkSPIMParameters params) throws IOException {
 		super(parentWindow,()->{
 			try {
-				return new BenchmarkSPIMController(new BenchmarkJobManager(params));
+				return new BenchmarkSPIMControl(new BenchmarkJobManager(params));
 			} catch (IOException e) {
 				throw new RuntimeException(e);
 			}
diff --git a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/JobDetailControl.java b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/JobDetailControl.java
index 4cad2bb63154b2b21a2fa77c02088623e942198e..2191ce838981f84068d83923719963aa4006da6c 100644
--- a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/JobDetailControl.java
+++ b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/JobDetailControl.java
@@ -1,44 +1,75 @@
 package cz.it4i.fiji.haas_spim_benchmark.ui;
 
+import java.awt.Window;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import cz.it4i.fiji.haas.ui.CloseableControl;
+import cz.it4i.fiji.haas.ui.InitiableControl;
 import cz.it4i.fiji.haas.ui.JavaFXRoutines;
+import cz.it4i.fiji.haas_java_client.JobState;
 import cz.it4i.fiji.haas_java_client.SynchronizableFileType;
 import cz.it4i.fiji.haas_spim_benchmark.core.BenchmarkJobManager.BenchmarkJob;
 import cz.it4i.fiji.haas_spim_benchmark.core.Constants;
 import javafx.fxml.FXML;
+import javafx.scene.control.Tab;
 import javafx.scene.control.TabPane;
 
-public class JobDetailControl extends TabPane implements CloseableControl {
+public class JobDetailControl extends TabPane implements CloseableControl, InitiableControl {
 	@SuppressWarnings("unused")
 	private static Logger log = LoggerFactory.getLogger(cz.it4i.fiji.haas_spim_benchmark.ui.JobDetailControl.class);
 
-	@FXML
-	private SPIMPipelineProgressViewController progressView;
-
-	@FXML
-	private LogViewControl errorOutput;
+	@FXML private SPIMPipelineProgressViewController progressView;
 
-	@FXML
-	private LogViewControl standardOutput;
+	@FXML private LogViewControl errorOutput;
 
+	@FXML private LogViewControl standardOutput;
+	
+	@FXML private JobPropertiesControl jobProperties;
+	
+	@FXML private Tab jobPropertiesTab;
+	
 	private final HaaSOutputObservableValueRegistry observableValueRegistry;
 
+	private final BenchmarkJob job;
+
+	
 	public JobDetailControl(BenchmarkJob job) {
 		JavaFXRoutines.initRootAndController("JobDetail.fxml", this);
 		progressView.setJob(job);
 		observableValueRegistry = new HaaSOutputObservableValueRegistry(job,
 				Constants.HAAS_UPDATE_TIMEOUT / Constants.UI_TO_HAAS_FREQUENCY_UPDATE_RATIO);
 		errorOutput.setObservable(observableValueRegistry.createObservable(SynchronizableFileType.StandardErrorFile));
-		standardOutput.setObservable(observableValueRegistry.createObservable(SynchronizableFileType.StandardOutputFile));
+		standardOutput
+				.setObservable(observableValueRegistry.createObservable(SynchronizableFileType.StandardOutputFile));
+		jobProperties.setJob(job);
 		observableValueRegistry.start();
+		this.job = job;
+	}
+
+	@Override
+	public void init(Window parameter) {
+		if (!isExecutionDetailsAvailable(job)) {
+			enableOnlySpecificTab(jobPropertiesTab);
+		}
+	}
+	
+	
+	private void enableOnlySpecificTab(Tab tabToLeaveEnabled) {
+		getTabs().stream().filter(node -> node != jobPropertiesTab).forEach(node -> node.setDisable(true));
+		getSelectionModel().select(jobPropertiesTab);
+	}
+
+	private boolean isExecutionDetailsAvailable(BenchmarkJob job) {
+		return job.getState() == JobState.Running || job.getState() == JobState.Finished
+				|| job.getState() == JobState.Failed || job.getState() == JobState.Canceled;
 	}
 
 	@Override
 	public void close() {
 		observableValueRegistry.close();
 		progressView.close();
+		jobProperties.close();
 	}
 }
diff --git a/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/JobPropertiesControl.java b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/JobPropertiesControl.java
new file mode 100644
index 0000000000000000000000000000000000000000..b26f0f3cde97243cd19892222ad9645148409c95
--- /dev/null
+++ b/haas-spim-benchmark/src/main/java/cz/it4i/fiji/haas_spim_benchmark/ui/JobPropertiesControl.java
@@ -0,0 +1,113 @@
+package cz.it4i.fiji.haas_spim_benchmark.ui;
+
+import java.io.Closeable;
+import java.nio.file.Path;
+import java.util.Optional;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+import java.util.function.Consumer;
+import java.util.function.Function;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import cz.it4i.fiji.haas.ui.JavaFXRoutines;
+import cz.it4i.fiji.haas.ui.ShellRoutines;
+import cz.it4i.fiji.haas.ui.UpdatableObservableValue;
+import cz.it4i.fiji.haas.ui.UpdatableObservableValue.UpdateStatus;
+import cz.it4i.fiji.haas_spim_benchmark.core.BenchmarkJobManager.BenchmarkJob;
+import javafx.beans.value.ObservableValue;
+import javafx.fxml.FXML;
+import javafx.scene.control.TableRow;
+import javafx.scene.control.TableView;
+import javafx.scene.layout.BorderPane;
+
+public class JobPropertiesControl extends BorderPane implements Closeable{
+	private static final String FXML_FILE_NAME = "JobProperties.fxml";
+	public static final Logger log = LoggerFactory
+			.getLogger(cz.it4i.fiji.haas_spim_benchmark.ui.JobPropertiesControl.class);
+	
+	@FXML
+	private TableView<ObservableValue<P_Value>> properties;
+
+	private BenchmarkJob job;
+	
+	private final ExecutorService executorServiceUI;
+	
+	public JobPropertiesControl() {
+		JavaFXRoutines.initRootAndController(FXML_FILE_NAME, this);
+		executorServiceUI = Executors.newSingleThreadExecutor();
+		initTable();
+	}
+
+	public void setJob(BenchmarkJob job) {
+		this.job = job;
+		fillTable();
+	}
+
+	@Override
+	public void close() {
+		executorServiceUI.shutdown();
+	}
+
+	private void initTable() {
+		setCellValueFactory(0, s -> s.getName());
+		setCellValueFactory(1, s -> s.getValueAsString());
+		setOnDoubleClickAction(rowData -> ShellRoutines.openDirectoryInBrowser(rowData.getPath()));
+	}
+	
+	private void setOnDoubleClickAction(Consumer<P_Value> r) {
+		properties.setRowFactory( tv -> {
+		    TableRow<ObservableValue<P_Value>> row = new TableRow<>();
+		    row.setOnMouseClicked(event -> {
+		        if (event.getClickCount() == 2 && (! row.isEmpty()) ) {
+		        	P_Value rowData = row.getItem().getValue();
+		            if(rowData.isOpenAllowed()) {
+						executorServiceUI.execute(()->r.accept(rowData));
+		            }
+		        }
+		    });
+		    return row ;
+		});		
+	}
+
+	private void fillTable() {
+		properties.getItems().add(new UpdatableObservableValue<JobPropertiesControl.P_Value>(
+				new P_Value("Input", job.getInputDirectory(), "Demo data on server"), x->UpdateStatus.NotUpdated, x->x));
+		properties.getItems().add(new UpdatableObservableValue<JobPropertiesControl.P_Value>(
+				new P_Value("Output", job.getOutputDirectory(), "N/A"), x->UpdateStatus.NotUpdated, x->x));
+
+	}
+	
+	private void setCellValueFactory(int i, Function<P_Value, String> mapper) {
+		JavaFXRoutines.setCellValueFactory(properties, i, mapper);
+	}
+	private class P_Value {
+		private final String name;
+		private final Path path;
+		private final String textIfNull;
+		
+		public P_Value(String name, Path path, String textIfNull) {
+			this.name = name;
+			this.path = path;
+			this.textIfNull = textIfNull;
+		}
+		
+		public String getName() {
+			return name;
+		}
+		
+		public String getValueAsString() {
+			return Optional.ofNullable(path).map(p->p.toString()).orElse(textIfNull);
+		}
+		
+		public boolean isOpenAllowed() {
+			return path != null;
+		}
+		
+		public Path getPath() {
+			return path;
+		}
+	}
+}
+
diff --git a/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIM.fxml b/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIM.fxml
index 95312b152ee16591b55e4b13b3736b97041ab6af..31729e326bcdd83d671e64b31d21372ab096b074 100644
--- a/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIM.fxml
+++ b/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/BenchmarkSPIM.fxml
@@ -6,7 +6,7 @@
 <?import javafx.scene.layout.BorderPane?>
 <?import javafx.scene.layout.HBox?>
 
-<fx:root type="BorderPane" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1" fx:controller="cz.it4i.fiji.haas_spim_benchmark.ui.BenchmarkSPIMController">
+<fx:root type="BorderPane" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1" fx:controller="cz.it4i.fiji.haas_spim_benchmark.ui.BenchmarkSPIMControl">
 	<center>
 
 		<HBox>
@@ -14,7 +14,7 @@
 
 				<TableView fx:id="jobs" prefHeight="400.0" prefWidth="1410.0" HBox.hgrow="ALWAYS">
 					<columns>
-						<TableColumn prefWidth="70.0" text="Job Id" />
+						<TableColumn prefWidth="70.0" text="Job ID" />
 						<TableColumn prefWidth="149.0" text="Status" />
 						<TableColumn prefWidth="230.0" text="Creation time" />
 						<TableColumn prefWidth="230.0" text="Start time" />
diff --git a/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/JobDetail.fxml b/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/JobDetail.fxml
index cb3c9255811f2b828373c024d5725bc62c8ae920..75ad019d39930fd07cf0ebea1d0bb922cf2de6ab 100644
--- a/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/JobDetail.fxml
+++ b/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/JobDetail.fxml
@@ -6,6 +6,7 @@
 <?import javafx.scene.control.TabPane?>
 <?import javafx.scene.layout.AnchorPane?>
 <?import javafx.scene.layout.HBox?>
+<?import cz.it4i.fiji.haas_spim_benchmark.ui.JobPropertiesControl?>
 
 
 <fx:root type="TabPane" xmlns:fx="http://javafx.com/fxml/1"
@@ -28,7 +29,7 @@
 				</HBox>
 			</content>
 		</Tab>
-		<Tab closable="false" text="Other output">
+		<Tab closable="false" text="Other output" >
 			<content>
 				<HBox>
 					<LogViewControl fx:id="standardOutput" HBox.hgrow="ALWAYS" />
@@ -36,5 +37,13 @@
 			</content>
 
 		</Tab>
+		<Tab closable="false" text="Job directories" fx:id="jobPropertiesTab">
+			<content>
+				<HBox>
+					<JobPropertiesControl fx:id="jobProperties" HBox.hgrow="ALWAYS" />
+				</HBox>
+			</content>
+
+		</Tab>
 	</tabs>
 </fx:root>
diff --git a/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/JobProperties.fxml b/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/JobProperties.fxml
new file mode 100644
index 0000000000000000000000000000000000000000..dc683df812ba55ecb9e10469215ec42565c3ab87
--- /dev/null
+++ b/haas-spim-benchmark/src/main/resources/cz/it4i/fiji/haas_spim_benchmark/ui/JobProperties.fxml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<?import javafx.geometry.Insets?>
+<?import javafx.scene.control.TableColumn?>
+<?import javafx.scene.control.TableView?>
+<?import javafx.scene.layout.BorderPane?>
+<?import javafx.scene.layout.HBox?>
+
+<fx:root type="BorderPane" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1" fx:controller="cz.it4i.fiji.haas_spim_benchmark.ui.JobPropertiesControl">
+	<center>
+		<HBox>
+			<children>
+
+				<TableView fx:id="properties" prefHeight="400.0" prefWidth="550.0" HBox.hgrow="ALWAYS">
+					<columns>
+						<TableColumn prefWidth="150.0" text="Type of directory" />
+						<TableColumn prefWidth="400.0" text="Location" />
+					</columns>
+				</TableView>
+			</children>
+			<padding>
+				<Insets bottom="1.0" left="1.0" right="1.0" top="1.0" />
+			</padding>
+		</HBox>
+	</center>
+
+</fx:root>
diff --git a/haas-spim-benchmark/src/test/java/cz/it4i/fiji/haas/TestFX.java b/haas-spim-benchmark/src/test/java/cz/it4i/fiji/haas/TestFX.java
index 207a4fb50f83ffe5f49d609ffca391e963ad783a..b094e17f23d05b01b65719f0d7ff09406a2d9ad0 100644
--- a/haas-spim-benchmark/src/test/java/cz/it4i/fiji/haas/TestFX.java
+++ b/haas-spim-benchmark/src/test/java/cz/it4i/fiji/haas/TestFX.java
@@ -3,16 +3,15 @@ package cz.it4i.fiji.haas;
 import java.awt.event.WindowAdapter;
 import java.awt.event.WindowEvent;
 
-import cz.it4i.fiji.haas_spim_benchmark.ui.BenchmarkSPIMController;
+import cz.it4i.fiji.haas_spim_benchmark.ui.BenchmarkSPIMControl;
 
 public class TestFX {
 	public static void main(String[] args) {
 		@SuppressWarnings("serial")
-		class Window extends FXFrame<BenchmarkSPIMController>{
+		class Window extends FXFrame<BenchmarkSPIMControl>{
 
 			public Window() {
-				super(()->new BenchmarkSPIMController(null));
-				// TODO Auto-generated constructor stub
+				super(()->new BenchmarkSPIMControl(null));
 			}
 			
 		}
@@ -22,7 +21,6 @@ public class TestFX {
 		window.addWindowListener(new WindowAdapter() {
 			@Override
 			public void windowClosed(WindowEvent e) {
-				// TODO Auto-generated method stub
 				super.windowClosed(e);
 				System.exit(0);
 			}