diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ContractImplementationCommand.java b/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ContractImplementationCommand.java
index 11ce86be5da0b8a996e1ade8ba36d308b3a9f6b1..2a369a40baad150501f728eb5ce2cf7e922321b4 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ContractImplementationCommand.java
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ContractImplementationCommand.java
@@ -32,7 +32,7 @@ public class ContractImplementationCommand extends AbstractJobCommand {
 	private OCRAExecService ocraExecService = OCRAExecService.getInstance(ChessSystemModel.getInstance());
 	private SelectionUtil selectionUtil = SelectionUtil.getInstance();
 	//private OCRADirectoryUtil ocraDirectoryUtil = OCRADirectoryUtil.getInstance();
-	private SmvExportService nuXmvService = SmvExportService.getInstance();
+	private SmvExportService smvExportService = SmvExportService.getInstance();
 	private OCRADirectoryUtil ocraDirectoryUtil = OCRADirectoryUtil.getInstance();
 	private NuXmvDirectoryUtil nuXmvDirectoryUtil = NuXmvDirectoryUtil.getInstance();
 	
@@ -64,7 +64,7 @@ public class ContractImplementationCommand extends AbstractJobCommand {
 	@Override
 	public void execJobCommand(ExecutionEvent event, IProgressMonitor monitor) throws Exception {
 		
-		File smvOutput = nuXmvService.exportSmv(umlSelectedComponent, showPopups,smvFilePath,monitor);
+		File smvOutput = smvExportService.exportSmv( umlSelectedComponent,showPopups,smvFilePath, monitor);
 		ocraExecService.executeCheckContractImplementation(umlSelectedComponent,umlSelectedResource, smvOutput, isDiscreteTime,showPopups,ossFilepath,resultFilePath,monitor);
 
 	}
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ExportModelToFileCommand.java b/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ExportModelToFileCommand.java
index 8bf5f682b67901abedf029320193b452deba2482..16b328c7a55790e8b8091ebea890c10dd96432ac 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ExportModelToFileCommand.java
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ExportModelToFileCommand.java
@@ -65,6 +65,8 @@ public class ExportModelToFileCommand extends AbstractJobCommand {
 	
 	ocraTranslatorService.exportModelToOssFile(umlSelectedComponent, umlSelectedResource,
 				isDiscreteTime,showPopups,ossFilepath, monitor);
+	
+	
 	}
 
 }
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ModelCheckingCommand.java b/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ModelCheckingCommand.java
index f6709133033bd202db7b49ab334e3254a7f18616..020132c0e1f692a925efb5b954d7ecbe9e48c2f7 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ModelCheckingCommand.java
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/ModelCheckingCommand.java
@@ -21,6 +21,7 @@ import org.polarsys.chess.smvExport.services.SmvExportService;
 
 //import org.polarsys.chess.verificationService.services.SmvExportService;
 import eu.fbk.eclipse.standardtools.commands.AbstractJobCommand;
+import eu.fbk.eclipse.standardtools.dialogs.MessageTimeModelDialog;
 import eu.fbk.eclipse.standardtools.nuXmvService.services.NuXmvService;
 import eu.fbk.eclipse.standardtools.nuXmvService.utils.NuXmvDirectoryUtil;
 
@@ -42,12 +43,14 @@ public class ModelCheckingCommand extends AbstractJobCommand {
 	private Class umlSelectedComponent;
 	private boolean showPopups;
 	private String smvFilePath;
+	private String resultFilePath;
 	
 	@Override
 	public void execGUIOperations(ExecutionEvent event,IProgressMonitor monitor) throws Exception {
 		 umlSelectedComponent = selectionUtil.getUmlComponentFromSelectedObject(event);
 		 showPopups = true;
 		 smvFilePath = nuXmvDirectoryUtil.getSmvFilePath();
+		  resultFilePath = nuXmvDirectoryUtil.getCommandModelCheckingResultPath(umlSelectedComponent.getName());
 	}
 
 
@@ -56,7 +59,7 @@ public class ModelCheckingCommand extends AbstractJobCommand {
 	public void execJobCommand(ExecutionEvent event, IProgressMonitor monitor) throws Exception {
 	
 		File smvOutput = smvExportService.exportSmv( umlSelectedComponent,showPopups,smvFilePath, monitor);
-		nuXmvService.executeModelChecking(smvOutput);
+		nuXmvService.executeModelChecking(smvOutput,resultFilePath);
 		
 	}
 
diff --git a/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/debug/ModelCheckingOnFileCommand.java b/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/debug/ModelCheckingOnFileCommand.java
index 6e7634da3c2917931aa69c699fea9dead8ed1eed..2cbb067158f435b03d3788438078f7e1aba3844f 100644
--- a/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/debug/ModelCheckingOnFileCommand.java
+++ b/plugins/contracts/org.polarsys.chess.contracts.verificationService/src/org/polarsys/chess/verificationService/commands/debug/ModelCheckingOnFileCommand.java
@@ -15,7 +15,8 @@ import java.io.File;
 import org.eclipse.core.commands.ExecutionEvent;
 import org.eclipse.core.runtime.IProgressMonitor;
 
-import eu.fbk.eclipse.standardtools.commands.AbstractAsyncJobCommand;
+
+import eu.fbk.eclipse.standardtools.commands.AbstractJobCommand;
 import eu.fbk.eclipse.standardtools.nuXmvService.dialogs.NuXmvParametersDialog;
 import eu.fbk.eclipse.standardtools.nuXmvService.services.NuXmvService;
 import eu.fbk.eclipse.standardtools.nuXmvService.utils.NuXmvDialogUtil;
@@ -25,7 +26,7 @@ import eu.fbk.eclipse.standardtools.nuXmvService.utils.NuXmvDirectoryUtil;
  * 
  *
  */
-public class ModelCheckingOnFileCommand extends AbstractAsyncJobCommand {
+public class ModelCheckingOnFileCommand extends AbstractJobCommand {
 
 	
 	private NuXmvService nuXmvService = NuXmvService.getInstance();
@@ -36,22 +37,40 @@ public class ModelCheckingOnFileCommand extends AbstractAsyncJobCommand {
 		super("Model Checking");
 	}
 
+	boolean goAhead = false;
+	String alg_type;
+	String check_type;
+	String property;
+	
 	@Override
-	public void execJobCommand(ExecutionEvent event, IProgressMonitor monitor) throws Exception {
-
-		File smvFile = nuXmvDialogUtil.getSmvFileFromFileDialog(nuXmvDirectoryUtil.getSmvFilePath());
+	public void execGUIOperations(ExecutionEvent event, IProgressMonitor monitor) throws Exception {
+		
 		//boolean isDiscreteTime = MessageTimeModelDialog.openQuestion();
 
 		
 			final NuXmvParametersDialog dialog = new NuXmvParametersDialog();
 			dialog.open();
-
-			if (dialog.goAhead()) {
-				String alg_type = dialog.getAlgorithmType();
-				String check_type = dialog.getCheckType();
-				String property = dialog.getProperty();
-				nuXmvService.modelCheckingCommand(smvFile, property, alg_type, check_type);
+			
+			goAhead = dialog.goAhead();
+			
+			if (goAhead) {
+				 alg_type = dialog.getAlgorithmType();
+				 check_type = dialog.getCheckType();
+				 property = dialog.getProperty();
+				 
 			}
+	}
+
+	@Override
+	public void execJobCommand(ExecutionEvent event, IProgressMonitor monitor) throws Exception {
+
+		if (goAhead) {
+			
+			File smvFile = nuXmvDialogUtil.getSmvFileFromFileDialog(nuXmvDirectoryUtil.getSmvFilePath());
+			String resultFilePath = nuXmvDirectoryUtil.getCommandModelCheckingResultPath(smvFile.getName());
+		nuXmvService.modelCheckingCommand(smvFile, property, alg_type, check_type,resultFilePath);
+		}
+			
 
 		}