diff --git a/src/main/java/model/FireManager.java b/src/main/java/model/FireManager.java
index 778cf81bd4a390c3f1c02f00261f102b06280cf1..b353713af942c713f2e2d5cf2f5b0c0aa2e7c0f4 100644
--- a/src/main/java/model/FireManager.java
+++ b/src/main/java/model/FireManager.java
@@ -39,6 +39,7 @@ public class FireManager implements FireBehavior, FireProperties{
         firePositions.remove(position);
     }
     // Query if a position is on fire
+    @Override
     public boolean isOnFire(Position position) {
         return firePositions.contains(position);
     }
diff --git a/src/main/java/model/FirefighterBoard.java b/src/main/java/model/FirefighterBoard.java
index 6398ec5a134240db249c4a0bc3adb5237dc73e6d..9838955c113356a81ed6c9754cbe9e7f7e47f743 100644
--- a/src/main/java/model/FirefighterBoard.java
+++ b/src/main/java/model/FirefighterBoard.java
@@ -10,22 +10,32 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
   private final int rowCount;
   private final int initialFireCount;
   private final int initialFirefighterCount;
-  private final TargetStrategy targetStrategy = new TargetStrategy();
+
+  private final FireManager fireManager;
+  private final FirefighterManager firefighterManager;
   private List<Position> firefighterPositions;
   private Set<Position> firePositions;
-  private Map<Position, List<Position>> neighbors = new HashMap();
   private final Position[][] positions;
   private int step = 0;
+  private final Map<Position, List<Position>> neighbors = new HashMap<>();
   private final Random randomGenerator = new Random();
 
   public FirefighterBoard(int columnCount, int rowCount, int initialFireCount, int initialFirefighterCount) {
     this.columnCount = columnCount;
     this.rowCount = rowCount;
+    this.initialFireCount = initialFireCount;
+    this.initialFirefighterCount = initialFirefighterCount;
+
+    // Initialize positions
     this.positions = new Position[rowCount][columnCount];
-    for (int column = 0; column < columnCount; column++)
-      for (int row = 0; row < rowCount; row++)
+    for (int column = 0; column < columnCount; column++) {
+      for (int row = 0; row < rowCount; row++) {
         positions[row][column] = new Position(row, column);
-    for (int column = 0; column < columnCount; column++)
+      }
+    }
+
+    // Initialize neighbors
+    for (int column = 0; column < columnCount; column++) {
       for (int row = 0; row < rowCount; row++) {
         List<Position> list = new ArrayList<>();
         if (row > 0) list.add(positions[row - 1][column]);
@@ -34,8 +44,12 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
         if (column < columnCount - 1) list.add(positions[row][column + 1]);
         neighbors.put(positions[row][column], list);
       }
-    this.initialFireCount = initialFireCount;
-    this.initialFirefighterCount = initialFirefighterCount;
+    }
+
+    // Initialize managers
+    this.fireManager = new FireManager(new HashSet<>());
+    this.firefighterManager = new FirefighterManager(new ArrayList<>(), fireManager);
+
     initializeElements();
   }
 
@@ -99,7 +113,7 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
     return step;
   }
 
-  private List<Position> updateFirefighters() {
+ /* private List<Position> updateFirefighters() {
     List<Position> modifiedPosition = new ArrayList<>();
     List<Position> firefighterNewPositions = new ArrayList<>();
     for (Position firefighterPosition : firefighterPositions) {
@@ -118,7 +132,7 @@ public class FirefighterBoard implements Board<List<ModelElement>> {
     }
     firefighterPositions = firefighterNewPositions;
     return modifiedPosition;
-  }
+  }*/
 
   @Override
   public void reset() {