diff --git a/res/stages/add-data-stage.fxml b/res/stages/add-data-stage.fxml
index 99a1ad43789b592a394e8cc198cf0ec282d0360b..a32cefd3e02211965d0e8a0bd98bd9fde8f96bfb 100644
--- a/res/stages/add-data-stage.fxml
+++ b/res/stages/add-data-stage.fxml
@@ -5,34 +5,41 @@
 <?import javafx.scene.layout.*?>
 <?import javafx.stage.*?>
 
+
 <Stage fx:id="stage" xmlns="http://javafx.com/javafx/17.0.12" xmlns:fx="http://javafx.com/fxml/1" fx:controller="fr.univlille.sae.classification.controller.AddDataController">
     <scene>
         <Scene>
             <AnchorPane prefHeight="200" prefWidth="200">
-            <children>
-               <VBox alignment="CENTER" prefHeight="224.0" prefWidth="384.0" spacing="20.0">
-                  <children>
-                     <HBox alignment="CENTER" prefHeight="18.0" prefWidth="335.0" spacing="20.0">
-                        <children>
-                           <Label text="Valeur 1" />
-                           <TextField />
-                        </children>
-                     </HBox>
-                     <HBox alignment="CENTER" layoutX="10.0" layoutY="47.0" prefHeight="17.0" prefWidth="335.0" spacing="20.0">
-                        <children>
-                           <Label text="Valeur 2" />
-                           <ChoiceBox prefHeight="26.0" prefWidth="163.0" />
-                        </children>
-                     </HBox>
-                     <HBox alignment="CENTER" layoutX="10.0" layoutY="109.0" prefHeight="17.0" prefWidth="335.0" spacing="20.0">
+                <children>
+                    <VBox alignment="CENTER" prefHeight="279.0" prefWidth="384.0" spacing="20.0">
                         <children>
-                           <Label text="Valeur 3" />
-                           <Spinner />
-                        </children>
-                     </HBox>
-                     <Button fx:id="confirmAdd" mnemonicParsing="false" text="Valider" />
-                  </children></VBox>
-            </children></AnchorPane>
+                            <HBox alignment="CENTER" layoutX="10.0" layoutY="109.0" prefHeight="17.0" prefWidth="335.0" spacing="20.0">
+                                <children>
+                                    <Label text="Sepal Length" />
+                                    <Spinner fx:id="sepalLengthSpinner"/>
+                                </children>
+                            </HBox>
+                            <HBox alignment="CENTER" layoutX="10.0" layoutY="102.0" prefHeight="17.0" prefWidth="335.0" spacing="20.0">
+                                <children>
+                                    <Label text="Sepal Width" />
+                                    <Spinner fx:id="sepalWidthSpinner"/>
+                                </children>
+                            </HBox>
+                            <HBox alignment="CENTER" layoutX="10.0" layoutY="102.0" prefHeight="17.0" prefWidth="335.0" spacing="20.0">
+                                <children>
+                                    <Label text="Petal Length" />
+                                    <Spinner fx:id="petalLengthSpinner" />
+                                </children>
+                            </HBox>
+                            <HBox alignment="CENTER" layoutX="10.0" layoutY="17.0" prefHeight="17.0" prefWidth="335.0" spacing="20.0">
+                                <children>
+                                    <Label text="Petal Width" />
+                                    <Spinner fx:id="petalWidthSpinner" />
+                                </children>
+                            </HBox>
+                            <Button fx:id="confirmAdd" mnemonicParsing="false" onAction="#validate" text="Valider" />
+                        </children></VBox>
+                </children></AnchorPane>
         </Scene>
     </scene>
-</Stage>
+</Stage>
\ No newline at end of file
diff --git a/res/stages/main-stage.fxml b/res/stages/main-stage.fxml
index 89ef33782292135bf05d3465c298c5a4b7d52903..d32296897275d3818030eeb4d0d56a5d10b3403e 100644
--- a/res/stages/main-stage.fxml
+++ b/res/stages/main-stage.fxml
@@ -30,7 +30,7 @@
                      <HBox alignment="CENTER" prefHeight="169.0" prefWidth="691.0" spacing="50.0">
                         <children>
                            <Button fx:id="loadData" mnemonicParsing="false" onAction="#openLoadData" prefHeight="27.0" prefWidth="185.0" text="Charger un jeu de données" />
-                           <Button fx:id="addData" mnemonicParsing="false" prefHeight="26.0" prefWidth="141.0" text="Ajouter une donnée" />
+                           <Button fx:id="addData" mnemonicParsing="false" onAction="#openAddData" prefHeight="26.0" prefWidth="141.0" text="Ajouter une donnée" />
                            <Button fx:id="classifyData" disable="true" mnemonicParsing="false" prefHeight="26.0" prefWidth="157.0" text="Classifier une donnée" />
                         </children>
                      </HBox>
diff --git a/src/main/java/fr/univlille/sae/classification/controller/AddDataController.java b/src/main/java/fr/univlille/sae/classification/controller/AddDataController.java
index d0251194dec93f29e2a89a9bc93696542324af41..a8b0864644c24785dcb1d6db4133e2c663a48745 100644
--- a/src/main/java/fr/univlille/sae/classification/controller/AddDataController.java
+++ b/src/main/java/fr/univlille/sae/classification/controller/AddDataController.java
@@ -1,15 +1,67 @@
 package fr.univlille.sae.classification.controller;
 
+import fr.univlille.sae.classification.model.ClassificationModel;
 import javafx.fxml.FXML;
 import javafx.scene.control.Button;
