Remove using std::XXX from headers

This is a bad practice to have using in headers because it pollutes the
namespace of any user of that header.
diff --git a/parameter/AreaConfiguration.cpp b/parameter/AreaConfiguration.cpp
index 3a3ead6..b3a556e 100644
--- a/parameter/AreaConfiguration.cpp
+++ b/parameter/AreaConfiguration.cpp
@@ -54,7 +54,7 @@
 }
 
 // Apply data to current
-bool CAreaConfiguration::restore(CParameterBlackboard* pMainBlackboard, bool bSync, list<string>* plstrError) const
+bool CAreaConfiguration::restore(CParameterBlackboard* pMainBlackboard, bool bSync, std::list<std::string>* plstrError) const
 {
     assert(_bValid);
 
diff --git a/parameter/AreaConfiguration.h b/parameter/AreaConfiguration.h
index 16c866e..3ea4718 100644
--- a/parameter/AreaConfiguration.h
+++ b/parameter/AreaConfiguration.h
@@ -33,8 +33,6 @@
 #include "BinaryStream.h"
 #include "SyncerSet.h"
 
-using namespace std;
-
 class CConfigurableElement;
 class CXmlElement;
 class CConfigurationAccessContext;
@@ -51,7 +49,7 @@
     void save(const CParameterBlackboard* pMainBlackboard);
 
     // Apply data to current
-    bool restore(CParameterBlackboard* pMainBlackboard, bool bSync, list<string>* plstrError) const;
+    bool restore(CParameterBlackboard* pMainBlackboard, bool bSync, std::list<std::string>* plstrError) const;
 
     // Ensure validity
     void validate(const CParameterBlackboard* pMainBlackboard);
diff --git a/parameter/ArrayParameter.cpp b/parameter/ArrayParameter.cpp
index a1184cd..c946392 100644
--- a/parameter/ArrayParameter.cpp
+++ b/parameter/ArrayParameter.cpp
@@ -38,6 +38,8 @@
 
 #define base CParameter
 
+using std::string;
+
 CArrayParameter::CArrayParameter(const string& strName, const CTypeElement* pTypeElement) : base(strName, pTypeElement)
 {
 }
@@ -141,31 +143,31 @@
 }
 
 // Boolean
