diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.cxx
index 4d99b74df446dab8501279f1fb127399a1685539..888f02778dc82134cc3a3531fbcca8f32a317fce 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.cxx
@@ -52,7 +52,7 @@ StatusCode SCT_ConditionsParameterTestAlg::execute() {
   // so the INFO level messages have no impact on performance of these services when used by clients
   ATH_MSG_DEBUG("in execute()");
   //
-  StatusCode sc{StatusCode::SUCCESS};
+  StatusCode sc{StatusCode::SUCCESS, true};
   
   // Get the current event
   SG::ReadHandle<xAOD::EventInfo> currentEvent{m_currentEventKey};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.h
index b4eba81b80d407525ad660ed3838ced79a034a21..d2e0d8eaf824e2199c9f9ea409aa7f671d318116 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConditionsParameterTestAlg.h
@@ -19,9 +19,6 @@
 // Include Gaudi stuff
 #include "GaudiKernel/ToolHandle.h"
 
-// Include STL stuff
-#include <string>
-
 /** This class acts as a test/sample client the ConditionsParameter class.
  */
 class SCT_ConditionsParameterTestAlg : public AthAlgorithm {
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationCondAlg.cxx
index 6ee5d48940948e93bc4058f02c8b1fd514108ecf..aa37ee1ed8135e2fa4fab7dedbd6a5a666f1881c 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationCondAlg.cxx
@@ -271,8 +271,8 @@ StatusCode SCT_ConfigurationCondAlg::fillChannelData(SCT_ConfigurationCondData*
       } else { // Good chip
         if (not isBadModule) nDisabledStripsExclusive += thisChip->numberOfMaskedChannels(); // Bad strips in a good chip of a good module
       }
-
     }
+
     // Store chip status if not all good (==0)
     if (chipStatusWord!=0) {
       writeCdo->setBadChips(moduleId, chipStatusWord);
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationConditionsTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationConditionsTestAlg.cxx
index cc623aa76fea89fca059cd706fdbc61e5cd4340e..e271bfd2b15bcf6674ad082c47c3886f1ec1998b 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationConditionsTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ConfigurationConditionsTestAlg.cxx
@@ -13,9 +13,6 @@
 #include "Identifier/Identifier.h"
 #include "InDetIdentifier/SCT_ID.h"
 
-// C++ includes
-#include <string>
-
 SCT_ConfigurationConditionsTestAlg::SCT_ConfigurationConditionsTestAlg(const std::string& name, ISvcLocator* pSvcLocator) : 
   AthAlgorithm(name, pSvcLocator),
   m_sctId{nullptr}
@@ -36,14 +33,13 @@ StatusCode SCT_ConfigurationConditionsTestAlg::execute() {
   ATH_MSG_INFO("in execute()");
 
   // Bad modules
-  unsigned int nBadMods = m_configConditions->badModules()->size();
+  unsigned int nBadMods{static_cast<unsigned int>(m_configConditions->badModules()->size())};
 
   // Bad links
+  unsigned int nBadLink0{0}, nBadLink1{0}, nBadLinkBoth{0};
   const std::map<IdentifierHash, std::pair<bool, bool>>* badLinks{m_configConditions->badLinks()};
   std::map<IdentifierHash, std::pair<bool, bool>>::const_iterator linkItr{badLinks->begin()};
   std::map<IdentifierHash, std::pair<bool, bool>>::const_iterator linkEnd{badLinks->end()};
-
-  unsigned int nBadLink0{0}, nBadLink1{0}, nBadLinkBoth{0};
   while (linkItr != linkEnd) {
     std::pair<bool, bool> status{(*linkItr).second};
     if (status.first == false and status.second == true ) ++nBadLink0;
@@ -53,11 +49,10 @@ StatusCode SCT_ConfigurationConditionsTestAlg::execute() {
   }
 
   // Bad chips
+  unsigned int nBadChips{0};
   const std::map<Identifier, unsigned int>* badChips{m_configConditions->badChips()};
   std::map<Identifier, unsigned int>::const_iterator chipItr{badChips->begin()};
   std::map<Identifier, unsigned int>::const_iterator chipEnd{badChips->end()};
-
-  unsigned int nBadChips{0};
   while (chipItr != chipEnd) {
     unsigned int status{(*chipItr).second};
     for (unsigned int i{0}; i<12; i++) nBadChips += ((status & (1<<i)) == 0 ? 0 : 1);
@@ -67,13 +62,13 @@ StatusCode SCT_ConfigurationConditionsTestAlg::execute() {
   // Bad strips 
   std::set<Identifier> badStripsAll;
   m_configConditions->badStrips(badStripsAll);
-  unsigned int nBadStrips = badStripsAll.size();
+  unsigned int nBadStrips{static_cast<unsigned int>(badStripsAll.size())};
 
   // Bad strips (w/o bad modules and chips)
   std::set<Identifier> badStripsExclusive;
   m_configConditions->badStrips(badStripsExclusive, true, true);
-  int nBadStripsExclusive = badStripsExclusive.size();
-  int nBadStripsExclusiveBEC[]{0,0,0};
+  unsigned int nBadStripsExclusive{static_cast<unsigned int>(badStripsExclusive.size())};
+  unsigned int nBadStripsExclusiveBEC[]{0,0,0};
 
   std::set<Identifier>::const_iterator stripItr{badStripsExclusive.begin()};
   std::set<Identifier>::const_iterator stripEnd{badStripsExclusive.end()};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.cxx
index 47969e0025b919abad669efeebb03fbdbee23200..fd11c3c02880418b56c56060e1857c80c623880d 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.cxx
@@ -14,21 +14,7 @@ SCT_DCSConditionsStatCondAlg::SCT_DCSConditionsStatCondAlg(const std::string& na
   : ::AthAlgorithm(name, pSvcLocator)
   , m_condSvc{"CondSvc", name}
   , m_doState{true}
-  , m_chanstatCut{"NORM"}
-  , m_hvLowLimit{0.0}
-  , m_hvUpLimit{1000000.0}
-  , m_useHV{false}
-  , m_useHVLowLimit{19.}
-  , m_useHVUpLimit{1000000.0}
-  , m_useHVChanCut{"LOOSE"}
 {
-  declareProperty("HVCutLow", m_hvLowLimit);
-  declareProperty("HVCutUp", m_hvUpLimit);
-  declareProperty("StateCut", m_chanstatCut);
-  declareProperty("UseDefaultHV", m_useHV);
-  declareProperty("useHVLow", m_useHVLowLimit);
-  declareProperty("useHVUp", m_useHVUpLimit);
-  declareProperty("useHVChan", m_useHVChanCut);
 }
 
 StatusCode SCT_DCSConditionsStatCondAlg::initialize() {
@@ -55,7 +41,7 @@ StatusCode SCT_DCSConditionsStatCondAlg::initialize() {
     }
   }
 
-  if (m_useHV) {
+  if (m_useHV.value()) {
     m_hvLowLimit = m_useHVLowLimit;
     m_hvUpLimit = m_useHVUpLimit;
     m_chanstatCut = m_useHVChanCut;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h
index 2eda086cc903e728cdb018c319757f985d08cd3a..d5e768158518283e2c104dd776e080fb0a42d367 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsStatCondAlg.h
@@ -32,16 +32,16 @@ class SCT_DCSConditionsStatCondAlg : public AthAlgorithm
 
   ServiceHandle<ICondSvc> m_condSvc;
 
+  bool m_doState;
   BooleanProperty m_readAllDBFolders{this, "ReadAllDBFolders", true};
   BooleanProperty m_returnHVTemp{this, "ReturnHVTemp", true};
-  bool m_doState;
-  std::string m_chanstatCut;
-  float m_hvLowLimit;
-  float m_hvUpLimit;
-  bool m_useHV;
-  float m_useHVLowLimit;
-  float m_useHVUpLimit;
-  std::string m_useHVChanCut;
+  StringProperty m_chanstatCut{this, "StateCut", "NORM"};
+  FloatProperty m_hvLowLimit{this, "HVCutLow", 0.0};
+  FloatProperty m_hvUpLimit{this, "HVCutUp", 1000000.0};
+  BooleanProperty m_useHV{this, "UseDefaultHV", false};
+  FloatProperty m_useHVLowLimit{this, "useHVLow", 19.};
+  FloatProperty m_useHVUpLimit{this, "useHVUp", 1000000.0};
+  StringProperty m_useHVChanCut{this, "useHVChan", "LOOSE"};
 };
 
 #endif // SCT_DCSCONDITIONSSTATCONDALG
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTestAlg.cxx
index 243936a97a21fc1f3922da0c9479f0376340feaf..07f51b9d6e89b67e97f0b5ebc1983554a99cfcce 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DCSConditionsTestAlg.cxx
@@ -12,10 +12,6 @@
 // Include Athena stuff
 #include "Identifier/Identifier.h"
 
-// Include STL stuff
-#include <string>
-using namespace std;
-
 SCT_DCSConditionsTestAlg::SCT_DCSConditionsTestAlg(const std::string& name, 
                                                    ISvcLocator* pSvcLocator) : 
   AthAlgorithm(name, pSvcLocator)
@@ -82,7 +78,7 @@ StatusCode SCT_DCSConditionsTestAlg::execute() {
 } // SCT_DCSConditionsTestAlg::execute()
 
 //----------------------------------------------------------------------
-StatusCode SCT_DCSConditionsTestAlg::finalize(){
+StatusCode SCT_DCSConditionsTestAlg::finalize() {
   // Get the messaging service, print where you are
   ATH_MSG_INFO("in finalize()");
   return StatusCode::SUCCESS;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.cxx
index 7c70e8a7d4e43ace802a3826d4d56c69ed43ba44..cb149b703b031ec199b10701b6d0104e13648bd8 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.cxx
@@ -4,14 +4,12 @@
 
 #include "SCT_DetectorElementCondAlg.h"
 
-#include <memory>
-#include <map>
-
 #include "InDetReadoutGeometry/SCT_DetectorManager.h"
-#include "InDetReadoutGeometry/SiCommonItems.h"
 #include "InDetReadoutGeometry/SiDetectorElement.h"
-#include "TrkSurfaces/Surface.h"
 #include "TrkGeometry/Layer.h"
+#include "TrkSurfaces/Surface.h"
+
+#include <map>
 
 SCT_DetectorElementCondAlg::SCT_DetectorElementCondAlg(const std::string& name, ISvcLocator* pSvcLocator)
   : ::AthAlgorithm(name, pSvcLocator)
@@ -88,16 +86,16 @@ StatusCode SCT_DetectorElementCondAlg::execute()
   InDetDD::SiDetectorElementCollection::iterator newEl{writeCdo->begin()};
   for (const InDetDD::SiDetectorElement* oldEl: *oldColl) {
     // At the first time access, SiCommonItems are prepared using the first old element
-    if (m_commonItems==nullptr) {
+    if (m_commonItems.get()==nullptr) {
       const InDetDD::SiCommonItems* oldCommonItems{oldEl->getCommonItems()};
-      m_commonItems = new InDetDD::SiCommonItems(oldCommonItems->getIdHelper());
+      m_commonItems = std::make_unique<InDetDD::SiCommonItems>(oldCommonItems->getIdHelper());
       m_commonItems->setSolenoidFrame(oldCommonItems->solenoidFrame());
     }
 
     *newEl = new InDetDD::SiDetectorElement(oldEl->identify(),
                                             &(oldEl->design()),
                                             oldEl->GeoVDetectorElement::getMaterialGeom(),
-                                            m_commonItems,
+                                            m_commonItems.get(),
                                             readCdo);
     oldToNewMap[oldEl] = *newEl;
     newEl++;
@@ -145,7 +143,5 @@ StatusCode SCT_DetectorElementCondAlg::finalize()
 {
   ATH_MSG_DEBUG("finalize " << name());
 
-  delete m_commonItems;
-
   return StatusCode::SUCCESS;
 }
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.h
index 093f2d16d0da1bb416b292dd0c63c34b1aaf11a2..d2d814a0268c923165f3e0c956d3d0aa2989d972 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_DetectorElementCondAlg.h
@@ -8,15 +8,17 @@
 #include "AthenaBaseComps/AthAlgorithm.h"
 
 #include "GeoModelUtilities/GeoAlignmentStore.h"
+#include "InDetReadoutGeometry/SiCommonItems.h"
 #include "InDetReadoutGeometry/SiDetectorElementCollection.h"
 #include "StoreGate/ReadCondHandleKey.h"
 #include "StoreGate/WriteCondHandleKey.h"
 
 #include "GaudiKernel/ICondSvc.h"
 
+#include <memory>
+
 namespace InDetDD {
   class SCT_DetectorManager;
-  class SiCommonItems;
 }
 
 class SCT_DetectorElementCondAlg : public AthAlgorithm
@@ -35,7 +37,7 @@ class SCT_DetectorElementCondAlg : public AthAlgorithm
 
   ServiceHandle<ICondSvc> m_condSvc;
   const InDetDD::SCT_DetectorManager* m_detManager;
-  InDetDD::SiCommonItems* m_commonItems;
+  std::unique_ptr<InDetDD::SiCommonItems> m_commonItems;
 };
 
 #endif // SCT_CONDITIONSALGORITHMS_SCT_DETECTORELEMENTCONDALG_H
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_LinkMaskingCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_LinkMaskingCondAlg.cxx
index 98b48d669051e30d1256e57d4c8f27c485304e5e..4994939f0e2fa7f84c8f9181114581915c80e032 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_LinkMaskingCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_LinkMaskingCondAlg.cxx
@@ -4,10 +4,10 @@
 
 #include "SCT_LinkMaskingCondAlg.h"
 
-#include <memory>
-
 #include "GaudiKernel/EventIDRange.h"
 
+#include <memory>
+
 SCT_LinkMaskingCondAlg::SCT_LinkMaskingCondAlg(const std::string& name, ISvcLocator* pSvcLocator)
   : ::AthAlgorithm(name, pSvcLocator)
   , m_condSvc{"CondSvc", name}
@@ -75,7 +75,7 @@ StatusCode SCT_LinkMaskingCondAlg::execute() {
     if (not lastProbedState) writeCdo->setBadWaferId(waferId);
     ATH_MSG_INFO("LINK " << waferId << " (" << waferId.get_identifier32().get_compact() << " in 32 bit): " << lastProbedState);
   }
-  if (writeCdo->size()!=0) writeCdo->setFilled();
+  if (writeCdo->size()>0) writeCdo->setFilled();
 
   // Record the output cond object
   if (writeHandle.record(rangeW, std::move(writeCdo)).isFailure()) {
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MajorityCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MajorityCondAlg.h
index bdaadc0bc589d251f980bc3be4273d6ad81b7677..2732419e5fb1218e27ac6cc78324880c0ad2a710 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MajorityCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MajorityCondAlg.h
@@ -6,10 +6,12 @@
 #define SCT_MAJORITYCONDALG
 
 #include "AthenaBaseComps/AthAlgorithm.h"
-#include "StoreGate/ReadCondHandleKey.h"
+
 #include "AthenaPoolUtilities/CondAttrListCollection.h"
-#include "StoreGate/WriteCondHandleKey.h"
 #include "SCT_ConditionsData/SCT_MajorityCondData.h"
+#include "StoreGate/ReadCondHandleKey.h"
+#include "StoreGate/WriteCondHandleKey.h"
+
 #include "GaudiKernel/ICondSvc.h"
 
 class SCT_MajorityCondAlg : public AthAlgorithm 
@@ -24,7 +26,7 @@ class SCT_MajorityCondAlg : public AthAlgorithm
  private:
   SG::ReadCondHandleKey<CondAttrListCollection> m_readKey{this, "ReadKey", "/SCT/DCS/MAJ", "Key of input (raw) conditions folder"};
   SG::WriteCondHandleKey<SCT_MajorityCondData> m_writeKey{this, "WriteKey", "SCT_MajorityCondData", "Key of output (derived) conditions data"};
-  ServiceHandle<ICondSvc> m_condSvc; 
+  ServiceHandle<ICondSvc> m_condSvc;
 };
 
 #endif // SCT_MAJORITYCONDALG
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.cxx
index b15810de6b45d17b6d9b0846ebf46f692071a632..cd83ee4dae06a47d3ebb104b2838f1766241820e 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoCondAlg.cxx
@@ -80,8 +80,8 @@ StatusCode SCT_ModuleVetoCondAlg::execute() {
   std::vector<int> v{string2Vector<int>(badModuleString)};
   int numberInDb{static_cast<int>(v.size())};
   ATH_MSG_INFO(numberInDb << " elements were declared bad in the database.");
-  for (std::vector<int>::const_iterator i{v.begin()}; i!=v.end(); ++i) {
-    writeCdo->setBadWaferId(Identifier{*i});
+  for (const int badWaferId: v) {
+    writeCdo->setBadWaferId(Identifier{badWaferId});
   }
 
   // Record the output cond object
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoTestAlg.cxx
index 2e45e5efa1505f47787555e136fb42c650f94709..c4c9172ec281aa3c8849c47399c51b0f0f92b5ac 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ModuleVetoTestAlg.cxx
@@ -65,7 +65,6 @@ SCT_ModuleVetoTestAlg::execute() {
   return StatusCode::SUCCESS;
 }
 
-
 //Finalize
 StatusCode
 SCT_ModuleVetoTestAlg::finalize() {
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.cxx
index 9bb6ec29413a3df49cfe196d64f4afb61fb3a8dc..0b6d4f155b11ad8af85e4a628d078dc680ab769e 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.cxx
@@ -18,15 +18,10 @@
 #include "InDetIdentifier/SCT_ID.h"
 #include "StoreGate/ReadHandle.h"
 
-//Gaudi includes
-#include "GaudiKernel/StatusCode.h"
-
 SCT_MonitorConditionsTestAlg::SCT_MonitorConditionsTestAlg(const std::string& name, ISvcLocator* pSvcLocator) : 
   AthAlgorithm(name, pSvcLocator), 
-  m_sctId{nullptr},
-  m_evtKey{std::string{"EventInfo"}}
+  m_sctId{nullptr}
 {
-  declareProperty("EventInfoKey", m_evtKey);
 }
 
 // -------------------------------------------------------------------------
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.h
index 749e718dd6b8c1a7abfe50fff4b9c2d71048b43e..421e447706ea2c969bc1641e111126da035db4f4 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_MonitorConditionsTestAlg.h
@@ -45,7 +45,7 @@ class SCT_MonitorConditionsTestAlg : public AthAlgorithm {
   const SCT_ID* m_sctId;
 
   // Parameters to control the db access 
-  SG::ReadHandleKey<xAOD::EventInfo>       m_evtKey;
+  SG::ReadHandleKey<xAOD::EventInfo>       m_evtKey{this, "EventInfoKey", "EventInfo"};
 
 }; // end of class
 
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.cxx
index 42809ec2b2efdf4e9d69797b94f138866f3810db..10e244b1bd2f4427d8dd602bc8cf68b3663a6db7 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.cxx
@@ -14,6 +14,7 @@
 #include "SCT_RODVetoCondAlg.h"
 
 #include "InDetIdentifier/SCT_ID.h"
+#include "StoreGate/WriteHandle.h"
 
 #include <algorithm>
 #include <ios>
@@ -21,12 +22,8 @@
 SCT_RODVetoCondAlg::SCT_RODVetoCondAlg(const std::string& name, 
                                        ISvcLocator* pSvcLocator) :
   AthAlgorithm(name, pSvcLocator),
-  m_pHelper{nullptr},
-  m_badIds{"BadSCTModuleIds_RODVeto"},
-  m_badRODElementsInput{}
+  m_pHelper{nullptr}
 {
-  declareProperty("BadModuleIds", m_badIds, "Write key for bad module identifiers");
-  declareProperty("BadRODIds", m_badRODElementsInput, "Input list of RODs to be vetoed");
 }
 
 StatusCode SCT_RODVetoCondAlg::initialize() {
@@ -38,7 +35,7 @@ StatusCode SCT_RODVetoCondAlg::initialize() {
 }
 
 StatusCode SCT_RODVetoCondAlg::execute() {
-  ATH_MSG_INFO(m_badRODElementsInput.size() <<" RODs were declared bad");
+  ATH_MSG_INFO(m_badRODElementsInput.value().size() <<" RODs were declared bad");
 
   std::vector<unsigned int> allRods;
   m_cabling->getAllRods(allRods);
@@ -46,7 +43,7 @@ StatusCode SCT_RODVetoCondAlg::execute() {
   SG::WriteHandle<IdentifierSet> badIds{m_badIds};
   ATH_CHECK(badIds.record(std::make_unique<IdentifierSet>()));
 
-  for (unsigned int thisRod: m_badRODElementsInput) {
+  for (unsigned int thisRod: m_badRODElementsInput.value()) {
     ATH_MSG_DEBUG("This rod is " << std::hex << "0x" << thisRod << std::dec);
 
     //check whether rod exists
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.h
index 82f3d8f06635ad50793e4f6c537f15e20fe96183..2b73f1d66ca9b953f3e7c019c80ed1d6520cfdb5 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoCondAlg.h
@@ -19,7 +19,7 @@
 
 #include "SCT_Cabling/ISCT_CablingTool.h"
 #include "SCT_ConditionsData/IdentifierSet.h"
-#include "StoreGate/WriteHandle.h"
+#include "StoreGate/WriteHandleKey.h"
 
 // STL
 #include <string>
@@ -41,8 +41,8 @@ class SCT_RODVetoCondAlg : public AthAlgorithm {
  private:
   ToolHandle<ISCT_CablingTool> m_cabling{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
   const SCT_ID* m_pHelper;
-  SG::WriteHandle<IdentifierSet> m_badIds;
-  std::vector<unsigned int> m_badRODElementsInput;
+  SG::WriteHandleKey<IdentifierSet> m_badIds{this, "BadModuleIds", "BadSCTModuleIds_RODVeto", "Write key for bad module identifiers"};
+  UnsignedIntegerArrayProperty m_badRODElementsInput{this, "BadRODIds", {}, "Input list of RODs to be vetoed"};
 }; //end of class
 
 #endif // SCT_RODVetoCondAlg_H
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.cxx
index 6ae67bc32b77c3b14c6ce37f03a68c5ba763d262..1ac2bd8a68306500e483424fe5024385af166aa8 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.cxx
@@ -15,7 +15,6 @@
 
 // Athena include
 #include "Identifier/IdentifierHash.h"
-#include "Identifier/Identifier.h"
 
 SCT_RODVetoTestAlg::SCT_RODVetoTestAlg(const std::string& name, 
                                        ISvcLocator* pSvcLocator) : 
@@ -25,7 +24,7 @@ SCT_RODVetoTestAlg::SCT_RODVetoTestAlg(const std::string& name,
 
 //Initialize
 StatusCode 
-SCT_RODVetoTestAlg::initialize(){
+SCT_RODVetoTestAlg::initialize() {
   ATH_MSG_INFO("Calling initialize");
   ATH_CHECK(m_pRODVetoTool.retrieve());
   return StatusCode::SUCCESS;
@@ -37,18 +36,18 @@ SCT_RODVetoTestAlg::execute() {
   //This method is only used to test the summary service, and only used within this package,
   // so the INFO level messages have no impact on performance of these services when used by clients
   ATH_MSG_INFO("Calling execute");
-  for (unsigned int hash=0; hash<8176; hash+=2) {
-    bool result=m_pRODVetoTool->isGood(IdentifierHash(hash));//invented, no idea what this is
+  for (unsigned int hash{0}; hash<8176; hash+=2) {
+    bool result{m_pRODVetoTool->isGood(IdentifierHash(hash))};//invented, no idea what this is
     ATH_MSG_INFO("Call to module in ROD : Module (hash=" << hash << ") is " << (result?"good":"bad"));
   }
- 
+
   return StatusCode::SUCCESS;
 }
 
 
 //Finalize
 StatusCode
-SCT_RODVetoTestAlg::finalize(){
+SCT_RODVetoTestAlg::finalize() {
   ATH_MSG_INFO("Calling finalize");
   return StatusCode::SUCCESS;
 }
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.h
index 2e521cbc28d226aa3d149861cae71ba1503a3bef..3c7e0930c90d5ffab9602a81315253189b00d57d 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_RODVetoTestAlg.h
@@ -13,15 +13,16 @@
 
 #ifndef SCT_RODVetoTestAlg_H
 #define SCT_RODVetoTestAlg_H 
-//STL
-#include <string>
+
+//Athena
+#include "SCT_ConditionsTools/ISCT_ConditionsTool.h"
 
 //Gaudi
 #include "AthenaBaseComps/AthAlgorithm.h"
 #include "GaudiKernel/ToolHandle.h"
 
-//Athena
-#include "SCT_ConditionsTools/ISCT_ConditionsTool.h"
+//STL
+#include <string>
 
 ///Example algorithm to show calling the SCT_RODVeto to exclude bad components
 class SCT_RODVetoTestAlg : public AthAlgorithm {
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.cxx
index fe580d0ca0ca0ef1ecd8c62b6913ccb9dd52ca88..585fa2af6a2b6c3fa8d20b44442ebd297b9d1b3d 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.cxx
@@ -23,17 +23,11 @@
 SCT_ReadCalibChipDataTestAlg::SCT_ReadCalibChipDataTestAlg(const std::string& name, ISvcLocator* pSvcLocator) :
   AthAlgorithm(name, pSvcLocator),
   m_id_sct{nullptr},
-  m_currentEventKey{std::string("EventInfo")},
   m_moduleId{0},
   m_waferId{0},
-  m_stripId{0},
-  m_doTestmyConditionsSummary{false},
-  m_doTestmyDataSummary{false},
-  m_moduleOfflinePosition{} {
-    declareProperty("DoTestmyConditionsSummary", m_doTestmyConditionsSummary = false, "Test return bool conditions summary?");
-    declareProperty("DoTestmyDataSummary",       m_doTestmyDataSummary       = false, "Test return data summary?");
-    declareProperty("ModuleOfflinePosition",     m_moduleOfflinePosition            , "Offline pos. as: B-EC,layer-disk,phi,eta");
-  }
+  m_stripId{0}
+{
+}
 
 //----------------------------------------------------------------------
 StatusCode SCT_ReadCalibChipDataTestAlg::initialize() {
@@ -98,10 +92,10 @@ StatusCode SCT_ReadCalibChipDataTestAlg::processProperties()
 StatusCode SCT_ReadCalibChipDataTestAlg::execute() {
   //This method is only used to test the summary service, and only used within this package,
   // so the INFO level messages have no impact on performance of these services when used by clients
-  
+
   // Print where you are
   ATH_MSG_DEBUG("in execute()");
-  
+
   // Get the current event
   SG::ReadHandle<xAOD::EventInfo> currentEvent{m_currentEventKey};
   if (not currentEvent.isValid()) {
@@ -113,22 +107,22 @@ StatusCode SCT_ReadCalibChipDataTestAlg::execute() {
                 << "." << currentEvent->eventNumber()
                 << "," << currentEvent->timeStamp()
                 << "]");
-  
+
   //Test Chip Data ConditionsSummary
-  if (m_doTestmyConditionsSummary) {
+  if (m_doTestmyConditionsSummary.value()) {
     // Test summmary, ask status of strip in module
     Identifier IdM{m_moduleId};
     Identifier IdS{m_waferId};
     bool Sok{m_ReadCalibChipDataTool->isGood(IdS, InDetConditions::SCT_SIDE)};
     ATH_MSG_INFO("Side " << IdS << " on module " << IdM << " is " << (Sok ? "good" : "bad"));
   }
-  
+
   //Test data summary
-  if (m_doTestmyDataSummary) {
+  if (m_doTestmyDataSummary.value()) {
     // Test to get some data from the NPtGain or NoiseOccupancy
-    Identifier Id{m_moduleId}; 
-    const int side{1}; 
-    
+    Identifier Id{m_moduleId};
+    const int side{1};
+
     // Try to get some NPtGain data
     // GainByChip, GainRMSByChip, NoiseByChip, NoiseRMSByChip, OffsetByChip, OffsetRMSByChip
     std::string whatNPdata{"GainByChip"};
@@ -136,7 +130,7 @@ StatusCode SCT_ReadCalibChipDataTestAlg::execute() {
     for (unsigned int i{0}; i<NPdata.size(); i++) {
       ATH_MSG_INFO("The " << whatNPdata << " for chip number " << i << " on side " << side << " is: " << NPdata[i]);
     }
-    
+
     // Try to get some NO data
     // occupancy, occupancyRMS, noise, offset
     std::string whatNOdata{"OccupancyRMSByChip"};
@@ -145,7 +139,7 @@ StatusCode SCT_ReadCalibChipDataTestAlg::execute() {
     for (unsigned int i{0}; i<NOdata.size(); i++) {
       ATH_MSG_INFO("The " << whatNOdata << " for chip number " << i << " on side " << side << " is: " << NOdata[i]);
     }
-      
+
     // Try to get some INVALID NPtGain data
     // GainByChip, GainRMSByChip, NoiseByChip, NoiseRMSByChip, OffsetByChip, OffsetRMSByChip
     Identifier invalidId;//constructor forms invalid Id
@@ -164,7 +158,7 @@ StatusCode SCT_ReadCalibChipDataTestAlg::execute() {
 StatusCode SCT_ReadCalibChipDataTestAlg::finalize() {
   // Print where you are
   ATH_MSG_DEBUG("in finalize()");
-  
+
   return StatusCode::SUCCESS;
 } // SCT_ReadCalibChipDataTestAlg::finalize()
 
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.h
index dc52461590a639e3806ab1875f14b039e576f118..d6c698d637d3d845c64ed1a3fc8c9db96aefcf18 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipDataTestAlg.h
@@ -47,7 +47,7 @@ class SCT_ReadCalibChipDataTestAlg : public AthAlgorithm
   
   //----------Private Attributes----------//
   const SCT_ID*                       m_id_sct;        //!< ID helper for SCT
-  SG::ReadHandleKey<xAOD::EventInfo>  m_currentEventKey;  //!< Current event
+  SG::ReadHandleKey<xAOD::EventInfo>  m_currentEventKey{this, "EventInfoKey", "EventInfo", "EventInfoKey"};
   Identifier                          m_moduleId;      //!< Module identifier
   Identifier                          m_waferId;       //!< Wafer identifier
   Identifier                          m_stripId;       //!< Strip identifier
@@ -55,9 +55,9 @@ class SCT_ReadCalibChipDataTestAlg : public AthAlgorithm
   // Get Tool Handle
   ToolHandle<ISCT_ReadCalibChipDataTool> m_ReadCalibChipDataTool{this, "SCT_ReadCalibChipDataTool", "SCT_ReadCalibChipDataTool", "Tool to retrieve chip calibration information"};
 
-  BooleanProperty                  m_doTestmyConditionsSummary;   //!< Test return bool conditions summary?
-  BooleanProperty                  m_doTestmyDataSummary;         //!< Test return data summary?
-  IntegerArrayProperty             m_moduleOfflinePosition;       //!< Offline pos. as: B-EC,layer-disk,phi,eta
+  BooleanProperty m_doTestmyConditionsSummary{this, "DoTestmyConditionsSummary", false, "Test return bool conditions summary?"};
+  BooleanProperty m_doTestmyDataSummary{this, "DoTestmyDataSummary", false, "Test return data summary?"};
+  IntegerArrayProperty m_moduleOfflinePosition{this, "ModuleOfflinePosition", {}, "Offline pos. as: B-EC,layer-disk,phi,eta"};
 };
 //---------------------------------------------------------------------- 
 
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.cxx
index fd55655aeb591ac47bfed2d51e17485c7ca555be..a2ff912b69997b9d697cb5ca3b2847d89672f2d5 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipGainCondAlg.cxx
@@ -4,16 +4,15 @@
 
 #include "SCT_ReadCalibChipGainCondAlg.h"
 
-#include <limits>
-#include <memory>
-
-#include "GaudiKernel/EventIDRange.h"
-
 #include "Identifier/IdentifierHash.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "SCT_ConditionsData/SCT_ConditionsParameters.h"
 #include "SCT_ConditionsTools/SCT_ReadCalibChipUtilities.h"
 
+#include "GaudiKernel/EventIDRange.h"
+
+#include <memory>
+
 using namespace SCT_ConditionsData;
 using namespace SCT_ReadCalibChipUtilities;
 
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.cxx
index 0704bab56055c049c6ee6e629ee741b13e112154..b5bcdaf08f49fc3c62f059e1a988279a12b6ec0f 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.cxx
@@ -4,16 +4,16 @@
 
 #include "SCT_ReadCalibChipNoiseCondAlg.h"
 
-#include <limits>
-#include <memory>
-
-#include "GaudiKernel/EventIDRange.h"
-
 #include "Identifier/IdentifierHash.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "SCT_ConditionsData/SCT_ConditionsParameters.h"
 #include "SCT_ConditionsTools/SCT_ReadCalibChipUtilities.h"
 
+#include "GaudiKernel/EventIDRange.h"
+
+#include <limits>
+#include <memory>
+
 using namespace SCT_ConditionsData;
 using namespace SCT_ReadCalibChipUtilities;
 
@@ -55,12 +55,12 @@ StatusCode SCT_ReadCalibChipNoiseCondAlg::execute() {
     ATH_MSG_DEBUG("CondHandle " << writeHandle.fullKey() << " is already valid."
                   << ". In theory this should not be called, but may happen"
                   << " if multiple concurrent events are being processed out of order.");
-    return StatusCode::SUCCESS; 
+    return StatusCode::SUCCESS;
   }
 
   // Read Cond Handle
   SG::ReadCondHandle<CondAttrListCollection> readHandle{m_readKey};
-  const CondAttrListCollection* readCdo{*readHandle}; 
+  const CondAttrListCollection* readCdo{*readHandle};
   if (readCdo==nullptr) {
     ATH_MSG_FATAL("Null pointer to the read conditions object");
     return StatusCode::FAILURE;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h
index 27f6559c82699b227c284703244d1b87d634b20d..44ec1e2a468fb1504d4d19cf2ffdfdf3f96cd177 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibChipNoiseCondAlg.h
@@ -8,16 +8,16 @@
 // Include parent class
 #include "AthenaBaseComps/AthAlgorithm.h"
 
-// Include Gaudi classes
-#include "GaudiKernel/ICondSvc.h"
-#include "GaudiKernel/Property.h"
-
 // Include Athena classes
-#include "StoreGate/ReadCondHandleKey.h"
-#include "StoreGate/WriteCondHandleKey.h"
 #include "AthenaPoolUtilities/CondAttrListCollection.h"
 #include "AthenaPoolUtilities/AthenaAttributeList.h"
 #include "SCT_ConditionsData/SCT_NoiseCalibData.h"
+#include "StoreGate/ReadCondHandleKey.h"
+#include "StoreGate/WriteCondHandleKey.h"
+
+// Include Gaudi classes
+#include "GaudiKernel/ICondSvc.h"
+#include "GaudiKernel/Property.h"
 
 // Include boost stuff
 #include "boost/array.hpp"
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.cxx
index 974c4cd9a9e72c58604adbce1a8f022ffe1b8b4a..27e53ee92b00460f78ba5e64261dea83b32c2c15 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.cxx
@@ -4,21 +4,21 @@
 
 #include "SCT_ReadCalibDataCondAlg.h"
 
-// Include STL stuff
-#include <limits>
-#include <memory>
-
-#include "GaudiKernel/EventIDRange.h"
-
 #include "Identifier/IdentifierHash.h"
 #include "InDetIdentifier/SCT_ID.h"
 #include "InDetReadoutGeometry/SiDetectorElement.h"
 #include "SCT_ConditionsData/SCT_ConditionsParameters.h"
 
+#include "GaudiKernel/EventIDRange.h"
+
 // Include boost stuff
 #include "boost/lexical_cast.hpp"
 #include "boost/tokenizer.hpp"
 
+// Include STL stuff
+#include <limits>
+#include <memory>
+
 using namespace SCT_ConditionsData;
 
 // Utility functions
@@ -51,22 +51,17 @@ namespace {
 SCT_ReadCalibDataCondAlg::SCT_ReadCalibDataCondAlg(const std::string& name, ISvcLocator* pSvcLocator)
   : ::AthAlgorithm(name, pSvcLocator)
   , m_defectMapIntToString{}
-  , m_ignoreDefects{}
-  , m_ignoreDefectParameters{}
   , m_condSvc{"CondSvc", name}
   , m_id_sct{nullptr}
 {
-  declareProperty("IgnoreDefects", m_ignoreDefects, "Defects to ignore");
-  declareProperty("IgnoreDefectsParameters", m_ignoreDefectParameters, "Limit on defect to ignore parameters");
-
-  m_ignoreDefects.push_back("NOISE_SLOPE");
-  m_ignoreDefects.push_back("OFFSET_SLOPE");
-  m_ignoreDefects.push_back("GAIN_SLOPE");
-  m_ignoreDefects.push_back("BAD_OPE");
-  m_ignoreDefectParameters.push_back(-1000.);
-  m_ignoreDefectParameters.push_back(-1000.);
-  m_ignoreDefectParameters.push_back(-1000.);
-  m_ignoreDefectParameters.push_back(-1000.);
+  m_ignoreDefects.value().push_back("NOISE_SLOPE");
+  m_ignoreDefects.value().push_back("OFFSET_SLOPE");
+  m_ignoreDefects.value().push_back("GAIN_SLOPE");
+  m_ignoreDefects.value().push_back("BAD_OPE");
+  m_ignoreDefectParameters.value().push_back(-1000.);
+  m_ignoreDefectParameters.value().push_back(-1000.);
+  m_ignoreDefectParameters.value().push_back(-1000.);
+  m_ignoreDefectParameters.value().push_back(-1000.);
 }
 
 StatusCode SCT_ReadCalibDataCondAlg::initialize() {
@@ -127,7 +122,7 @@ StatusCode SCT_ReadCalibDataCondAlg::initialize() {
   m_defectMapIntToString[38] = "DOUBTR_HI";     //<! High double trigger noise occupancy, > 5
 
   //Check ignoreDefects vectors are the same size
-  if (m_ignoreDefects.size() != m_ignoreDefectParameters.size()) {
+  if (m_ignoreDefects.value().size() != m_ignoreDefectParameters.value().size()) {
     ATH_MSG_FATAL("IgnoreDefect != IgnoreDefectsParameters, check job options!");
     return StatusCode::FAILURE;
   }
@@ -272,17 +267,17 @@ StatusCode SCT_ReadCalibDataCondAlg::execute() {
           // Check for defects and their limits not to take into account in isGood
           bool ignoreDefect{false};
           unsigned int ig{0};
-          while (ig<m_ignoreDefects.size()) { //loop until found defect or end of ignoredefects
-            if (m_ignoreDefects[ig] == theseDefects.typeOfDefect[i]) {
-              if (                                                   m_ignoreDefectParameters[ig]<-999.                   ) ignoreDefect = true; //no check on parameter value, defect ignored
-              else if (theseDefects.typeOfDefect[i]=="NO_HI"     and m_ignoreDefectParameters[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 0.0005 (in DB, so default values printed here)
-              else if (theseDefects.typeOfDefect[i]=="NOISY"     and m_ignoreDefectParameters[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 1.15* av chip average
-              else if (theseDefects.typeOfDefect[i]=="V_NOISY"   and m_ignoreDefectParameters[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 1.25* av chip average
-              else if (theseDefects.typeOfDefect[i]=="VLO_GAIN"  and m_ignoreDefectParameters[ig]<theseDefects.parValue[i]) ignoreDefect = true; // gain to low, < 0.3 * chip average
-              else if (theseDefects.typeOfDefect[i]=="LO_GAIN"   and m_ignoreDefectParameters[ig]<theseDefects.parValue[i]) ignoreDefect = true; // gain to low < 0.75 * chip average
-              else if (theseDefects.typeOfDefect[i]=="HI_GAIN"   and m_ignoreDefectParameters[ig]>theseDefects.parValue[i]) ignoreDefect = true; // gain to high > 1.25 * chip average
-              else if (theseDefects.typeOfDefect[i]=="LO_OFFSET" and m_ignoreDefectParameters[ig]>theseDefects.parValue[i]) ignoreDefect = true; // offset to low < -100
-              else if (theseDefects.typeOfDefect[i]=="HI_OFFSET" and m_ignoreDefectParameters[ig]<theseDefects.parValue[i]) ignoreDefect = true; // offset to high > 200
+          while (ig<m_ignoreDefects.value().size()) { //loop until found defect or end of ignoredefects
+            if (m_ignoreDefects.value()[ig] == theseDefects.typeOfDefect[i]) {
+              if (                                                   m_ignoreDefectParameters.value()[ig]<-999.                   ) ignoreDefect = true; //no check on parameter value, defect ignored
+              else if (theseDefects.typeOfDefect[i]=="NO_HI"     and m_ignoreDefectParameters.value()[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 0.0005 (in DB, so default values printed here)
+              else if (theseDefects.typeOfDefect[i]=="NOISY"     and m_ignoreDefectParameters.value()[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 1.15* av chip average
+              else if (theseDefects.typeOfDefect[i]=="V_NOISY"   and m_ignoreDefectParameters.value()[ig]>theseDefects.parValue[i]) ignoreDefect = true; //noise below threshold, > 1.25* av chip average
+              else if (theseDefects.typeOfDefect[i]=="VLO_GAIN"  and m_ignoreDefectParameters.value()[ig]<theseDefects.parValue[i]) ignoreDefect = true; // gain to low, < 0.3 * chip average
+              else if (theseDefects.typeOfDefect[i]=="LO_GAIN"   and m_ignoreDefectParameters.value()[ig]<theseDefects.parValue[i]) ignoreDefect = true; // gain to low < 0.75 * chip average
+              else if (theseDefects.typeOfDefect[i]=="HI_GAIN"   and m_ignoreDefectParameters.value()[ig]>theseDefects.parValue[i]) ignoreDefect = true; // gain to high > 1.25 * chip average
+              else if (theseDefects.typeOfDefect[i]=="LO_OFFSET" and m_ignoreDefectParameters.value()[ig]>theseDefects.parValue[i]) ignoreDefect = true; // offset to low < -100
+              else if (theseDefects.typeOfDefect[i]=="HI_OFFSET" and m_ignoreDefectParameters.value()[ig]<theseDefects.parValue[i]) ignoreDefect = true; // offset to high > 200
             }
             ig++;
           }
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h
index ecce601ec012d4468031c82a2783cf3837015ec4..2961f769459255942027566fe83ae26fa7a003d8 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataCondAlg.h
@@ -46,8 +46,8 @@ class SCT_ReadCalibDataCondAlg : public AthAlgorithm
   // Defect type map, contains Fit, NPtGain and No defects for now
   std::map<int, std::string> m_defectMapIntToString;
   // Arrays to hold defects to ignore/limits
-  std::vector<std::string> m_ignoreDefects;
-  std::vector<float> m_ignoreDefectParameters;
+  StringArrayProperty m_ignoreDefects{this, "IgnoreDefects", {}, "Defects to ignore"};
+  FloatArrayProperty m_ignoreDefectParameters{this, "IgnoreDefectsParameters", {}, "Limit on defect to ignore parameters"};
 
   ServiceHandle<ICondSvc> m_condSvc;
   const SCT_ID* m_id_sct; //!< Handle to SCT ID helper
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.cxx
index 4b1e09327d70dd8e12d2cf28000b3a675a5eacee..bc7bdbd58dfd628f650072e9f3c11be0a153bba2 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.cxx
@@ -26,20 +26,8 @@ SCT_ReadCalibDataTestAlg::SCT_ReadCalibDataTestAlg(const std::string& name, ISvc
   m_id_sct{nullptr},
   m_moduleId{0},
   m_waferId{0},
-  m_stripId{0},
-  m_doTestmyConditionsSummary{false},
-  m_doTestmyDefectIsGood{false},
-  m_doTestmyDefectType{false},
-  m_doTestmyDefectsSummary{false},
-  m_doTestmyDefectList{false},
-  m_moduleOfflinePosition{}
+  m_stripId{0}
 {
-  declareProperty("DoTestmyConditionsSummary",   m_doTestmyConditionsSummary = false, "Test return bool conditions summary?");
-  declareProperty("DoTestmyDefectIsGood",        m_doTestmyDefectIsGood      = false, "Test return defect type summary?");
-  declareProperty("DoTestmyDefectType",          m_doTestmyDefectType        = false, "Test return defect type summary?");
-  declareProperty("DoTestmyDefectsSummary",      m_doTestmyDefectsSummary    = false, "Test return module defects summary?");
-  declareProperty("DoTestmyDefectList",          m_doTestmyDefectList        = false, "Test return defectList?");
-  declareProperty("ModuleOfflinePosition",       m_moduleOfflinePosition            , "Offline pos. as: B-EC,layer-disk,phi,eta");
 }
 
 //----------------------------------------------------------------------
@@ -112,7 +100,7 @@ StatusCode SCT_ReadCalibDataTestAlg::execute()
   ATH_MSG_DEBUG("in execute()");
   
   //Test ConditionsSummary
-  if (m_doTestmyConditionsSummary) {
+  if (m_doTestmyConditionsSummary.value()) {
     // Test summmary, ask status of strip in module
     Identifier IdM{m_moduleId};
     Identifier IdS{m_stripId};
@@ -121,7 +109,7 @@ StatusCode SCT_ReadCalibDataTestAlg::execute()
   }
 
   // Loop over all strips and check if good or not using isGood, and print the bad ones
-  if (m_doTestmyDefectIsGood) {
+  if (m_doTestmyDefectIsGood.value()) {
     int ngood{0};
     int nbad{0};
     //Loop over all wafers using hashIds from the cabling service
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.h
index 4349e46144d035bbc360b3ed32171d431d06c8b1..87eacd288a2251b13341e9fe97970b843d0fba16 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadCalibDataTestAlg.h
@@ -57,12 +57,9 @@ class SCT_ReadCalibDataTestAlg:public AthAlgorithm
   ToolHandle<ISCT_ReadCalibDataTool> m_ReadCalibDataTool{this, "SCT_ReadCalibDataTool", "SCT_ReadCalibDataTool", "Tool to retrieve calibration information"};
   ToolHandle<ISCT_CablingTool>       m_cabling{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
 
-  BooleanProperty                  m_doTestmyConditionsSummary;   //!< Test return bool conditions summary?
-  BooleanProperty                  m_doTestmyDefectIsGood;        //!< Test isGood for all strips?
-  BooleanProperty                  m_doTestmyDefectType;          //!< Test return defect type?
-  BooleanProperty                  m_doTestmyDefectsSummary;      //!< Test return module defect summary?
-  BooleanProperty                  m_doTestmyDefectList;          //!< Test return defectList?
-  IntegerArrayProperty             m_moduleOfflinePosition;       //!< Offline pos. as: B-EC,layer-disk,phi,eta
+  BooleanProperty m_doTestmyConditionsSummary{this, "DoTestmyConditionsSummary", false, "Test return bool conditions summary?"};
+  BooleanProperty m_doTestmyDefectIsGood{this, "DoTestmyDefectIsGood", false, "Test return defect type summary?"};
+  IntegerArrayProperty m_moduleOfflinePosition{this, "ModuleOfflinePosition", {}, "Offline pos. as: B-EC,layer-disk,phi,eta"};       //!< Offline pos. as: B-EC,layer-disk,phi,eta
 };
 //---------------------------------------------------------------------- 
 
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.cxx
index 0cdeaa31f6c00daf33fa490d00ce68946ddb0c19..a00cc184695faf528cf800d8b1b9b6b590fd8199 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.cxx
@@ -20,17 +20,10 @@
 // C++
 #include <vector>
 
+// Constructor
 SCT_ReadoutTestAlg::SCT_ReadoutTestAlg(const std::string& name, ISvcLocator* pSvcLocator) : 
-  AthAlgorithm(name, pSvcLocator),
-  m_moduleId{168497152},
-  m_link0ok{true},
-  m_link1ok{true}
+  AthAlgorithm(name, pSvcLocator)
 {
-  // Constructor
-  declareProperty("ChipConfigurationList", m_chipConfigs);
-  declareProperty("ModuleId",              m_moduleId);
-  declareProperty("Link0Status",           m_link0ok);
-  declareProperty("Link1Status",           m_link1ok);
 }
 
 // Initialize
@@ -66,7 +59,7 @@ StatusCode SCT_ReadoutTestAlg::execute() {
   for (; itr != end; ++itr) ATH_MSG_INFO(*(*itr));
 
   // Determin readout for this module
-  ATH_CHECK(m_readout->determineReadout(Identifier(m_moduleId), m_chips, m_link0ok, m_link1ok));
+  ATH_CHECK(m_readout->determineReadout(Identifier(m_moduleId.value()), m_chips, m_link0ok.value(), m_link1ok.value()));
   
   ATH_MSG_INFO("Chips after readout ...");
   for (itr = m_chips.begin(); itr != end; ++itr) ATH_MSG_INFO(*(*itr));
@@ -82,7 +75,6 @@ StatusCode SCT_ReadoutTestAlg::finalize() {
   // Free up the memory associated to the chips
   std::vector<SCT_Chip*>::const_iterator itr{m_chips.begin()};
   std::vector<SCT_Chip*>::const_iterator end{m_chips.end()};
-
   while (itr != end) {
     delete *itr;
     ++itr;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.h
index 4d1bd595b9456d166439ca672bc51c0e024a5bf9..8511de5367bd16d607f720b632df8941c71b8b3c 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_ReadoutTestAlg.h
@@ -45,12 +45,15 @@ class SCT_ReadoutTestAlg : public AthAlgorithm {
   StatusCode                          finalize() override;
    
  private:
-  ToolHandle<ISCT_ReadoutTool>        m_readout{this, "SCT_ReadoutTool", "SCT_ReadoutTool", "Handle to the SCT_ReadoutTool"};      //!< Handle to the SCT_ReadoutTool
-  std::vector<SCT_Chip*>              m_chips;        //!< List of chips for that module. *Modified in execute*
-  std::vector<std::string>            m_chipConfigs;  //!< The configuration of the chips in that module (from job options)
-  int                                 m_moduleId;     //!< The Module identifier (from job options)
-  bool                                m_link0ok;      //!< Status of link 0 (from job options)
-  bool                                m_link1ok;      //!< Status of link 1 (from job options)
+  ToolHandle<ISCT_ReadoutTool>        m_readout{this, "SCT_ReadoutTool", "SCT_ReadoutTool", "Handle to the SCT_ReadoutTool"};
+
+  //!< List of chips for that module. *Modified in execute* This should be OK because this is a test alg.
+  std::vector<SCT_Chip*> m_chips;
+
+  StringArrayProperty m_chipConfigs{this, "ChipConfigurationList", {}, "The configuration of the chips in that module (from job options)"};
+  IntegerProperty m_moduleId{this, "ModuleId", 168497152, "The Module identifier (from job options)"};
+  BooleanProperty m_link0ok{this, "Link0Status", true, "Status of link 0 (from job options)"};
+  BooleanProperty m_link1ok{this, "Link1Status", true, "Status of link 1 (from job options)"};
 
   /** Function to convert the configuration string into an int*/
   short                               bin2dec(const char *bin);
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SensorsTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SensorsTestAlg.cxx
index b2c79fd0f324a5b7bd666f482b35ca4dfd55d17e..47b46e58764f9a740cbdb8fd06d61a5e30b3909f 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SensorsTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SensorsTestAlg.cxx
@@ -39,8 +39,8 @@ StatusCode SCT_SensorsTestAlg::execute() {
   ATH_MSG_INFO("Calling execute");
   std::vector<std::string> values;
   m_SensorsTool->getSensorsData(values);
-  for (std::vector<std::string>::const_iterator i{values.begin()}; i!=values.end(); ++i) {
-    ATH_MSG_INFO("------------" << *i << "------------");
+  for (const std::string& value: values) {
+    ATH_MSG_INFO("------------" << value << "------------");
   }
   m_SensorsTool->printManufacturers();
   return StatusCode::SUCCESS;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconConditionsTestAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconConditionsTestAlg.cxx
index 9d80829c6760109534bbecfa9ea9d25692f71d85..5a640cc02b8a05b87af4784ff81f9b57ae4efdbb 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconConditionsTestAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconConditionsTestAlg.cxx
@@ -36,13 +36,12 @@ StatusCode SCT_SiliconConditionsTestAlg::execute() {
   // so the INFO level messages have no impact on performance of these services when used by clients
   
   ATH_MSG_INFO("Calling execute");
-  ATH_MSG_INFO("Temperature  = " << m_siliconTool->temperature(IdentifierHash(804)));
-  ATH_MSG_INFO("Depletion V  = " << m_siliconTool->depletionVoltage(IdentifierHash(804)));
-  ATH_MSG_INFO("Bias Voltage = " << m_siliconTool->biasVoltage(IdentifierHash(804)));  // was 216808130
+  ATH_MSG_INFO("Temperature  = " << m_siliconTool->temperature(IdentifierHash{804}));
+  ATH_MSG_INFO("Depletion V  = " << m_siliconTool->depletionVoltage(IdentifierHash{804}));
+  ATH_MSG_INFO("Bias Voltage = " << m_siliconTool->biasVoltage(IdentifierHash{804})); // was 216808130
   return StatusCode::SUCCESS;
 }
 
-
 //Finalize
 StatusCode
 SCT_SiliconConditionsTestAlg::finalize() {
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.cxx
index 7af19c305db3ac124a97f9b06fc70331648c1e17..ee364b6bedf05673a5cd214f7c217a7852757ef6 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.cxx
@@ -13,11 +13,9 @@
 
 SCT_SiliconHVCondAlg::SCT_SiliconHVCondAlg(const std::string& name, ISvcLocator* pSvcLocator)
   : ::AthAlgorithm(name, pSvcLocator)
-  , m_useState{true}
   , m_condSvc{"CondSvc", name}
   , m_pHelper{nullptr}
 {
-  declareProperty("UseState", m_useState, "Flag to use state conditions folder");
 }
 
 StatusCode SCT_SiliconHVCondAlg::initialize() {
@@ -31,7 +29,7 @@ StatusCode SCT_SiliconHVCondAlg::initialize() {
   // CondSvc
   ATH_CHECK(m_condSvc.retrieve());
   // Read Cond Handles
-  if (m_useState) {
+  if (m_useState.value()) {
     ATH_CHECK(m_readKeyState.initialize());
   }
   ATH_CHECK(m_readKeyHV.initialize());
@@ -74,7 +72,7 @@ StatusCode SCT_SiliconHVCondAlg::execute() {
 
   EventIDRange rangeW{rangeHV};
 
-  if (m_useState) {
+  if (m_useState.value()) {
     // Read Cond Handle (state)
     SG::ReadCondHandle<SCT_DCSStatCondData> readHandleState{m_readKeyState};
     const SCT_DCSStatCondData* readCdoState{*readHandleState};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.h
index d8bbfd9c24b59db07fb39904090d7b07b21f7602..b7849d34378e9663b4852133bf7e40411d55e1b6 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconHVCondAlg.h
@@ -27,7 +27,7 @@ class SCT_SiliconHVCondAlg : public AthAlgorithm
   StatusCode finalize() override;
 
  private:
-  bool m_useState;
+  BooleanProperty m_useState{this, "UseState", true, "Flag to use state conditions folder"};
   SG::ReadCondHandleKey<SCT_DCSStatCondData> m_readKeyState{this, "ReadKeyState", "SCT_DCSStatCondData", "Key of input state conditions data"};
   SG::ReadCondHandleKey<SCT_DCSFloatCondData> m_readKeyHV{this, "ReadKeyHV", "SCT_DCSHVCondData", "Key of input HV conditions data"};
   SG::WriteCondHandleKey<SCT_DCSFloatCondData> m_writeKey{this, "WriteKey", "SCT_SiliconBiasVoltCondData", "Key of output bias voltage conditions data"};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.cxx
index f95cb2f308e244092fc512114bacd90343c91c90..ebaa2fbd8e7c3990970ea2cf8d1d713884515003 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.cxx
@@ -13,11 +13,9 @@
 
 SCT_SiliconTempCondAlg::SCT_SiliconTempCondAlg(const std::string& name, ISvcLocator* pSvcLocator)
   : ::AthAlgorithm(name, pSvcLocator)
-  , m_useState{true}
   , m_condSvc{"CondSvc", name}
   , m_pHelper{nullptr}
 {
-  declareProperty("UseState", m_useState, "Flag to use state conditions folder");
 }
 
 StatusCode SCT_SiliconTempCondAlg::initialize() {
@@ -31,7 +29,7 @@ StatusCode SCT_SiliconTempCondAlg::initialize() {
   // CondSvc
   ATH_CHECK(m_condSvc.retrieve());
   // Read Cond Handle
-  if (m_useState) {
+  if (m_useState.value()) {
     ATH_CHECK(m_readKeyState.initialize());
   }
   ATH_CHECK(m_readKeyTemp0.initialize());
@@ -74,7 +72,7 @@ StatusCode SCT_SiliconTempCondAlg::execute() {
 
   EventIDRange rangeW{rangeTemp0};
 
-  if (m_useState) {
+  if (m_useState.value()) {
     // Read Cond Handle (state)
     SG::ReadCondHandle<SCT_DCSStatCondData> readHandleState{m_readKeyState};
     const SCT_DCSStatCondData* readCdoState{*readHandleState};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.h
index bdd9aba25457b4787b273f424d30dbf3c477500d..82b7e6a3e56506df71464f2ab8cff1e4e421d6c2 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_SiliconTempCondAlg.h
@@ -27,7 +27,7 @@ class SCT_SiliconTempCondAlg : public AthAlgorithm
   StatusCode finalize() override;
 
  private:
-  bool m_useState;
+  BooleanProperty m_useState{this, "UseState", true, "Flag to use state conditions folder"};
   SG::ReadCondHandleKey<SCT_DCSStatCondData> m_readKeyState{this, "ReadKeyState", "SCT_DCSStatCondData", "Key of input state conditions data"};
   SG::ReadCondHandleKey<SCT_DCSFloatCondData> m_readKeyTemp0{this, "ReadKeyTemp", "SCT_DCSTemp0CondData", "Key of input (hybrid) temperature conditions data"};
   SG::WriteCondHandleKey<SCT_DCSFloatCondData> m_writeKey{this, "WriteKey", "SCT_SiliconTempCondData", "Key of output (sensor) temperature conditions data"};
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_StripVetoTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_StripVetoTestAlg.h
index 0863d809dfb21599af73268cf6f741542d6ecfee..8cd5b69069cf8fbebca9d53fe328c1f5d8cfe443 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_StripVetoTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_StripVetoTestAlg.h
@@ -32,6 +32,6 @@ class SCT_StripVetoTestAlg : public AthAlgorithm {
    
  private:
   ToolHandle<ISCT_ConditionsTool> m_stripVetoTool{this, "StripVetoTool", "SCT_StripVetoTool", "Tool to retrieve vetoed strips"};
-}; 
+};
 
 #endif // SCT_StripVetoTestAlg_H
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.cxx b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.cxx
index 4c77aaff0d0cf0c5de85b2407478f67a9c85982f..d715b0e577a4c4d8d9c3b4e7e7b210cc130db36f 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.cxx
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.cxx
@@ -16,7 +16,6 @@ SCT_TdaqEnabledCondAlg::SCT_TdaqEnabledCondAlg(const std::string& name, ISvcLoca
   : ::AthAlgorithm(name, pSvcLocator)
   , m_condSvc{"CondSvc", name}
 {
-  declareProperty("EventInfoKey", m_eventInfoKey=std::string{"ByteStreamEventInfo"}, "Key of non-xAOD EventInfo");
 }
 
 StatusCode SCT_TdaqEnabledCondAlg::initialize()
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.h
index ed38a08476628dbdf5b4951ef7a18c9bcf502b7d..a867908b25a2fa1d8c5f88fda08c10221613078c 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledCondAlg.h
@@ -6,14 +6,16 @@
 #define SCT_TDAQENABLEDCONDALG
 
 #include "AthenaBaseComps/AthAlgorithm.h"
-#include "StoreGate/ReadCondHandleKey.h"
+
 #include "AthenaPoolUtilities/CondAttrListCollection.h"
-#include "StoreGate/WriteCondHandleKey.h"
+#include "EventInfo/EventInfo.h"
+#include "SCT_Cabling/ISCT_CablingTool.h"
 #include "SCT_ConditionsData/SCT_TdaqEnabledCondData.h"
+#include "StoreGate/ReadCondHandleKey.h"
 #include "StoreGate/ReadHandleKey.h"
-#include "EventInfo/EventInfo.h"
+#include "StoreGate/WriteCondHandleKey.h"
+
 #include "GaudiKernel/ICondSvc.h"
-#include "SCT_Cabling/ISCT_CablingTool.h"
 
 class SCT_TdaqEnabledCondAlg : public AthAlgorithm 
 {  
@@ -27,15 +29,15 @@ class SCT_TdaqEnabledCondAlg : public AthAlgorithm
  private:
   bool unfilledRun() const;
 
+  unsigned int parseChannelName(const std::string &chanNameString) const;
+  std::string inWords(const unsigned int aNumber) const;
+
   SG::ReadCondHandleKey<CondAttrListCollection> m_readKey{this, "ReadKey", "/TDAQ/Resources/ATLAS/SCT/Robins", "Key of input (raw) conditions folder"};
   SG::WriteCondHandleKey<SCT_TdaqEnabledCondData> m_writeKey{this, "WriteKey", "SCT_TdaqEnabledCondData", "Key of output (derived) conditions data"};
-  SG::ReadHandleKey<EventInfo> m_eventInfoKey;
+  SG::ReadHandleKey<EventInfo> m_eventInfoKey{this, "EventInfoKey", "ByteStreamEventInfo", "Key of non-xAOD EventInfo"};
   ServiceHandle<ICondSvc> m_condSvc; 
   ToolHandle<ISCT_CablingTool> m_cablingTool{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
 
-  unsigned int parseChannelName(const std::string &chanNameString) const;
-  std::string inWords(const unsigned int aNumber) const;
-
   static const unsigned int s_NRODS;
   static const unsigned int s_modulesPerRod;
   static const unsigned int s_earliestRunForFolder;
diff --git a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledTestAlg.h b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledTestAlg.h
index a98f7a8c3835680c3c42efa5c2fbaa3367a98ae0..859c32686f90c8abdd4683da2f9b25640b12b031 100644
--- a/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledTestAlg.h
+++ b/InnerDetector/InDetConditions/SCT_ConditionsAlgorithms/src/SCT_TdaqEnabledTestAlg.h
@@ -12,15 +12,16 @@
 
 #ifndef SCT_TdaqEnabledTestAlg_H
 #define SCT_TdaqEnabledTestAlg_H 
-//STL
-#include <string>
 
-//Gaudi
+//Athena
 #include "AthenaBaseComps/AthAlgorithm.h"
+#include "SCT_ConditionsTools/ISCT_ConditionsTool.h"
+
+//Gaudi
 #include "GaudiKernel/ToolHandle.h"
 
-//Athena
-#include "SCT_ConditionsTools/ISCT_ConditionsTool.h"
+//STL
+#include <string>
 
 ///Example algorithm to show calling the SCT_ModuleVeto to exclude bad components
 class SCT_TdaqEnabledTestAlg : public AthAlgorithm {
diff --git a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.cxx b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.cxx
index 7b41c6695c8d8ac3341c884f93d3b6f8ee5ebac9..1c1948fea007ffd6e1d4c513f77db6eddb870465 100644
--- a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.cxx
+++ b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.cxx
@@ -61,19 +61,18 @@ SCT_CablingCondAlgFromText::SCT_CablingCondAlgFromText(const std::string& name,
   AthAlgorithm(name, pSvcLocator),
   m_condSvc{"CondSvc", name}
 {
-  declareProperty("DataSource", m_source="SCT_MC_FullCabling_svc.dat", "a plain text file for the SCT Cabing");
 }
 
 //
 StatusCode
 SCT_CablingCondAlgFromText::initialize() {
-  ATH_MSG_INFO("The SCT data file for cabling, " << m_source << ", will be searched.");
-  m_source = PathResolver::find_file(m_source, "DATAPATH");
-  if (m_source.empty()) {
-    ATH_MSG_FATAL("The SCT data file for cabling, " << m_source << ", was not found.");
+  ATH_MSG_INFO("The SCT data file for cabling, " << m_source.value() << ", will be searched.");
+  m_source = PathResolver::find_file(m_source.value(), "DATAPATH");
+  if (m_source.value().empty()) {
+    ATH_MSG_FATAL("The SCT data file for cabling, " << m_source.value() << ", was not found.");
     return StatusCode::FAILURE;
   }
-  ATH_MSG_INFO("Reading cabling from " << m_source);
+  ATH_MSG_INFO("Reading cabling from " << m_source.value());
 
   // CondSvc
   ATH_CHECK(m_condSvc.retrieve());
@@ -117,9 +116,9 @@ SCT_CablingCondAlgFromText::execute() {
   IdentifierHash offlineIdHash;
   unsigned int onlineId;
   int robid{0};
-  std::ifstream fromDataFile{m_source.c_str()};
+  std::ifstream fromDataFile{m_source.value().c_str()};
   if (not fromDataFile) {
-    ATH_MSG_FATAL("The cable mapping file could not be opened: " << m_source);
+    ATH_MSG_FATAL("The cable mapping file could not be opened: " << m_source.value());
     return StatusCode::FAILURE;
   }
   std::string inString;
@@ -148,14 +147,14 @@ SCT_CablingCondAlgFromText::execute() {
         offlineId = idHelper->wafer_id(barrelOrEndcap,layer,phi,eta,side);
         offlineIdHash = idHelper->wafer_hash(offlineId);
       } catch (const std::ios_base::failure&) {
-        ATH_MSG_ERROR("An error occurred while reading the cabling file " << m_source
+        ATH_MSG_ERROR("An error occurred while reading the cabling file " << m_source.value()
                       << ", it may be badly formatted in the following line: \n" << inString);
         continue;
       } 
       // Check Link variable looks OK
       // The maximum value of an int is 2147483647 in decimal and 0x7fffffff in hexadecimal.
       if (Link.size()==0 or Link.size()>10) {
-        ATH_MSG_ERROR("An error occurred while reading the cabling file " << m_source
+        ATH_MSG_ERROR("An error occurred while reading the cabling file " << m_source.value()
                       << ", Link (" << Link << ") cannot be converted to an integer");
         continue;
       }
diff --git a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.h b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.h
index 44655430dc5e970bda8fb5debf2a93a444df929e..a989786b27fb0002a7edce72f3c205afcddab4f5 100644
--- a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.h
+++ b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_CablingCondAlgFromText.h
@@ -43,7 +43,7 @@ class SCT_CablingCondAlgFromText: public AthAlgorithm {
 private:
 
   bool insert(const IdentifierHash& hash, const SCT_OnlineId& onlineId, const SCT_SerialNumber& sn, SCT_CablingData* data);
-  std::string m_source;
+  StringProperty m_source{this, "DataSource", "SCT_MC_FullCabling_svc.dat", "a plain text file for the SCT Cabing"};
   SG::WriteCondHandleKey<SCT_CablingData> m_writeKey{this, "WriteKey", "SCT_CablingData", "Key of output (derived) conditions folder"};
   ServiceHandle<ICondSvc> m_condSvc;
 
diff --git a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.cxx b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.cxx
index 18dd8a0a21d19320c1a7439b4325abc7695e0b7b..c5e8dc4f814b8d0feb6deef738794a055d5338b5 100644
--- a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.cxx
+++ b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.cxx
@@ -42,10 +42,6 @@ SCT_TestCablingAlg::SCT_TestCablingAlg(const std::string& name, ISvcLocator* pSv
   //nop
 }
 
-SCT_TestCablingAlg::~SCT_TestCablingAlg() {
-  //nop
-}
-
 StatusCode
 SCT_TestCablingAlg::initialize() {
   ATH_CHECK(detStore()->retrieve(m_idHelper, "SCT_ID"));
diff --git a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.h b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.h
index e5136cbe48479014361ebf413319389c4a256805..79347ef144f6ba476a218ba2b4d5133b3f06888d 100644
--- a/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.h
+++ b/InnerDetector/InDetDetDescr/SCT_Cabling/src/SCT_TestCablingAlg.h
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
+  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
 */
 
 #ifndef SCT_TestCablingAlg_h
@@ -30,18 +30,18 @@ class SCT_ID;
  * SCT_TestCablingAlg exercises the routines of the SCT cabling service
  **/
 class SCT_TestCablingAlg:public AthAlgorithm {
-  public:
-    SCT_TestCablingAlg(const std::string& name, ISvcLocator* pSvcLocator);
-    ~SCT_TestCablingAlg();
-    // Standard Gaudi functions
-    StatusCode initialize(); //!< Gaudi initialiser
-    StatusCode execute();    //!< Gaudi executer
-    StatusCode finalize();   //!< Gaudi finaliser
-
-  private:
-    ToolHandle<ISCT_CablingTool> m_cablingTool{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
-    const SCT_ID* m_idHelper; //!< helper for offlineId/hash conversions
-    std::string coordString(const Identifier& offlineId);
+ public:
+  SCT_TestCablingAlg(const std::string& name, ISvcLocator* pSvcLocator);
+  ~SCT_TestCablingAlg() = default;
+  // Standard Gaudi functions
+  StatusCode initialize(); //!< Gaudi initialiser
+  StatusCode execute();    //!< Gaudi executer
+  StatusCode finalize();   //!< Gaudi finaliser
+
+ private:
+  ToolHandle<ISCT_CablingTool> m_cablingTool{this, "SCT_CablingTool", "SCT_CablingTool", "Tool to retrieve SCT Cabling"};
+  const SCT_ID* m_idHelper; //!< helper for offlineId/hash conversions
+  std::string coordString(const Identifier& offlineId);
 
 };
-#endif
+#endif // SCT_TestCablingAlg_h