diff --git a/Modules/Applications/AppTest/app/otbMemoryTestApplication.cxx b/Modules/Applications/AppTest/app/otbMemoryTestApplication.cxx
index 0e982a046a9bbf8d214d63742066ffddf6d52755..9afb640273c2a68d84d7576ba39022acdbbf371b 100644
--- a/Modules/Applications/AppTest/app/otbMemoryTestApplication.cxx
+++ b/Modules/Applications/AppTest/app/otbMemoryTestApplication.cxx
@@ -85,14 +85,17 @@ private:
 
   void DoExecute() ITK_OVERRIDE
   {
+    std::cout<<"Debug on input "<<std::endl;
     GetParameterImage("in")->DebugOn();
     ExtractROIFilterType::Pointer extractor = ExtractROIFilterType::New();
     extractor->DebugOn();
     m_Filters.push_back(extractor.GetPointer());
+    std::cout<<"Debug on extractor "<<std::endl;
     extractor->DebugOn();
     extractor->SetInput(GetParameterImage("in"));
     extractor->SetChannel(1);
     extractor->UpdateOutputInformation();
+    std::cout<<"Debug on extractor's output "<<std::endl;
     extractor->GetOutput()->DebugOn();
     SetParameterOutputImage("out" , extractor->GetOutput() );
   }
diff --git a/Modules/Core/ImageBase/include/otbVectorImage.h b/Modules/Core/ImageBase/include/otbVectorImage.h
index 2fa39e599a1811ef98b7930931c37a5031e19cd9..9e948ec5c914a1fd71162bf18cbf72137c76e2d5 100644
--- a/Modules/Core/ImageBase/include/otbVectorImage.h
+++ b/Modules/Core/ImageBase/include/otbVectorImage.h
@@ -194,7 +194,9 @@ public:
 
 protected:
   VectorImage();
-  ~VectorImage() ITK_OVERRIDE {}
+  ~VectorImage() ITK_OVERRIDE {
+    std::cout<<"A vector image is deleted"<<std::endl;
+  }
 
 private:
   VectorImage(const Self &); //purposely not implemented
diff --git a/Modules/Core/ImageBase/include/otbVectorImage.txx b/Modules/Core/ImageBase/include/otbVectorImage.txx
index f6123af5845fc49c321a84febdd28be828ee21bc..83c3f0f6e71dc0b95b90784c9efa7679d95e951a 100644
--- a/Modules/Core/ImageBase/include/otbVectorImage.txx
+++ b/Modules/Core/ImageBase/include/otbVectorImage.txx
@@ -33,6 +33,7 @@ namespace otb
 template <class TPixel, unsigned int VImageDimension>
 VectorImage<TPixel, VImageDimension>::VectorImage()
 {
+  std::cout<<"A vector image is created"<<std::endl;
 }
 
 template <class TPixel, unsigned int VImageDimension>
diff --git a/Modules/IO/ImageIO/include/otbImageFileWriter.txx b/Modules/IO/ImageIO/include/otbImageFileWriter.txx
index b1472291f1ae216f302757ad00b69bfd161b3630..62b9338f300a306a20eb001bae57d0c07f447b15 100644
--- a/Modules/IO/ImageIO/include/otbImageFileWriter.txx
+++ b/Modules/IO/ImageIO/include/otbImageFileWriter.txx
@@ -80,6 +80,7 @@ ImageFileWriter<TInputImage>
   this->SetAutomaticAdaptativeStreaming();
 
   m_FilenameHelper = FNameHelperType::New();
+  std::cout<<"A writer is created"<<std::endl;
 }
 
 /**
@@ -89,6 +90,7 @@ template <class TInputImage>
 ImageFileWriter<TInputImage>
 ::~ImageFileWriter()
 {
+  std::cout<<"A writer is deleted"<<std::endl;
 }
 
 template <class TInputImage>
diff --git a/Modules/Wrappers/ApplicationEngine/src/otbWrapperApplication.cxx b/Modules/Wrappers/ApplicationEngine/src/otbWrapperApplication.cxx
index cca32d50d38ee1b3c8bb056854863e49179a493b..988f9f72433cacc54a54cfe27c14064fa926c763 100644
--- a/Modules/Wrappers/ApplicationEngine/src/otbWrapperApplication.cxx
+++ b/Modules/Wrappers/ApplicationEngine/src/otbWrapperApplication.cxx
@@ -518,11 +518,12 @@ int Application::ExecuteAndWriteOutput()
     }
 
   this->AfterExecuteAndWriteOutputs();
-
+  m_Filters.clear();
   m_Chrono.Stop();
   return status;
 }
 
+
 /* Enable the use of an optional parameter. Returns the previous state */
 void Application::EnableParameter(std::string paramKey)
 {