-bool CArrayParameter::accessAsBooleanArray(vector<bool>& abValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CArrayParameter::accessAsBooleanArray(std::vector<bool>& abValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     return accessValues(abValues, bSet, parameterAccessContext);
 }
 
 // Integer
-bool CArrayParameter::accessAsIntegerArray(vector<uint32_t>& auiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CArrayParameter::accessAsIntegerArray(std::vector<uint32_t>& auiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     return accessValues(auiValues, bSet, parameterAccessContext);
 }
 
 // Signed Integer Access
-bool CArrayParameter::accessAsSignedIntegerArray(vector<int32_t>& aiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CArrayParameter::accessAsSignedIntegerArray(std::vector<int32_t>& aiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     return accessValues(aiValues, bSet, parameterAccessContext);
 }
 
 // Double Access
-bool CArrayParameter::accessAsDoubleArray(vector<double>& adValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CArrayParameter::accessAsDoubleArray(std::vector<double>& adValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     return accessValues(adValues, bSet, parameterAccessContext);
 }
 
 // String Access
-bool CArrayParameter::accessAsStringArray(vector<string>& astrValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CArrayParameter::accessAsStringArray(std::vector<string>& astrValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     return accessValues(astrValues, bSet, parameterAccessContext);
 }
@@ -215,7 +217,7 @@
     if (pStrChildName) {
 
         // Check index is numeric
-        istringstream iss(*pStrChildName);
+	std::istringstream iss(*pStrChildName);
 
         iss >> uiIndex;
 
@@ -227,7 +229,7 @@
         }
 
         if (uiIndex >= getArrayLength()) {
-            ostringstream oss;
+	    std::ostringstream oss;
 
             oss << "Provided index out of range (max is " << getArrayLength() - 1 << ")";
 
@@ -257,7 +259,7 @@
     // Deal with value(s)
     Tokenizer tok(strValue, DEFAULT_DELIMITER + ",");
 
-    vector<string> astrValues = tok.split();
+    std::vector<string> astrValues = tok.split();
     uint32_t uiNbValues = astrValues.size();
 
     // Check number of provided values
@@ -322,7 +324,7 @@
 
 // Generic Access
 template <typename type>
-bool CArrayParameter::accessValues(vector<type>& values, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CArrayParameter::accessValues(std::vector<type>& values, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     if (bSet) {
 
@@ -349,7 +351,7 @@
 }
 
 template <typename type>
-bool CArrayParameter::setValues(const vector<type>& values, CParameterAccessContext& parameterAccessContext) const
+bool CArrayParameter::setValues(const std::vector<type>& values, CParameterAccessContext& parameterAccessContext) const
 {
     uint32_t uiNbValues = getArrayLength();
     uint32_t uiValueIndex;
@@ -373,7 +375,7 @@
 }
 
 template <typename type>
-bool CArrayParameter::getValues(vector<type>& values, CParameterAccessContext& parameterAccessContext) const
+bool CArrayParameter::getValues(std::vector<type>& values, CParameterAccessContext& parameterAccessContext) const
 {
     uint32_t uiNbValues = getArrayLength();
     uint32_t uiValueIndex;
diff --git a/parameter/ArrayParameter.h b/parameter/ArrayParameter.h
index 09989b6..bdc5632 100644
--- a/parameter/ArrayParameter.h
+++ b/parameter/ArrayParameter.h
@@ -34,7 +34,7 @@
 class CArrayParameter : public CParameter
 {
 public:
-    CArrayParameter(const string& strName, const CTypeElement* pTypeElement);
+    CArrayParameter(const std::string& strName, const CTypeElement* pTypeElement);
 
     // Instantiation, allocation
     virtual uint32_t getFootPrint() const;
@@ -44,43 +44,43 @@
 
     // Value access
     // Boolean
-    virtual bool accessAsBooleanArray(vector<bool>& abValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessAsBooleanArray(std::vector<bool>& abValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
     // Integer
-    virtual bool accessAsIntegerArray(vector<uint32_t>& auiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessAsIntegerArray(std::vector<uint32_t>& auiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
     // Signed Integer Access
-    virtual bool accessAsSignedIntegerArray(vector<int32_t>& aiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessAsSignedIntegerArray(std::vector<int32_t>& aiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
     // Double Access
-    virtual bool accessAsDoubleArray(vector<double>& adValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessAsDoubleArray(std::vector<double>& adValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
     // String Access
-    virtual bool accessAsStringArray(vector<string>& astrValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessAsStringArray(std::vector<std::string>& astrValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
 
 protected:
     // User set/get
-    virtual bool accessValue(CPathNavigator& pathNavigator, string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
-    virtual void logValue(string& strValue, CErrorContext& errorContext) const;
+    virtual bool accessValue(CPathNavigator& pathNavigator, std::string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual void logValue(std::string& strValue, CErrorContext& errorContext) const;
     // Used for simulation and virtual subsystems
     virtual void setDefaultValues(CParameterAccessContext& parameterAccessContext) const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 private:
     // Array length
     uint32_t getArrayLength() const;
     // Common set value processing
-    bool setValues(uint32_t uiStartIndex, uint32_t uiBaseOffset, const string& strValue, CParameterAccessContext& parameterAccessContext) const;
+    bool setValues(uint32_t uiStartIndex, uint32_t uiBaseOffset, const std::string& strValue, CParameterAccessContext& parameterAccessContext) const;
     // Log / get values common
-    void getValues(uint32_t uiBaseOffset, string& strValues, CParameterAccessContext& parameterAccessContext) const;
+    void getValues(uint32_t uiBaseOffset, std::string& strValues, CParameterAccessContext& parameterAccessContext) const;
     // Index retrieval from user set/get request
     bool getIndex(CPathNavigator& pathNavigator, uint32_t& uiIndex, CParameterAccessContext& parameterAccessContext) const;
 
     /// Value access
     // Generic Access
     template <typename type>
-    bool accessValues(vector<type>& values, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    bool accessValues(std::vector<type>& values, bool bSet, CParameterAccessContext& parameterAccessContext) const;
     template <typename type>
-    bool setValues(const vector<type>& values, CParameterAccessContext& parameterAccessContext) const;
+    bool setValues(const std::vector<type>& values, CParameterAccessContext& parameterAccessContext) const;
     template <typename type>
-    bool getValues(vector<type>& values, CParameterAccessContext& parameterAccessContext) const;
+    bool getValues(std::vector<type>& values, CParameterAccessContext& parameterAccessContext) const;
     template <typename type>
     bool doSet(type value, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
     template <typename type>
diff --git a/parameter/AutoLog.cpp b/parameter/AutoLog.cpp
index b34bc1c..ff7151a 100644
--- a/parameter/AutoLog.cpp
+++ b/parameter/AutoLog.cpp
@@ -29,6 +29,8 @@
  */
 #include "AutoLog.h"
 
+using std::string;
+
 CAutoLog::CAutoLog(const CElement* pElement, const string& strContext, bool bLogOn)
     : _pElement(pElement), _strContext(strContext), _bLogOn(bLogOn)
 {
diff --git a/parameter/AutoLog.h b/parameter/AutoLog.h
index 5e63402..0454514 100644
--- a/parameter/AutoLog.h
+++ b/parameter/AutoLog.h
@@ -31,10 +31,12 @@
 
 #include "Element.h"
 
+#include <string>
+
 class CAutoLog
 {
 public:
-    CAutoLog(const CElement* pElement, const string& strContext, bool bLogOn = true);
+    CAutoLog(const CElement* pElement, const std::string& strContext, bool bLogOn = true);
     ~CAutoLog();
 
 private:
@@ -43,7 +45,7 @@
     // Logger element
     const CElement* _pElement;
     // Context
-    string _strContext;
+    std::string _strContext;
     // Log on
     bool _bLogOn;
 };
diff --git a/parameter/BackSynchronizer.h b/parameter/BackSynchronizer.h
index 9e5ad9e..0d6fcb5 100644
--- a/parameter/BackSynchronizer.h
+++ b/parameter/BackSynchronizer.h
@@ -31,9 +31,7 @@
 
 #include "ConfigurableElementAggregator.h"
 #include "ConfigurableElement.h"
-#include <string>
-
-using namespace std;
+#include <list>
 
 class CParameterBlackboard;
 
@@ -52,8 +50,8 @@
     virtual ~CBackSynchronizer() {}
 
 protected:
-    // Aggegate list
-    list<const CConfigurableElement*> _needingBackSyncList;
+    // Aggregate list
+    std::list<const CConfigurableElement*> _needingBackSyncList;
 
 private:
     // Aggegator
diff --git a/parameter/BaseParameter.cpp b/parameter/BaseParameter.cpp
index 078c9b2..07314bd 100644
--- a/parameter/BaseParameter.cpp
+++ b/parameter/BaseParameter.cpp
@@ -36,6 +36,8 @@
 
 #define base CInstanceConfigurableElement
 
+using std::string;
+
 CBaseParameter::CBaseParameter(const string& strName, const CTypeElement* pTypeElement) : base(strName, pTypeElement)
 {
 }
@@ -95,7 +97,7 @@
     return false;
 }
 
-bool CBaseParameter::accessAsBooleanArray(vector<bool>& abValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CBaseParameter::accessAsBooleanArray(std::vector<bool>& abValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     (void)abValues;
     (void)bSet;
@@ -116,7 +118,7 @@
     return false;
 }
 
-bool CBaseParameter::accessAsIntegerArray(vector<uint32_t>& auiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CBaseParameter::accessAsIntegerArray(std::vector<uint32_t>& auiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     (void)auiValues;
     (void)bSet;
@@ -137,7 +139,7 @@
     return false;
 }
 
-bool CBaseParameter::accessAsSignedIntegerArray(vector<int32_t>& aiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CBaseParameter::accessAsSignedIntegerArray(std::vector<int32_t>& aiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     (void)aiValues;
     (void)bSet;
@@ -158,7 +160,7 @@
     return false;
 }
 
-bool CBaseParameter::accessAsDoubleArray(vector<double>& adValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CBaseParameter::accessAsDoubleArray(std::vector<double>& adValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     (void)adValues;
     (void)bSet;
@@ -194,7 +196,7 @@
     return true;
 }
 
-bool CBaseParameter::accessAsStringArray(vector<string>& astrValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CBaseParameter::accessAsStringArray(std::vector<string>& astrValues, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
     (void)astrValues;
     (void)bSet;
diff --git a/parameter/BaseParameter.h b/parameter/BaseParameter.h
index 3b1296e..848d638 100644
--- a/parameter/BaseParameter.h
+++ b/parameter/BaseParameter.h
@@ -40,7 +40,7 @@
 class CBaseParameter : public CInstanceConfigurableElement
 {
 public:
-    CBaseParameter(const string& strName, const CTypeElement* pTypeElement);
+    CBaseParameter(const std::string& strName, const CTypeElement* pTypeElement);
 
     // XML configuration settings parsing/composing
     virtual bool serializeXmlSettings(CXmlElement& xmlConfigurationSettingsElementContent, CConfigurationAccessContext& configurationAccessContext) const;
@@ -51,35 +51,35 @@
     /// Value access
     // Boolean access
     virtual bool accessAsBoolean(bool& bValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
-    virtual bool accessAsBooleanArray(vector<bool>& abValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessAsBooleanArray(std::vector<bool>& abValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
 
     // Integer Access
     virtual bool accessAsInteger(uint32_t& uiValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
-    virtual bool accessAsIntegerArray(vector<uint32_t>& auiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessAsIntegerArray(std::vector<uint32_t>& auiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
 
     // Signed Integer Access
     virtual bool accessAsSignedInteger(int32_t& iValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
-    virtual bool accessAsSignedIntegerArray(vector<int32_t>& aiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessAsSignedIntegerArray(std::vector<int32_t>& aiValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
 
     // Double Access
     virtual bool accessAsDouble(double& dValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
-    virtual bool accessAsDoubleArray(vector<double>& adValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessAsDoubleArray(std::vector<double>& adValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
 
     // String Access
-    bool accessAsString(string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
-    virtual bool accessAsStringArray(vector<string>& astrValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    bool accessAsString(std::string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessAsStringArray(std::vector<std::string>& astrValues, bool bSet, CParameterAccessContext& parameterAccessContext) const;
 
     // From IXmlSource
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
 
 protected:
     // Parameter Access
-    virtual bool accessValue(CPathNavigator& pathNavigator, string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
-    virtual void logValue(string& strValue, CErrorContext& errorContext) const;
+    virtual bool accessValue(CPathNavigator& pathNavigator, std::string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual void logValue(std::string& strValue, CErrorContext& errorContext) const;
 
     // Actual value access (to be implemented by derived)
-    virtual bool doSetValue(const string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const = 0;
-    virtual void doGetValue(string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const = 0;
+    virtual bool doSetValue(const std::string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const = 0;
+    virtual void doGetValue(std::string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const = 0;
 
     /**
      * Append the parameter path to the error.
diff --git a/parameter/BinarySerializableElement.cpp b/parameter/BinarySerializableElement.cpp
index cbd6ee2..5beed15 100644
--- a/parameter/BinarySerializableElement.cpp
+++ b/parameter/BinarySerializableElement.cpp
@@ -31,6 +31,8 @@
 
 #define base CElement
 
+using std::string;
+
 CBinarySerializableElement::CBinarySerializableElement(const string& strName) : base(strName)
 {
 }
diff --git a/parameter/BinarySerializableElement.h b/parameter/BinarySerializableElement.h
index 3c46035..58f5d1f 100644
--- a/parameter/BinarySerializableElement.h
+++ b/parameter/BinarySerializableElement.h
@@ -32,10 +32,12 @@
 #include "Element.h"
 #include "BinaryStream.h"
 
+#include <string>
+
 class CBinarySerializableElement : public CElement
 {
 public:
-    CBinarySerializableElement(const string& strName = "");
+    CBinarySerializableElement(const std::string& strName = "");
 
     // Serialization
     virtual void binarySerialize(CBinaryStream& binaryStream);
diff --git a/parameter/BinaryStream.h b/parameter/BinaryStream.h
index dd1094a..a9a0447 100644
--- a/parameter/BinaryStream.h
+++ b/parameter/BinaryStream.h
@@ -33,16 +33,14 @@
 #include <string>
 #include <fstream>
 
-using namespace std;
-
 class CBinaryStream
 {
 public:
-    CBinaryStream(const string& strFileName, bool bOut, uint32_t uiDataSize, uint8_t uiStructureChecksum);
+    CBinaryStream(const std::string& strFileName, bool bOut, uint32_t uiDataSize, uint8_t uiStructureChecksum);
     ~CBinaryStream();
 
     // Open close
-    bool open(string& strError);
+    bool open(std::string& strError);
     void close();
 
     // Seek
@@ -61,7 +59,7 @@
     uint8_t computeChecksum() const;
 
     // File name
-    string _strFileName;
+    std::string _strFileName;
     // Serialization direction
     bool _bOut;
     // Data size
@@ -71,7 +69,7 @@
     // Read/Write data
     uint8_t* _puiData;
     // File
-    fstream _fileStream;
+    std::fstream _fileStream;
     // Ops in faile
     uint32_t _uiPos;
     // File state
diff --git a/parameter/BitParameter.cpp b/parameter/BitParameter.cpp
index d239ed8..fb853e4 100644
--- a/parameter/BitParameter.cpp
+++ b/parameter/BitParameter.cpp
@@ -37,6 +37,8 @@
 
 #define base CBaseParameter
 
+using std::string;
+
 CBitParameter::CBitParameter(const string& strName, const CTypeElement* pTypeElement) : base(strName, pTypeElement)
 {
 }
diff --git a/parameter/BitParameter.h b/parameter/BitParameter.h
index 76a9cf2..436f321 100644
--- a/parameter/BitParameter.h
+++ b/parameter/BitParameter.h
@@ -36,7 +36,7 @@
 class CBitParameter : public CBaseParameter
 {
 public:
-    CBitParameter(const string& strName, const CTypeElement* pTypeElement);
+    CBitParameter(const std::string& strName, const CTypeElement* pTypeElement);
 
     // Instantiation, allocation
     virtual uint32_t getFootPrint() const;
@@ -62,8 +62,8 @@
 private:
 
     // String Access
-    virtual bool doSetValue(const string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
-    virtual void doGetValue(string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool doSetValue(const std::string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
+    virtual void doGetValue(std::string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
 
     // Generic Access
     template <typename type>
diff --git a/parameter/BitParameterBlock.cpp b/parameter/BitParameterBlock.cpp
index db24725..a394aab 100644
--- a/parameter/BitParameterBlock.cpp
+++ b/parameter/BitParameterBlock.cpp
@@ -34,6 +34,8 @@
 
 #define base CInstanceConfigurableElement
 
+using std::string;
+
 CBitParameterBlock::CBitParameterBlock(const string& strName, const CTypeElement* pTypeElement) : base(strName, pTypeElement)
 {
 }
diff --git a/parameter/BitParameterBlock.h b/parameter/BitParameterBlock.h
index f8ae141..f965b30 100644
--- a/parameter/BitParameterBlock.h
+++ b/parameter/BitParameterBlock.h
@@ -34,7 +34,7 @@
 class CBitParameterBlock : public CInstanceConfigurableElement
 {
 public:
-    CBitParameterBlock(const string& strName, const CTypeElement* pTypeElement);
+    CBitParameterBlock(const std::string& strName, const CTypeElement* pTypeElement);
 
     // Instantiation, allocation
     virtual uint32_t getFootPrint() const;
diff --git a/parameter/BitParameterBlockType.cpp b/parameter/BitParameterBlockType.cpp
index 0543c9f..2016b3b 100644
--- a/parameter/BitParameterBlockType.cpp
+++ b/parameter/BitParameterBlockType.cpp
@@ -32,6 +32,8 @@
 
 #define base CTypeElement
 
+using std::string;
+
 CBitParameterBlockType::CBitParameterBlockType(const string& strName) : base(strName), _uiSize(0)
 {
 }
diff --git a/parameter/BitParameterBlockType.h b/parameter/BitParameterBlockType.h
index 768661e..0808e94 100644
--- a/parameter/BitParameterBlockType.h
+++ b/parameter/BitParameterBlockType.h
@@ -31,10 +31,12 @@
 
 #include "TypeElement.h"
 
+#include <string>
+
 class CBitParameterBlockType : public CTypeElement
 {
 public:
-    CBitParameterBlockType(const string& strName);
+    CBitParameterBlockType(const std::string& strName);
 
     // Size
     uint32_t getSize() const;
@@ -46,7 +48,7 @@
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     virtual bool childrenAreDynamic() const;
     // Instantiation
diff --git a/parameter/BitParameterType.cpp b/parameter/BitParameterType.cpp
index 376b9db..2a400d4 100644
--- a/parameter/BitParameterType.cpp
+++ b/parameter/BitParameterType.cpp
@@ -36,6 +36,8 @@
 
 #define base CTypeElement
 
+using std::string;
+
 CBitParameterType::CBitParameterType(const string& strName) : base(strName), _uiBitPos(0), _uiBitSize(0), _uiMax(uint64_t(-1))
 {
 }
@@ -84,7 +86,7 @@
     if (_uiBitPos + _uiBitSize > uiParentBlockBitSize) {
 
         // Range exceeded
-        ostringstream strStream;
+	std::ostringstream strStream;
 
         strStream << "Pos and Size attributes inconsistent with maximum container element size (" << uiParentBlockBitSize << " bits) for " + getKind();
 
@@ -101,7 +103,7 @@
         if (_uiMax > getMaxEncodableValue()) {
 
             // Max value exceeded
-            ostringstream strStream;
+	    std::ostringstream strStream;
 
             strStream << "Max attribute inconsistent with maximum encodable size (" << getMaxEncodableValue() << ") for " + getKind();
 
@@ -130,13 +132,13 @@
     if (uiConvertedValue > _uiMax) {
 
         // Range exceeded
-        ostringstream strStream;
+	std::ostringstream strStream;
 
         strStream << "Value " << strValue << " standing out of admitted range [";
 
         if (bValueProvidedAsHexa) {
 
-            strStream << "0x0, " << "0x" << hex << uppercase;
+            strStream << "0x0, " << "0x" << std::hex << std::uppercase;
         } else {
 
             strStream << "0, ";
@@ -159,12 +161,12 @@
     uint64_t uiConvertedValue = (uiValue & getMask()) >> _uiBitPos;
 
     // Format
-    ostringstream strStream;
+    std::ostringstream strStream;
 
     // Take care of format
     if (parameterAccessContext.valueSpaceIsRaw() && parameterAccessContext.outputRawFormatIsHex()) {
 
-        strStream << "0x" << hex << uppercase;
+        strStream << "0x" << std::hex << std::uppercase;
     }
 
     strStream << uiConvertedValue;
diff --git a/parameter/BitParameterType.h b/parameter/BitParameterType.h
index 2122978..8f147e6 100644
--- a/parameter/BitParameterType.h
+++ b/parameter/BitParameterType.h
@@ -33,12 +33,14 @@
 
 #include "TypeElement.h"
 
+#include <string>
+
 class CParameterAccessContext;
 
 class CBitParameterType : public CTypeElement
 {
 public:
-    CBitParameterType(const string& strName);
+    CBitParameterType(const std::string& strName);
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
@@ -47,8 +49,8 @@
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
     /// Conversion
     // String
-    bool toBlackboard(const string& strValue, uint64_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
-    void fromBlackboard(string& strValue, const uint64_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    bool toBlackboard(const std::string& strValue, uint64_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    void fromBlackboard(std::string& strValue, const uint64_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     // Integer
     bool toBlackboard(uint64_t uiUserValue, uint64_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     void fromBlackboard(uint64_t& uiUserValue, uint64_t uiValue, CParameterAccessContext& parameterAccessContext) const;
@@ -59,10 +61,10 @@
     uint32_t getBitSize() const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
     /**
      * Get the position of the bit within the bit parameter block.
diff --git a/parameter/BooleanParameterType.cpp b/parameter/BooleanParameterType.cpp
index 3788108..87088ef 100644
--- a/parameter/BooleanParameterType.cpp
+++ b/parameter/BooleanParameterType.cpp
@@ -32,7 +32,7 @@
 
 #define base CParameterType
 
-CBooleanParameterType::CBooleanParameterType(const string& strName) : base(strName)
+CBooleanParameterType::CBooleanParameterType(const std::string& strName) : base(strName)
 {
     setSize(1);
 }
@@ -41,13 +41,13 @@
 {
 }
 
-string CBooleanParameterType::getKind() const
+std::string CBooleanParameterType::getKind() const
 {
     return "BooleanParameter";
 }
 
 // Tuning interface
-bool CBooleanParameterType::toBlackboard(const string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const
+bool CBooleanParameterType::toBlackboard(const std::string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const
 {
     if (strValue == "1" || strValue == "0x1") {
 
@@ -76,7 +76,7 @@
     return true;
 }
 
-bool CBooleanParameterType::fromBlackboard(string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const
+bool CBooleanParameterType::fromBlackboard(std::string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const
 {
     strValue = uiValue ? "1" : "0";
 
diff --git a/parameter/BooleanParameterType.h b/parameter/BooleanParameterType.h
index 0bb87e6..2f95eb7 100644
--- a/parameter/BooleanParameterType.h
+++ b/parameter/BooleanParameterType.h
@@ -31,19 +31,21 @@
 
 #include "ParameterType.h"
 
+#include <string>
+
 class CBooleanParameterType : public CParameterType
 {
 public:
-    CBooleanParameterType(const string& strName);
+    CBooleanParameterType(const std::string& strName);
     virtual ~CBooleanParameterType();
 
     // Kind
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
     /// Conversion
     // String
-    virtual bool toBlackboard(const string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
-    virtual bool fromBlackboard(string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool toBlackboard(const std::string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool fromBlackboard(std::string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     // Boolean
     virtual bool toBlackboard(bool bUserValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     virtual bool fromBlackboard(bool& bUserValue, uint32_t uiValue, CParameterAccessContext& parameterAccessContext) const;
diff --git a/parameter/Component.h b/parameter/Component.h
index 2950912..4ec1f71 100644
--- a/parameter/Component.h
+++ b/parameter/Component.h
@@ -31,10 +31,12 @@
 
 #include "InstanceConfigurableElement.h"
 
+#include <string>
+
 class CComponent : public CInstanceConfigurableElement
 {
 public:
-    CComponent(const string& strName, const CTypeElement* pTypeElement) : CInstanceConfigurableElement(strName, pTypeElement)
+    CComponent(const std::string& strName, const CTypeElement* pTypeElement) : CInstanceConfigurableElement(strName, pTypeElement)
     {
     }
 
diff --git a/parameter/ComponentInstance.cpp b/parameter/ComponentInstance.cpp
index 71fea71..f26a383 100644
--- a/parameter/ComponentInstance.cpp
+++ b/parameter/ComponentInstance.cpp
@@ -35,11 +35,11 @@
 
 #define base CTypeElement
 
-CComponentInstance::CComponentInstance(const string& strName) : base(strName), _pComponentType(NULL)
+CComponentInstance::CComponentInstance(const std::string& strName) : base(strName), _pComponentType(NULL)
 {
 }
 
-string CComponentInstance::getKind() const
+std::string CComponentInstance::getKind() const
 {
     return "Component";
 }
@@ -49,7 +49,7 @@
     return true;
 }
 
-bool CComponentInstance::getMappingData(const string& strKey, const string*& pStrValue) const
+bool CComponentInstance::getMappingData(const std::string& strKey, const std::string*& pStrValue) const
 {
     // Try myself first then associated component type
     return base::getMappingData(strKey, pStrValue) || (_pComponentType && _pComponentType->getMappingData(strKey, pStrValue));
@@ -61,10 +61,10 @@
     return base::hasMappingData() || (_pComponentType && _pComponentType->hasMappingData());
 }
 
-string CComponentInstance::getFormattedMapping() const
+std::string CComponentInstance::getFormattedMapping() const
 {
     // Try myself first then associated component type
-    string strValue = base::getFormattedMapping();
+    std::string strValue = base::getFormattedMapping();
     if (_pComponentType) {
 
         strValue += _pComponentType->getFormattedMapping();
@@ -80,7 +80,7 @@
 
     const CComponentLibrary* pComponentLibrary = parameterBuildContext.getComponentLibrary();
 
-    string strComponentType = xmlElement.getAttributeString("Type");
+    std::string strComponentType = xmlElement.getAttributeString("Type");
 
     _pComponentType = pComponentLibrary->getComponentType(strComponentType);
 
diff --git a/parameter/ComponentInstance.h b/parameter/ComponentInstance.h
index 934df34..0c49a54 100644
--- a/parameter/ComponentInstance.h
+++ b/parameter/ComponentInstance.h
@@ -31,28 +31,30 @@
 
 #include "TypeElement.h"
 
+#include <string>
+
 class CComponentType;
 
 class CComponentInstance : public CTypeElement
 {
 public:
-    CComponentInstance(const string& strName);
+    CComponentInstance(const std::string& strName);
 
     // Mapping info
-    virtual bool getMappingData(const string& strKey, const string*& pStrValue) const;
+    virtual bool getMappingData(const std::string& strKey, const std::string*& pStrValue) const;
     virtual bool hasMappingData() const;
     /**
      * Returns the mapping associated to the current TypeElement instance
      *
-     * @return A string containing the mapping as a comma separated key value pairs
+     * @return A std::string containing the mapping as a comma separated key value pairs
      */
-    virtual string getFormattedMapping() const;
+    virtual std::string getFormattedMapping() const;
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     virtual bool childrenAreDynamic() const;
     virtual CInstanceConfigurableElement* doInstantiate() const;
diff --git a/parameter/ComponentLibrary.cpp b/parameter/ComponentLibrary.cpp
index dc06730..1c6daa2 100644
--- a/parameter/ComponentLibrary.cpp
+++ b/parameter/ComponentLibrary.cpp
@@ -40,12 +40,12 @@
     return true;
 }
 
-string CComponentLibrary::getKind() const
+std::string CComponentLibrary::getKind() const
 {
     return "ComponentLibrary";
 }
 
-const CComponentType* CComponentLibrary::getComponentType(const string& strName) const
+const CComponentType* CComponentLibrary::getComponentType(const std::string& strName) const
 {
     return static_cast<const CComponentType*>(findChild(strName));
 }
diff --git a/parameter/ComponentLibrary.h b/parameter/ComponentLibrary.h
index 0fb7574..f1445c3 100644
--- a/parameter/ComponentLibrary.h
+++ b/parameter/ComponentLibrary.h
@@ -33,6 +33,8 @@
 #include "Element.h"
 #include "Component.h"
 
+#include <string>
+
 class CComponentType;
 
 class CComponentLibrary : public CElement
@@ -40,9 +42,9 @@
 public:
     CComponentLibrary();
 
-    const CComponentType* getComponentType(const string& strName) const;
+    const CComponentType* getComponentType(const std::string& strName) const;
 
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
diff --git a/parameter/ComponentType.cpp b/parameter/ComponentType.cpp
index fd54c99..ee71596 100644
--- a/parameter/ComponentType.cpp
+++ b/parameter/ComponentType.cpp
@@ -35,11 +35,11 @@
 
 #define base CTypeElement
 
-CComponentType::CComponentType(const string& strName) : base(strName), _pExtendsComponentType(NULL)
+CComponentType::CComponentType(const std::string& strName) : base(strName), _pExtendsComponentType(NULL)
 {
 }
 
-string CComponentType::getKind() const
+std::string CComponentType::getKind() const
 {
     return "ComponentType";
 }
@@ -49,7 +49,7 @@
     return true;
 }
 
-bool CComponentType::getMappingData(const string& strKey, const string*& pStrValue) const
+bool CComponentType::getMappingData(const std::string& strKey, const std::string*& pStrValue) const
 {
     // Try myself first then extended component type
     return base::getMappingData(strKey, pStrValue) || (_pExtendsComponentType && _pExtendsComponentType->getMappingData(strKey, pStrValue));
@@ -61,10 +61,10 @@
     return base::hasMappingData() || (_pExtendsComponentType && _pExtendsComponentType->hasMappingData());
 }
 
-string CComponentType::getFormattedMapping() const
+std::string CComponentType::getFormattedMapping() const
 {
     // Try myself first then associated component type
-    string strValue = base::getFormattedMapping();
+    std::string strValue = base::getFormattedMapping();
     if (_pExtendsComponentType) {
 
         strValue += _pExtendsComponentType->getFormattedMapping();
@@ -89,7 +89,7 @@
     // Check for Extends attribute (extensions will be populated after and not before)
     if (xmlElement.hasAttribute("Extends")) {
 
-        string strExtendsType = xmlElement.getAttributeString("Extends");
+        std::string strExtendsType = xmlElement.getAttributeString("Extends");
 
         _pExtendsComponentType = pComponentLibrary->getComponentType(strExtendsType);
 
diff --git a/parameter/ComponentType.h b/parameter/ComponentType.h
index a25a120..3a34c92 100644
--- a/parameter/ComponentType.h
+++ b/parameter/ComponentType.h
@@ -31,30 +31,32 @@
 
 #include "TypeElement.h"
 
+#include <string>
+
 class CInstanceConfigurableElement;
 
 class CComponentType : public CTypeElement
 {
 public:
-    CComponentType(const string& strName);
+    CComponentType(const std::string& strName);
 
     // Object creation
     virtual void populate(CElement* pElement) const;
 
     // Mapping info
-    virtual bool getMappingData(const string& strKey, const string*& pStrValue) const;
+    virtual bool getMappingData(const std::string& strKey, const std::string*& pStrValue) const;
     virtual bool hasMappingData() const;
     /**
      * Returns the mapping associated to the current TypeElement instance
      *
-     * @return A string containing the mapping as a comma separated key value pairs
+     * @return A std::string containing the mapping as a comma separated key value pairs
      */
-    virtual string getFormattedMapping() const;
+    virtual std::string getFormattedMapping() const;
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     // CElement
     virtual bool childrenAreDynamic() const;
diff --git a/parameter/CompoundRule.cpp b/parameter/CompoundRule.cpp
index d9172ee..9fc2674 100644
--- a/parameter/CompoundRule.cpp
+++ b/parameter/CompoundRule.cpp
@@ -32,6 +32,8 @@
 
 #define base CRule
 
+using std::string;
+
 // Types
 const char* CCompoundRule::_apcTypes[2] = {
     "Any",
diff --git a/parameter/CompoundRule.h b/parameter/CompoundRule.h
index aaca881..5cac53b 100644
--- a/parameter/CompoundRule.h
+++ b/parameter/CompoundRule.h
@@ -31,16 +31,18 @@
 
 #include "Rule.h"
 
+#include <string>
+
 class CCompoundRule : public CRule
 {
 public:
     CCompoundRule();
 
     // Parse
-    virtual bool parse(CRuleParser& ruleParser, string& strError);
+    virtual bool parse(CRuleParser& ruleParser, std::string& strError);
 
     // Dump
-    virtual void dump(string& strResult) const;
+    virtual void dump(std::string& strResult) const;
 
     // Rule check
     virtual bool matches() const;
@@ -52,10 +54,10 @@
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
 
     // Class kind
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 protected:
     // Content dumping
-    virtual void logValue(string& strValue, CErrorContext& errorContext) const;
+    virtual void logValue(std::string& strValue, CErrorContext& errorContext) const;
 private:
     // Returns true if children dynamic creation is to be dealt with
     virtual bool childrenAreDynamic() const;
diff --git a/parameter/ConfigurableDomain.cpp b/parameter/ConfigurableDomain.cpp
index ec0c213..61a8d5b 100644
--- a/parameter/ConfigurableDomain.cpp
+++ b/parameter/ConfigurableDomain.cpp
@@ -36,6 +36,8 @@
 
 #define base CBinarySerializableElement
 
+using std::string;
+
 CConfigurableDomain::CConfigurableDomain(const string& strName) : base(strName), _bSequenceAware(false), _pLastAppliedConfiguration(NULL)
 {
 }
@@ -667,7 +669,7 @@
     return pDomainConfiguration->rename(strNewName, strError);
 }
 
-bool CConfigurableDomain::restoreConfiguration(const string& strName, CParameterBlackboard* pMainBlackboard, bool bAutoSync, list<string>& lstrError) const
+bool CConfigurableDomain::restoreConfiguration(const string& strName, CParameterBlackboard* pMainBlackboard, bool bAutoSync, std::list<string>& lstrError) const
 {
     string strError;
 
@@ -711,7 +713,7 @@
     return true;
 }
 
-bool CConfigurableDomain::setElementSequence(const string& strConfiguration, const vector<string>& astrNewElementSequence, string& strError)
+bool CConfigurableDomain::setElementSequence(const string& strConfiguration, const std::vector<string>& astrNewElementSequence, string& strError)
 {
     // Find Domain configuration
     CDomainConfiguration* pDomainConfiguration = findConfiguration(strConfiguration, strError);
@@ -944,7 +946,7 @@
 }
 
 // Gather set of configurable elements
-void CConfigurableDomain::gatherConfigurableElements(set<const CConfigurableElement*>& configurableElementSet) const
+void CConfigurableDomain::gatherConfigurableElements(std::set<const CConfigurableElement*>& configurableElementSet) const
 {
     // Insert all configurable elements
     configurableElementSet.insert(_configurableElementList.begin(), _configurableElementList.end());
@@ -969,7 +971,7 @@
 // Merge any descended configurable element to this one with this one
 void CConfigurableDomain::mergeAlreadyAssociatedDescendantConfigurableElements(CConfigurableElement* pNewConfigurableElement)
 {
-    list<CConfigurableElement*> mergedConfigurableElementList;
+    std::list<CConfigurableElement*> mergedConfigurableElementList;
 
     ConfigurableElementListIterator it;
 
diff --git a/parameter/ConfigurableDomain.h b/parameter/ConfigurableDomain.h
index b58efb5..e91a5cb 100644
--- a/parameter/ConfigurableDomain.h
+++ b/parameter/ConfigurableDomain.h
@@ -34,6 +34,7 @@
 #include <list>
 #include <set>
 #include <map>
+#include <string>
 
 class CConfigurableElement;
 class CDomainConfiguration;
@@ -42,10 +43,10 @@
 
 class CConfigurableDomain : public CBinarySerializableElement
 {
-    typedef list<CConfigurableElement*>::const_iterator ConfigurableElementListIterator;
-    typedef map<const CConfigurableElement*, CSyncerSet*>::const_iterator ConfigurableElementToSyncerSetMapIterator;
+    typedef std::list<CConfigurableElement*>::const_iterator ConfigurableElementListIterator;
+    typedef std::map<const CConfigurableElement*, CSyncerSet*>::const_iterator ConfigurableElementToSyncerSetMapIterator;
 public:
-    CConfigurableDomain(const string& strName);
+    CConfigurableDomain(const std::string& strName);
     virtual ~CConfigurableDomain();
 
     // Sequence awareness
@@ -53,40 +54,40 @@
     bool getSequenceAwareness() const;
 
     // Configuration Management
-    bool createConfiguration(const string& strName, const CParameterBlackboard* pMainBlackboard, string& strError);
-    bool deleteConfiguration(const string& strName, string& strError);
-    bool renameConfiguration(const string& strName, const string& strNewName, string& strError);
-    bool restoreConfiguration(const string& strName, CParameterBlackboard* pMainBlackboard, bool bAutoSync, list<string>& strError) const;
-    bool saveConfiguration(const string& strName, const CParameterBlackboard* pMainBlackboard, string& strError);
-    bool setElementSequence(const string& strConfiguration, const vector<string>& astrNewElementSequence, string& strError);
-    bool getElementSequence(const string& strConfiguration, string& strResult) const;
-    bool setApplicationRule(const string& strConfiguration, const string& strApplicationRule, const CSelectionCriteriaDefinition* pSelectionCriteriaDefinition, string& strError);
-    bool clearApplicationRule(const string& strConfiguration, string& strError);
-    bool getApplicationRule(const string& strConfiguration, string& strResult) const;
+    bool createConfiguration(const std::string& strName, const CParameterBlackboard* pMainBlackboard, std::string& strError);
+    bool deleteConfiguration(const std::string& strName, std::string& strError);
+    bool renameConfiguration(const std::string& strName, const std::string& strNewName, std::string& strError);
+    bool restoreConfiguration(const std::string& strName, CParameterBlackboard* pMainBlackboard, bool bAutoSync, std::list<std::string>& strError) const;
+    bool saveConfiguration(const std::string& strName, const CParameterBlackboard* pMainBlackboard, std::string& strError);
+    bool setElementSequence(const std::string& strConfiguration, const std::vector<std::string>& astrNewElementSequence, std::string& strError);
+    bool getElementSequence(const std::string& strConfiguration, std::string& strResult) const;
+    bool setApplicationRule(const std::string& strConfiguration, const std::string& strApplicationRule, const CSelectionCriteriaDefinition* pSelectionCriteriaDefinition, std::string& strError);
+    bool clearApplicationRule(const std::string& strConfiguration, std::string& strError);
+    bool getApplicationRule(const std::string& strConfiguration, std::string& strResult) const;
 
     // Last applied configuration name
-    string getLastAppliedConfigurationName() const;
+    std::string getLastAppliedConfigurationName() const;
 
     // Pending configuration name
-    string getPendingConfigurationName() const;
+    std::string getPendingConfigurationName() const;
 
     // Associated Configurable elements
-    void gatherConfigurableElements(set<const CConfigurableElement*>& configurableElementSet) const;
-    void listAssociatedToElements(string& strResult) const;
+    void gatherConfigurableElements(std::set<const CConfigurableElement*>& configurableElementSet) const;
+    void listAssociatedToElements(std::string& strResult) const;
 
     // Configurable elements association
-    bool addConfigurableElement(CConfigurableElement* pConfigurableElement, const CParameterBlackboard* pMainBlackboard, string& strError);
-    bool removeConfigurableElement(CConfigurableElement* pConfigurableElement, string& strError);
+    bool addConfigurableElement(CConfigurableElement* pConfigurableElement, const CParameterBlackboard* pMainBlackboard, std::string& strError);
+    bool removeConfigurableElement(CConfigurableElement* pConfigurableElement, std::string& strError);
 
     // Blackboard Configuration and Base Offset retrieval
-    CParameterBlackboard* findConfigurationBlackboard(const string& strConfiguration,
+    CParameterBlackboard* findConfigurationBlackboard(const std::string& strConfiguration,
                                                       const CConfigurableElement* pConfigurableElement,
                                                       uint32_t& uiBaseOffset,
                                                       bool& bIsLastApplied,
-                                                      string& strError) const;
+                                                      std::string& strError) const;
 
     // Domain splitting
-    bool split(CConfigurableElement* pConfigurableElement, string& strError);
+    bool split(CConfigurableElement* pConfigurableElement, std::string& strError);
 
     // Ensure validity on whole domain from main blackboard
     void validate(const CParameterBlackboard* pMainBlackboard);
@@ -104,11 +105,11 @@
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
 
     // Class kind
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
 protected:
     // Content dumping
-    virtual void logValue(string& strValue, CErrorContext& errorContext) const;
+    virtual void logValue(std::string& strValue, CErrorContext& errorContext) const;
 
 private:
     // Get pending configuration
@@ -164,14 +165,14 @@
     CSyncerSet* getSyncerSet(const CConfigurableElement* pConfigurableElement) const;
 
     // Configuration retrieval
-    CDomainConfiguration* findConfiguration(const string& strConfiguration, string& strError);
-    const CDomainConfiguration* findConfiguration(const string& strConfiguration, string& strError) const;
+    CDomainConfiguration* findConfiguration(const std::string& strConfiguration, std::string& strError);
+    const CDomainConfiguration* findConfiguration(const std::string& strConfiguration, std::string& strError) const;
 
     // Configurable elements
-    list<CConfigurableElement*> _configurableElementList;
+    std::list<CConfigurableElement*> _configurableElementList;
 
     // Associated syncer sets
-    map<const CConfigurableElement*, CSyncerSet*> _configurableElementToSyncerSetMap;
+    std::map<const CConfigurableElement*, CSyncerSet*> _configurableElementToSyncerSetMap;
 
     // Sequence awareness
     bool _bSequenceAware;
diff --git a/parameter/ConfigurableDomains.cpp b/parameter/ConfigurableDomains.cpp
index 48975d6..f11a155 100644
--- a/parameter/ConfigurableDomains.cpp
+++ b/parameter/ConfigurableDomains.cpp
@@ -36,6 +36,8 @@
 
 #define base CBinarySerializableElement
 
+using std::string;
+
 CConfigurableDomains::CConfigurableDomains()
 {
 }
@@ -284,13 +286,13 @@
 {
     strResult = "\n";
 
-    set<const CConfigurableElement*> configurableElementSet;
+    std::set<const CConfigurableElement*> configurableElementSet;
 
     // Get all owned configurable elements
     gatherAllOwnedConfigurableElements(configurableElementSet);
 
     // Fill result
-    set<const CConfigurableElement*>::const_iterator it;
+    std::set<const CConfigurableElement*>::const_iterator it;
 
     for (it = configurableElementSet.begin(); it != configurableElementSet.end(); ++it) {
 
@@ -308,13 +310,13 @@
 {
     strResult = "\n";
 
-    set<const CConfigurableElement*> configurableElementSet;
+    std::set<const CConfigurableElement*> configurableElementSet;
 
     // Get all owned configurable elements
     gatherAllOwnedConfigurableElements(configurableElementSet);
 
     // Fill result
-    set<const CConfigurableElement*>::const_iterator it;
+    std::set<const CConfigurableElement*>::const_iterator it;
 
     for (it = configurableElementSet.begin(); it != configurableElementSet.end(); ++it) {
 
@@ -356,7 +358,7 @@
 }
 
 // Gather configurable elements owned by any domain
-void CConfigurableDomains::gatherAllOwnedConfigurableElements(set<const CConfigurableElement*>& configurableElementSet) const
+void CConfigurableDomains::gatherAllOwnedConfigurableElements(std::set<const CConfigurableElement*>& configurableElementSet) const
 {
     // Delegate to domains
     uint32_t uiChild;
@@ -371,7 +373,7 @@
 }
 
 // Config restore
-bool CConfigurableDomains::restoreConfiguration(const string& strDomain, const string& strConfiguration, CParameterBlackboard* pMainBlackboard, bool bAutoSync, list<string>& lstrError) const
+bool CConfigurableDomains::restoreConfiguration(const string& strDomain, const string& strConfiguration, CParameterBlackboard* pMainBlackboard, bool bAutoSync, std::list<string>& lstrError) const
 {
     string strError;
     // Find domain
@@ -400,7 +402,7 @@
     return pConfigurableDomain->saveConfiguration(strConfiguration, pMainBlackboard, strError);
 }
 
-bool CConfigurableDomains::setElementSequence(const string& strDomain, const string& strConfiguration, const vector<string>& astrNewElementSequence, string& strError)
+bool CConfigurableDomains::setElementSequence(const string& strDomain, const string& strConfiguration, const std::vector<string>& astrNewElementSequence, string& strError)
 {
     // Find domain
     CConfigurableDomain* pConfigurableDomain = findConfigurableDomain(strDomain, strError);
diff --git a/parameter/ConfigurableDomains.h b/parameter/ConfigurableDomains.h
index 604b821..01c94ac 100644
--- a/parameter/ConfigurableDomains.h
+++ b/parameter/ConfigurableDomains.h
@@ -32,6 +32,7 @@
 #include "BinarySerializableElement.h"
 #include <set>
 #include <list>
+#include <string>
 
 
 class CParameterBlackboard;
@@ -47,47 +48,47 @@
 
     // Configuration/Domains handling
     /// Domains
-    bool createDomain(const string& strName, string& strError);
-    bool deleteDomain(const string& strName, string& strError);
+    bool createDomain(const std::string& strName, std::string& strError);
+    bool deleteDomain(const std::string& strName, std::string& strError);
     void deleteAllDomains();
-    bool renameDomain(const string& strName, const string& strNewName, string& strError);
-    bool setSequenceAwareness(const string& strDomain, bool bSequenceAware, string& strError);
-    bool getSequenceAwareness(const string& strDomain, bool& bSequenceAware, string& strError) const;
-    bool listDomainElements(const string& strDomain, string& strResult) const;
-    bool split(const string& strDomain, CConfigurableElement* pConfigurableElement, string& strError);
-    void listAssociatedElements(string& strResult) const;
-    void listConflictingElements(string& strResult) const;
-    void listDomains(string& strResult) const;
+    bool renameDomain(const std::string& strName, const std::string& strNewName, std::string& strError);
+    bool setSequenceAwareness(const std::string& strDomain, bool bSequenceAware, std::string& strError);
+    bool getSequenceAwareness(const std::string& strDomain, bool& bSequenceAware, std::string& strError) const;
+    bool listDomainElements(const std::string& strDomain, std::string& strResult) const;
+    bool split(const std::string& strDomain, CConfigurableElement* pConfigurableElement, std::string& strError);
+    void listAssociatedElements(std::string& strResult) const;
+    void listConflictingElements(std::string& strResult) const;
+    void listDomains(std::string& strResult) const;
     /// Configurations
-    bool listConfigurations(const string& strDomain, string& strResult) const;
-    bool createConfiguration(const string& strDomain, const string& strConfiguration, const CParameterBlackboard* pMainBlackboard, string& strError);
-    bool deleteConfiguration(const string& strDomain, const string& strConfiguration, string& strError);
-    bool renameConfiguration(const string& strDomain, const string& strConfigurationName, const string& strNewConfigurationName, string& strError);
-    bool restoreConfiguration(const string& strDomain, const string& strConfiguration, CParameterBlackboard* pMainBlackboard, bool bAutoSync, list<string>& lstrError) const;
-    bool saveConfiguration(const string& strDomain, const string& strConfiguration, const CParameterBlackboard* pMainBlackboard, string& strError);
-    bool setElementSequence(const string& strDomain, const string& strConfiguration, const vector<string>& astrNewElementSequence, string& strError);
-    bool getElementSequence(const string& strDomain, const string& strConfiguration, string& strResult) const;
-    bool setApplicationRule(const string& strDomain, const string& strConfiguration, const string& strApplicationRule, const CSelectionCriteriaDefinition* pSelectionCriteriaDefinition, string& strError);
-    bool clearApplicationRule(const string& strDomain, const string& strConfiguration, string& strError);
-    bool getApplicationRule(const string& strDomain, const string& strConfiguration, string& strResult) const;
+    bool listConfigurations(const std::string& strDomain, std::string& strResult) const;
+    bool createConfiguration(const std::string& strDomain, const std::string& strConfiguration, const CParameterBlackboard* pMainBlackboard, std::string& strError);
+    bool deleteConfiguration(const std::string& strDomain, const std::string& strConfiguration, std::string& strError);
+    bool renameConfiguration(const std::string& strDomain, const std::string& strConfigurationName, const std::string& strNewConfigurationName, std::string& strError);
+    bool restoreConfiguration(const std::string& strDomain, const std::string& strConfiguration, CParameterBlackboard* pMainBlackboard, bool bAutoSync, std::list<std::string>& lstrError) const;
+    bool saveConfiguration(const std::string& strDomain, const std::string& strConfiguration, const CParameterBlackboard* pMainBlackboard, std::string& strError);
+    bool setElementSequence(const std::string& strDomain, const std::string& strConfiguration, const std::vector<std::string>& astrNewElementSequence, std::string& strError);
+    bool getElementSequence(const std::string& strDomain, const std::string& strConfiguration, std::string& strResult) const;
+    bool setApplicationRule(const std::string& strDomain, const std::string& strConfiguration, const std::string& strApplicationRule, const CSelectionCriteriaDefinition* pSelectionCriteriaDefinition, std::string& strError);
+    bool clearApplicationRule(const std::string& strDomain, const std::string& strConfiguration, std::string& strError);
+    bool getApplicationRule(const std::string& strDomain, const std::string& strConfiguration, std::string& strResult) const;
 
     // Last applied configurations
-    void listLastAppliedConfigurations(string& strResult) const;
+    void listLastAppliedConfigurations(std::string& strResult) const;
 
     // Configurable element - domain association
-    bool addConfigurableElementToDomain(const string& strDomain, CConfigurableElement* pConfigurableElement, const CParameterBlackboard* pMainBlackboard, string& strError);
-    bool removeConfigurableElementFromDomain(const string& strDomain, CConfigurableElement* pConfigurableElement, string& strError);
+    bool addConfigurableElementToDomain(const std::string& strDomain, CConfigurableElement* pConfigurableElement, const CParameterBlackboard* pMainBlackboard, std::string& strError);
+    bool removeConfigurableElementFromDomain(const std::string& strDomain, CConfigurableElement* pConfigurableElement, std::string& strError);
 
     // Configuration Blackboard for element
-    CParameterBlackboard* findConfigurationBlackboard(const string& strDomain,
-                                     const string& strConfiguration,
+    CParameterBlackboard* findConfigurationBlackboard(const std::string& strDomain,
+                                     const std::string& strConfiguration,
                                      const CConfigurableElement* pConfigurableElement,
                                      uint32_t& uiBaseOffset,
                                      bool& bIsLastApplied,
-                                     string& strError) const;
+                                     std::string& strError) const;
 
     // Binary settings load/store
-    bool serializeSettings(const string& strBinarySettingsFilePath, bool bOut, uint8_t uiStructureChecksum, string& strError);
+    bool serializeSettings(const std::string& strBinarySettingsFilePath, bool bOut, uint8_t uiStructureChecksum, std::string& strError);
 
     // From IXmlSource
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
@@ -99,14 +100,14 @@
     void apply(CParameterBlackboard* pParameterBlackboard, CSyncerSet& syncerSet, bool bForce) const;
 
     // Class kind
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     // Returns true if children dynamic creation is to be dealt with
     virtual bool childrenAreDynamic() const;
     // Gather owned configurable elements owned by any domain
-    void gatherAllOwnedConfigurableElements(set<const CConfigurableElement*>& configurableElementSet) const;
+    void gatherAllOwnedConfigurableElements(std::set<const CConfigurableElement*>& configurableElementSet) const;
     // Domain retrieval
-    CConfigurableDomain* findConfigurableDomain(const string& strDomain, string& strError);
-    const CConfigurableDomain* findConfigurableDomain(const string& strDomain, string& strError) const;
+    CConfigurableDomain* findConfigurableDomain(const std::string& strDomain, std::string& strError);
+    const CConfigurableDomain* findConfigurableDomain(const std::string& strDomain, std::string& strError) const;
 };
 
diff --git a/parameter/ConfigurableElement.cpp b/parameter/ConfigurableElement.cpp
index 2c09c96..c23c7e9 100644
--- a/parameter/ConfigurableElement.cpp
+++ b/parameter/ConfigurableElement.cpp
@@ -38,7 +38,7 @@
 
 #define base CElement
 
-CConfigurableElement::CConfigurableElement(const string& strName) : base(strName), _uiOffset(0)
+CConfigurableElement::CConfigurableElement(const std::string& strName) : base(strName), _uiOffset(0)
 {
 }
 
@@ -133,9 +133,9 @@
 }
 
 // Parameter access
-bool CConfigurableElement::accessValue(CPathNavigator& pathNavigator, string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const
+bool CConfigurableElement::accessValue(CPathNavigator& pathNavigator, std::string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const
 {
-    string* pStrChildName = pathNavigator.next();
+    std::string* pStrChildName = pathNavigator.next();
 
     if (!pStrChildName) {
 
@@ -157,7 +157,7 @@
 }
 
 void CConfigurableElement::getListOfElementsWithMapping(
-        list<const CConfigurableElement*>& configurableElementPath) const
+        std::list<const CConfigurableElement*>& configurableElementPath) const
 {
     // Check parent
     const CElement* pParent = getParent();
@@ -186,7 +186,7 @@
 }
 
 // Element properties
-void CConfigurableElement::showProperties(string& strResult) const
+void CConfigurableElement::showProperties(std::string& strResult) const
 {
     base::showProperties(strResult);
 
@@ -303,7 +303,7 @@
 }
 
 // Belonging domains
-void CConfigurableElement::getBelongingDomains(list<const CConfigurableDomain*>& configurableDomainList) const
+void CConfigurableElement::getBelongingDomains(std::list<const CConfigurableDomain*>& configurableDomainList) const
 {
     configurableDomainList.insert(configurableDomainList.end(), _configurableDomainList.begin(), _configurableDomainList.end());
 
@@ -316,10 +316,10 @@
     }
 }
 
-void CConfigurableElement::listBelongingDomains(string& strResult, bool bVertical) const
+void CConfigurableElement::listBelongingDomains(std::string& strResult, bool bVertical) const
 {
     // Get belonging domain list
-    list<const CConfigurableDomain*> configurableDomainList;
+    std::list<const CConfigurableDomain*> configurableDomainList;
 
     getBelongingDomains(configurableDomainList);
 
@@ -328,19 +328,19 @@
 }
 
 // Elements with no domains
-void CConfigurableElement::listRogueElements(string& strResult) const
+void CConfigurableElement::listRogueElements(std::string& strResult) const
 {
     strResult = "\n";
 
     // Get rogue element aggregate list (no associated domain)
-    list<const CConfigurableElement*> rogueElementList;
+    std::list<const CConfigurableElement*> rogueElementList;
 
     CConfigurableElementAggregator configurableElementAggregator(rogueElementList, &CConfigurableElement::hasNoDomainAssociated);
 
     configurableElementAggregator.aggegate(this);
 
-    // Build list as string
-    list<const CConfigurableElement*>::const_iterator it;
+    // Build list as std::string
+    std::list<const CConfigurableElement*>::const_iterator it;
 
     for (it = rogueElementList.begin(); it != rogueElementList.end(); ++it) {
 
@@ -357,7 +357,7 @@
 }
 
 // Footprint as string
-string CConfigurableElement::getFootprintAsString() const
+std::string CConfigurableElement::getFootprintAsString() const
 {
     // Get size as string
     return toString(getFootPrint()) + " byte(s)";
@@ -395,7 +395,7 @@
 }
 
 // Owning domains
-void CConfigurableElement::listAssociatedDomains(string& strResult, bool bVertical) const
+void CConfigurableElement::listAssociatedDomains(std::string& strResult, bool bVertical) const
 {
     // Fill list
     listDomains(_configurableDomainList, strResult, bVertical);
@@ -404,14 +404,14 @@
 uint32_t CConfigurableElement::getBelongingDomainCount() const
 {
     // Get belonging domain list
-    list<const CConfigurableDomain*> configurableDomainList;
+    std::list<const CConfigurableDomain*> configurableDomainList;
 
     getBelongingDomains(configurableDomainList);
 
     return configurableDomainList.size();
 }
 
-void CConfigurableElement::listDomains(const list<const CConfigurableDomain*>& configurableDomainList, string& strResult, bool bVertical) const
+void CConfigurableElement::listDomains(const std::list<const CConfigurableDomain*>& configurableDomainList, std::string& strResult, bool bVertical) const
 {
     if (bVertical && configurableDomainList.empty()) {
 
diff --git a/parameter/ConfigurableElement.h b/parameter/ConfigurableElement.h
index 50ccac2..cce2227 100644
--- a/parameter/ConfigurableElement.h
+++ b/parameter/ConfigurableElement.h
@@ -45,9 +45,9 @@
 {
     friend class CConfigurableDomain;
     friend class CDomainConfiguration;
-    typedef list<const CConfigurableDomain*>::const_iterator ConfigurableDomainListConstIterator;
+    typedef std::list<const CConfigurableDomain*>::const_iterator ConfigurableDomainListConstIterator;
 public:
-    CConfigurableElement(const string& strName = "");
+    CConfigurableElement(const std::string& strName = "");
     virtual ~CConfigurableElement();
 
     // Offset in main blackboard
@@ -64,7 +64,7 @@
     bool belongsTo(const CConfigurableDomain* pConfigurableDomain) const;
 
     // Belonging domains
-    void listBelongingDomains(string& strResult, bool bVertical = true) const;
+    void listBelongingDomains(std::string& strResult, bool bVertical = true) const;
 
     // Matching check for domain association
     bool hasNoDomainAssociated() const;
@@ -73,17 +73,17 @@
     bool hasNoValidDomainAssociated() const;
 
     // Owning domains
-    void listAssociatedDomains(string& strResult, bool bVertical = true) const;
+    void listAssociatedDomains(std::string& strResult, bool bVertical = true) const;
     uint32_t getBelongingDomainCount() const;
 
     // Elements with no domains
-    void listRogueElements(string& strResult) const;
+    void listRogueElements(std::string& strResult) const;
 
     // Belonging to no domains
     bool isRogue() const;
 
     // Footprint as string
-    string getFootprintAsString() const;
+    std::string getFootprintAsString() const;
 
     // Belonging subsystem
     virtual const CSubsystem* getBelongingSubsystem() const;
@@ -95,12 +95,12 @@
     virtual CAreaConfiguration* createAreaConfiguration(const CSyncerSet* pSyncerSet) const;
 
     // Parameter access
-    virtual bool accessValue(CPathNavigator& pathNavigator, string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool accessValue(CPathNavigator& pathNavigator, std::string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
 
     /**
      * Get the list of all the ancestors that have a mapping.
      *
-     * The mapping is represented as a string of all the mapping data (key:value) defined in the
+     * The mapping is represented as a std::string of all the mapping data (key:value) defined in the
      * context of the element.
      * In this class, the method is generic and calls its parent getListOfElementsWithMappings(...)
      * method.
@@ -110,14 +110,14 @@
      * the last one.
      *
      */
-    virtual void getListOfElementsWithMapping(list<const CConfigurableElement*>&
+    virtual void getListOfElementsWithMapping(std::list<const CConfigurableElement*>&
                                                configurableElementPath) const;
 
     // Used for simulation and virtual subsystems
     virtual void setDefaultValues(CParameterAccessContext& parameterAccessContext) const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // XML configuration settings parsing
     virtual bool serializeXmlSettings(CXmlElement& xmlConfigurationSettingsElementContent, CConfigurationAccessContext& configurationAccessContext) const;
@@ -138,8 +138,8 @@
     bool belongsToDomainAscending(const CConfigurableDomain* pConfigurableDomain) const;
 
     // Belonging domains
-    void getBelongingDomains(list<const CConfigurableDomain*>& configurableDomainList) const;
-    void listDomains(const list<const CConfigurableDomain*>& configurableDomainList, string& strResult, bool bVertical) const;
+    void getBelongingDomains(std::list<const CConfigurableDomain*>& configurableDomainList) const;
+    void listDomains(const std::list<const CConfigurableDomain*>& configurableDomainList, std::string& strResult, bool bVertical) const;
 
     // Check parent is still of current type (by structure knowledge)
     bool isOfConfigurableElementType(const CElement* pParent) const;
@@ -148,6 +148,6 @@
     uint32_t _uiOffset;
 
     // Associated configurable domains
-    list<const CConfigurableDomain*> _configurableDomainList;
+    std::list<const CConfigurableDomain*> _configurableDomainList;
 };
 
diff --git a/parameter/ConfigurableElementAggregator.cpp b/parameter/ConfigurableElementAggregator.cpp
index 917fec8..228db26 100644
--- a/parameter/ConfigurableElementAggregator.cpp
+++ b/parameter/ConfigurableElementAggregator.cpp
@@ -30,7 +30,7 @@
 #include "ConfigurableElementAggregator.h"
 #include "ConfigurableElement.h"
 
-CConfigurableElementAggregator::CConfigurableElementAggregator(list<const CConfigurableElement*>& aggregateList, MatchesAggregationCriterion pfnMatchesAggregationCriterion)
+CConfigurableElementAggregator::CConfigurableElementAggregator(std::list<const CConfigurableElement*>& aggregateList, MatchesAggregationCriterion pfnMatchesAggregationCriterion)
     : _aggregateList(aggregateList), _pfnMatchesAggregationCriterion(pfnMatchesAggregationCriterion)
 {
 }
@@ -42,7 +42,7 @@
 }
 
 // Recursive aggregate
-bool CConfigurableElementAggregator::doAggregate(const CConfigurableElement* pConfigurableElement, list<const CConfigurableElement*>& aggregateList)
+bool CConfigurableElementAggregator::doAggregate(const CConfigurableElement* pConfigurableElement, std::list<const CConfigurableElement*>& aggregateList)
 {
     if (!(pConfigurableElement->*_pfnMatchesAggregationCriterion)()) {
 
@@ -50,7 +50,7 @@
         return false;
     }
     // Check children
-    list<const CConfigurableElement*> childAggregateElementList;
+    std::list<const CConfigurableElement*> childAggregateElementList;
 
     uint32_t uiIndex;
     uint32_t uiNbChildren = pConfigurableElement->getNbChildren();
diff --git a/parameter/ConfigurableElementAggregator.h b/parameter/ConfigurableElementAggregator.h
index f847b8a..2164688 100644
--- a/parameter/ConfigurableElementAggregator.h
+++ b/parameter/ConfigurableElementAggregator.h
@@ -30,8 +30,7 @@
 #pragma once
 
 #include <list>
-
-using namespace std;
+#include <string>
 
 class CConfigurableElement;
 
@@ -42,17 +41,17 @@
     typedef bool (CConfigurableElement::*MatchesAggregationCriterion)() const;
 
     // Constructor
-    CConfigurableElementAggregator(list<const CConfigurableElement*>& aggregateList, MatchesAggregationCriterion pfnMatchesAggregationCriterion);
+    CConfigurableElementAggregator(std::list<const CConfigurableElement*>& aggregateList, MatchesAggregationCriterion pfnMatchesAggregationCriterion);
 
     // Aggregate
     void aggegate(const CConfigurableElement* pConfigurableElement);
 
 private:
     // Recursive aggregate
-    bool doAggregate(const CConfigurableElement* pConfigurableElement, list<const CConfigurableElement*>& aggregateList);
+    bool doAggregate(const CConfigurableElement* pConfigurableElement, std::list<const CConfigurableElement*>& aggregateList);
 
     // Aggegate list
-    list<const CConfigurableElement*>& _aggregateList;
+    std::list<const CConfigurableElement*>& _aggregateList;
 
     // Matching check method
     MatchesAggregationCriterion _pfnMatchesAggregationCriterion;
diff --git a/parameter/ConfigurableElementWithMapping.h b/parameter/ConfigurableElementWithMapping.h
index d241cea..b5f6a1f 100644
--- a/parameter/ConfigurableElementWithMapping.h
+++ b/parameter/ConfigurableElementWithMapping.h
@@ -40,7 +40,7 @@
  */
 class CConfigurableElementWithMapping : public CConfigurableElement {
 public:
-    CConfigurableElementWithMapping(const string& strName) : CConfigurableElement(strName) {}
+    CConfigurableElementWithMapping(const std::string& strName) : CConfigurableElement(strName) {}
     virtual ~CConfigurableElementWithMapping() {}
 
     /**
diff --git a/parameter/ConfigurationAccessContext.cpp b/parameter/ConfigurationAccessContext.cpp
index 8d746fe..f2f9042 100644
--- a/parameter/ConfigurationAccessContext.cpp
+++ b/parameter/ConfigurationAccessContext.cpp
@@ -31,6 +31,8 @@
 
 #define base CParameterAccessContext
 
+using std::string;
+
 CConfigurationAccessContext::CConfigurationAccessContext(string& strError, bool bSerializeOut) :
     base(strError),
     _bSerializeOut(bSerializeOut)
diff --git a/parameter/ConfigurationAccessContext.h b/parameter/ConfigurationAccessContext.h
index f20eb19..ef0ce31 100644
--- a/parameter/ConfigurationAccessContext.h
+++ b/parameter/ConfigurationAccessContext.h
@@ -31,10 +31,12 @@
 
 #include "ParameterAccessContext.h"
 
+#include <string>
+
 class CConfigurationAccessContext : public CParameterAccessContext
 {
 public:
-    CConfigurationAccessContext(string& strError, bool bSerializeOut);
+    CConfigurationAccessContext(std::string& strError, bool bSerializeOut);
 
     // Serialization direction
     bool serializeOut() const;
diff --git a/parameter/DomainConfiguration.cpp b/parameter/DomainConfiguration.cpp
index fae22f2..41ffeef 100644
--- a/parameter/DomainConfiguration.cpp
+++ b/parameter/DomainConfiguration.cpp
@@ -39,6 +39,8 @@
 
 #define base CBinarySerializableElement
 
+using std::string;
+
 CDomainConfiguration::CDomainConfiguration(const string& strName) : base(strName)
 {
 }
@@ -72,7 +74,7 @@
     CXmlDomainSerializingContext& xmlDomainSerializingContext = static_cast<CXmlDomainSerializingContext&>(serializingContext);
 
     // Take care of configurable elements / area configurations ranks
-    list<CAreaConfiguration*> areaConfigurationList;
+    std::list<CAreaConfiguration*> areaConfigurationList;
 
     // Parse configurable element's configuration settings
     CXmlElement::CChildIterator it(xmlConfigurationSettingsElement);
@@ -228,10 +230,10 @@
 }
 
 // Sequence management
-bool CDomainConfiguration::setElementSequence(const vector<string>& astrNewElementSequence, string& strError)
+bool CDomainConfiguration::setElementSequence(const std::vector<string>& astrNewElementSequence, string& strError)
 {
     // Build a new list of AreaConfiguration objects
-    list<CAreaConfiguration*> areaConfigurationList;
+    std::list<CAreaConfiguration*> areaConfigurationList;
 
     uint32_t uiConfigurableElement;
 
@@ -369,7 +371,7 @@
 }
 
 // Apply data to current
-bool CDomainConfiguration::restore(CParameterBlackboard* pMainBlackboard, bool bSync, list<string>* plstrError) const
+bool CDomainConfiguration::restore(CParameterBlackboard* pMainBlackboard, bool bSync, std::list<string>* plstrError) const
 {
     bool bSuccess = true;
 
@@ -514,7 +516,7 @@
 }
 
 // AreaConfiguration retrieval from given area configuration list
-CAreaConfiguration* CDomainConfiguration::findAreaConfiguration(const string& strConfigurableElementPath, const list<CAreaConfiguration*>& areaConfigurationList) const
+CAreaConfiguration* CDomainConfiguration::findAreaConfiguration(const string& strConfigurableElementPath, const std::list<CAreaConfiguration*>& areaConfigurationList) const
 {
     AreaConfigurationListIterator it;
 
@@ -533,7 +535,7 @@
 }
 
 // Area configuration ordering
-void CDomainConfiguration::reorderAreaConfigurations(const list<CAreaConfiguration*>& areaConfigurationList)
+void CDomainConfiguration::reorderAreaConfigurations(const std::list<CAreaConfiguration*>& areaConfigurationList)
 {
     // Ensure elements in provided list appear first and ordered the same way in internal one
 
diff --git a/parameter/DomainConfiguration.h b/parameter/DomainConfiguration.h
index 7c49011..bea8bb6 100644
--- a/parameter/DomainConfiguration.h
+++ b/parameter/DomainConfiguration.h
@@ -31,6 +31,7 @@
 
 #include "BinarySerializableElement.h"
 #include <list>
+#include <string>
 
 class CConfigurableElement;
 class CAreaConfiguration;
@@ -45,9 +46,9 @@
     enum ChildElementType {
         ECompoundRule
     };
-    typedef list<CAreaConfiguration*>::const_iterator AreaConfigurationListIterator;
+    typedef std::list<CAreaConfiguration*>::const_iterator AreaConfigurationListIterator;
 public:
-    CDomainConfiguration(const string& strName);
+    CDomainConfiguration(const std::string& strName);
     virtual ~CDomainConfiguration();
 
     // Configurable Elements association
@@ -55,13 +56,13 @@
     void removeConfigurableElement(const CConfigurableElement* pConfigurableElement);
 
     // Sequence management
-    bool setElementSequence(const vector<string>& astrNewElementSequence, string& strError);
-    void getElementSequence(string& strResult) const;
+    bool setElementSequence(const std::vector<std::string>& astrNewElementSequence, std::string& strError);
+    void getElementSequence(std::string& strResult) const;
 
     // Application rule
-    bool setApplicationRule(const string& strApplicationRule, const CSelectionCriteriaDefinition* pSelectionCriteriaDefinition, string& strError);
+    bool setApplicationRule(const std::string& strApplicationRule, const CSelectionCriteriaDefinition* pSelectionCriteriaDefinition, std::string& strError);
     void clearApplicationRule();
-    void getApplicationRule(string& strResult) const;
+    void getApplicationRule(std::string& strResult) const;
 
     // Get Blackboard for an element of the domain
     CParameterBlackboard* getBlackboard(const CConfigurableElement* pConfigurableElement) const;
@@ -69,7 +70,7 @@
     // Save data from current
     void save(const CParameterBlackboard* pMainBlackboard);
     // Apply data to current
-    bool restore(CParameterBlackboard* pMainBlackboard, bool bSync, list<string>* plstrError = NULL) const;
+    bool restore(CParameterBlackboard* pMainBlackboard, bool bSync, std::list<std::string>* plstrError = NULL) const;
     // Ensure validity for configurable element area configuration
     void validate(const CConfigurableElement* pConfigurableElement, const CParameterBlackboard* pMainBlackboard);
     // Ensure validity of all area configurations
@@ -98,7 +99,7 @@
     virtual uint32_t getDataSize() const;
 
     // Class kind
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
 private:
     // Returns true if children dynamic creation is to be dealt with (here, will allow child deletion upon clean)
@@ -108,14 +109,14 @@
     // AreaConfiguration retrieval from configurable element
     CAreaConfiguration* getAreaConfiguration(const CConfigurableElement* pConfigurableElement) const;
     // AreaConfiguration retrieval from present area configurations
-    CAreaConfiguration* findAreaConfiguration(const string& strConfigurableElementPath) const;
-    // AreaConfiguration retrieval from given area configuration list
-    CAreaConfiguration* findAreaConfiguration(const string& strConfigurableElementPath, const list<CAreaConfiguration*>& areaConfigurationList) const;
+    CAreaConfiguration* findAreaConfiguration(const std::string& strConfigurableElementPath) const;
+    // AreaConfiguration retrieval from given area configuration std::list
+    CAreaConfiguration* findAreaConfiguration(const std::string& strConfigurableElementPath, const std::list<CAreaConfiguration*>& areaConfigurationList) const;
     // Area configuration ordering
-    void reorderAreaConfigurations(const list<CAreaConfiguration*>& areaConfigurationList);
-    // Find area configuration rank from regular list: for ordered list maintainance
+    void reorderAreaConfigurations(const std::list<CAreaConfiguration*>& areaConfigurationList);
+    // Find area configuration rank from regular std::list: for ordered std::list maintainance
     uint32_t getAreaConfigurationRank(const CAreaConfiguration* pAreaConfiguration) const;
-    // Find area configuration from regular list based on rank: for ordered list maintainance
+    // Find area configuration from regular std::list based on rank: for ordered std::list maintainance
     CAreaConfiguration* getAreaConfiguration(uint32_t uiAreaConfigurationRank) const;
 
     // Rule
@@ -124,6 +125,6 @@
     void setRule(CCompoundRule* pRule);
 
     // AreaConfigurations
-    list<CAreaConfiguration*> _areaConfigurationList;
-    list<CAreaConfiguration*> _orderedAreaConfigurationList;
+    std::list<CAreaConfiguration*> _areaConfigurationList;
+    std::list<CAreaConfiguration*> _orderedAreaConfigurationList;
 };
diff --git a/parameter/Element.cpp b/parameter/Element.cpp
index 6d1d418..2c8393d 100755
--- a/parameter/Element.cpp
+++ b/parameter/Element.cpp
@@ -37,6 +37,8 @@
 #include <stdlib.h>
 #include <sstream>
 
+using std::string;
+
 CElement::CElement(const string& strName) : _strName(strName), _pParent(NULL)
 {
 }
@@ -84,10 +86,10 @@
 }
 
 // Log each element of the string list
-void CElement::log_table(bool bIsWarning, const list<string> lstrMessage) const
+void CElement::log_table(bool bIsWarning, const std::list<string> lstrMessage) const
 {
-    list<string>::const_iterator iterator(lstrMessage.begin());
-    list<string>::const_iterator end(lstrMessage.end());
+    std::list<string>::const_iterator iterator(lstrMessage.begin());
+    std::list<string>::const_iterator end(lstrMessage.end());
 
     while (iterator != end) {
         // Log current list element
@@ -203,7 +205,7 @@
 // Conversion utilities
 string CElement::toString(uint32_t uiValue)
 {
-    ostringstream ostr;
+    std::ostringstream ostr;
 
     ostr << uiValue;
 
@@ -212,7 +214,7 @@
 
 string CElement::toString(uint64_t uiValue)
 {
-    ostringstream ostr;
+    std::ostringstream ostr;
 
     ostr << uiValue;
 
@@ -221,7 +223,7 @@
 
 string CElement::toString(int32_t iValue)
 {
-    ostringstream ostr;
+    std::ostringstream ostr;
 
     ostr << iValue;
 
@@ -230,7 +232,7 @@
 
 string CElement::toString(double dValue)
 {
-    ostringstream ostr;
+    std::ostringstream ostr;
 
     ostr << dValue;
 
diff --git a/parameter/Element.h b/parameter/Element.h
index 6f5e74f..8469ab6 100644
--- a/parameter/Element.h
+++ b/parameter/Element.h
@@ -38,8 +38,6 @@
 
 #include "PathNavigator.h"
 
-using namespace std;
-
 class CXmlElementSerializingContext;
 class CErrorContext;
 
@@ -47,45 +45,45 @@
 {
     friend class CAutoLog;
 public:
-    CElement(const string& strName = "");
+    CElement(const std::string& strName = "");
     virtual ~CElement();
 
     // Logging
-    void log_info(const string& strMessage, ...) const;
-    void log_warning(const string& strMessage, ...) const;
-    void log_table(bool bIsWarning, const list<string> lstrMessage) const;
+    void log_info(const std::string& strMessage, ...) const;
+    void log_warning(const std::string& strMessage, ...) const;
+    void log_table(bool bIsWarning, const std::list<std::string> lstrMessage) const;
 
     // Description
-    void setDescription(const string& strDescription);
-    const string& getDescription() const;
+    void setDescription(const std::string& strDescription);
+    const std::string& getDescription() const;
 
     // Name / Path
-    const string& getName() const;
-    void setName(const string& strName);
-    bool rename(const string& strName, string& strError);
-    string getPath() const;
-    string getQualifiedPath() const;
+    const std::string& getName() const;
+    void setName(const std::string& strName);
+    bool rename(const std::string& strName, std::string& strError);
+    std::string getPath() const;
+    std::string getQualifiedPath() const;
 
     // Creation / build
-    virtual bool init(string& strError);
+    virtual bool init(std::string& strError);
     virtual void clean();
 
     // Children management
     void addChild(CElement* pChild);
     bool removeChild(CElement* pChild);
-    void listChildren(string& strChildList) const;
-    string listQualifiedPaths(bool bDive, uint32_t uiLevel = 0) const;
-    void listChildrenPaths(string& strChildPathList) const;
+    void listChildren(std::string& strChildList) const;
+    std::string listQualifiedPaths(bool bDive, uint32_t uiLevel = 0) const;
+    void listChildrenPaths(std::string& strChildPathList) const;
 
     // Hierarchy query
     uint32_t getNbChildren() const;
-    CElement* findChildOfKind(const string& strKind);
-    const CElement* findChildOfKind(const string& strKind) const;
+    CElement* findChildOfKind(const std::string& strKind);
+    const CElement* findChildOfKind(const std::string& strKind) const;
     const CElement* getParent() const;
     const CElement* getChild(uint32_t uiIndex) const;
     CElement* getChild(uint32_t uiIndex);
-    const CElement* findChild(const string& strName) const;
-    CElement* findChild(const string& strName);
+    const CElement* findChild(const std::string& strName) const;
+    CElement* findChild(const std::string& strName);
     const CElement* findDescendant(CPathNavigator& pathNavigator) const;
     CElement* findDescendant(CPathNavigator& pathNavigator);
     bool isDescendantOf(const CElement* pCandidateAscendant) const;
@@ -97,32 +95,32 @@
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
 
     // Content structure dump
-    void dumpContent(string& strContent, CErrorContext& errorContext, const uint32_t uiDepth = 0) const;
+    void dumpContent(std::string& strContent, CErrorContext& errorContext, const uint32_t uiDepth = 0) const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // Conversion utilities
-    static string toString(uint32_t uiValue);
-    static string toString(uint64_t uiValue);
-    static string toString(int32_t iValue);
-    static string toString(double dValue);
+    static std::string toString(uint32_t uiValue);
+    static std::string toString(uint64_t uiValue);
+    static std::string toString(int32_t iValue);
+    static std::string toString(double dValue);
 
     // Checksum for integrity checks
     uint8_t computeStructureChecksum() const;
 
     // Class kind
-    virtual string getKind() const = 0;
+    virtual std::string getKind() const = 0;
 protected:
     // Content dumping
-    virtual void logValue(string& strValue, CErrorContext& errorContext) const;
+    virtual void logValue(std::string& strValue, CErrorContext& errorContext) const;
     // Utility to underline
-    static void appendTitle(string& strTo, const string& strTitle);
+    static void appendTitle(std::string& strTo, const std::string& strTitle);
 
     // Hierarchy
     CElement* getLastChild();
     CElement* getParent();
-    CElement* findAscendantOfKind(const string& strKind);
+    CElement* findAscendantOfKind(const std::string& strKind);
     CElement* getRoot();
     const CElement* getRoot() const;
 
@@ -139,11 +137,11 @@
 
 private:
     // Logging (done by root)
-    virtual void doLog(bool bIsWarning, const string& strLog) const;
+    virtual void doLog(bool bIsWarning, const std::string& strLog) const;
     virtual void nestLog() const;
     virtual void unnestLog() const;
     // Returns Name or Kind if no Name
-    string getPathName() const;
+    std::string getPathName() const;
     // Returns true if children dynamic creation is to be dealt with
     virtual bool childrenAreDynamic() const;
     // House keeping
@@ -154,16 +152,16 @@
     void setXmlNameAttribute(CXmlElement& xmlElement) const;
 
     // Name
-    string _strName;
+    std::string _strName;
 
     // Description
-    string _strDescription;
+    std::string _strDescription;
 
     // Child iterators
-    typedef vector<CElement*>::iterator ChildArrayIterator;
-    typedef vector<CElement*>::reverse_iterator ChildArrayReverseIterator;
+    typedef std::vector<CElement*>::iterator ChildArrayIterator;
+    typedef std::vector<CElement*>::reverse_iterator ChildArrayReverseIterator;
     // Children
-    vector<CElement*> _childArray;
+    std::vector<CElement*> _childArray;
     // Parent
     CElement* _pParent;
 };
diff --git a/parameter/ElementLibrary.h b/parameter/ElementLibrary.h
index 484b0fd..e50be95 100644
--- a/parameter/ElementLibrary.h
+++ b/parameter/ElementLibrary.h
@@ -38,7 +38,7 @@
 
 class CElementLibrary
 {
-    typedef std::map<string, const CElementBuilder*> ElementBuilderMap;
+    typedef std::map<std::string, const CElementBuilder*> ElementBuilderMap;
     typedef ElementBuilderMap::iterator ElementBuilderMapIterator;
     typedef ElementBuilderMap::const_iterator ElementBuilderMapConstIterator;
 
diff --git a/parameter/ElementLibrarySet.h b/parameter/ElementLibrarySet.h
index 886bdb4..cdcfdfe 100644
--- a/parameter/ElementLibrarySet.h
+++ b/parameter/ElementLibrarySet.h
@@ -29,6 +29,8 @@
  */
 #include "ElementLibrary.h"
 
+#include <vector>
+
 class CElementLibrarySet
 {
 public:
@@ -39,6 +41,6 @@
     CElementLibrary* getElementLibrary(uint32_t uiIndex) const;
 
 private:
-    typedef vector<CElementLibrary*>::iterator CElementLibraryArrayIterator;
-    vector<CElementLibrary*> _elementLibraryArray;
+    typedef std::vector<CElementLibrary*>::iterator CElementLibraryArrayIterator;
+    std::vector<CElementLibrary*> _elementLibraryArray;
 };
diff --git a/parameter/ElementLocator.cpp b/parameter/ElementLocator.cpp
index 4abd95b..4c2fa99 100644
--- a/parameter/ElementLocator.cpp
+++ b/parameter/ElementLocator.cpp
@@ -30,6 +30,8 @@
 #include "ElementLocator.h"
 #include "PathNavigator.h"
 
+using std::string;
+
 CElementLocator::CElementLocator(CElement* pSubRootElement, bool bStrict) : _pSubRootElement(pSubRootElement), _bStrict(bStrict)
 {
 }
diff --git a/parameter/ElementLocator.h b/parameter/ElementLocator.h
index 9b000ad..c35eb5c 100644
--- a/parameter/ElementLocator.h
+++ b/parameter/ElementLocator.h
@@ -31,13 +31,15 @@
 
 #include "Element.h"
 
+#include <string>
+
 class CElementLocator
 {
 public:
     CElementLocator(CElement* pSubRootElement, bool bStrict = true);
 
     // Locate element
-    bool locate(const string& strPath, CElement** ppElement, string& strError);
+    bool locate(const std::string& strPath, CElement** ppElement, std::string& strError);
 
 private:
     // Subroot element
diff --git a/parameter/EnumParameterType.cpp b/parameter/EnumParameterType.cpp
index c70faf1..126a2a5 100644
--- a/parameter/EnumParameterType.cpp
+++ b/parameter/EnumParameterType.cpp
@@ -39,6 +39,8 @@
 
 #define base CParameterType
 
+using std::string;
+
 CEnumParameterType::CEnumParameterType(const string& strName) : base(strName)
 {
 }
@@ -164,16 +166,16 @@
 
     if (!bConversionSucceeded || value < minValue || value > maxValue) {
 
-        ostringstream strStream;
+	std::ostringstream strStream;
 
         strStream << "Value " << strValue << " standing out of admitted range [";
 
         if (bHexaValue) {
 
             // Format Min
-            strStream << "0x" << hex << uppercase << setw(getSize()*2) << setfill('0') << makeEncodable(minValue);
+            strStream << "0x" << std::hex << std::uppercase << std::setw(getSize()*2) << std::setfill('0') << makeEncodable(minValue);
             // Format Max
-            strStream << ", 0x" << hex << uppercase << setw(getSize()*2) << setfill('0') << makeEncodable(maxValue);
+            strStream << ", 0x" << std::hex << std::uppercase << std::setw(getSize()*2) << std::setfill('0') << makeEncodable(maxValue);
 
         } else {
 
@@ -195,13 +197,13 @@
     if (parameterAccessContext.valueSpaceIsRaw()) {
 
         // Format
-        ostringstream strStream;
+	std::ostringstream strStream;
 
         // Numerical format requested
         if (parameterAccessContext.outputRawFormatIsHex()) {
 
             // Hexa display with unecessary bits cleared out
-            strStream << "0x" << hex << uppercase << setw(getSize()*2) << setfill('0') << makeEncodable(uiValue);
+            strStream << "0x" << std::hex << std::uppercase << std::setw(getSize()*2) << std::setfill('0') << makeEncodable(uiValue);
 
             strValue = strStream.str();
         } else {
diff --git a/parameter/EnumParameterType.h b/parameter/EnumParameterType.h
index 5f136a4..681f9b9 100644
--- a/parameter/EnumParameterType.h
+++ b/parameter/EnumParameterType.h
@@ -32,11 +32,12 @@
 #include "ParameterType.h"
 
 #include <list>
+#include <string>
 
 class CEnumParameterType : public CParameterType
 {
 public:
-    CEnumParameterType(const string& strName);
+    CEnumParameterType(const std::string& strName);
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
@@ -46,8 +47,8 @@
 
     /// Conversion
     // String
-    virtual bool toBlackboard(const string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
-    virtual bool fromBlackboard(string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool toBlackboard(const std::string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool fromBlackboard(std::string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     // Integer
     virtual bool toBlackboard(int32_t iUserValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     virtual bool fromBlackboard(int32_t& iUserValue, uint32_t uiValue, CParameterAccessContext& parameterAccessContext) const;
@@ -56,23 +57,23 @@
     virtual uint32_t getDefaultValue() const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     // Returns true if children dynamic creation is to be dealt with
     virtual bool childrenAreDynamic() const;
-    // Check string is a number
-    static bool isNumber(const string& strValue);
+    // Check std::string is a number
+    static bool isNumber(const std::string& strValue);
 
     // Literal - numerical conversions
-    bool getLiteral(int32_t iNumerical, string& strLiteral) const;
-    bool getNumerical(const string& strLiteral, int& iNumerical) const;
+    bool getLiteral(int32_t iNumerical, std::string& strLiteral) const;
+    bool getNumerical(const std::string& strLiteral, int& iNumerical) const;
 
     // Numerical validity
     bool isValid(int iNumerical, CParameterAccessContext& parameterAccessContext) const;
 
     // Range validity
-    bool checkValueAgainstRange(const string& strValue, int64_t value, CParameterAccessContext& parameterAccessContext, bool bHexaValue, bool bConversionSucceeded) const;
+    bool checkValueAgainstRange(const std::string& strValue, int64_t value, CParameterAccessContext& parameterAccessContext, bool bHexaValue, bool bConversionSucceeded) const;
 };
diff --git a/parameter/EnumValuePair.cpp b/parameter/EnumValuePair.cpp
index fe8ee72..81febdd 100644
--- a/parameter/EnumValuePair.cpp
+++ b/parameter/EnumValuePair.cpp
@@ -31,6 +31,8 @@
 
 #define base CElement
 
+using std::string;
+
 CEnumValuePair::CEnumValuePair() : _iNumerical(0)
 {
 }
diff --git a/parameter/EnumValuePair.h b/parameter/EnumValuePair.h
index 39a54ba..b29fea0 100644
--- a/parameter/EnumValuePair.h
+++ b/parameter/EnumValuePair.h
@@ -38,7 +38,7 @@
 
     // Numerical
     int32_t getNumerical() const;
-    string getNumericalAsString() const;
+    std::string getNumericalAsString() const;
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
@@ -47,10 +47,10 @@
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 protected:
     // Content dumping
-    virtual void logValue(string& strValue, CErrorContext& errorContext) const;
+    virtual void logValue(std::string& strValue, CErrorContext& errorContext) const;
 private:
     // Numerical
     int32_t _iNumerical;
diff --git a/parameter/ErrorContext.cpp b/parameter/ErrorContext.cpp
index dee1a90..e9c0b43 100644
--- a/parameter/ErrorContext.cpp
+++ b/parameter/ErrorContext.cpp
@@ -29,22 +29,22 @@
  */
 #include "ErrorContext.h"
 
-CErrorContext::CErrorContext(string& strError) : _strError(strError)
+CErrorContext::CErrorContext(std::string& strError) : _strError(strError)
 {
 }
 
 // Error
-void CErrorContext::setError(const string& strError)
+void CErrorContext::setError(const std::string& strError)
 {
     _strError = strError;
 }
 
-void CErrorContext::appendToError(const string& strAppend)
+void CErrorContext::appendToError(const std::string& strAppend)
 {
     _strError += strAppend;
 }
 
-const string& CErrorContext::getError() const
+const std::string& CErrorContext::getError() const
 {
     return _strError;
 }
diff --git a/parameter/ErrorContext.h b/parameter/ErrorContext.h
index e13bf43..ae2afe1 100644
--- a/parameter/ErrorContext.h
+++ b/parameter/ErrorContext.h
@@ -31,20 +31,18 @@
 
 #include <string>
 
-using namespace std;
-
 class CErrorContext
 {
 public:
-    CErrorContext(string& strError);
+    CErrorContext(std::string& strError);
 
     // Error
-    void setError(const string& strError);
-    void appendToError(const string& strAppend);
-    const string& getError() const;
+    void setError(const std::string& strError);
+    void appendToError(const std::string& strAppend);
+    const std::string& getError() const;
 
 private:
     // Error reference
-    string& _strError;
+    std::string& _strError;
 };
 
diff --git a/parameter/FixedPointParameterType.cpp b/parameter/FixedPointParameterType.cpp
index c9f736f..e7779a9 100644
--- a/parameter/FixedPointParameterType.cpp
+++ b/parameter/FixedPointParameterType.cpp
@@ -41,6 +41,8 @@
 
 #define base CParameterType
 
+using std::string;
+
 CFixedPointParameterType::CFixedPointParameterType(const string& strName) : base(strName), _uiIntegral(0), _uiFractional(0)
 {
 }
@@ -136,7 +138,7 @@
 
 void CFixedPointParameterType::setOutOfRangeError(const string& strValue, CParameterAccessContext& parameterAccessContext) const
 {
-    ostringstream strStream;
+    std::ostringstream strStream;
 
     strStream << "Value " << strValue << " standing out of admitted ";
 
@@ -147,7 +149,7 @@
         double dMax = 0;
         getRange(dMin, dMax);
 
-        strStream << fixed << setprecision(_uiFractional)
+        strStream << std::fixed << std::setprecision(_uiFractional)
                   << "real range [" << dMin << ", " << dMax << "]";
     } else {
 
@@ -160,11 +162,11 @@
         if (isHexadecimal(strValue)) {
 
             // Format Min
-            strStream << "0x" << hex << uppercase <<
-                setw(getSize() * 2) << setfill('0') << makeEncodable(iMin);
+            strStream << "0x" << std::hex << std::uppercase <<
+                std::setw(getSize() * 2) << std::setfill('0') << makeEncodable(iMin);
             // Format Max
-            strStream << ", 0x" << hex << uppercase <<
-                setw(getSize() * 2) << setfill('0') << makeEncodable(iMax);
+            strStream << ", 0x" << std::hex << std::uppercase <<
+                std::setw(getSize() * 2) << std::setfill('0') << makeEncodable(iMax);
 
         } else {
 
@@ -186,7 +188,7 @@
     assert(isEncodable((uint32_t)iData, false));
 
     // Format
-    ostringstream strStream;
+    std::ostringstream strStream;
 
     // Raw formatting?
     if (parameterAccessContext.valueSpaceIsRaw()) {
@@ -194,7 +196,7 @@
         // Hexa formatting?
         if (parameterAccessContext.outputRawFormatIsHex()) {
 
-            strStream << "0x" << hex << uppercase << setw(getSize()*2) << setfill('0') << (uint32_t)iData;
+            strStream << "0x" << std::hex << std::uppercase << std::setw(getSize()*2) << std::setfill('0') << (uint32_t)iData;
         } else {
 
             // Sign extend
@@ -210,7 +212,7 @@
         // Conversion
         double dData = binaryQnmToDouble(iData);
 
-        strStream << fixed << setprecision(_uiFractional) << dData;
+        strStream << std::fixed << std::setprecision(_uiFractional) << dData;
     }
 
     strValue = strStream.str();
diff --git a/parameter/FixedPointParameterType.h b/parameter/FixedPointParameterType.h
index 3ef53eb..c2f5f47 100644
--- a/parameter/FixedPointParameterType.h
+++ b/parameter/FixedPointParameterType.h
@@ -31,10 +31,12 @@
 
 #include "ParameterType.h"
 
+#include <string>
+
 class CFixedPointParameterType : public CParameterType
 {
 public:
-    CFixedPointParameterType(const string& strName);
+    CFixedPointParameterType(const std::string& strName);
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
@@ -48,17 +50,17 @@
 
     /// Conversion
     // String
-    virtual bool toBlackboard(const string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
-    virtual bool fromBlackboard(string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool toBlackboard(const std::string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool fromBlackboard(std::string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     // Double
     virtual bool toBlackboard(double dUserValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     virtual bool fromBlackboard(double& dUserValue, uint32_t uiValue, CParameterAccessContext& parameterAccessContext) const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     // Util size
     uint32_t getUtilSizeInBits() const;
@@ -73,7 +75,7 @@
      *
      * @return true if the string is written as hexa, false otherwise.
      */
-    bool isHexadecimal(const string& strValue) const;
+    bool isHexadecimal(const std::string& strValue) const;
 
     /**
      * Convert a decimal raw represented string into an unsigned long integer.
@@ -87,7 +89,7 @@
      *
      * @return true if the string was successfully converted, false otherwise.
      */
-    bool convertFromDecimal(const string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    bool convertFromDecimal(const std::string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
 
     /**
      * Convert an hexadecimal raw represented string into an unsigned long integer.
@@ -101,7 +103,7 @@
      *
      * @return true if the string was successfully converted, false otherwise.
      */
-    bool convertFromHexadecimal(const string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    bool convertFromHexadecimal(const std::string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
 
     /**
      * Convert a Qn.m represented string into an unsigned long integer.
@@ -115,7 +117,7 @@
      *
      * @return true if the string was successfully converted, false otherwise.
      */
-    bool convertFromQnm(const string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    bool convertFromQnm(const std::string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
 
     /**
      * Set the out of range error.
@@ -125,7 +127,7 @@
      * @param[in] strValue Parameter read from the XML file representated as a string
      * @param[in:out] parameterAccessContext Parameter Access Context
      */
-    void setOutOfRangeError(const string& strValue, CParameterAccessContext& parameterAccessContext) const;
+    void setOutOfRangeError(const std::string& strValue, CParameterAccessContext& parameterAccessContext) const;
 
     // Check if data is encodable
     bool checkValueAgainstRange(double dValue) const;
diff --git a/parameter/FormattedSubsystemObject.cpp b/parameter/FormattedSubsystemObject.cpp
index 63502c7..2da7deb 100644
--- a/parameter/FormattedSubsystemObject.cpp
+++ b/parameter/FormattedSubsystemObject.cpp
@@ -35,6 +35,8 @@
 
 #define base CSubsystemObject
 
+using std::string;
+
 CFormattedSubsystemObject::CFormattedSubsystemObject(
         CInstanceConfigurableElement* pInstanceConfigurableElement)
     : base(pInstanceConfigurableElement)
diff --git a/parameter/FormattedSubsystemObject.h b/parameter/FormattedSubsystemObject.h
index 2615978..c04583b 100644
--- a/parameter/FormattedSubsystemObject.h
+++ b/parameter/FormattedSubsystemObject.h
@@ -45,24 +45,24 @@
      * Builds a new CFormattedSubsystemObject instance, using a simple mapping value without Amends.
      *
      * @param[in] pInstanceConfigurableElement Instance of the element linked to the SubsytemObject.
-     * @param[in] strFormattedMapping A string corresponding to the mapping of the element. The
-     * string does not contain any Amend (%) and does not need to be formatted.
+     * @param[in] strFormattedMapping A std::string corresponding to the mapping of the element. The
+     * std::string does not contain any Amend (%) and does not need to be formatted.
      */
     CFormattedSubsystemObject(CInstanceConfigurableElement* pInstanceConfigurableElement,
-                              const string& strFormattedMapping);
+                              const std::string& strFormattedMapping);
 
     /**
      * Builds a new CFormattedSubsystemObject instance, using a mapping value containing Amends.
      *
      * @param[in] pInstanceConfigurableElement Instance of the element linked to the SubsytemObject.
-     * @param[in] strMappingValue A string corresponding to the mapping of the element. The
-     * string contains Amend (%) and needs to be formatted with information from the context.
+     * @param[in] strMappingValue A std::string corresponding to the mapping of the element. The
+     * std::string contains Amend (%) and needs to be formatted with information from the context.
      * @param[in] uiFirstAmendKey Index of the first Amend key
      * @param[in] uiNbAmendKeys Number of Amends
      * @param[in] context Contains values associated to Amend keys
      */
     CFormattedSubsystemObject(CInstanceConfigurableElement* pInstanceConfigurableElement,
-                              const string& strMappingValue,
+                              const std::string& strMappingValue,
                               uint32_t uiFirstAmendKey,
                               uint32_t uiNbAmendKeys,
                               const CMappingContext& context);
@@ -71,9 +71,9 @@
     /**
      * Returns the formatted mapping value associated to the element.
      *
-     * @return A string containing the mapping
+     * @return A std::string containing the mapping
      */
-    virtual string getFormattedMappingValue() const;
+    virtual std::string getFormattedMappingValue() const;
 
 private:
 
@@ -89,24 +89,24 @@
     /**
      * Generic mapping formatting
      *
-     * Format a string from mapping data and its context, replacing amendments by their value
+     * Format a std::string from mapping data and its context, replacing amendments by their value
      *
-     * @param[in] strMappingValue The input mapping string containing amendments
+     * @param[in] strMappingValue The input mapping std::string containing amendments
      * @param[in] context uiFirstAmendKey The index of the first Amend key in the key list of the
      * context
      * @param[in] uiNbAmendKeys Number of Amend keys in the context
      * @param[in] context The context containing Amend values
      *
-     * @return The formatted string, corresponding to the input strMappingValue where %n have been
+     * @return The formatted std::string, corresponding to the input strMappingValue where %n have been
      * replaced by their value
      */
-    static string formatMappingValue(const string& strMappingValue,
+    static std::string formatMappingValue(const std::string& strMappingValue,
                                      uint32_t uiFirstAmendKey,
                                      uint32_t uiNbAmendKeys,
                                      const CMappingContext& context);
 
     /**
-     * string containing the formatted mapping value
+     * std::string containing the formatted mapping value
      */
-    string _strFormattedMappingValue;
+    std::string _strFormattedMappingValue;
 };
diff --git a/parameter/FrameworkConfigurationGroup.h b/parameter/FrameworkConfigurationGroup.h
index fe47dbf..e4da540 100644
--- a/parameter/FrameworkConfigurationGroup.h
+++ b/parameter/FrameworkConfigurationGroup.h
@@ -31,10 +31,12 @@
 
 #include "KindElement.h"
 
+#include <string>
+
 class CFrameworkConfigurationGroup : public CKindElement
 {
 public:
-    CFrameworkConfigurationGroup(const string& strName, const string& strKind) : CKindElement(strName, strKind)
+    CFrameworkConfigurationGroup(const std::string& strName, const std::string& strKind) : CKindElement(strName, strKind)
     {
     }
 
diff --git a/parameter/FrameworkConfigurationLocation.cpp b/parameter/FrameworkConfigurationLocation.cpp
index 8ce95fa..6983f16 100644
--- a/parameter/FrameworkConfigurationLocation.cpp
+++ b/parameter/FrameworkConfigurationLocation.cpp
@@ -32,7 +32,7 @@
 
 #define base CKindElement
 
-CFrameworkConfigurationLocation::CFrameworkConfigurationLocation(const string& strName, const string& strKind) : base(strName, strKind)
+CFrameworkConfigurationLocation::CFrameworkConfigurationLocation(const std::string& strName, const std::string& strKind) : base(strName, strKind)
 {
 }
 
@@ -51,7 +51,7 @@
 }
 
 // File path
-string CFrameworkConfigurationLocation::getFilePath(const string& strBaseFolder) const
+std::string CFrameworkConfigurationLocation::getFilePath(const std::string& strBaseFolder) const
 {
     if (isPathRelative()) {
 
@@ -61,7 +61,7 @@
 }
 
 // Folder path
-string CFrameworkConfigurationLocation::getFolderPath(const string& strBaseFolder) const
+std::string CFrameworkConfigurationLocation::getFolderPath(const std::string& strBaseFolder) const
 {
     uint32_t uiSlashPos = _strPath.rfind('/', -1);
 
diff --git a/parameter/FrameworkConfigurationLocation.h b/parameter/FrameworkConfigurationLocation.h
index 654e09b..56cc5f6 100644
--- a/parameter/FrameworkConfigurationLocation.h
+++ b/parameter/FrameworkConfigurationLocation.h
@@ -31,16 +31,18 @@
 
 #include "KindElement.h"
 
+#include <string>
+
 class CFrameworkConfigurationLocation : public CKindElement
 {
 public:
-    CFrameworkConfigurationLocation(const string& strName, const string& strKind);
+    CFrameworkConfigurationLocation(const std::string& strName, const std::string& strKind);
 
     // File path
-    string getFilePath(const string& strBaseFolder) const;
+    std::string getFilePath(const std::string& strBaseFolder) const;
 
     // Folder path
-    string getFolderPath(const string& strBaseFolder) const;
+    std::string getFolderPath(const std::string& strBaseFolder) const;
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
@@ -49,5 +51,5 @@
     bool isPathRelative() const;
 
     // Path
-    string _strPath;
+    std::string _strPath;
 };
diff --git a/parameter/HardwareBackSynchronizer.cpp b/parameter/HardwareBackSynchronizer.cpp
index 324b2eb..b16ea79 100644
--- a/parameter/HardwareBackSynchronizer.cpp
+++ b/parameter/HardwareBackSynchronizer.cpp
@@ -36,7 +36,7 @@
     : base(pConfigurableElement), _pParameterBlackboard(pParameterBlackboard)
 {
     // Fill back syncer set
-    list<const CConfigurableElement*>::const_iterator it;
+    std::list<const CConfigurableElement*>::const_iterator it;
 
     for (it = _needingBackSyncList.begin(); it != _needingBackSyncList.end(); ++it) {
 
diff --git a/parameter/InstanceConfigurableElement.cpp b/parameter/InstanceConfigurableElement.cpp
index 003a606..bfa011c 100644
--- a/parameter/InstanceConfigurableElement.cpp
+++ b/parameter/InstanceConfigurableElement.cpp
@@ -37,11 +37,11 @@
 
 #define base CConfigurableElementWithMapping
 
-CInstanceConfigurableElement::CInstanceConfigurableElement(const string& strName, const CTypeElement* pTypeElement) : base(strName), _pTypeElement(pTypeElement), _pSyncer(NULL)
+CInstanceConfigurableElement::CInstanceConfigurableElement(const std::string& strName, const CTypeElement* pTypeElement) : base(strName), _pTypeElement(pTypeElement), _pSyncer(NULL)
 {
 }
 
-string CInstanceConfigurableElement::getKind() const
+std::string CInstanceConfigurableElement::getKind() const
 {
     // Delegate
     return _pTypeElement->getKind();
@@ -54,20 +54,20 @@
 }
 
 // Mapping
-bool CInstanceConfigurableElement::getMappingData(const string& strKey, const string*& pStrValue) const
+bool CInstanceConfigurableElement::getMappingData(const std::string& strKey, const std::string*& pStrValue) const
 {
     // Delegate
     return getTypeElement()->getMappingData(strKey, pStrValue);
 }
 
 // Returns the formatted mapping
-string CInstanceConfigurableElement::getFormattedMapping() const
+std::string CInstanceConfigurableElement::getFormattedMapping() const
 {
     // Delegate
     return getTypeElement()->getFormattedMapping();
 }
 
-bool CInstanceConfigurableElement::map(IMapper& mapper, string& strError)
+bool CInstanceConfigurableElement::map(IMapper& mapper, std::string& strError)
 {
     bool bHasMappingData = getTypeElement()->hasMappingData();
     bool bKeepDiving = true;
@@ -106,7 +106,7 @@
 }
 
 void CInstanceConfigurableElement::getListOfElementsWithMapping(
-        list<const CConfigurableElement*>& configurableElementPath) const
+        std::list<const CConfigurableElement*>& configurableElementPath) const
 {
     const CTypeElement* pTypeElement = getTypeElement();
 
@@ -119,7 +119,7 @@
 }
 
 // Element properties
-void CInstanceConfigurableElement::showProperties(string& strResult) const
+void CInstanceConfigurableElement::showProperties(std::string& strResult) const
 {
     base::showProperties(strResult);
 
@@ -191,7 +191,7 @@
 
         return false;
     }
-    string strError;
+    std::string strError;
 
     if (!pSyncer->sync(*parameterAccessContext.getParameterBlackboard(), false, strError)) {
 
@@ -205,7 +205,7 @@
 // Check parameter access path well formed for leaf elements
 bool CInstanceConfigurableElement::checkPathExhausted(CPathNavigator& pathNavigator, CErrorContext& errorContext)
 {
-    string* pStrChildName = pathNavigator.next();
+    std::string* pStrChildName = pathNavigator.next();
 
     if (pStrChildName) {
 
diff --git a/parameter/InstanceConfigurableElement.h b/parameter/InstanceConfigurableElement.h
index 39a0d94..b3cdf62 100644
--- a/parameter/InstanceConfigurableElement.h
+++ b/parameter/InstanceConfigurableElement.h
@@ -32,6 +32,9 @@
 #include "ConfigurableElementWithMapping.h"
 #include "TypeElement.h"
 
+#include <list>
+#include <string>
+
 class IMapper;
 class CParameterBlackboard;
 class CParameterAccessContext;
@@ -48,23 +51,23 @@
         EComponent
     };
 
-    CInstanceConfigurableElement(const string& strName, const CTypeElement* pTypeElement);
+    CInstanceConfigurableElement(const std::string& strName, const CTypeElement* pTypeElement);
 
     // Instantiated type
     const CTypeElement* getTypeElement() const;
 
-    virtual bool getMappingData(const string& strKey, const string*& pStrValue) const;
+    virtual bool getMappingData(const std::string& strKey, const std::string*& pStrValue) const;
 
     /**
      * Returns the mapping data associated to the type element of the current
-     * InstanceConfigurableElement, as a formatted string
+     * InstanceConfigurableElement, as a formatted std::string
      *
-     * @return A string containing the formatted mapping
+     * @return A std::string containing the formatted mapping
      */
-    string getFormattedMapping() const;
+    std::string getFormattedMapping() const;
 
     // From CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
     // Syncer to/from HW
     void setSyncer(ISyncer* pSyncer);
@@ -74,10 +77,10 @@
     virtual Type getType() const = 0;
 
     // Mapping execution
-    bool map(IMapper& mapper, string& strError);
+    bool map(IMapper& mapper, std::string& strError);
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // Scalar or Array?
     bool isScalar() const;
@@ -88,7 +91,7 @@
     /**
      * Get the list of all the ancestors that have a mapping.
      *
-     * The mapping is represented as a string of all the mapping data (key:value) defined in the
+     * The mapping is represented as a std::string of all the mapping data (key:value) defined in the
      * context of the element.
      * In this class, the method is generic and calls its parent getListOfElementsWithMappings(...)
      * method.
@@ -97,7 +100,7 @@
      * that have a mapping. Elements are added at the end of the list, so the root Element will be
      * the last one.
      */
-    virtual void getListOfElementsWithMapping(list<const CConfigurableElement*>&
+    virtual void getListOfElementsWithMapping(std::list<const CConfigurableElement*>&
                                                configurableElementPath) const;
 protected:
     // Syncer
diff --git a/parameter/InstanceDefinition.cpp b/parameter/InstanceDefinition.cpp
index c20e725..74498ac 100644
--- a/parameter/InstanceDefinition.cpp
+++ b/parameter/InstanceDefinition.cpp
@@ -36,7 +36,7 @@
 {
 }
 
-string CInstanceDefinition::getKind() const
+std::string CInstanceDefinition::getKind() const
 {
     return "InstanceDefinition";
 }
diff --git a/parameter/InstanceDefinition.h b/parameter/InstanceDefinition.h
index d308c9e..046f76c 100644
--- a/parameter/InstanceDefinition.h
+++ b/parameter/InstanceDefinition.h
@@ -31,6 +31,8 @@
 
 #include "TypeElement.h"
 
+#include <string>
+
 class CInstanceDefinition : public CTypeElement
 {
 public:
@@ -38,7 +40,7 @@
 
     void createInstances(CElement* pFatherElement);
 
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     virtual bool childrenAreDynamic() const;
     virtual CInstanceConfigurableElement* doInstantiate() const;
diff --git a/parameter/IntegerParameterType.cpp b/parameter/IntegerParameterType.cpp
index f3dbac1..edc3d46 100755
--- a/parameter/IntegerParameterType.cpp
+++ b/parameter/IntegerParameterType.cpp
@@ -38,6 +38,9 @@
 
 #define base CParameterType
 
+using std::string;
+using std::ostringstream;
+
 CIntegerParameterType::CIntegerParameterType(const string& strName) : base(strName), _uiMin(0), _uiMax(uint32_t(-1))
 {
 }
@@ -195,7 +198,7 @@
     if (parameterAccessContext.valueSpaceIsRaw() && parameterAccessContext.outputRawFormatIsHex()) {
 
         // Hexa display with unecessary bits cleared out
-        strStream << "0x" << hex << uppercase << setw(getSize()*2) << setfill('0') << uiValue;
+        strStream << "0x" << std::hex << std::uppercase << std::setw(getSize()*2) << std::setfill('0') << uiValue;
     } else {
 
         if (_bSigned) {
@@ -403,9 +406,9 @@
         if (bHexaValue) {
 
             // Format Min
-            strStream << "0x" << hex << uppercase << setw(getSize()*2) << setfill('0') << makeEncodable(minValue);
+            strStream << "0x" << std::hex << std::uppercase << std::setw(getSize()*2) << std::setfill('0') << makeEncodable(minValue);
             // Format Max
-            strStream << ", 0x" << hex << uppercase << setw(getSize()*2) << setfill('0') << makeEncodable(maxValue);
+            strStream << ", 0x" << std::hex << std::uppercase << std::setw(getSize()*2) << std::setfill('0') << makeEncodable(maxValue);
 
         } else {
 
diff --git a/parameter/IntegerParameterType.h b/parameter/IntegerParameterType.h
index 3e551ef..53bd4a8 100755
--- a/parameter/IntegerParameterType.h
+++ b/parameter/IntegerParameterType.h
@@ -31,12 +31,14 @@
 
 #include "ParameterType.h"
 
+#include <string>
+
 class CParameterAdaptation;
 
 class CIntegerParameterType : public CParameterType
 {
 public:
-    CIntegerParameterType(const string& strName);
+    CIntegerParameterType(const std::string& strName);
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
@@ -46,8 +48,8 @@
 
     /// Conversion
     // String
-    virtual bool toBlackboard(const string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
-    virtual bool fromBlackboard(string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool toBlackboard(const std::string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool fromBlackboard(std::string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     // Integer
     virtual bool toBlackboard(uint32_t uiUserValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     virtual bool fromBlackboard(uint32_t& uiUserValue, uint32_t uiValue, CParameterAccessContext& parameterAccessContext) const;
@@ -62,23 +64,23 @@
     virtual uint32_t getDefaultValue() const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // Integer conversion
     virtual int toPlainInteger(int iSizeOptimizedData) const;
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
 private:
     // Returns true if children dynamic creation is to be dealt with
     virtual bool childrenAreDynamic() const;
 
-    // Conversion from string
-    bool convertValueFromString(const string& strValue, int64_t& iData, CParameterAccessContext& parameterAccessContext) const;
+    // Conversion from std::string
+    bool convertValueFromString(const std::string& strValue, int64_t& iData, CParameterAccessContext& parameterAccessContext) const;
 
     // Range checking
-    template <typename type> bool checkValueAgainstRange(const string& strValue, type value, type minValue, type maxValue, CParameterAccessContext& parameterAccessContext, bool bHexaValue) const;
+    template <typename type> bool checkValueAgainstRange(const std::string& strValue, type value, type minValue, type maxValue, CParameterAccessContext& parameterAccessContext, bool bHexaValue) const;
 
     // Adaptation element retrieval
     const CParameterAdaptation* getParameterAdaptation() const;
diff --git a/parameter/KindElement.h b/parameter/KindElement.h
index fa8eaaa..df826ff 100644
--- a/parameter/KindElement.h
+++ b/parameter/KindElement.h
@@ -31,18 +31,20 @@
 
 #include "Element.h"
 
+#include <string>
+
 class CKindElement : public CElement
 {
 public:
-    CKindElement(const string& strName, const string& strKind) : CElement(strName), _strKind(strKind)
+    CKindElement(const std::string& strName, const std::string& strKind) : CElement(strName), _strKind(strKind)
     {
     }
 
-    virtual string getKind() const
+    virtual std::string getKind() const
     {
         return _strKind;
     }
 private:
 
-    string _strKind;
+    std::string _strKind;
 };
diff --git a/parameter/LinearParameterAdaptation.cpp b/parameter/LinearParameterAdaptation.cpp
index 6484eb9..4be92a9 100644
--- a/parameter/LinearParameterAdaptation.cpp
+++ b/parameter/LinearParameterAdaptation.cpp
@@ -31,6 +31,8 @@
 
 #define base CParameterAdaptation
 
+using std::string;
+
 CLinearParameterAdaptation::CLinearParameterAdaptation() : base("Linear"), _dSlopeNumerator(1), _dSlopeDenominator(1)
 {
 }
diff --git a/parameter/LinearParameterAdaptation.h b/parameter/LinearParameterAdaptation.h
index f89e543..f72f27b 100644
--- a/parameter/LinearParameterAdaptation.h
+++ b/parameter/LinearParameterAdaptation.h
@@ -31,6 +31,8 @@
 
 #include "ParameterAdaptation.h"
 
+#include <string>
+
 class CLinearParameterAdaptation : public CParameterAdaptation
 {
 public:
@@ -41,7 +43,7 @@
     virtual double toUserValue(int64_t iValue) const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
diff --git a/parameter/Mapper.h b/parameter/Mapper.h
index 81ba9ce..fcf751a 100644
--- a/parameter/Mapper.h
+++ b/parameter/Mapper.h
@@ -31,14 +31,12 @@
 
 #include <string>
 
-using namespace std;
-
 class CInstanceConfigurableElement;
 
 class IMapper
 {
 public:
-    virtual bool mapBegin(CInstanceConfigurableElement* pInstanceConfigurableElement, bool& bKeepDiving, string& strError) = 0;
+    virtual bool mapBegin(CInstanceConfigurableElement* pInstanceConfigurableElement, bool& bKeepDiving, std::string& strError) = 0;
     virtual void mapEnd() = 0;
 
 protected:
diff --git a/parameter/MappingContext.cpp b/parameter/MappingContext.cpp
index 852f89f..b627051 100644
--- a/parameter/MappingContext.cpp
+++ b/parameter/MappingContext.cpp
@@ -32,6 +32,8 @@
 #include <string.h>
 #include <stdlib.h>
 
+using std::string;
+
 CMappingContext::CMappingContext(uint32_t uiNbItemTypes) : _pstItemArray(new CMappingContext::SItem[uiNbItemTypes]), _uiNbItemTypes(uiNbItemTypes)
 {
     // Clear items
diff --git a/parameter/MappingContext.h b/parameter/MappingContext.h
index 89b93cd..2ba8547 100644
--- a/parameter/MappingContext.h
+++ b/parameter/MappingContext.h
@@ -32,14 +32,12 @@
 #include <stdint.h>
 #include <string>
 
-using namespace std;
-
 class CMappingContext
 {
     // Item structure
     struct SItem {
-        const string* strKey;
-        const string* strItem;
+        const std::string* strKey;
+        const std::string* strItem;
         bool bSet;
     };
 
@@ -64,8 +62,8 @@
      *
      * @return False if already set, true else.
      */
-    bool setItem(uint32_t uiItemType, const string* pStrKey, const string* pStrItem);
-    const string& getItem(uint32_t uiItemType) const;
+    bool setItem(uint32_t uiItemType, const std::string* pStrKey, const std::string* pStrItem);
+    const std::string& getItem(uint32_t uiItemType) const;
     uint32_t getItemAsInteger(uint32_t uiItemType) const;
     /**
      * Get mapping item value from its key name.
@@ -74,7 +72,7 @@
      *
      * @return Mapping item value pointer if found, NULL else.
      */
-    const string* getItem(const string& strKey) const;
+    const std::string* getItem(const std::string& strKey) const;
     bool iSet(uint32_t uiItemType) const;
 
 private:
diff --git a/parameter/MappingData.cpp b/parameter/MappingData.cpp
index 72aa89c..b7a1a2a 100644
--- a/parameter/MappingData.cpp
+++ b/parameter/MappingData.cpp
@@ -40,19 +40,19 @@
 {
     assert(xmlElement.hasAttribute("Mapping"));
 
-    string strMapping = xmlElement.getAttributeString("Mapping");
+    std::string strMapping = xmlElement.getAttributeString("Mapping");
 
     Tokenizer mappingTok(strMapping, ",");
 
-    string strMappingElement;
+    std::string strMappingElement;
 
     while (!(strMappingElement = mappingTok.next()).empty()) {
 
-        string::size_type iFistDelimiterOccurrence = strMappingElement.find_first_of(':');
+        std::string::size_type iFistDelimiterOccurrence = strMappingElement.find_first_of(':');
 
-        string strKey, strValue;
+        std::string strKey, strValue;
 
-        if (iFistDelimiterOccurrence == string::npos) {
+        if (iFistDelimiterOccurrence == std::string::npos) {
 
             // There is no delimiter in the mapping field,
             // it means that no value has been provided
@@ -79,7 +79,7 @@
     return true;
 }
 
-bool CMappingData::getValue(const string& strkey, const string*& pStrValue) const
+bool CMappingData::getValue(const std::string& strkey, const std::string*& pStrValue) const
 {
     KeyToValueMapConstIterator it = _keyToValueMap.find(strkey);
 
@@ -92,16 +92,16 @@
     return false;
 }
 
-string CMappingData::asString() const
+std::string CMappingData::asString() const
 {
-    string strValue;
+    std::string strValue;
 
     CUtility::asString(_keyToValueMap, strValue, ", ", ":");
 
     return strValue;
 }
 
-bool CMappingData::addValue(const string& strkey, const string& strValue)
+bool CMappingData::addValue(const std::string& strkey, const std::string& strValue)
 {
     if (_keyToValueMap.find(strkey) != _keyToValueMap.end()) {
 
diff --git a/parameter/MappingData.h b/parameter/MappingData.h
index 4faffa0..45908b6 100644
--- a/parameter/MappingData.h
+++ b/parameter/MappingData.h
@@ -33,11 +33,9 @@
 #include <string>
 #include <map>
 
-using namespace std;
-
 class CMappingData : public IXmlSink
 {
-    typedef map<string, string>::const_iterator KeyToValueMapConstIterator;
+    typedef std::map<std::string, std::string>::const_iterator KeyToValueMapConstIterator;
 public:
     CMappingData();
 
@@ -45,17 +43,17 @@
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
 
     // Query
-    bool getValue(const string& strkey, const string*& pStrValue) const;
+    bool getValue(const std::string& strkey, const std::string*& pStrValue) const;
 
     /**
      * Formats the mapping as a list of comma-space separated key:value pairs
      *
-     * @return the formatted string
+     * @return the formatted std::string
      */
-    string asString() const;
+    std::string asString() const;
 
 private:
-    bool addValue(const string& strkey, const string& strValue);
+    bool addValue(const std::string& strkey, const std::string& strValue);
 
-    map<string, string> _keyToValueMap;
+    std::map<std::string, std::string> _keyToValueMap;
 };
diff --git a/parameter/Parameter.cpp b/parameter/Parameter.cpp
index 36903f6..e7de9ed 100644
--- a/parameter/Parameter.cpp
+++ b/parameter/Parameter.cpp
@@ -35,6 +35,8 @@
 
 #define base CBaseParameter
 
+using std::string;
+
 CParameter::CParameter(const string& strName, const CTypeElement* pTypeElement) : base(strName, pTypeElement)
 {
 }
diff --git a/parameter/Parameter.h b/parameter/Parameter.h
index 628b990..8cf4bc5 100644
--- a/parameter/Parameter.h
+++ b/parameter/Parameter.h
@@ -33,10 +33,12 @@
 
 #include "BaseParameter.h"
 
+#include <string>
+
 class CParameter : public CBaseParameter
 {
 public:
-    CParameter(const string& strName, const CTypeElement* pTypeElement);
+    CParameter(const std::string& strName, const CTypeElement* pTypeElement);
 
     // Instantiation, allocation
     virtual uint32_t getFootPrint() const;
@@ -63,8 +65,8 @@
     virtual void setDefaultValues(CParameterAccessContext& parameterAccessContext) const;
 
     // Actual value access
-    virtual bool doSetValue(const string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
-    virtual void doGetValue(string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool doSetValue(const std::string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
+    virtual void doGetValue(std::string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
 
     // Value space handling for configuration import
     void handleValueSpaceAttribute(CXmlElement& xmlConfigurableElementSettingsElement, CConfigurationAccessContext& configurationAccessContext) const;
diff --git a/parameter/ParameterAccessContext.cpp b/parameter/ParameterAccessContext.cpp
index 579f6bf..bbbbd22 100644
--- a/parameter/ParameterAccessContext.cpp
+++ b/parameter/ParameterAccessContext.cpp
@@ -31,7 +31,7 @@
 
 #define base CErrorContext
 
-CParameterAccessContext::CParameterAccessContext(string& strError,
+CParameterAccessContext::CParameterAccessContext(std::string& strError,
                                                  CParameterBlackboard* pParameterBlackboard,
                                                  bool bValueSpaceIsRaw,
                                                  bool bOutputRawFormatIsHex,
@@ -42,7 +42,7 @@
 {
 }
 
-CParameterAccessContext::CParameterAccessContext(string& strError,
+CParameterAccessContext::CParameterAccessContext(std::string& strError,
                                                  bool bBigEndianSubsystem,
                                                  CParameterBlackboard* pParameterBlackboard,
                                                  uint32_t uiBaseOffset)
@@ -52,7 +52,7 @@
 {
 }
 
-CParameterAccessContext::CParameterAccessContext(string& strError)
+CParameterAccessContext::CParameterAccessContext(std::string& strError)
     : base(strError), _pParameterBlackboard(NULL), _bValueSpaceIsRaw(false),
     _bOutputRawFormatIsHex(false), _bBigEndianSubsystem(false), _bAutoSync(true), _uiBaseOffset(0)
 {
diff --git a/parameter/ParameterAccessContext.h b/parameter/ParameterAccessContext.h
index c6dcb4a..b59debb 100644
--- a/parameter/ParameterAccessContext.h
+++ b/parameter/ParameterAccessContext.h
@@ -31,22 +31,23 @@
 
 #include <stdint.h>
 #include "ErrorContext.h"
+#include <string>
 
 class CParameterBlackboard;
 
 class CParameterAccessContext : public CErrorContext
 {
 public:
-    CParameterAccessContext(string& strError,
+    CParameterAccessContext(std::string& strError,
                             CParameterBlackboard* pParameterBlackboard,
                             bool bValueSpaceIsRaw,
                             bool bOutputRawFormatIsHex = false,
                             uint32_t uiOffsetBase = 0);
-    CParameterAccessContext(string& strError,
+    CParameterAccessContext(std::string& strError,
                             bool bBigEndianSubsystem,
                             CParameterBlackboard* pParameterBlackboard,
                             uint32_t uiOffsetBase = 0);
-    CParameterAccessContext(string& strError);
+    CParameterAccessContext(std::string& strError);
 
     // ParameterBlackboard
     CParameterBlackboard* getParameterBlackboard();
diff --git a/parameter/ParameterAdaptation.cpp b/parameter/ParameterAdaptation.cpp
index 19c2c25..f1e73c1 100644
--- a/parameter/ParameterAdaptation.cpp
+++ b/parameter/ParameterAdaptation.cpp
@@ -31,6 +31,8 @@
 
 #define base CElement
 
+using std::string;
+
 CParameterAdaptation::CParameterAdaptation(const string& strType) : base(strType), _iOffset(0)
 {
 }
diff --git a/parameter/ParameterAdaptation.h b/parameter/ParameterAdaptation.h
index 7a47e1d..89daee5 100644
--- a/parameter/ParameterAdaptation.h
+++ b/parameter/ParameterAdaptation.h
@@ -31,13 +31,15 @@
 
 #include "Element.h"
 
+#include <string>
+
 class CParameterAdaptation : public CElement
 {
 public:
-    CParameterAdaptation(const string& strType);
+    CParameterAdaptation(const std::string& strType);
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
@@ -47,7 +49,7 @@
     virtual double toUserValue(int64_t iValue) const;
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 protected:
     // Attributes
     int32_t getOffset() const;
diff --git a/parameter/ParameterBlackboard.h b/parameter/ParameterBlackboard.h
index 83adbe4..111208a 100644
--- a/parameter/ParameterBlackboard.h
+++ b/parameter/ParameterBlackboard.h
@@ -32,8 +32,6 @@
 #include <stdint.h>
 #include "BinaryStream.h"
 
-using namespace std;
-
 class CParameterBlackboard
 {
 public:
diff --git a/parameter/ParameterBlock.h b/parameter/ParameterBlock.h
index d65b75c..cf9407f 100644
--- a/parameter/ParameterBlock.h
+++ b/parameter/ParameterBlock.h
@@ -31,10 +31,12 @@
 
 #include "InstanceConfigurableElement.h"
 
+#include <string>
+
 class CParameterBlock : public CInstanceConfigurableElement
 {
 public:
-    CParameterBlock(const string& strName, const CTypeElement* pTypeElement)
+    CParameterBlock(const std::string& strName, const CTypeElement* pTypeElement)
         : CInstanceConfigurableElement(strName, pTypeElement)
     {
     }
diff --git a/parameter/ParameterBlockType.cpp b/parameter/ParameterBlockType.cpp
index 8b3af6d..7c6bfd4 100644
--- a/parameter/ParameterBlockType.cpp
+++ b/parameter/ParameterBlockType.cpp
@@ -32,11 +32,11 @@
 
 #define base CTypeElement
 
-CParameterBlockType::CParameterBlockType(const string& strName) : base(strName)
+CParameterBlockType::CParameterBlockType(const std::string& strName) : base(strName)
 {
 }
 
-string CParameterBlockType::getKind() const
+std::string CParameterBlockType::getKind() const
 {
     return "ParameterBlock";
 }
diff --git a/parameter/ParameterBlockType.h b/parameter/ParameterBlockType.h
index c748894..6061f78 100644
--- a/parameter/ParameterBlockType.h
+++ b/parameter/ParameterBlockType.h
@@ -31,13 +31,15 @@
 
 #include "TypeElement.h"
 
+#include <string>
+
 class CParameterBlockType : public CTypeElement
 {
 public:
-    CParameterBlockType(const string& strName);
+    CParameterBlockType(const std::string& strName);
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     virtual bool childrenAreDynamic() const;
     // Instantiation
@@ -45,6 +47,6 @@
     // Population
     virtual void populate(CElement* pElement) const;
     // Creating sub blocks with indexes
-    static string computeChildName(uint32_t uiChild);
+    static std::string computeChildName(uint32_t uiChild);
 };
 
diff --git a/parameter/ParameterFrameworkConfiguration.cpp b/parameter/ParameterFrameworkConfiguration.cpp
index 68a2c09..3488454 100644
--- a/parameter/ParameterFrameworkConfiguration.cpp
+++ b/parameter/ParameterFrameworkConfiguration.cpp
@@ -36,7 +36,7 @@
 {
 }
 
-string CParameterFrameworkConfiguration::getKind() const
+std::string CParameterFrameworkConfiguration::getKind() const
 {
     return "ParameterFrameworkConfiguration";
 }
@@ -47,7 +47,7 @@
 }
 
 // System class name
-const string& CParameterFrameworkConfiguration::getSystemClassName() const
+const std::string& CParameterFrameworkConfiguration::getSystemClassName() const
 {
     return _strSystemClassName;
 }
diff --git a/parameter/ParameterFrameworkConfiguration.h b/parameter/ParameterFrameworkConfiguration.h
index 7a3df94..a261775 100644
--- a/parameter/ParameterFrameworkConfiguration.h
+++ b/parameter/ParameterFrameworkConfiguration.h
@@ -31,13 +31,15 @@
 
 #include "Element.h"
 
+#include <string>
+
 class CParameterFrameworkConfiguration : public CElement
 {
 public:
     CParameterFrameworkConfiguration();
 
     // System class name
-    const string& getSystemClassName() const;
+    const std::string& getSystemClassName() const;
 
     // Tuning allowed
     bool isTuningAllowed() const;
@@ -48,11 +50,11 @@
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
 private:
-    virtual string getKind() const;
+    virtual std::string getKind() const;
     virtual bool childrenAreDynamic() const;
 
     // System class name
-    string _strSystemClassName;
+    std::string _strSystemClassName;
     // Tuning allowed
     bool _bTuningAllowed;
     // Server port
diff --git a/parameter/ParameterHandle.cpp b/parameter/ParameterHandle.cpp
index 230a2f1..b513972 100644
--- a/parameter/ParameterHandle.cpp
+++ b/parameter/ParameterHandle.cpp
@@ -35,6 +35,8 @@
 #include "ParameterMgr.h"
 #include "AutoLock.h"
 
+using std::string;
+
 CParameterHandle::CParameterHandle(const CBaseParameter* pParameter, CParameterMgr* pParameterMgr)
     : _pBaseParameter(pParameter), _pParameterMgr(pParameterMgr), _bBigEndianSubsystem(pParameter->getBelongingSubsystem()->isBigEndian())
 {
@@ -108,7 +110,7 @@
     return _pBaseParameter->accessAsBoolean(bValue, false, parameterAccessContext);
 }
 
-bool CParameterHandle::setAsBooleanArray(const vector<bool>& abValues, string& strError)
+bool CParameterHandle::setAsBooleanArray(const std::vector<bool>& abValues, string& strError)
 {
     // Check operation validity
     if (!checkAccessValidity(true, abValues.size(), strError)) {
@@ -128,12 +130,12 @@
     CParameterAccessContext parameterAccessContext(strError, _bBigEndianSubsystem, _pParameterMgr->getParameterBlackboard());
 
     // Copy values for type adaptation
-    vector<bool> abUserValues = abValues;
+    std::vector<bool> abUserValues = abValues;
 
     return _pBaseParameter->accessAsBooleanArray(abUserValues, true, parameterAccessContext);
 }
 
-bool CParameterHandle::getAsBooleanArray(vector<bool>& abValues, string& strError) const
+bool CParameterHandle::getAsBooleanArray(std::vector<bool>& abValues, string& strError) const
 {
     // Check operation validity
     if (!checkAccessValidity(false, -1, strError)) {
@@ -188,7 +190,7 @@
     return _pBaseParameter->accessAsInteger(uiValue, false, parameterAccessContext);
 }
 
-bool CParameterHandle::setAsIntegerArray(const vector<uint32_t>& auiValues, string& strError)
+bool CParameterHandle::setAsIntegerArray(const std::vector<uint32_t>& auiValues, string& strError)
 {
     // Check operation validity
     if (!checkAccessValidity(true, auiValues.size(), strError)) {
@@ -208,12 +210,12 @@
     CParameterAccessContext parameterAccessContext(strError, _bBigEndianSubsystem, _pParameterMgr->getParameterBlackboard());
 
     // Copy values for type adaptation
-    vector<uint32_t> auiUserValues = auiValues;
+    std::vector<uint32_t> auiUserValues = auiValues;
 
     return _pBaseParameter->accessAsIntegerArray(auiUserValues, true, parameterAccessContext);
 }
 
-bool CParameterHandle::getAsIntegerArray(vector<uint32_t>& auiValues, string& strError) const
+bool CParameterHandle::getAsIntegerArray(std::vector<uint32_t>& auiValues, string& strError) const
 {
     // Check operation validity
     if (!checkAccessValidity(false, -1, strError)) {
@@ -268,7 +270,7 @@
     return _pBaseParameter->accessAsSignedInteger(iValue, false, parameterAccessContext);
 }
 
-bool CParameterHandle::setAsSignedIntegerArray(const vector<int32_t>& aiValues, string& strError)
+bool CParameterHandle::setAsSignedIntegerArray(const std::vector<int32_t>& aiValues, string& strError)
 {
     // Check operation validity
     if (!checkAccessValidity(true, aiValues.size(), strError)) {
@@ -288,12 +290,12 @@
     CParameterAccessContext parameterAccessContext(strError, _bBigEndianSubsystem, _pParameterMgr->getParameterBlackboard());
 
     // Copy values for type adaptation
-    vector<int32_t> aiUserValues = aiValues;
+    std::vector<int32_t> aiUserValues = aiValues;
 
     return _pBaseParameter->accessAsSignedIntegerArray(aiUserValues, true, parameterAccessContext);
 }
 
-bool CParameterHandle::getAsSignedIntegerArray(vector<int32_t>& aiValues, string& strError) const
+bool CParameterHandle::getAsSignedIntegerArray(std::vector<int32_t>& aiValues, string& strError) const
 {
     // Check operation validity
     if (!checkAccessValidity(false, -1, strError)) {
@@ -348,7 +350,7 @@
     return _pBaseParameter->accessAsDouble(dValue, false, parameterAccessContext);
 }
 
-bool CParameterHandle::setAsDoubleArray(const vector<double>& adValues, string& strError)
+bool CParameterHandle::setAsDoubleArray(const std::vector<double>& adValues, string& strError)
 {
     // Check operation validity
     if (!checkAccessValidity(true, adValues.size(), strError)) {
@@ -368,12 +370,12 @@
     CParameterAccessContext parameterAccessContext(strError, _bBigEndianSubsystem, _pParameterMgr->getParameterBlackboard());
 
     // Copy values for type adaptation
-    vector<double> adUserValues = adValues;
+    std::vector<double> adUserValues = adValues;
 
     return _pBaseParameter->accessAsDoubleArray(adUserValues, true, parameterAccessContext);
 }
 
-bool CParameterHandle::getAsDoubleArray(vector<double>& adValues, string& strError) const
+bool CParameterHandle::getAsDoubleArray(std::vector<double>& adValues, string& strError) const
 {
     // Check operation validity
     if (!checkAccessValidity(false, -1, strError)) {
@@ -431,7 +433,7 @@
     return _pBaseParameter->accessAsString(strValue, false, parameterAccessContext);
 }
 
-bool CParameterHandle::setAsStringArray(const vector<string>& astrValues, string& strError)
+bool CParameterHandle::setAsStringArray(const std::vector<string>& astrValues, string& strError)
 {
     // Check operation validity
     if (!checkAccessValidity(true, astrValues.size(), strError)) {
@@ -451,12 +453,12 @@
     CParameterAccessContext parameterAccessContext(strError, _bBigEndianSubsystem, _pParameterMgr->getParameterBlackboard());
 
     // Copy values for type adaptation
-    vector<string> astrUserValues = astrValues;
+    std::vector<string> astrUserValues = astrValues;
 
     return _pBaseParameter->accessAsStringArray(astrUserValues, true, parameterAccessContext);
 }
 
-bool CParameterHandle::getAsStringArray(vector<string>& astrValues, string& strError) const
+bool CParameterHandle::getAsStringArray(std::vector<string>& astrValues, string& strError) const
 {
     // Check operation validity
     if (!checkAccessValidity(false, -1, strError)) {
diff --git a/parameter/ParameterMgr.cpp b/parameter/ParameterMgr.cpp
index 32082b3..0101dfb 100644
--- a/parameter/ParameterMgr.cpp
+++ b/parameter/ParameterMgr.cpp
@@ -90,6 +90,11 @@
 
 #define base CElement
 
+using std::string;
+using std::list;
+using std::vector;
+using std::ostringstream;
+
 // Used for remote processor server creation
 typedef IRemoteProcessorServerInterface* (*CreateRemoteProcessorServer)(uint16_t uiPort, IRemoteCommandHandler* pCommandHandler);
 
@@ -1187,7 +1192,7 @@
     }
 
     // Build configurable element path list
-    vector<string> astrNewElementSequence;
+    std::vector<string> astrNewElementSequence;
 
     uint32_t uiArgument;
 
diff --git a/parameter/ParameterMgr.h b/parameter/ParameterMgr.h
index 7d64e5c..0ff0272 100644
--- a/parameter/ParameterMgr.h
+++ b/parameter/ParameterMgr.h
@@ -41,6 +41,7 @@
 #include "XmlDocSink.h"
 #include "XmlDocSource.h"
 
+#include <string>
 
 class CElementLibrarySet;
 class CSubsystemLibrary;
@@ -74,7 +75,7 @@
     // Remote command parsers
     typedef TRemoteCommandHandlerTemplate<CParameterMgr> CCommandHandler;
 
-    typedef CCommandHandler::CommandStatus (CParameterMgr::*RemoteCommandParser)(const IRemoteCommand& remoteCommand, string& strResult);
+    typedef CCommandHandler::CommandStatus (CParameterMgr::*RemoteCommandParser)(const IRemoteCommand& remoteCommand, std::string& strResult);
 
     // Parser descriptions
     struct SRemoteCommandParserItem
@@ -103,7 +104,7 @@
     };
 
     // Construction
-    CParameterMgr(const string& strConfigurationFilePath);
+    CParameterMgr(const std::string& strConfigurationFilePath);
     virtual ~CParameterMgr();
 
     // Logging
@@ -111,19 +112,19 @@
 
     /** Load plugins, structures and settings from the config file given.
       *
-      * @param[out] strError is a string describing the error if an error occurred
+      * @param[out] strError is a std::string describing the error if an error occurred
       *                      undefined otherwise.
       *
       * @return true if no error occurred, false otherwise.
       */
-    bool load(string& strError);
-    virtual bool init(string& strError);
+    bool load(std::string& strError);
+    virtual bool init(std::string& strError);
 
     // Selection Criteria
     CSelectionCriterionType* createSelectionCriterionType(bool bIsInclusive);
-    CSelectionCriterion* createSelectionCriterion(const string& strName, const CSelectionCriterionType* pSelectionCriterionType);
+    CSelectionCriterion* createSelectionCriterion(const std::string& strName, const CSelectionCriterionType* pSelectionCriterionType);
     // Selection criterion retrieval
-    CSelectionCriterion* getSelectionCriterion(const string& strName);
+    CSelectionCriterion* getSelectionCriterion(const std::string& strName);
 
     // Configuration application
     void applyConfigurations();
@@ -131,16 +132,16 @@
     /**
      * Returns the CConfigurableElement corresponding to the path given in argument.
      *
-     * @param[in] strPath A string representing a path to an element.
+     * @param[in] strPath A std::string representing a path to an element.
      * @param[out] strError Error message
      *
      * @return A const pointer to the corresponding CConfigurableElement.
      * On error, NULL is returned and the error is explained in strError.
      */
-    const CConfigurableElement* getConfigurableElement(const string& strPath,
-                                                       string& strError) const;
+    const CConfigurableElement* getConfigurableElement(const std::string& strPath,
+                                                       std::string& strError) const;
     // Dynamic parameter handling
-    CParameterHandle* createParameterHandle(const string& strPath, string& strError);
+    CParameterHandle* createParameterHandle(const std::string& strPath, std::string& strError);
 
     /** Should start fail in case of missing subsystems.
       *
@@ -187,7 +188,7 @@
 
     //////////// Tuning /////////////
     // Tuning mode
-    bool setTuningMode(bool bOn, string& strError);
+    bool setTuningMode(bool bOn, std::string& strError);
     bool tuningModeOn() const;
 
     // Current value space for user set/get value interpretation
@@ -199,13 +200,13 @@
     bool outputRawFormatIsHex();
 
     // Automatic hardware synchronization control (during tuning session)
-    bool setAutoSync(bool bAutoSyncOn, string& strError);
+    bool setAutoSync(bool bAutoSyncOn, std::string& strError);
     bool autoSyncOn() const;
-    bool sync(string& strError);
+    bool sync(std::string& strError);
 
     // User set/get parameters
-    bool accessValue(CParameterAccessContext& parameterAccessContext, const string& strPath, string& strValue, bool bSet, string& strError);
-    bool accessParameterValue(const string& strPath, string& strValue, bool bSet, string& strError);
+    bool accessValue(CParameterAccessContext& parameterAccessContext, const std::string& strPath, std::string& strValue, bool bSet, std::string& strError);
+    bool accessParameterValue(const std::string& strPath, std::string& strValue, bool bSet, std::string& strError);
     /**
      * Returns the element mapping corresponding to the path given in parameter.
      *
@@ -214,30 +215,30 @@
      *
      * @return true if a mapping was found for this element
      */
-    bool getParameterMapping(const string& strPath, string& strValue) const;
-    bool accessConfigurationValue(const string &strDomain, const string &stConfiguration, const string& strPath, string& strValue, bool bSet, string& strError);
+    bool getParameterMapping(const std::string& strPath, std::string& strValue) const;
+    bool accessConfigurationValue(const std::string &strDomain, const std::string &stConfiguration, const std::string& strPath, std::string& strValue, bool bSet, std::string& strError);
 
     ////////// Configuration/Domains handling //////////////
     // Creation/Deletion
-    bool createDomain(const string& strName, string& strError);
-    bool deleteDomain(const string& strName, string& strError);
-    bool deleteAllDomains(string& strError);
-    bool createConfiguration(const string& strDomain, const string& strConfiguration, string& strError);
-    bool deleteConfiguration(const string& strDomain, const string& strConfiguration, string& strError);
+    bool createDomain(const std::string& strName, std::string& strError);
+    bool deleteDomain(const std::string& strName, std::string& strError);
+    bool deleteAllDomains(std::string& strError);
+    bool createConfiguration(const std::string& strDomain, const std::string& strConfiguration, std::string& strError);
+    bool deleteConfiguration(const std::string& strDomain, const std::string& strConfiguration, std::string& strError);
 
     // Save/Restore
-    bool restoreConfiguration(const string& strDomain, const string& strConfiguration, list<string>& strError);
-    bool saveConfiguration(const string& strDomain, const string& strConfiguration, string& strError);
+    bool restoreConfiguration(const std::string& strDomain, const std::string& strConfiguration, std::list<std::string>& strError);
+    bool saveConfiguration(const std::string& strDomain, const std::string& strConfiguration, std::string& strError);
 
     // Configurable element - domain association
-    bool addConfigurableElementToDomain(const string& strDomain, const string& strConfigurableElementPath, string& strError);
-    bool removeConfigurableElementFromDomain(const string& strDomain, const string& strConfigurableElementPath, string& strError);
-    bool split(const string& strDomain, const string& strConfigurableElementPath, string& strError);
+    bool addConfigurableElementToDomain(const std::string& strDomain, const std::string& strConfigurableElementPath, std::string& strError);
+    bool removeConfigurableElementFromDomain(const std::string& strDomain, const std::string& strConfigurableElementPath, std::string& strError);
+    bool split(const std::string& strDomain, const std::string& strConfigurableElementPath, std::string& strError);
 
     /**
       * Method that imports Configurable Domains from an Xml source.
       *
-      * @param[in] strXmlSource a string containing an xml description or a path to an xml file
+      * @param[in] strXmlSource a std::string containing an xml description or a path to an xml file
       * @param[in] bWithSettings a boolean that determines if the settings should be used in the
       * xml description
       * @param[in] bFromFile a boolean that determines if the source is an xml description in
@@ -246,15 +247,15 @@
       *
       * @return false if any error occures
       */
-    bool importDomainsXml(const string& strXmlSource, bool bWithSettings, bool bFromFile,
-                          string& strError);
+    bool importDomainsXml(const std::string& strXmlSource, bool bWithSettings, bool bFromFile,
+                          std::string& strError);
 
     /**
       * Method that exports Configurable Domains to an Xml destination.
       * If bToFile is false, the xml description from the xml document will be written
       * in strXmlDest. Otherwise it will be written in a file located at the path in strXmlDest
       *
-      * @param[in:out] strXmlDest a string containing an xml description or a path to an xml file
+      * @param[in:out] strXmlDest a std::string containing an xml description or a path to an xml file
       * @param[in] bWithSettings a boolean that determines if the settings should be used in the
       * xml description
       * @param[in] bToFile a boolean that determines if the destination is an xml description in
@@ -263,12 +264,12 @@
       *
       * @return false if any error occures
       */
-    bool exportDomainsXml(string& strXmlDest, bool bWithSettings, bool bToFile,
-                          string& strError) const;
+    bool exportDomainsXml(std::string& strXmlDest, bool bWithSettings, bool bToFile,
+                          std::string& strError) const;
 
     // Binary Import/Export
-    bool importDomainsBinary(const string& strFileName, string& strError);
-    bool exportDomainsBinary(const string& strFileName, string& strError);
+    bool importDomainsBinary(const std::string& strFileName, std::string& strError);
+    bool exportDomainsBinary(const std::string& strFileName, std::string& strError);
 
     /**
       * Method that creates an Xml description of the instanciated parameter structure contained
@@ -278,138 +279,138 @@
       *
       * @return false if any error occures during the creation of the xml description
       */
-    bool getSystemClassXMLString(string& strResult);
+    bool getSystemClassXMLString(std::string& strResult);
 
     // Introspect
-    void logStructureContent(string& strContent) const;
+    void logStructureContent(std::string& strContent) const;
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
 private:
     CParameterMgr(const CParameterMgr&);
     CParameterMgr& operator=(const CParameterMgr&);
 
     // Logging (done by root)
-    virtual void doLog(bool bIsWarning, const string& strLog) const;
+    virtual void doLog(bool bIsWarning, const std::string& strLog) const;
     virtual void nestLog() const;
     virtual void unnestLog() const;
 
     // Version
-    string getVersion() const;
+    std::string getVersion() const;
 
     ////////////////:: Remote command parsers
     /// Version
-    CCommandHandler::CommandStatus versionCommandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus versionCommandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     /// Status
-    CCommandHandler::CommandStatus statusCommandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus statusCommandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     /// Tuning Mode
-    CCommandHandler::CommandStatus setTuningModeCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus getTuningModeCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus setTuningModeCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus getTuningModeCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     /// Value Space
-    CCommandHandler::CommandStatus setValueSpaceCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus getValueSpaceCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus setValueSpaceCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus getValueSpaceCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     /// Output Raw Format
-    CCommandHandler::CommandStatus setOutputRawFormatCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus getOutputRawFormatCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus setOutputRawFormatCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus getOutputRawFormatCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     /// Sync
-    CCommandHandler::CommandStatus setAutoSyncCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus getAutoSyncCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus syncCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus setAutoSyncCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus getAutoSyncCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus syncCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     /// Criteria
-    CCommandHandler::CommandStatus listCriteriaCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus listCriteriaCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     /// Domains
-    CCommandHandler::CommandStatus listDomainsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus createDomainCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus deleteDomainCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus deleteAllDomainsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus renameDomainCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus setSequenceAwarenessCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus getSequenceAwarenessCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus listDomainElementsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus addElementCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus removeElementCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus splitDomainCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus listDomainsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus createDomainCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus deleteDomainCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus deleteAllDomainsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus renameDomainCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus setSequenceAwarenessCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus getSequenceAwarenessCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus listDomainElementsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus addElementCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus removeElementCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus splitDomainCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     /// Configurations
-    CCommandHandler::CommandStatus listConfigurationsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus dumpDomainsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus createConfigurationCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus deleteConfigurationCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus renameConfigurationCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus saveConfigurationCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus restoreConfigurationCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus setElementSequenceCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus getElementSequenceCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus setRuleCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus clearRuleCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus getRuleCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus listConfigurationsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus dumpDomainsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus createConfigurationCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus deleteConfigurationCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus renameConfigurationCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus saveConfigurationCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus restoreConfigurationCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus setElementSequenceCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus getElementSequenceCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus setRuleCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus clearRuleCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus getRuleCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     /// Elements/Parameters
-    CCommandHandler::CommandStatus listElementsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus listParametersCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus dumpElementCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus getElementSizeCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus showPropertiesCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus getParameterCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus setParameterCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus getConfigurationParameterCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus setConfigurationParameterCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus listBelongingDomainsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus listAssociatedDomainsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus listElementsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus listParametersCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus dumpElementCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus getElementSizeCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus showPropertiesCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus getParameterCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus setParameterCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus getConfigurationParameterCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus setConfigurationParameterCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus listBelongingDomainsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus listAssociatedDomainsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     CCommandHandler::CommandStatus showMappingCommmandProcess(const IRemoteCommand& remoteCommand,
-                                                              string& strResult);
+                                                              std::string& strResult);
     /// Browse
-    CCommandHandler::CommandStatus listAssociatedElementsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus listConflictingElementsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus listRogueElementsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus listAssociatedElementsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus listConflictingElementsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus listRogueElementsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
     /// Settings Import/Export
-    CCommandHandler::CommandStatus exportConfigurableDomainsToXMLCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus importConfigurableDomainsFromXMLCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus exportConfigurableDomainsWithSettingsToXMLCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus importConfigurableDomainsWithSettingsFromXMLCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus exportSettingsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
-    CCommandHandler::CommandStatus importSettingsCommmandProcess(const IRemoteCommand& remoteCommand, string& strResult);
+    CCommandHandler::CommandStatus exportConfigurableDomainsToXMLCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus importConfigurableDomainsFromXMLCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus exportConfigurableDomainsWithSettingsToXMLCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus importConfigurableDomainsWithSettingsFromXMLCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus exportSettingsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
+    CCommandHandler::CommandStatus importSettingsCommmandProcess(const IRemoteCommand& remoteCommand, std::string& strResult);
 
     /**
       * Command handler method for getConfigurableDomainWithSettings command.
       *
       * @param[in] remoteCommand contains the arguments of the received command.
-      * @param[out] strResult a string containing the result of the command
+      * @param[out] strResult a std::string containing the result of the command
       *
       * @return CCommandHandler::ESucceeded if command succeeded or CCommandHandler::EFailed
       * in the other case
       */
     CCommandHandler::CommandStatus getConfigurableDomainsWithSettingsXMLCommmandProcess(
-            const IRemoteCommand& remoteCommand, string& strResult);
+            const IRemoteCommand& remoteCommand, std::string& strResult);
 
     /**
       * Command handler method for setConfigurableDomainWithSettings command.
       *
       * @param[in] remoteCommand contains the arguments of the received command.
-      * @param[out] strResult a string containing the result of the command
+      * @param[out] strResult a std::string containing the result of the command
       *
       * @return CCommandHandler::ESucceeded if command succeeded or CCommandHandler::EFailed
       * in the other case
       */
     CCommandHandler::CommandStatus setConfigurableDomainsWithSettingsXMLCommmandProcess(
-            const IRemoteCommand& remoteCommand, string& strResult);
+            const IRemoteCommand& remoteCommand, std::string& strResult);
 
     /**
       * Command handler method for getSystemClass command.
       *
       * @param[in] remoteCommand contains the arguments of the received command.
-      * @param[out] strResult a string containing the result of the command
+      * @param[out] strResult a std::string containing the result of the command
       *
       * @return CCommandHandler::ESucceeded if command succeeded or CCommandHandler::EFailed
       * in the other case
       */
     CCommandHandler::CommandStatus getSystemClassXMLCommmandProcess(
-            const IRemoteCommand& remoteCommand, string& strResult);
+            const IRemoteCommand& remoteCommand, std::string& strResult);
 
     // Max command usage length, use for formatting
     void setMaxCommandUsageLength();
 
     // For tuning, check we're in tuning mode
-    bool checkTuningModeOn(string& strError) const;
+    bool checkTuningModeOn(std::string& strError) const;
 
     // Blackboard (dynamic parameter handling)
     pthread_mutex_t* getBlackboardMutex();
@@ -418,21 +419,21 @@
     CParameterBlackboard* getParameterBlackboard();
 
     // Parameter access
-    bool doSetValue(const string& strPath, const string& strValue, bool bRawValueSpace, bool bDynamicAccess, string& strError) const;
-    bool doGetValue(const string& strPath, string& strValue, bool bRawValueSpace, bool bHexOutputRawFormat, bool bDynamicAccess, string& strError) const;
+    bool doSetValue(const std::string& strPath, const std::string& strValue, bool bRawValueSpace, bool bDynamicAccess, std::string& strError) const;
+    bool doGetValue(const std::string& strPath, std::string& strValue, bool bRawValueSpace, bool bHexOutputRawFormat, bool bDynamicAccess, std::string& strError) const;
 
     // Framework global configuration loading
-    bool loadFrameworkConfiguration(string& strError);
+    bool loadFrameworkConfiguration(std::string& strError);
 
     // System class Structure loading
-    bool loadStructure(string& strError);
+    bool loadStructure(std::string& strError);
 
     // System class Structure loading
-    bool loadSettings(string& strError);
-    bool loadSettingsFromConfigFile(string& strError);
+    bool loadSettings(std::string& strError);
+    bool loadSettingsFromConfigFile(std::string& strError);
 
     // Parse XML file into Root element
-    bool xmlParse(CXmlElementSerializingContext& elementSerializingContext, CElement* pRootElement, const string& strXmlFilePath, const string& strXmlFolder, ElementLibrary eElementLibrary, const string& strNameAttrituteName = "Name");
+    bool xmlParse(CXmlElementSerializingContext& elementSerializingContext, CElement* pRootElement, const std::string& strXmlFilePath, const std::string& strXmlFolder, ElementLibrary eElementLibrary, const std::string& strNameAttrituteName = "Name");
 
     // Framework Configuration
     CParameterFrameworkConfiguration* getFrameworkConfiguration();
@@ -458,7 +459,7 @@
     void feedElementLibraries();
 
     // Remote Processor Server connection handling
-    bool handleRemoteProcessingInterface(string& strError);
+    bool handleRemoteProcessingInterface(std::string& strError);
 
     // Back synchronization
     CBackSynchronizer* createBackSynchronizer() const;
@@ -482,9 +483,9 @@
     CElementLibrarySet* _pElementLibrarySet;
 
     // XML parsing, object creation handling
-    string _strXmlConfigurationFilePath; // Configuration file path
-    string _strXmlConfigurationFolderPath; // Root folder for configuration file
-    string _strSchemaFolderLocation; // Place where schemas stand
+    std::string _strXmlConfigurationFilePath; // Configuration file path
+    std::string _strXmlConfigurationFolderPath; // Root folder for configuration file
+    std::string _strSchemaFolderLocation; // Place where schemas stand
 
     // Subsystem plugin location
     const CSubsystemPlugins* _pSubsystemPlugins;
diff --git a/parameter/ParameterMgrLogger.cpp b/parameter/ParameterMgrLogger.cpp
index 4b8a9b7..ddd81ef 100644
--- a/parameter/ParameterMgrLogger.cpp
+++ b/parameter/ParameterMgrLogger.cpp
@@ -31,6 +31,8 @@
 #include "ParameterMgrPlatformConnector.h"
 
 
+using std::string;
+
 CParameterMgrLogger::CParameterMgrLogger(CParameterMgrPlatformConnector *pParameterMgrPlatformConnector) :
         _pParameterMgrPlatformConnector(pParameterMgrPlatformConnector)
 {
diff --git a/parameter/ParameterMgrLogger.h b/parameter/ParameterMgrLogger.h
index 6756fdc..5a8dd9d 100644
--- a/parameter/ParameterMgrLogger.h
+++ b/parameter/ParameterMgrLogger.h
@@ -31,6 +31,8 @@
 
 #include "ParameterMgr.h"
 
+#include <string>
+
 class CParameterMgrPlatformConnector;
 
 class CParameterMgrLogger : public CParameterMgr::ILogger
@@ -39,7 +41,7 @@
     CParameterMgrLogger(CParameterMgrPlatformConnector* pParameterMgrPlatformConnector);
 
     // Logging
-    virtual void log(bool bIsWarning, const string& strLog);
+    virtual void log(bool bIsWarning, const std::string& strLog);
 
 private:
     // Log destination
diff --git a/parameter/ParameterMgrPlatformConnector.cpp b/parameter/ParameterMgrPlatformConnector.cpp
index bcc9012..b98692c 100644
--- a/parameter/ParameterMgrPlatformConnector.cpp
+++ b/parameter/ParameterMgrPlatformConnector.cpp
@@ -32,6 +32,8 @@
 #include "ParameterMgrLogger.h"
 #include <assert.h>
 
+using std::string;
+
 // Construction
 CParameterMgrPlatformConnector::CParameterMgrPlatformConnector(
         const string& strConfigurationFilePath) :
diff --git a/parameter/ParameterType.cpp b/parameter/ParameterType.cpp
index 98ae2f1..01d94aa 100755
--- a/parameter/ParameterType.cpp
+++ b/parameter/ParameterType.cpp
@@ -34,6 +34,8 @@
 
 #define base CTypeElement
 
+using std::string;
+
 CParameterType::CParameterType(const string& strName) : base(strName), _uiSize(0)
 {
 }
diff --git a/parameter/ParameterType.h b/parameter/ParameterType.h
index 35cfad7..7d7caf7 100755
--- a/parameter/ParameterType.h
+++ b/parameter/ParameterType.h
@@ -34,28 +34,30 @@
 
 #include "TypeElement.h"
 
+#include <string>
+
 class CParameterAccessContext;
 class CConfigurationAccessContext;
 
 class CParameterType : public CTypeElement
 {
 public:
-    CParameterType(const string& strName);
+    CParameterType(const std::string& strName);
     virtual ~CParameterType();
 
     // Size
     uint32_t getSize() const;
 
     // Unit
-    string getUnit() const;
+    std::string getUnit() const;
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
 
     /// Conversions
     // String
-    virtual bool toBlackboard(const string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const = 0;
-    virtual bool fromBlackboard(string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const = 0;
+    virtual bool toBlackboard(const std::string& strValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const = 0;
+    virtual bool fromBlackboard(std::string& strValue, const uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const = 0;
     // Boolean
     virtual bool toBlackboard(bool bUserValue, uint32_t& uiValue, CParameterAccessContext& parameterAccessContext) const;
     virtual bool fromBlackboard(bool& bUserValue, uint32_t uiValue, CParameterAccessContext& parameterAccessContext) const;
@@ -74,7 +76,7 @@
     virtual void handleValueSpaceAttribute(CXmlElement& xmlConfigurableElementSettingsElement, CConfigurationAccessContext& configurationAccessContext) const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // Default value handling (simulation only)
     virtual uint32_t getDefaultValue() const;
@@ -111,8 +113,8 @@
     type getMaxValue() const
     {
         return getSize() < sizeof(type) ?
-                    (static_cast<type>(1) << (getSize() * numeric_limits<unsigned char>::digits - 1)) - 1 :
-                    numeric_limits<type>::max();
+                    (static_cast<type>(1) << (getSize() * std::numeric_limits<unsigned char>::digits - 1)) - 1 :
+                    std::numeric_limits<type>::max();
     }
 
 private:
@@ -127,5 +129,5 @@
     // Size in bytes
     uint32_t _uiSize;
     // Unit
-    string _strUnit;
+    std::string _strUnit;
 };
diff --git a/parameter/PathNavigator.cpp b/parameter/PathNavigator.cpp
index fcf6197..47fc5c5 100644
--- a/parameter/PathNavigator.cpp
+++ b/parameter/PathNavigator.cpp
@@ -30,12 +30,12 @@
 #include "PathNavigator.h"
 #include "Tokenizer.h"
 
-CPathNavigator::CPathNavigator(const string& strPath) : _uiCurrentIndex(0)
+CPathNavigator::CPathNavigator(const std::string& strPath) : _uiCurrentIndex(0)
 {
     init(strPath);
 }
 
-void CPathNavigator::init(const string& strPath)
+void CPathNavigator::init(const std::string& strPath)
 {
     Tokenizer tokenizer(strPath, "/");
 
@@ -50,7 +50,7 @@
 }
 
 // Navigate through
-bool CPathNavigator::navigateThrough(const string& strItemName, string& strError)
+bool CPathNavigator::navigateThrough(const std::string& strItemName, std::string& strError)
 {
     if (!_bValid) {
 
@@ -59,7 +59,7 @@
         return false;
     }
 
-    string* pStrChildName = next();
+    std::string* pStrChildName = next();
 
     if (!pStrChildName) {
 
@@ -80,7 +80,7 @@
     return true;
 }
 
-string* CPathNavigator::next()
+std::string* CPathNavigator::next()
 {
     if (_uiCurrentIndex < _astrItems.size()) {
 
@@ -90,9 +90,9 @@
     return NULL;
 }
 
-string CPathNavigator::getCurrentPath() const
+std::string CPathNavigator::getCurrentPath() const
 {
-    string strPath = "/";
+    std::string strPath = "/";
 
     if (!_uiCurrentIndex) {
 
@@ -112,7 +112,7 @@
 }
 
 
-bool CPathNavigator::checkPathFormat(const string& strUpl)
+bool CPathNavigator::checkPathFormat(const std::string& strUpl)
 {
     return strUpl[0] == '/';
 }
diff --git a/parameter/PathNavigator.h b/parameter/PathNavigator.h
index 8a09cb2..3db709a 100644
--- a/parameter/PathNavigator.h
+++ b/parameter/PathNavigator.h
@@ -33,30 +33,28 @@
 #include <string>
 #include <stdint.h>
 
-using namespace std;
-
 class CPathNavigator
 {
 public:
-    CPathNavigator(const string& strPath);
+    CPathNavigator(const std::string& strPath);
 
     // Path validity
     bool isPathValid() const;
 
     // Navigate through
-    bool navigateThrough(const string& strItemName, string& strError);
+    bool navigateThrough(const std::string& strItemName, std::string& strError);
 
     // Nagivate
-    string* next();
+    std::string* next();
 
     // Current path
-    string getCurrentPath() const;
+    std::string getCurrentPath() const;
 
 private:
-    void init(const string& strPath);
-    static bool checkPathFormat(const string& strUpl);
+    void init(const std::string& strPath);
+    static bool checkPathFormat(const std::string& strUpl);
 
     bool _bValid;
-    vector<string> _astrItems;
+    std::vector<std::string> _astrItems;
     uint32_t _uiCurrentIndex;
 };
diff --git a/parameter/PluginLocation.cpp b/parameter/PluginLocation.cpp
index ce12267..92f2ce9 100644
--- a/parameter/PluginLocation.cpp
+++ b/parameter/PluginLocation.cpp
@@ -31,17 +31,17 @@
 
 #define base CKindElement
 
-CPluginLocation::CPluginLocation(const string& strName, const string& strKind) : base(strName, strKind)
+CPluginLocation::CPluginLocation(const std::string& strName, const std::string& strKind) : base(strName, strKind)
 {
 
 }
 
-const string& CPluginLocation::getFolder() const
+const std::string& CPluginLocation::getFolder() const
 {
     return _strFolder;
 }
 
-const list<string>& CPluginLocation::getPluginList() const
+const std::list<std::string>& CPluginLocation::getPluginList() const
 {
     return _pluginList;
 }
diff --git a/parameter/PluginLocation.h b/parameter/PluginLocation.h
index 0137ce3..3a8e131 100644
--- a/parameter/PluginLocation.h
+++ b/parameter/PluginLocation.h
@@ -28,26 +28,27 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 #pragma once
-#include <list>
 #include "KindElement.h"
+#include <list>
+#include <string>
 
 class CPluginLocation : public CKindElement
 {
 
 public:
-    CPluginLocation(const string& strName, const string& strKind);
+    CPluginLocation(const std::string& strName, const std::string& strKind);
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
 
     // Folder
-    const string& getFolder() const;
+    const std::string& getFolder() const;
 
     // Plugin list
-    const list<string>& getPluginList() const;
+    const std::list<std::string>& getPluginList() const;
 
 private:
-    string _strFolder;
-    list<string> _pluginList;
+    std::string _strFolder;
+    std::list<std::string> _pluginList;
 
 };
diff --git a/parameter/Rule.h b/parameter/Rule.h
index 7fcbb53..42f420d 100644
--- a/parameter/Rule.h
+++ b/parameter/Rule.h
@@ -31,6 +31,8 @@
 
 #include "Element.h"
 
+#include <string>
+
 class CRuleParser;
 
 class CRule : public CElement
@@ -38,10 +40,10 @@
 
 public:
     // Parse
-    virtual bool parse(CRuleParser& ruleParser, string& strError) = 0;
+    virtual bool parse(CRuleParser& ruleParser, std::string& strError) = 0;
 
     // Dump
-    virtual void dump(string& strResult) const = 0;
+    virtual void dump(std::string& strResult) const = 0;
 
     // Rule check
     virtual bool matches() const = 0;
diff --git a/parameter/RuleParser.cpp b/parameter/RuleParser.cpp
index 42c16f2..d4ac87d 100644
--- a/parameter/RuleParser.cpp
+++ b/parameter/RuleParser.cpp
@@ -32,6 +32,8 @@
 #include "SelectionCriterionRule.h"
 #include <assert.h>
 
+using std::string;
+
 // Matches
 const char* CRuleParser::_acDelimiters[CRuleParser::ENbStatuses] = {
     "{",    // EInit
diff --git a/parameter/RuleParser.h b/parameter/RuleParser.h
index 7beceec..f701d76 100644
--- a/parameter/RuleParser.h
+++ b/parameter/RuleParser.h
@@ -32,8 +32,6 @@
 #include <string>
 #include <stdint.h>
 
-using namespace std;
-
 class CCompoundRule;
 class CSelectionCriteriaDefinition;
 
@@ -51,20 +49,20 @@
         ENbStatuses
     };
 
-    CRuleParser(const string& strApplicationRule, const CSelectionCriteriaDefinition* pSelectionCriteriaDefinition);
+    CRuleParser(const std::string& strApplicationRule, const CSelectionCriteriaDefinition* pSelectionCriteriaDefinition);
     ~CRuleParser();
 
     // Parse
-    bool parse(CCompoundRule* pParentRule, string& strError);
+    bool parse(CCompoundRule* pParentRule, std::string& strError);
 
     // Iterate
-    bool iterate(string& strError);
+    bool iterate(std::string& strError);
 
     // Next word
-    bool next(string& strNext, string& strError);
+    bool next(std::string& strNext, std::string& strError);
 
     // Rule type
-    const string& getType() const;
+    const std::string& getType() const;
 
     // Criteria defintion
     const CSelectionCriteriaDefinition* getSelectionCriteriaDefinition() const;
@@ -77,7 +75,7 @@
     CRuleParser& operator=(const CRuleParser&);
 
     // Rule definition
-    string _strApplicationRule;
+    std::string _strApplicationRule;
     // Criteria defintion
     const CSelectionCriteriaDefinition* _pSelectionCriteriaDefinition;
     // Iterator
@@ -85,7 +83,7 @@
     // Deepness
     uint32_t _uiCurrentDeepness;
     // Current Type
-    string _strRuleType;
+    std::string _strRuleType;
     // Status
     Status _eStatus;
     // Root rule
diff --git a/parameter/SelectionCriteria.cpp b/parameter/SelectionCriteria.cpp
index 91f8398..87ad76e 100644
--- a/parameter/SelectionCriteria.cpp
+++ b/parameter/SelectionCriteria.cpp
@@ -39,7 +39,7 @@
     addChild(new CSelectionCriteriaDefinition);
 }
 
-string CSelectionCriteria::getKind() const
+std::string CSelectionCriteria::getKind() const
 {
     return "SelectionCriteria";
 }
@@ -50,19 +50,19 @@
     return getSelectionCriterionLibrary()->createSelectionCriterionType(bIsInclusive);
 }
 
-CSelectionCriterion* CSelectionCriteria::createSelectionCriterion(const string& strName, const CSelectionCriterionType* pSelectionCriterionType)
+CSelectionCriterion* CSelectionCriteria::createSelectionCriterion(const std::string& strName, const CSelectionCriterionType* pSelectionCriterionType)
 {
     return getSelectionCriteriaDefinition()->createSelectionCriterion(strName, pSelectionCriterionType);
 }
 
 // Selection criterion retrieval
-CSelectionCriterion* CSelectionCriteria::getSelectionCriterion(const string& strName)
+CSelectionCriterion* CSelectionCriteria::getSelectionCriterion(const std::string& strName)
 {
     return getSelectionCriteriaDefinition()->getSelectionCriterion(strName);
 }
 
 // List available criteria
-void CSelectionCriteria::listSelectionCriteria(list<string>& lstrResult, bool bWithTypeInfo, bool bHumanReadable) const
+void CSelectionCriteria::listSelectionCriteria(std::list<std::string>& lstrResult, bool bWithTypeInfo, bool bHumanReadable) const
 {
     getSelectionCriteriaDefinition()->listSelectionCriteria(lstrResult, bWithTypeInfo, bHumanReadable);
 }
diff --git a/parameter/SelectionCriteria.h b/parameter/SelectionCriteria.h
index 6960cd9..122b8a2 100644
--- a/parameter/SelectionCriteria.h
+++ b/parameter/SelectionCriteria.h
@@ -34,6 +34,8 @@
 #include "SelectionCriterionType.h"
 #include "SelectionCriterion.h"
 
+#include <string>
+
 class CSelectionCriterionLibrary;
 class CSelectionCriteriaDefinition;
 class ISelectionCriterionObserver;
@@ -49,18 +51,18 @@
 
     // Selection Criteria/Type creation
     CSelectionCriterionType* createSelectionCriterionType(bool bIsInclusive);
-    CSelectionCriterion* createSelectionCriterion(const string& strName, const CSelectionCriterionType* pSelectionCriterionType);
+    CSelectionCriterion* createSelectionCriterion(const std::string& strName, const CSelectionCriterionType* pSelectionCriterionType);
     // Selection criterion retrieval
-    CSelectionCriterion* getSelectionCriterion(const string& strName);
+    CSelectionCriterion* getSelectionCriterion(const std::string& strName);
 
     // Selection Criterion definition
     const CSelectionCriteriaDefinition* getSelectionCriteriaDefinition() const;
 
     // List available criteria
-    void listSelectionCriteria(list<string>& strResult, bool bWithTypeInfo, bool bHumanReadable) const;
+    void listSelectionCriteria(std::list<std::string>& strResult, bool bWithTypeInfo, bool bHumanReadable) const;
 
     // Base
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
     // Reset the modified status of the children
     void resetModifiedStatus();
diff --git a/parameter/SelectionCriteriaDefinition.cpp b/parameter/SelectionCriteriaDefinition.cpp
index aefedb0..f14aad8 100644
--- a/parameter/SelectionCriteriaDefinition.cpp
+++ b/parameter/SelectionCriteriaDefinition.cpp
@@ -34,13 +34,13 @@
 {
 }
 
-string CSelectionCriteriaDefinition::getKind() const
+std::string CSelectionCriteriaDefinition::getKind() const
 {
     return "SelectionCriteriaDefinition";
 }
 
 // Selection Criterion creation
-CSelectionCriterion* CSelectionCriteriaDefinition::createSelectionCriterion(const string& strName, const CSelectionCriterionType* pSelectionCriterionType)
+CSelectionCriterion* CSelectionCriteriaDefinition::createSelectionCriterion(const std::string& strName, const CSelectionCriterionType* pSelectionCriterionType)
 {
     CSelectionCriterion* pSelectionCriterion = new CSelectionCriterion(strName, pSelectionCriterionType);
 
@@ -50,18 +50,18 @@
 }
 
 // Selection Criterion access
-const CSelectionCriterion* CSelectionCriteriaDefinition::getSelectionCriterion(const string& strName) const
+const CSelectionCriterion* CSelectionCriteriaDefinition::getSelectionCriterion(const std::string& strName) const
 {
     return static_cast<const CSelectionCriterion*>(findChild(strName));
 }
 
-CSelectionCriterion* CSelectionCriteriaDefinition::getSelectionCriterion(const string& strName)
+CSelectionCriterion* CSelectionCriteriaDefinition::getSelectionCriterion(const std::string& strName)
 {
     return static_cast<CSelectionCriterion*>(findChild(strName));
 }
 
 // List available criteria
-void CSelectionCriteriaDefinition::listSelectionCriteria(list<string>& lstrResult, bool bWithTypeInfo, bool bHumanReadable) const
+void CSelectionCriteriaDefinition::listSelectionCriteria(std::list<std::string>& lstrResult, bool bWithTypeInfo, bool bHumanReadable) const
 {
     // Propagate
     uint32_t uiNbChildren = getNbChildren();
diff --git a/parameter/SelectionCriteriaDefinition.h b/parameter/SelectionCriteriaDefinition.h
index cc5dfb9..617b379 100644
--- a/parameter/SelectionCriteriaDefinition.h
+++ b/parameter/SelectionCriteriaDefinition.h
@@ -40,17 +40,17 @@
     CSelectionCriteriaDefinition();
 
     // Selection Criterion creation
-    CSelectionCriterion* createSelectionCriterion(const string& strName, const CSelectionCriterionType* pSelectionCriterionType);
+    CSelectionCriterion* createSelectionCriterion(const std::string& strName, const CSelectionCriterionType* pSelectionCriterionType);
 
     // Selection Criterion access
-    const CSelectionCriterion* getSelectionCriterion(const string& strName) const;
-    CSelectionCriterion* getSelectionCriterion(const string& strName);
+    const CSelectionCriterion* getSelectionCriterion(const std::string& strName) const;
+    CSelectionCriterion* getSelectionCriterion(const std::string& strName);
 
     // List available criteria
-    void listSelectionCriteria(list<string>& lstrResult, bool bWithTypeInfo, bool bHumanReadable) const;
+    void listSelectionCriteria(std::list<std::string>& lstrResult, bool bWithTypeInfo, bool bHumanReadable) const;
 
     // Base
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
     // Reset the modified status of the children
     void resetModifiedStatus();
diff --git a/parameter/SelectionCriterion.cpp b/parameter/SelectionCriterion.cpp
index a504590..f49137b 100644
--- a/parameter/SelectionCriterion.cpp
+++ b/parameter/SelectionCriterion.cpp
@@ -32,11 +32,11 @@
 
 #define base CElement
 
-CSelectionCriterion::CSelectionCriterion(const string& strName, const CSelectionCriterionType* pType) : base(strName), _iState(0), _pType(pType), _uiNbModifications(0)
+CSelectionCriterion::CSelectionCriterion(const std::string& strName, const CSelectionCriterionType* pType) : base(strName), _iState(0), _pType(pType), _uiNbModifications(0)
 {
 }
 
-string CSelectionCriterion::getKind() const
+std::string CSelectionCriterion::getKind() const
 {
     return "SelectionCriterion";
 }
@@ -80,7 +80,7 @@
 }
 
 // Name
-string CSelectionCriterion::getCriterionName() const
+std::string CSelectionCriterion::getCriterionName() const
 {
     return getName();
 }
@@ -115,9 +115,9 @@
 }
 
 /// User request
-string CSelectionCriterion::getFormattedDescription(bool bWithTypeInfo, bool bHumanReadable) const
+std::string CSelectionCriterion::getFormattedDescription(bool bWithTypeInfo, bool bHumanReadable) const
 {
-    string strFormattedDescription;
+    std::string strFormattedDescription;
 
     if (bHumanReadable) {
 
diff --git a/parameter/SelectionCriterion.h b/parameter/SelectionCriterion.h
index d8d638c..c61d7d0 100644
--- a/parameter/SelectionCriterion.h
+++ b/parameter/SelectionCriterion.h
@@ -33,21 +33,19 @@
 #include "SelectionCriterionType.h"
 #include "SelectionCriterionInterface.h"
 
-#include <list>
-
-using namespace std;
+#include <string>
 
 class CSelectionCriterion : public CElement, public ISelectionCriterionInterface
 {
 public:
-    CSelectionCriterion(const string& strName, const CSelectionCriterionType* pType);
+    CSelectionCriterion(const std::string& strName, const CSelectionCriterionType* pType);
 
     /// From ISelectionCriterionInterface
     // State
     virtual void setCriterionState(int iState);
     virtual int getCriterionState() const;
     // Name
-    virtual string getCriterionName() const;
+    virtual std::string getCriterionName() const;
     // Type
     virtual const ISelectionCriterionTypeInterface* getCriterionType() const;
     // Modified status
@@ -61,10 +59,10 @@
     bool excludes(int iState) const;
 
     /// User request
-    string getFormattedDescription(bool bWithTypeInfo, bool bHumanReadable) const;
+    std::string getFormattedDescription(bool bWithTypeInfo, bool bHumanReadable) const;
 
     /// From CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     // Current state
     int _iState;
diff --git a/parameter/SelectionCriterionLibrary.cpp b/parameter/SelectionCriterionLibrary.cpp
index 7876f5d..6910e41 100644
--- a/parameter/SelectionCriterionLibrary.cpp
+++ b/parameter/SelectionCriterionLibrary.cpp
@@ -35,7 +35,7 @@
 {
 }
 
-string CSelectionCriterionLibrary::getKind() const
+std::string CSelectionCriterionLibrary::getKind() const
 {
     return "SelectionCriterionLibrary";
 }
diff --git a/parameter/SelectionCriterionLibrary.h b/parameter/SelectionCriterionLibrary.h
index cc748e8..bb19777 100644
--- a/parameter/SelectionCriterionLibrary.h
+++ b/parameter/SelectionCriterionLibrary.h
@@ -41,5 +41,5 @@
     CSelectionCriterionType* createSelectionCriterionType(bool bIsInclusive);
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 };
diff --git a/parameter/SelectionCriterionRule.cpp b/parameter/SelectionCriterionRule.cpp
index 7f9e912..6f350c3 100644
--- a/parameter/SelectionCriterionRule.cpp
+++ b/parameter/SelectionCriterionRule.cpp
@@ -37,6 +37,8 @@
 
 #define base CRule
 
+using std::string;
+
 const CSelectionCriterionRule::SMatchingRuleDescription CSelectionCriterionRule::_astMatchesWhen[CSelectionCriterionRule::ENbMatchesWhen] = {
     { "Is", true },
     { "IsNot", true },
diff --git a/parameter/SelectionCriterionRule.h b/parameter/SelectionCriterionRule.h
index e25462e..70bddc2 100644
--- a/parameter/SelectionCriterionRule.h
+++ b/parameter/SelectionCriterionRule.h
@@ -31,6 +31,8 @@
 
 #include "Rule.h"
 
+#include <string>
+
 class CSelectionCriterion;
 
 class CSelectionCriterionRule : public CRule
@@ -55,10 +57,10 @@
     CSelectionCriterionRule();
 
     // Parse
-    virtual bool parse(CRuleParser& ruleParser, string& strError);
+    virtual bool parse(CRuleParser& ruleParser, std::string& strError);
 
     // Dump
-    virtual void dump(string& strResult) const;
+    virtual void dump(std::string& strResult) const;
 
     // Rule check
     virtual bool matches() const;
@@ -70,13 +72,13 @@
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
 
     // Class kind
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 protected:
     // Content dumping
-    virtual void logValue(string& strValue, CErrorContext& errorContext) const;
+    virtual void logValue(std::string& strValue, CErrorContext& errorContext) const;
 private:
     // XML MatchesWhen attribute parsing
-    bool setMatchesWhen(const string& strMatchesWhen, string& strError);
+    bool setMatchesWhen(const std::string& strMatchesWhen, std::string& strError);
 
     // Selection criterion
     const CSelectionCriterion* _pSelectionCriterion;
diff --git a/parameter/SelectionCriterionType.cpp b/parameter/SelectionCriterionType.cpp
index 9bc07a4..3e9cc80 100644
--- a/parameter/SelectionCriterionType.cpp
+++ b/parameter/SelectionCriterionType.cpp
@@ -32,7 +32,7 @@
 
 #define base CElement
 
-const string CSelectionCriterionType::_strDelimiter = "|";
+const std::string CSelectionCriterionType::_strDelimiter = "|";
 
 CSelectionCriterionType::CSelectionCriterionType(bool bIsInclusive) : _bInclusive(bIsInclusive)
 {
@@ -43,13 +43,13 @@
     }
 }
 
-string CSelectionCriterionType::getKind() const
+std::string CSelectionCriterionType::getKind() const
 {
     return "SelectionCriterionType";
 }
 
 // From ISelectionCriterionTypeInterface
-bool CSelectionCriterionType::addValuePair(int iValue, const string& strValue)
+bool CSelectionCriterionType::addValuePair(int iValue, const std::string& strValue)
 {
     // Check 1 bit set only for inclusive types
     if (_bInclusive && (!iValue || (iValue & (iValue - 1)))) {
@@ -71,17 +71,17 @@
     return true;
 }
 
-bool CSelectionCriterionType::getNumericalValue(const string& strValue, int& iValue) const
+bool CSelectionCriterionType::getNumericalValue(const std::string& strValue, int& iValue) const
 {
     if (_bInclusive) {
 
         Tokenizer tok(strValue, _strDelimiter);
-        vector<string> astrValues = tok.split();
+        std::vector<std::string> astrValues = tok.split();
         uint32_t uiNbValues = astrValues.size();
         int iResult = 0;
         uint32_t uiValueIndex;
 
-        // Looping on each string delimited by "|" token and adding the associated value
+        // Looping on each std::string delimited by "|" token and adding the associated value
         for (uiValueIndex = 0; uiValueIndex < uiNbValues; uiValueIndex++) {
 
             if (!getAtomicNumericalValue(astrValues[uiValueIndex], iResult)) {
@@ -95,7 +95,7 @@
     return getAtomicNumericalValue(strValue, iValue);
 }
 
-bool CSelectionCriterionType::getAtomicNumericalValue(const string& strValue, int& iValue) const
+bool CSelectionCriterionType::getAtomicNumericalValue(const std::string& strValue, int& iValue) const
 {
     NumToLitMapConstIt it = _numToLitMap.find(strValue);
 
@@ -108,7 +108,7 @@
     return false;
 }
 
-bool CSelectionCriterionType::getLiteralValue(int iValue, string& strValue) const
+bool CSelectionCriterionType::getLiteralValue(int iValue, std::string& strValue) const
 {
     NumToLitMapConstIt it;
 
@@ -130,9 +130,9 @@
 }
 
 // Value list
-string CSelectionCriterionType::listPossibleValues() const
+std::string CSelectionCriterionType::listPossibleValues() const
 {
-    string strValueList = "{";
+    std::string strValueList = "{";
 
     // Get comma seprated list of values
     NumToLitMapConstIt it;
@@ -155,9 +155,9 @@
 }
 
 // Formatted state
-string CSelectionCriterionType::getFormattedState(int iValue) const
+std::string CSelectionCriterionType::getFormattedState(int iValue) const
 {
-    string strFormattedState;
+    std::string strFormattedState;
 
     if (_bInclusive) {
 
@@ -176,7 +176,7 @@
             }
 
             // Simple translation
-            string strSingleValue;
+            std::string strSingleValue;
 
             getLiteralValue(iSingleBitValue, strSingleValue);
 
diff --git a/parameter/SelectionCriterionType.h b/parameter/SelectionCriterionType.h
index c004aca..bfef21e 100644
--- a/parameter/SelectionCriterionType.h
+++ b/parameter/SelectionCriterionType.h
@@ -36,48 +36,48 @@
 
 class CSelectionCriterionType : public CElement, public ISelectionCriterionTypeInterface
 {
-    typedef map<string, int>::const_iterator NumToLitMapConstIt;
+    typedef std::map<std::string, int>::const_iterator NumToLitMapConstIt;
 
 public:
     CSelectionCriterionType(bool bIsInclusive);
 
     // From ISelectionCriterionTypeInterface
-    virtual bool addValuePair(int iValue, const string& strValue);
+    virtual bool addValuePair(int iValue, const std::string& strValue);
     /**
-     * Retrieve the numerical value from the string representation of the criterion type.
+     * Retrieve the numerical value from the std::string representation of the criterion type.
      *
      * @param[in] strValue: criterion type value represented as a stream. If the criterion is
      *                      inclusive, it supports more than one criterion type value delimited
      *                      by the "|" symbol.
      * @param[out] iValue: criterion type value represented as an integer.
      *
-     * @return true if integer value retrieved from the string one, false otherwise.
+     * @return true if integer value retrieved from the std::string one, false otherwise.
      */
-    virtual bool getNumericalValue(const string& strValue, int& iValue) const;
-    virtual bool getLiteralValue(int iValue, string& strValue) const;
+    virtual bool getNumericalValue(const std::string& strValue, int& iValue) const;
+    virtual bool getLiteralValue(int iValue, std::string& strValue) const;
     virtual bool isTypeInclusive() const;
 
     // Value list
-    string listPossibleValues() const;
+    std::string listPossibleValues() const;
 
     // Formatted state
-    virtual string getFormattedState(int iValue) const;
+    virtual std::string getFormattedState(int iValue) const;
 
     // From CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     /**
-     * Retrieve the numerical value from the string representation of the criterion type.
+     * Retrieve the numerical value from the std::string representation of the criterion type.
      *
      * @param[in] strValue: criterion type value represented as a stream. If the criterion is
      *                      inclusive, it expects only one criterion type value.
      * @param[out] iValue: criterion type value represented as an integer.
      *
-     * @return true if integer value retrieved from the string one, false otherwise.
+     * @return true if integer value retrieved from the std::string one, false otherwise.
      */
-    bool getAtomicNumericalValue(const string& strValue, int& iValue) const;
+    bool getAtomicNumericalValue(const std::string& strValue, int& iValue) const;
     bool _bInclusive;
-    map<string, int> _numToLitMap;
+    std::map<std::string, int> _numToLitMap;
 
     static const std::string _strDelimiter; /**< Inclusive criterion type delimiter. */
 };
diff --git a/parameter/SimulatedBackSynchronizer.cpp b/parameter/SimulatedBackSynchronizer.cpp
index e3ac59d..5f60aba 100644
--- a/parameter/SimulatedBackSynchronizer.cpp
+++ b/parameter/SimulatedBackSynchronizer.cpp
@@ -42,7 +42,7 @@
 void CSimulatedBackSynchronizer::sync()
 {
     // Set default values to simulate back synchronization
-    list<const CConfigurableElement*>::const_iterator it;
+    std::list<const CConfigurableElement*>::const_iterator it;
 
     for (it = _needingBackSyncList.begin(); it != _needingBackSyncList.end(); ++it) {
 
diff --git a/parameter/SimulatedBackSynchronizer.h b/parameter/SimulatedBackSynchronizer.h
index 086d87e..6acf090 100644
--- a/parameter/SimulatedBackSynchronizer.h
+++ b/parameter/SimulatedBackSynchronizer.h
@@ -32,6 +32,8 @@
 #include "BackSynchronizer.h"
 #include "ParameterAccessContext.h"
 
+#include <string>
+
 class CParameterBlackboard;
 
 class CSimulatedBackSynchronizer : public CBackSynchronizer
@@ -43,7 +45,7 @@
     virtual void sync();
 private:
     // Fake error for parameter context creation
-    string _strError;
+    std::string _strError;
     // Parameter context
     CParameterAccessContext _parameterAccessContext;
 };
diff --git a/parameter/StringParameter.cpp b/parameter/StringParameter.cpp
index afad611..cb13e9b 100644
--- a/parameter/StringParameter.cpp
+++ b/parameter/StringParameter.cpp
@@ -36,6 +36,8 @@
 
 #define base CBaseParameter
 
+using std::string;
+
 CStringParameter::CStringParameter(const string& strName, const CTypeElement* pTypeElement) : base(strName, pTypeElement)
 {
 }
diff --git a/parameter/StringParameter.h b/parameter/StringParameter.h
index 4e09d71..6a60e9f 100644
--- a/parameter/StringParameter.h
+++ b/parameter/StringParameter.h
@@ -36,7 +36,7 @@
 class CStringParameter : public CBaseParameter
 {
 public:
-    CStringParameter(const string& strName, const CTypeElement* pTypeElement);
+    CStringParameter(const std::string& strName, const CTypeElement* pTypeElement);
 
     // Instantiation, allocation
     virtual uint32_t getFootPrint() const;
@@ -48,8 +48,8 @@
     virtual void setDefaultValues(CParameterAccessContext& parameterAccessContext) const;
 
     // Actual value access (tuning)
-    virtual bool doSetValue(const string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
-    virtual void doGetValue(string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
+    virtual bool doSetValue(const std::string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
+    virtual void doGetValue(std::string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
 
     // Size
     uint32_t getSize() const;
diff --git a/parameter/StringParameterType.cpp b/parameter/StringParameterType.cpp
index f3ffbfe..d47895d 100644
--- a/parameter/StringParameterType.cpp
+++ b/parameter/StringParameterType.cpp
@@ -32,6 +32,8 @@
 
 #define base CTypeElement
 
+using std::string;
+
 CStringParameterType::CStringParameterType(const string& strName) : base(strName), _uiMaxLength(0)
 {
 }
diff --git a/parameter/StringParameterType.h b/parameter/StringParameterType.h
index 017f870..e1b2513 100644
--- a/parameter/StringParameterType.h
+++ b/parameter/StringParameterType.h
@@ -33,10 +33,12 @@
 
 #include "TypeElement.h"
 
+#include <string>
+
 class CStringParameterType : public CTypeElement
 {
 public:
-    CStringParameterType(const string& strName);
+    CStringParameterType(const std::string& strName);
 
     // Max length
     uint32_t getMaxLength() const;
@@ -48,10 +50,10 @@
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 private:
     // Instantiation
     virtual CInstanceConfigurableElement* doInstantiate() const;
diff --git a/parameter/Subsystem.cpp b/parameter/Subsystem.cpp
index 9a550d5..28faa01 100644
--- a/parameter/Subsystem.cpp
+++ b/parameter/Subsystem.cpp
@@ -40,6 +40,10 @@
 
 #define base CConfigurableElementWithMapping
 
+using std::string;
+using std::list;
+using std::ostringstream;
+
 CSubsystem::CSubsystem(const string& strName) : base(strName), _pComponentLibrary(new CComponentLibrary), _pInstanceDefinition(new CInstanceDefinition), _bBigEndian(false), _pMappingData(NULL)
 {
     // Note: A subsystem contains instance components
@@ -240,7 +244,7 @@
         string& strMappingValue) const
 {
     // Find creator to get key name
-    vector<CSubsystemObjectCreator*>::const_iterator it;
+    std::vector<CSubsystemObjectCreator*>::const_iterator it;
     for (it = _subsystemObjectCreatorArray.begin();
          it != _subsystemObjectCreatorArray.end(); ++it) {
 
diff --git a/parameter/Subsystem.h b/parameter/Subsystem.h
index a03a2ef..e537352 100644
--- a/parameter/Subsystem.h
+++ b/parameter/Subsystem.h
@@ -33,7 +33,9 @@
 #include "ConfigurableElementWithMapping.h"
 #include "Mapper.h"
 #include "MappingContext.h"
+#include <list>
 #include <stack>
+#include <string>
 #include <vector>
 
 class CInstanceDefinition;
@@ -46,9 +48,9 @@
 class CSubsystem : public CConfigurableElementWithMapping, private IMapper
 {
     // Subsystem objects iterator
-    typedef list<CSubsystemObject*>::const_iterator SubsystemObjectListIterator;
+    typedef std::list<CSubsystemObject*>::const_iterator SubsystemObjectListIterator;
 public:
-    CSubsystem(const string& strName);
+    CSubsystem(const std::string& strName);
     virtual ~CSubsystem();
 
     // From IXmlSink
@@ -67,36 +69,36 @@
     virtual bool serializeXmlSettings(CXmlElement& xmlConfigurationSettingsElementContent, CConfigurationAccessContext& configurationAccessContext) const;
 
     // from CElement
-    virtual string getKind() const;
+    virtual std::string getKind() const;
 
     virtual bool getMappingData(const std::string& strKey, const std::string*& pStrValue) const;
 
     /**
      * Fetch mapping data of an element.
      *
-     * The mapping is represented as a string of all the mapping data (key:value) defined in the
+     * The mapping is represented as a std::string of all the mapping data (key:value) defined in the
      * context of the element.
      * This method gathers the mapping data found in each Element of the configurableElementPath
-     * list to format the resulting string.
+     * list to format the resulting std::string.
      *
      * @param[in] configurableElementPath List of all the ConfigurableElements found
      * that have a mapping. Elements are added at the end of the list, so the root Element will be
      * the last one.
      *
-     * @return Formatted string of the mapping data
+     * @return Formatted std::string of the mapping data
      */
-    virtual string getMapping(list<const CConfigurableElement*>& configurableElementPath) const;
+    virtual std::string getMapping(std::list<const CConfigurableElement*>& configurableElementPath) const;
 
 protected:
     // Parameter access
-    virtual bool accessValue(CPathNavigator& pathNavigator, string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
-    virtual void logValue(string& strValue, CErrorContext& errorContext) const;
+    virtual bool accessValue(CPathNavigator& pathNavigator, std::string& strValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
+    virtual void logValue(std::string& strValue, CErrorContext& errorContext) const;
     // Used for simulation and virtual subsystems
     virtual void setDefaultValues(CParameterAccessContext& parameterAccessContext) const;
 
     /// Functionality intendedn for derived Subsystems
     // Subsystem context mapping keys publication
-    void addContextMappingKey(const string& strMappingKey);
+    void addContextMappingKey(const std::string& strMappingKey);
     // Subsystem object creator publication (strong reference)
     void addSubsystemObjectFactory(CSubsystemObjectCreator* pSubsystemObjectCreator);
 private:
@@ -107,7 +109,7 @@
     virtual const CSubsystem* getBelongingSubsystem() const;
 
     // Mapping execution
-    bool mapSubsystemElements(string& strError);
+    bool mapSubsystemElements(std::string& strError);
 
     /**
      * Handle a configurable element mapping.
@@ -123,24 +125,24 @@
      *
      * @return true on success, false on failure
      */
-    virtual bool mapBegin(CInstanceConfigurableElement* pInstanceConfigurableElement, bool& bKeepDiving, string& strError);
+    virtual bool mapBegin(CInstanceConfigurableElement* pInstanceConfigurableElement, bool& bKeepDiving, std::string& strError);
     virtual void mapEnd();
 
     // Mapping access
     /**
      * Generic mapping error handling
      *
-     * Format an human readable error string from a key and a message in case of mapping error
+     * Format an human readable error std::string from a key and a message in case of mapping error
      *
      * @param[in] strKey The key on which the error refers
      * @param[in] strMessage The error message
      * @param[in] pConfigurableElementWithMapping The element on which the error refers
      *
-     * returns The formated error string
+     * returns The formated error std::string
      */
-    string getMappingError(
-            const string& strKey,
-            const string& strMessage,
+    std::string getMappingError(
+            const std::string& strKey,
+            const std::string& strMessage,
             const CConfigurableElementWithMapping* pConfigurableElementWithMapping) const;
 
     /**
@@ -153,8 +155,8 @@
      *
      * @return String containing the formatted mapping
      */
-    string formatMappingDataList(
-            const list<const CConfigurableElement*>& configurableElementPath) const;
+    std::string formatMappingDataList(
+            const std::list<const CConfigurableElement*>& configurableElementPath) const;
 
     /**
      * Find the SubystemObject which contains a specific CInstanceConfigurableElement.
@@ -181,8 +183,8 @@
      */
     void findSubsystemLevelMappingKeyValue(
             const CInstanceConfigurableElement* pInstanceConfigurableElement,
-            string& strMappingKey,
-            string& strMappingValue) const;
+            std::string& strMappingKey,
+            std::string& strMappingValue) const;
 
     /**
      * Formats the mapping of a SubsystemObject
@@ -191,7 +193,7 @@
      *
      * @return String containing the formatted mapping
      */
-    string getFormattedSubsystemMappingData(
+    std::string getFormattedSubsystemMappingData(
             const CInstanceConfigurableElement* pInstanceConfigurableElement) const;
     /**
      * Generic context handling
@@ -200,14 +202,14 @@
      *
      * @param[in] pConfigurableElementWithMapping The element containing mapping data
      * @param[out] context The context mapping to update with the current element mapping values
-     * @param[out] strError The formated error string
+     * @param[out] strError The formated error std::string
      *
      * @return true on success
      */
     bool handleMappingContext(
             const CConfigurableElementWithMapping* pConfigurableElementWithMapping,
             CMappingContext& context,
-            string& strError) const;
+            std::string& strError) const;
 
     /**
      * Looks if a subsystem object needs to be instantiated for the given configurable
@@ -225,19 +227,19 @@
      */
     bool handleSubsystemObjectCreation(CInstanceConfigurableElement* pInstanceConfigurableElement,
                                        CMappingContext& context, bool& bHasCreatedSubsystemObject,
-                                       string& strError);
+                                       std::string& strError);
 
     // Subsystem context mapping keys
-    vector<string> _contextMappingKeyArray;
+    std::vector<std::string> _contextMappingKeyArray;
 
     // Subsystem object creator map
-    vector<CSubsystemObjectCreator*> _subsystemObjectCreatorArray;
+    std::vector<CSubsystemObjectCreator*> _subsystemObjectCreatorArray;
 
     // Subsystem sync objects (house keeping)
-    list<CSubsystemObject*> _subsystemObjectList;
+    std::list<CSubsystemObject*> _subsystemObjectList;
 
     // Mapping Context stack
-    stack<CMappingContext> _contextStack;
+    std::stack<CMappingContext> _contextStack;
 
     // Subelements
     CComponentLibrary* _pComponentLibrary;
diff --git a/parameter/SubsystemObject.cpp b/parameter/SubsystemObject.cpp
index fb635c8..76b9549 100755
--- a/parameter/SubsystemObject.cpp
+++ b/parameter/SubsystemObject.cpp
@@ -40,6 +40,8 @@
 #include <sstream>
 #include <stdarg.h>
 
+using std::string;
+
 CSubsystemObject::CSubsystemObject(CInstanceConfigurableElement* pInstanceConfigurableElement)
     : _pInstanceConfigurableElement(pInstanceConfigurableElement),
       _uiDataSize(pInstanceConfigurableElement->getFootPrint()),
@@ -81,7 +83,7 @@
 
 string CSubsystemObject::asString(uint32_t uiValue)
 {
-    ostringstream ostr;
+    std::ostringstream ostr;
 
     ostr << uiValue;
 
diff --git a/parameter/SubsystemObject.h b/parameter/SubsystemObject.h
index 1b37201..ab085bc 100755
--- a/parameter/SubsystemObject.h
+++ b/parameter/SubsystemObject.h
@@ -32,6 +32,8 @@
 #include "Syncer.h"
 #include <stdint.h>
 
+#include <string>
+
 class CInstanceConfigurableElement;
 class CMappingContext;
 class CSubsystem;
@@ -45,9 +47,9 @@
     /**
      * Return the mapping value of the SubystemObject.
      *
-     * @return A string containing the mapping value
+     * @return A std::string containing the mapping value
      */
-    virtual string getFormattedMappingValue() const;
+    virtual std::string getFormattedMappingValue() const;
 
     // Configurable element retrieval
     const CInstanceConfigurableElement* getConfigurableElement() const;
@@ -58,8 +60,8 @@
     // Size
     uint32_t getSize() const;
     // Conversion utility
-    static uint32_t asInteger(const string& strValue);
-    static string asString(uint32_t uiValue);
+    static uint32_t asInteger(const std::string& strValue);
+    static std::string asString(uint32_t uiValue);
 
     /**
      * Conversion of int8, int16, int32 to int (taking care of sign extension)
@@ -73,22 +75,22 @@
                        int sizeOptimizedData);
 
     // Sync to/from HW
-    virtual bool sendToHW(string& strError);
-    virtual bool receiveFromHW(string& strError);
+    virtual bool sendToHW(std::string& strError);
+    virtual bool receiveFromHW(std::string& strError);
     // Fall back HW access
-    virtual bool accessHW(bool bReceive, string& strError);
+    virtual bool accessHW(bool bReceive, std::string& strError);
     // Blackboard access from subsystems
     void blackboardRead(void* pvData, uint32_t uiSize);
     void blackboardWrite(const void* pvData, uint32_t uiSize);
     // Logging
-    void log_info(const string& strMessage, ...) const;
-    void log_warning(const string& strMessage, ...) const;
+    void log_info(const std::string& strMessage, ...) const;
+    void log_warning(const std::string& strMessage, ...) const;
     // Belonging Subsystem retrieval
     const CSubsystem* getSubsystem() const;
 
 private:
     // from ISyncer
-    virtual bool sync(CParameterBlackboard& parameterBlackboard, bool bBack, string& strError);
+    virtual bool sync(CParameterBlackboard& parameterBlackboard, bool bBack, std::string& strError);
 
     // Default back synchronization
     void setDefaultValues(CParameterBlackboard& parameterBlackboard) const;
diff --git a/parameter/SubsystemObjectCreator.cpp b/parameter/SubsystemObjectCreator.cpp
index 8899c0c..66c1cac 100644
--- a/parameter/SubsystemObjectCreator.cpp
+++ b/parameter/SubsystemObjectCreator.cpp
@@ -29,6 +29,8 @@
  */
 #include "SubsystemObjectCreator.h"
 
+using std::string;
+
 CSubsystemObjectCreator::CSubsystemObjectCreator(const string& strMappingKey, uint32_t uiAncestorIdMask, uint32_t uiMaxConfigurableElementSize)
     : _strMappingKey(strMappingKey), _uiAncestorIdMask(uiAncestorIdMask), _uiMaxConfigurableElementSize(uiMaxConfigurableElementSize)
 {
diff --git a/parameter/SubsystemObjectCreator.h b/parameter/SubsystemObjectCreator.h
index 2afc472..ed6e79d 100644
--- a/parameter/SubsystemObjectCreator.h
+++ b/parameter/SubsystemObjectCreator.h
@@ -33,26 +33,24 @@
 #include "MappingContext.h"
 #include <string>
 
-using namespace std;
-
 class CSubsystemObjectCreator
 {
 public:
-    CSubsystemObjectCreator(const string& strMappingKey, uint32_t uiAncestorIdMask, uint32_t uiMaxConfigurableElementSize);
+    CSubsystemObjectCreator(const std::string& strMappingKey, uint32_t uiAncestorIdMask, uint32_t uiMaxConfigurableElementSize);
 
     // Accessors
-    const string& getMappingKey() const;
+    const std::string& getMappingKey() const;
     uint32_t getAncestorMask() const;
     uint32_t getMaxConfigurableElementSize() const;
 
     // Object creation
-    virtual CSubsystemObject* objectCreate(const string& strMappingValue, CInstanceConfigurableElement* pInstanceConfigurableElement, const CMappingContext& context) const = 0;
+    virtual CSubsystemObject* objectCreate(const std::string& strMappingValue, CInstanceConfigurableElement* pInstanceConfigurableElement, const CMappingContext& context) const = 0;
 
     virtual ~CSubsystemObjectCreator() {}
 
 private:
     // Mapping key
-    string _strMappingKey;
+    std::string _strMappingKey;
     // Mask of must-be-specified ancestors
     uint32_t _uiAncestorIdMask;
     // Masximum expected size for configurable elment (-1 means none)
diff --git a/parameter/SubsystemPlugins.h b/parameter/SubsystemPlugins.h
index f60ad0b..aa9e32c 100644
--- a/parameter/SubsystemPlugins.h
+++ b/parameter/SubsystemPlugins.h
@@ -30,13 +30,13 @@
 #pragma once
 
 #include "KindElement.h"
-#include <list>
+#include <string>
 
 class CSubsystemPlugins : public CKindElement
 {
 
 public:
-    CSubsystemPlugins(const string& strName, const string& strKind) : CKindElement(strName, strKind)
+    CSubsystemPlugins(const std::string& strName, const std::string& strKind) : CKindElement(strName, strKind)
     {
     }
 
diff --git a/parameter/Syncer.h b/parameter/Syncer.h
index 443686f..f119028 100644
--- a/parameter/Syncer.h
+++ b/parameter/Syncer.h
@@ -31,14 +31,12 @@
 
 #include <string>
 
-using namespace std;
-
 class CParameterBlackboard;
 
 class ISyncer
 {
 public:
-    virtual bool sync(CParameterBlackboard& parameterBlackboard, bool bBack, string& strError) = 0;
+    virtual bool sync(CParameterBlackboard& parameterBlackboard, bool bBack, std::string& strError) = 0;
 
 protected:
     virtual ~ISyncer() {}
diff --git a/parameter/SyncerSet.cpp b/parameter/SyncerSet.cpp
index 0da4413..9daf2a6 100644
--- a/parameter/SyncerSet.cpp
+++ b/parameter/SyncerSet.cpp
@@ -56,11 +56,11 @@
     _syncerSet.clear();
 }
 
-bool CSyncerSet::sync(CParameterBlackboard& parameterBlackboard, bool bBack, list<string>* plstrError) const
+bool CSyncerSet::sync(CParameterBlackboard& parameterBlackboard, bool bBack, std::list<std::string>* plstrError) const
 {
     bool bSuccess = true;
 
-    string strError;
+    std::string strError;
 
     // Propagate
     SyncerSetConstIterator it;
diff --git a/parameter/SyncerSet.h b/parameter/SyncerSet.h
index 764d94b..7e37f45 100644
--- a/parameter/SyncerSet.h
+++ b/parameter/SyncerSet.h
@@ -33,14 +33,12 @@
 #include <string>
 #include <list>
 
-using namespace std;
-
 class ISyncer;
 class CParameterBlackboard;
 
 class CSyncerSet
 {
-    typedef set<ISyncer*>::const_iterator SyncerSetConstIterator;
+    typedef std::set<ISyncer*>::const_iterator SyncerSetConstIterator;
 public:
     CSyncerSet();
 
@@ -52,8 +50,8 @@
     void clear();
 
     // Sync
-    bool sync(CParameterBlackboard& parameterBlackboard, bool bBack, list<string>* plstrError) const;
+    bool sync(CParameterBlackboard& parameterBlackboard, bool bBack, std::list<std::string>* plstrError) const;
 
 private:
-    set<ISyncer*> _syncerSet;
+    std::set<ISyncer*> _syncerSet;
 };
diff --git a/parameter/SystemClass.cpp b/parameter/SystemClass.cpp
index 8ab7c94..132a87c 100644
--- a/parameter/SystemClass.cpp
+++ b/parameter/SystemClass.cpp
@@ -42,6 +42,9 @@
 
 #define base CConfigurableElement
 
+using std::list;
+using std::string;
+
 /**
  * A plugin file name is of the form:
  * lib<type>-subsystem.so or lib<type>-subsystem._host.so
diff --git a/parameter/SystemClass.h b/parameter/SystemClass.h
index b4b44e5..3ffbf25 100644
--- a/parameter/SystemClass.h
+++ b/parameter/SystemClass.h
@@ -32,6 +32,7 @@
 #include "ConfigurableElement.h"
 #include "SubsystemPlugins.h"
 #include <list>
+#include <string>
 
 class CSubsystemLibrary;
 
@@ -51,7 +52,7 @@
      * @return true if the plugins succesfully started or that a fallback is available,
                false otherwise.
      */
-    bool loadSubsystems(string& strError, const CSubsystemPlugins* pSubsystemPlugins,
+    bool loadSubsystems(std::string& strError, const CSubsystemPlugins* pSubsystemPlugins,
                         bool bVirtualSubsystemFallback = false);
     // Subsystem factory
     const CSubsystemLibrary* getSubsystemLibrary() const;
@@ -71,8 +72,8 @@
     void cleanSubsystemsNeedToResync();
 
     // base
-    virtual bool init(string& strError);
-    virtual string getKind() const;
+    virtual bool init(std::string& strError);
+    virtual std::string getKind() const;
 
     // From IXmlSource
     virtual void toXml(CXmlElement& xmlElement, CXmlSerializingContext& serializingContext) const;
@@ -90,11 +91,11 @@
      *
      * @return true if all plugins have been succesfully loaded, false otherwises.
      */
-    bool loadSubsystemsFromSharedLibraries(list<string>& lstrError,
+    bool loadSubsystemsFromSharedLibraries(std::list<std::string>& lstrError,
                                            const CSubsystemPlugins* pSubsystemPlugins);
 
     // Plugin symbol computation
-    static string getPluginSymbol(const string& strPluginPath);
+    static std::string getPluginSymbol(const std::string& strPluginPath);
 
     /** Load subsystem plugin shared libraries.
      *
@@ -106,10 +107,10 @@
      *         When false is returned, some plugins MIHGT have been loaded
      *         but the lstrPluginFiles is accurate.
      */
-    bool loadPlugins(list<string>& lstrPluginFiles, list<string>& lstrError);
+    bool loadPlugins(std::list<std::string>& lstrPluginFiles, std::list<std::string>& lstrError);
 
     // Subsystem factory
     CSubsystemLibrary* _pSubsystemLibrary;
-    list<void*> _subsystemLibraries; /**< Contains the list of all open plugin libs. */
+    std::list<void*> _subsystemLibraries; /**< Contains the list of all open plugin libs. */
 };
 
diff --git a/parameter/TypeElement.cpp b/parameter/TypeElement.cpp
index 6e1c9aa..7e58c75 100755
--- a/parameter/TypeElement.cpp
+++ b/parameter/TypeElement.cpp
@@ -35,7 +35,7 @@
 
 #define base CElement
 
-CTypeElement::CTypeElement(const string& strName) : base(strName), _uiArrayLength(0), _pMappingData(NULL)
+CTypeElement::CTypeElement(const std::string& strName) : base(strName), _uiArrayLength(0), _pMappingData(NULL)
 {
 }
 
@@ -59,7 +59,7 @@
     return iSizeOptimizedData;
 }
 
-bool CTypeElement::getMappingData(const string& strKey, const string*& pStrValue) const
+bool CTypeElement::getMappingData(const std::string& strKey, const std::string*& pStrValue) const
 {
     if (_pMappingData) {
 
@@ -74,7 +74,7 @@
 }
 
 // Element properties
-void CTypeElement::showProperties(string& strResult) const
+void CTypeElement::showProperties(std::string& strResult) const
 {
     (void)strResult;
     // Prevent base from being called in that context!
@@ -136,7 +136,7 @@
     return _pMappingData;
 }
 
-string CTypeElement::getFormattedMapping() const
+std::string CTypeElement::getFormattedMapping() const
 {
     if (_pMappingData) {
 
diff --git a/parameter/TypeElement.h b/parameter/TypeElement.h
index 6827f05..8f474c0 100755
--- a/parameter/TypeElement.h
+++ b/parameter/TypeElement.h
@@ -30,6 +30,7 @@
 #pragma once
 
 #include "Element.h"
+#include <string>
 
 class CMappingData;
 class CInstanceConfigurableElement;
@@ -37,25 +38,25 @@
 class CTypeElement : public CElement
 {
 public:
-    CTypeElement(const string& strName = "");
+    CTypeElement(const std::string& strName = "");
     virtual ~CTypeElement();
 
     // Instantiation
     CInstanceConfigurableElement* instantiate() const;
 
     // Mapping info
-    virtual bool getMappingData(const string& strKey, const string*& pStrValue) const;
+    virtual bool getMappingData(const std::string& strKey, const std::string*& pStrValue) const;
     virtual bool hasMappingData() const;
 
     /**
      * Returns the mapping associated to the current TypeElement instance
      *
-     * @return A string containing the mapping as a comma separated key value pairs
+     * @return A std::string containing the mapping as a comma separated key value pairs
      */
-    virtual string getFormattedMapping() const;
+    virtual std::string getFormattedMapping() const;
 
     // Element properties
-    virtual void showProperties(string& strResult) const;
+    virtual void showProperties(std::string& strResult) const;
 
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
diff --git a/parameter/VirtualSubsystem.cpp b/parameter/VirtualSubsystem.cpp
index 9e4c61a..36027bf 100644
--- a/parameter/VirtualSubsystem.cpp
+++ b/parameter/VirtualSubsystem.cpp
@@ -32,6 +32,8 @@
 
 #define base CSubsystem
 
+using std::string;
+
 CVirtualSubsystem::CVirtualSubsystem(const string& strName)
     : base(strName), _pVirtualSyncer(new CVirtualSyncer(this))
 {
diff --git a/parameter/VirtualSubsystem.h b/parameter/VirtualSubsystem.h
index 77d0ae8..3a9c89b 100644
--- a/parameter/VirtualSubsystem.h
+++ b/parameter/VirtualSubsystem.h
@@ -31,12 +31,14 @@
 
 #include "Subsystem.h"
 
+#include <string>
+
 class CVirtualSyncer;
 
 class CVirtualSubsystem : public CSubsystem
 {
 public:
-    CVirtualSubsystem(const string& strName);
+    CVirtualSubsystem(const std::string& strName);
     virtual ~CVirtualSubsystem();
 
 protected:
@@ -45,7 +47,7 @@
 
 private:
     // From IMapper
-    virtual bool mapBegin(CInstanceConfigurableElement* pInstanceConfigurableElement, bool& bKeepDiving, string& strError);
+    virtual bool mapBegin(CInstanceConfigurableElement* pInstanceConfigurableElement, bool& bKeepDiving, std::string& strError);
     virtual void mapEnd();
 
     // Subsystem level dummy syncer
diff --git a/parameter/VirtualSyncer.cpp b/parameter/VirtualSyncer.cpp
index 69fa896..5ab889f 100644
--- a/parameter/VirtualSyncer.cpp
+++ b/parameter/VirtualSyncer.cpp
@@ -31,6 +31,8 @@
 #include "ConfigurableElement.h"
 #include "ParameterAccessContext.h"
 
+using std::string;
+
 CVirtualSyncer::CVirtualSyncer(const CConfigurableElement* pConfigurableElement) : _pConfigurableElement(pConfigurableElement)
 {
 }
diff --git a/parameter/VirtualSyncer.h b/parameter/VirtualSyncer.h
index 83b8826..30254cb 100644
--- a/parameter/VirtualSyncer.h
+++ b/parameter/VirtualSyncer.h
@@ -39,7 +39,7 @@
     CVirtualSyncer(const CConfigurableElement* pConfigurableElement);
 
     // from ISyncer
-    virtual bool sync(CParameterBlackboard& parameterBlackboard, bool bBack, string& strError);
+    virtual bool sync(CParameterBlackboard& parameterBlackboard, bool bBack, std::string& strError);
 private:
     const CConfigurableElement* _pConfigurableElement;
 };
diff --git a/parameter/XmlDomainSerializingContext.cpp b/parameter/XmlDomainSerializingContext.cpp
index 2cb9f81..c159fbf 100644
--- a/parameter/XmlDomainSerializingContext.cpp
+++ b/parameter/XmlDomainSerializingContext.cpp
@@ -31,6 +31,8 @@
 
 #define base CXmlElementSerializingContext
 
+using std::string;
+
 CXmlDomainSerializingContext::CXmlDomainSerializingContext(string& strError, bool bWithSettings)
     : base(strError), _bWithSettings(bWithSettings), _bValueSpaceIsRaw(false), _bOutputRawFormatIsHex(false), _pSelectionCriteriaDefinition(NULL), _bAutoValidationRequired(true)
 {
diff --git a/parameter/XmlDomainSerializingContext.h b/parameter/XmlDomainSerializingContext.h
index 9973985..88d2b5f 100644
--- a/parameter/XmlDomainSerializingContext.h
+++ b/parameter/XmlDomainSerializingContext.h
@@ -31,13 +31,15 @@
 
 #include "XmlElementSerializingContext.h"
 
+#include <string>
+
 class CParameterBlackboard;
 class CSelectionCriteriaDefinition;
 
 class CXmlDomainSerializingContext : public CXmlElementSerializingContext
 {
 public:
-    CXmlDomainSerializingContext(string& strError, bool bWithSettings);
+    CXmlDomainSerializingContext(std::string& strError, bool bWithSettings);
 
     // Settings to be serialized or not
     bool withSettings() const;
diff --git a/parameter/XmlElementSerializingContext.cpp b/parameter/XmlElementSerializingContext.cpp
index 1f2f235..6046d8e 100644
--- a/parameter/XmlElementSerializingContext.cpp
+++ b/parameter/XmlElementSerializingContext.cpp
@@ -32,6 +32,8 @@
 
 #define base CXmlSerializingContext
 
+using std::string;
+
 CXmlElementSerializingContext::CXmlElementSerializingContext(string& strError) : base(strError), _pElementLibrary(NULL)
 {
 }
diff --git a/parameter/XmlElementSerializingContext.h b/parameter/XmlElementSerializingContext.h
index 8dc4f52..dadb1da 100644
--- a/parameter/XmlElementSerializingContext.h
+++ b/parameter/XmlElementSerializingContext.h
@@ -31,26 +31,28 @@
 
 #include "XmlSerializingContext.h"
 
+#include <string>
+
 class CElementLibrary;
 
 class CXmlElementSerializingContext : public CXmlSerializingContext
 {
 public:
-    CXmlElementSerializingContext(string& strError);
+    CXmlElementSerializingContext(std::string& strError);
 
     // Init
-    void set(const CElementLibrary* pElementLibrary, const string& strXmlFolder, const string& strXmlSchemaFolder);
+    void set(const CElementLibrary* pElementLibrary, const std::string& strXmlFolder, const std::string& strXmlSchemaFolder);
 
     // ElementLibrary
     const CElementLibrary* getElementLibrary() const;
 
     // XML File Path
-    const string& getXmlFolder() const;
+    const std::string& getXmlFolder() const;
 
     // Schema Path
-    const string& getXmlSchemaPathFolder() const;
+    const std::string& getXmlSchemaPathFolder() const;
 private:
     const CElementLibrary* _pElementLibrary;
-    string _strXmlFolder;
-    string _strXmlSchemaFolder;
+    std::string _strXmlFolder;
+    std::string _strXmlSchemaFolder;
 };
diff --git a/parameter/XmlFileIncluderElement.cpp b/parameter/XmlFileIncluderElement.cpp
index 2e97bdb..e9b95cd 100644
--- a/parameter/XmlFileIncluderElement.cpp
+++ b/parameter/XmlFileIncluderElement.cpp
@@ -36,8 +36,8 @@
 #include <assert.h>
 
 #define base CKindElement
-CXmlFileIncluderElement::CXmlFileIncluderElement(const string& strName,
-                                                 const string& strKind,
+CXmlFileIncluderElement::CXmlFileIncluderElement(const std::string& strName,
+                                                 const std::string& strKind,
                                                  bool bValidateWithSchemas) : base(strName,
                                                                                    strKind)
 {
@@ -51,7 +51,7 @@
     CXmlElementSerializingContext& elementSerializingContext = static_cast<CXmlElementSerializingContext&>(serializingContext);
 
     // Parse included document
-    string strPath = xmlElement.getAttributeString("Path");
+    std::string strPath = xmlElement.getAttributeString("Path");
 
     // Relative path?
     if (strPath[0] != '/') {
@@ -60,13 +60,13 @@
     }
 
     // Instantiate parser
-    string strIncludedElementType = getIncludedElementType();
+    std::string strIncludedElementType = getIncludedElementType();
     {
         // Open a log section titled with loading file path
         CAutoLog autolog(this, "Loading " + strPath);
 
         // Use a doc source that load data from a file
-        string strPathToXsdFile = elementSerializingContext.getXmlSchemaPathFolder() + "/" +
+        std::string strPathToXsdFile = elementSerializingContext.getXmlSchemaPathFolder() + "/" +
                                strIncludedElementType + ".xsd";
 
         CXmlFileDocSource fileDocSource(strPath,
@@ -116,9 +116,9 @@
 }
 
 // Element type
-string CXmlFileIncluderElement::getIncludedElementType() const
+std::string CXmlFileIncluderElement::getIncludedElementType() const
 {
-    string strKind = getKind();
+    std::string strKind = getKind();
 
     int iPosToRemoveFrom = strKind.rfind("Include", -1);
 
diff --git a/parameter/XmlFileIncluderElement.h b/parameter/XmlFileIncluderElement.h
index 1a88ce2..9163356 100644
--- a/parameter/XmlFileIncluderElement.h
+++ b/parameter/XmlFileIncluderElement.h
@@ -31,17 +31,19 @@
 
 #include "KindElement.h"
 
+#include <string>
+
 // Class used to parse <ElementType>Include elements
 class CXmlFileIncluderElement : public CKindElement
 {
 public:
-    CXmlFileIncluderElement(const string& strName,
-                            const string& strKind,
+    CXmlFileIncluderElement(const std::string& strName,
+                            const std::string& strKind,
                             bool bValidateWithSchemas);
     // From IXmlSink
     virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext);
 private:
     // Element type
-    string getIncludedElementType() const;
+    std::string getIncludedElementType() const;
     bool _bValidateSchemasOnStart;
 };
diff --git a/parameter/XmlParameterSerializingContext.cpp b/parameter/XmlParameterSerializingContext.cpp
index 12d7cff..12de305 100644
--- a/parameter/XmlParameterSerializingContext.cpp
+++ b/parameter/XmlParameterSerializingContext.cpp
@@ -31,6 +31,8 @@
 
 #define base CXmlElementSerializingContext
 
+using std::string;
+
 CXmlParameterSerializingContext::CXmlParameterSerializingContext(string& strError) : base(strError)
 {
 }
diff --git a/parameter/XmlParameterSerializingContext.h b/parameter/XmlParameterSerializingContext.h
index cc898dc..61306ce 100644
--- a/parameter/XmlParameterSerializingContext.h
+++ b/parameter/XmlParameterSerializingContext.h
@@ -31,12 +31,14 @@
 
 #include "XmlElementSerializingContext.h"
 
+#include <string>
+
 class CComponentLibrary;
 
 class CXmlParameterSerializingContext : public CXmlElementSerializingContext
 {
 public:
-    CXmlParameterSerializingContext(string& strError);
+    CXmlParameterSerializingContext(std::string& strError);
 
     // ComponentLibrary
     void setComponentLibrary(const CComponentLibrary* pComponentLibrary);