+import javafx.scene.control.Spinner;
+import javafx.scene.control.SpinnerValueFactory;
+import javafx.scene.control.TextFormatter;
 import javafx.stage.Stage;
 
+import java.io.IOException;
+import java.util.function.UnaryOperator;
+
 public class AddDataController {
+
+    @FXML
+    private Stage stage;
+
+    @FXML
+    private Button confirmAdd;
+
+    @FXML
+    private Spinner<Double> sepalLengthSpinner;
+
+    @FXML
+    private Spinner<Double> sepalWidthSpinner;
+
     @FXML
-    Stage stage;
+    private Spinner<Double> petalLengthSpinner;
 
     @FXML
-    Button confirmAdd;
+    private Spinner<Double> petalWidthSpinner;
+
+    @FXML
+    public void initialize() {
+        sepalLengthSpinner.setValueFactory(new SpinnerValueFactory.DoubleSpinnerValueFactory(0.0, 200.0, 3.0,0.1));
+        sepalWidthSpinner.setValueFactory(new SpinnerValueFactory.DoubleSpinnerValueFactory(0.0, 200.0, 3.0, 0.1));
+        petalLengthSpinner.setValueFactory(new SpinnerValueFactory.DoubleSpinnerValueFactory(0.0, 200.0, 3.0, 0.1));
+        petalWidthSpinner.setValueFactory(new SpinnerValueFactory.DoubleSpinnerValueFactory(0.0, 200.0, 3.0, 0.1));
+
+        // Permet d'écrire dans la case du spinners
+        sepalLengthSpinner.setEditable(true);
+        sepalWidthSpinner.setEditable(true);
+        petalLengthSpinner.setEditable(true);
+        petalWidthSpinner.setEditable(true);
+
+
+        confirmAdd.setOnAction(event -> handleConfirmAdd());
+    }
+
+    private void handleConfirmAdd() {
+        double sepalLength = sepalLengthSpinner.getValue();
+        double sepalWidth = sepalWidthSpinner.getValue();
+        double petalLength = petalLengthSpinner.getValue();
+        double petalWidth = petalWidthSpinner.getValue();
+
+        stage.close();
+    }
+
+    public void validate() throws IOException {
+
 
+        ClassificationModel.getClassificationModel().ajouterDonnee(sepalLengthSpinner.getValue(), sepalWidthSpinner.getValue(), petalLengthSpinner.getValue(), petalWidthSpinner.getValue());
+        stage.close();
+    }
 
 }
diff --git a/src/main/java/fr/univlille/sae/classification/controller/MainStageController.java b/src/main/java/fr/univlille/sae/classification/controller/MainStageController.java
index 1088c4e59fb1f0e005cc636bcff1cf5e0509e738..43599c8041b94d95e3569264fc937c30a3d38c7d 100644
--- a/src/main/java/fr/univlille/sae/classification/controller/MainStageController.java
+++ b/src/main/java/fr/univlille/sae/classification/controller/MainStageController.java
@@ -2,15 +2,16 @@ package fr.univlille.sae.classification.controller;
 
 import fr.univlille.sae.classification.model.ClassificationModel;
 import fr.univlille.sae.classification.view.LoadDataView;
+import fr.univlille.sae.classification.view.AddDataView;
 import javafx.fxml.FXML;
-import javafx.fxml.FXMLLoader;
+
 import javafx.scene.chart.*;
 import javafx.scene.control.Button;
 import javafx.stage.*;
 
-import java.io.File;
+
 import java.io.IOException;
-import java.net.URL;
+
 
 public class MainStageController {
 
@@ -52,6 +53,18 @@ public class MainStageController {
         loadDataView.show();
 
 
+    }
+
+    /**
+     * Ouvre l'interface d'ajout de donnée.
+     * @throws IOException
+     */
+    public void openAddData() throws IOException {
+
+        AddDataView addDataView = new AddDataView(ClassificationModel.getClassificationModel(), stage);
+        addDataView.show();
+
+
     }
 
 
diff --git a/src/main/java/fr/univlille/sae/classification/view/AddDataView.java b/src/main/java/fr/univlille/sae/classification/view/AddDataView.java
new file mode 100644
index 0000000000000000000000000000000000000000..9d57add41e32b0d34ea7d74c15bb130ab009d32a
--- /dev/null
+++ b/src/main/java/fr/univlille/sae/classification/view/AddDataView.java
@@ -0,0 +1,45 @@
+package fr.univlille.sae.classification.view;
+
+import fr.univlille.sae.classification.model.ClassificationModel;
+import javafx.fxml.FXMLLoader;
+import javafx.stage.Modality;
+import javafx.stage.Stage;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URL;
+
+public class AddDataView {
+
+    private ClassificationModel model;
+    private Stage owner;
+
+    public AddDataView(ClassificationModel model, Stage owner) {
+        this.model = model;
+        this.owner = owner;
+    }
+
+
+
+    public void show() throws IOException {
+
+        FXMLLoader loader = new FXMLLoader();
+        URL fxmlFileUrl = new File(System.getProperty("user.dir") + File.separator + "res" + File.separator + "stages" + File.separator + "add-data-stage.fxml").toURI().toURL();
+
+        if (fxmlFileUrl == null) {
+            System.out.println("Impossible de charger le fichier fxml");
+            System.exit(-1);
+        }
+        loader.setLocation(fxmlFileUrl);
+        Stage root = loader.load();
+
+        root.setResizable(false);
+        root.initOwner(owner);
+        root.initModality(Modality.APPLICATION_MODAL);
+        root.setTitle("Ajout de donée");
+
+        root.showAndWait();
+
+    }
+
+}