diff --git a/src/main/java/com/example/livecodingjavaspring/App.java b/src/main/java/com/example/livecodingjavaspring/App.java
index 2715c6ae0bc811fd979e92c665d4db2b2cc2f34c..4920daa6e27d7263344fa162639da5c72e90df69 100644
--- a/src/main/java/com/example/livecodingjavaspring/App.java
+++ b/src/main/java/com/example/livecodingjavaspring/App.java
@@ -5,15 +5,8 @@ import java.util.List;
 
 public class App {
     public static void main(String[] args) {
-        List<User> users = new ArrayList<>();
-        users.add(new User("Laurine", "LE NET", 24));
-        users.add(new User("Pilou", "BERTRAND", 24));
-        users.add(new User("Alain", "CONNU", 26));
-        users.add(new User("Aurélie", "BIENCEQUETAECRIT", 20));
-        users.add(new User("Barack", "AFFRITTE", 22));
-        users.add(new User("Camille", "ONETTE", 23));
-        users.add(new User("Jean", "TENRIEN", 22));
-        users.add(new User("Lara", "TATOUILLE", 24));
+        UserDao userDao = new UserDao();
+        List<User> users= userDao.createDatabase();
         Cli cli = new Cli(users);
         cli.run();
     }
diff --git a/src/main/java/com/example/livecodingjavaspring/Cli.java b/src/main/java/com/example/livecodingjavaspring/Cli.java
index 497eba092e3d138cb0a9ba85363e44c381772751..82c0d63eb4918be94d959a78fa1ca43a2b18f36c 100644
--- a/src/main/java/com/example/livecodingjavaspring/Cli.java
+++ b/src/main/java/com/example/livecodingjavaspring/Cli.java
@@ -3,38 +3,57 @@ package com.example.livecodingjavaspring;
 import java.util.List;
 import java.util.Scanner;
 
-import static java.lang.Integer.parseInt;
-
 public class Cli {
-    private List<User> users;
+    private final List<User> users;
 
     public Cli(List<User> users) {
         this.users = users;
     }
+
     public void run() {
         int choice = -1;
         while (choice != 0) {
             Scanner scanner = new Scanner(System.in);
-            System.out.println("Hello jeune Peufien ! dans ma super CLI");
-            System.out.println("Que veux-tu faire ?");
-            System.out.println("1- Lister les utilisateurs");
-            System.out.println("2- Ajouter un utilisateur");
+            printWelcome();
             choice = scanner.nextInt();
             switch (choice) {
-                case 1-> users.forEach(System.out::println);
-                case 2 -> {
-                    System.out.println("Prénom de l'utilisateur");
-                    String firstname = scanner.next();
-                    System.out.println("Nom de l'utilisateur");
-                    String lastname = scanner.next();
-                    System.out.println("Age de l'utilisateur");
-                    String age = scanner.next();
-                    users.add(new User(firstname, lastname, Integer.valueOf(age)));
-                    users.forEach(System.out::println);
-                }
-                case 0 -> System.exit(0);
-                default -> System.out.println("Mauvaise commande");
+                case 1 -> printUsers(users);
+                case 2 -> addUser(scanner);
+                case 0 -> exitCli();
+                default -> incorrectInput();
             }
         }
     }
+
+    private void printWelcome() {
+        System.out.println("Hello jeune Peufien ! dans ma super CLI");
+        System.out.println("Que veux-tu faire ?");
+        System.out.println("1- Lister les utilisateurs");
+        System.out.println("2- Ajouter un utilisateur");
+        System.out.println("0- Quitter l'application");
+    }
+
+    private void printUsers(List<User> users) {
+        users.forEach(System.out::println);
+    }
+
+    private void addUser(Scanner scanner) {
+        System.out.println("Prénom de l'utilisateur");
+        String firstname = scanner.next();
+        System.out.println("Nom de l'utilisateur");
+        String lastname = scanner.next();
+        System.out.println("Age de l'utilisateur");
+        String age = scanner.next();
+        users.add(new User(firstname, lastname, Integer.valueOf(age)));
+        users.forEach(System.out::println);
+    }
+
+    private void incorrectInput() {
+        System.out.println("Mauvaise commande");
+    }
+
+    private void exitCli() {
+        System.exit(0);
+    }
+
 }
diff --git a/src/main/java/com/example/livecodingjavaspring/UserDao.java b/src/main/java/com/example/livecodingjavaspring/UserDao.java
new file mode 100644
index 0000000000000000000000000000000000000000..c5f3891d128bcf2912b5b85d649b572866696ea8
--- /dev/null
+++ b/src/main/java/com/example/livecodingjavaspring/UserDao.java
@@ -0,0 +1,20 @@
+package com.example.livecodingjavaspring;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class UserDao {
+
+    public List<User> createDatabase() {
+        List<User> users = new ArrayList<>();
+        users.add(new User("Laurine", "LE NET", 22));
+        users.add(new User("Pilou", "BERTRAND", 24));
+        users.add(new User("Alain", "CONNU", 26));
+        users.add(new User("Aurélie", "BIENCEQUETAECRIT", 20));
+        users.add(new User("Barack", "AFFRITTE", 22));
+        users.add(new User("Camille", "ONETTE", 23));
+        users.add(new User("Jean", "TENRIEN", 22));
+        users.add(new User("Lara", "TATOUILLE", 24));
+        return users;
+    }
+}