diff --git a/bin/account-manager-client.pl b/bin/account-manager-client.pl
index c5303de6e8d814a652e04ffd601bda593d75212a..2c9173c3fa3dd8716bcefc80177faf41dce13c99 100755
--- a/bin/account-manager-client.pl
+++ b/bin/account-manager-client.pl
@@ -8,6 +8,7 @@
 ## Command-line client for the Test IdP Account Manager
 
 use strict;
+use warnings;
 use utf8;
 use lib qw(lib conf);
 
diff --git a/bin/account-manager-web.pl b/bin/account-manager-web.pl
index 544018464432b19caf2d5e2f45a4a699af898267..b4af672294f701cd078cd753a9ca5c07de6a5d35 100755
--- a/bin/account-manager-web.pl
+++ b/bin/account-manager-web.pl
@@ -7,7 +7,8 @@
 ## 15/09/2014, Olivier Salaün
 ## Web interface for the eduGAIN Access Check Account Manager
 
-use strict vars;
+use strict;
+use warnings;
 use utf8;
 use lib qw(lib conf);
 
@@ -153,11 +154,10 @@ sub execute {
         delete $self->{'next_action'};    ## Prevent loops
 
         if (defined $actions{ $self->{'action'} }) {
-
             ## Execute the target subroutine named req_actionName
+            no strict 'refs';
             my $sub = 'req_' . $self->{'action'};
             $status = &{$sub}($self);
-
         } else {
             ## Inknown action
             push @{ $self->{'param_out'}{'errors'} }, "unknown_action";
diff --git a/bin/create-database-code.pl b/bin/create-database-code.pl
index eb5c1d006ad9af2038a2df26d29b26405807bdd2..c3c0e0173be0d98f605374e4fcdc75d6a990a493 100755
--- a/bin/create-database-code.pl
+++ b/bin/create-database-code.pl
@@ -1,6 +1,8 @@
 #!/usr/bin/perl
 ## Initialize Rose::DB code given the DB structure
 
+use strict;
+use warnings;
 use lib qw(lib conf);
 
 use Rose::DB;
diff --git a/lib/IdPAccountManager/AuthenticationToken.pm b/lib/IdPAccountManager/AuthenticationToken.pm
index 240d73c609049c071ba87357e17d5f2e5381cf52..59b926b193e87fde3356153058bcf7ec8fb9ce54 100644
--- a/lib/IdPAccountManager/AuthenticationToken.pm
+++ b/lib/IdPAccountManager/AuthenticationToken.pm
@@ -5,6 +5,7 @@ package IdPAccountManager::AuthenticationToken;
 ## from the European Community¹s Seventh Framework Programme (FP7/2007-2013) under grant agreement nº 238875 (GÉANT).
 
 use strict;
+use warnings;
 
 use IdPAccountManager::Data::Authenticationtoken;
 use IdPAccountManager::Data::Authenticationtoken::Manager;
diff --git a/lib/IdPAccountManager/DB.pm b/lib/IdPAccountManager/DB.pm
index 1f412e42878b624ff4ee0b49217078ce1c066bd0..b8206d590c1ec9c80baaf7b831d1165699956828 100644
--- a/lib/IdPAccountManager/DB.pm
+++ b/lib/IdPAccountManager/DB.pm
@@ -1,6 +1,7 @@
 package IdPAccountManager::DB;
 
 use strict;
+use warnings;
 
 use base 'Rose::DB';
 
diff --git a/lib/IdPAccountManager/DB/Object.pm b/lib/IdPAccountManager/DB/Object.pm
index b95451c794eebec34e4647f577bbd69c11e8c3b5..57c32235d0ef1bad93b9321ba11cbcee28f23c33 100644
--- a/lib/IdPAccountManager/DB/Object.pm
+++ b/lib/IdPAccountManager/DB/Object.pm
@@ -1,5 +1,7 @@
 package IdPAccountManager::DB::Object;
 
+use strict;
+use warnings;
 use base 'Rose::DB::Object';
 
 use IdPAccountManager::DB;
diff --git a/lib/IdPAccountManager/Data/Authenticationtoken.pm b/lib/IdPAccountManager/Data/Authenticationtoken.pm
index fbb75003ccbfd3e413e54d3089cf80fa71454a81..0efcac0ac96e3cc50c70bcb41e603e5941007b34 100644
--- a/lib/IdPAccountManager/Data/Authenticationtoken.pm
+++ b/lib/IdPAccountManager/Data/Authenticationtoken.pm
@@ -1,6 +1,7 @@
 package IdPAccountManager::Data::Authenticationtoken;
 
 use strict;
+use warnings;
 
 use base 'IdPAccountManager::DB::Object';
 
diff --git a/lib/IdPAccountManager/Data/Authenticationtoken/Manager.pm b/lib/IdPAccountManager/Data/Authenticationtoken/Manager.pm
index 9d71c8e31b8d4b0b7339bf7965bcc17702f2a60d..5b7563eea8ed613a182307b3fdb0f44c4d256dc6 100644
--- a/lib/IdPAccountManager/Data/Authenticationtoken/Manager.pm
+++ b/lib/IdPAccountManager/Data/Authenticationtoken/Manager.pm
@@ -1,6 +1,7 @@
 package IdPAccountManager::Data::Authenticationtoken::Manager;
 
 use strict;
+use warnings;
 
 use base qw(Rose::DB::Object::Manager);
 
diff --git a/lib/IdPAccountManager/Data/DB/Object/AutoBase2.pm b/lib/IdPAccountManager/Data/DB/Object/AutoBase2.pm
deleted file mode 100644
index a7d9068caad21881926853fc02db78397633d41e..0000000000000000000000000000000000000000
--- a/lib/IdPAccountManager/Data/DB/Object/AutoBase2.pm
+++ /dev/null
@@ -1,9 +0,0 @@
-package IdPAccountManager::Data::DB::Object::AutoBase2;
-
-use base 'Rose::DB::Object';
-
-use IdPAccountManager::Data::DB::AutoBase1;
-
-sub init_db { IdPAccountManager::Data::DB::AutoBase1->new }
-
-1;
diff --git a/lib/IdPAccountManager/Data/Serviceprovider.pm b/lib/IdPAccountManager/Data/Serviceprovider.pm
index dc2046f5590240c350f78e6ad6911d50a99f34b6..5a1304be31d453bc38b8dadc58d4105c63444fd7 100644
--- a/lib/IdPAccountManager/Data/Serviceprovider.pm
+++ b/lib/IdPAccountManager/Data/Serviceprovider.pm
@@ -1,6 +1,7 @@
 package IdPAccountManager::Data::Serviceprovider;
 
 use strict;
+use warnings;
 
 use base 'IdPAccountManager::DB::Object';
 
diff --git a/lib/IdPAccountManager/Data/Serviceprovider/Manager.pm b/lib/IdPAccountManager/Data/Serviceprovider/Manager.pm
index e23db299627bdf47f324ef9e2dea837c837716fb..63f4734a117749f0cd77411ee27f4dc10222ffdf 100644
--- a/lib/IdPAccountManager/Data/Serviceprovider/Manager.pm
+++ b/lib/IdPAccountManager/Data/Serviceprovider/Manager.pm
@@ -1,6 +1,7 @@
 package IdPAccountManager::Data::Serviceprovider::Manager;
 
 use strict;
+use warnings;
 
 use base qw(Rose::DB::Object::Manager);
 
diff --git a/lib/IdPAccountManager/Data/Testaccount.pm b/lib/IdPAccountManager/Data/Testaccount.pm
index ad57af7a875df9c87f5bee26e48c2e075b16a138..9c8fe2e16aa53fc52c6140ef9da22ad0cc16ca79 100644
--- a/lib/IdPAccountManager/Data/Testaccount.pm
+++ b/lib/IdPAccountManager/Data/Testaccount.pm
@@ -1,6 +1,7 @@
 package IdPAccountManager::Data::Testaccount;
 
 use strict;
+use warnings;
 
 use base 'IdPAccountManager::DB::Object';
 
diff --git a/lib/IdPAccountManager/Data/Testaccount/Manager.pm b/lib/IdPAccountManager/Data/Testaccount/Manager.pm
index a2d6b36a6aeb052bf497c0f7788a41cf09d0b77d..fb4edcc1a5fb3b1112a5ecdd4611117a82d75f29 100644
--- a/lib/IdPAccountManager/Data/Testaccount/Manager.pm
+++ b/lib/IdPAccountManager/Data/Testaccount/Manager.pm
@@ -1,6 +1,7 @@
 package IdPAccountManager::Data::Testaccount::Manager;
 
 use strict;
+use warnings;
 
 use base qw(Rose::DB::Object::Manager);
 
diff --git a/lib/IdPAccountManager/SAMLMetadata.pm b/lib/IdPAccountManager/SAMLMetadata.pm
index 4b7da6437a0952101b2463aaa4d29e5dbb6dfe56..dabec015d437f2a1d6b26945ef0b34c5f2d4e69e 100644
--- a/lib/IdPAccountManager/SAMLMetadata.pm
+++ b/lib/IdPAccountManager/SAMLMetadata.pm
@@ -5,6 +5,7 @@ package IdPAccountManager::SAMLMetadata;
 ## from the European Community¹s Seventh Framework Programme (FP7/2007-2013) under grant agreement nº 238875 (GÉANT).
 
 use strict;
+use warnings;
 
 use IdPAccountManager::Tools;
 use Conf;
diff --git a/lib/IdPAccountManager/ServiceProvider.pm b/lib/IdPAccountManager/ServiceProvider.pm
index a8163b88a702eb7d7204d1c2ca989c3906b52b66..73d9ba9fd774f18adc8cf53656b3c8eac8e9f951 100644
--- a/lib/IdPAccountManager/ServiceProvider.pm
+++ b/lib/IdPAccountManager/ServiceProvider.pm
@@ -1,11 +1,13 @@
 package IdPAccountManager::ServiceProvider;
-use base 'IdPAccountManager::Data::Serviceprovider';
 
 ## Copyright (c) GEANT
 ## This software was developed by RENATER. The research leading to these results has received funding
 ## from the European Community¹s Seventh Framework Programme (FP7/2007-2013) under grant agreement nº 238875 (GÉANT).
 
 use strict;
+use warnings;
+
+use base 'IdPAccountManager::Data::Serviceprovider';
 
 use IdPAccountManager::Data::Serviceprovider;
 use IdPAccountManager::Data::Serviceprovider::Manager;
diff --git a/lib/IdPAccountManager/TestAccount.pm b/lib/IdPAccountManager/TestAccount.pm
index 3165d6e9e56b674ee8b12433bafe6cf986fff6e7..05a113d73b88fd7150232862f598c985f73c6f43 100644
--- a/lib/IdPAccountManager/TestAccount.pm
+++ b/lib/IdPAccountManager/TestAccount.pm
@@ -5,6 +5,7 @@ package IdPAccountManager::TestAccount;
 ## from the European Community¹s Seventh Framework Programme (FP7/2007-2013) under grant agreement nº 238875 (GÉANT).
 
 use strict;
+use warnings;
 
 use IdPAccountManager::Data::Testaccount;
 use IdPAccountManager::Data::Testaccount::Manager;