diff --git a/Evaluation-T4.md b/Evaluation-T4.md
new file mode 100644
index 0000000000000000000000000000000000000000..4a1d26c1766a2658681f69b661be567ae5995a24
--- /dev/null
+++ b/Evaluation-T4.md
@@ -0,0 +1,89 @@
+# Grille d'évaluation T4
+
+## GIT 
+- Organisation
+  - [ ] Les fichiers sources suivent une organisation et des règles de nommage clairement établie.
+  - [ ] Les fichiers sources sont tous partagés et organisés.
+  - [x] Certains fichiers sources ne sont pas partagés ou leur organisation laisse à désirer.
+- Versioning
+  - [ ] La granularité des commits est pertinente et les commits sont clairement et systématique renseignés.
+  - [ ] La granularité des commits n'est pas pertinente ou les commits ne sont pas clairement et systématiquement renseignés.
+  - [x] La granularité des commits n'est pas pertinente et les commits ne sont pas clairement et systématiquement renseignés.
+- Droits d'accès
+  - [ ] Le dépôt GIT est accessible à tous, et Julien Gossa est master.
+  - [ ] Julien Gossa est master sur le dépôt GIT.
+  - [x] Julien Gossa n'est pas master sur le dépôt GIT.
+- README
+  - [ ] Le fichier présente le projet et a été régulièrement mis à jour pour tenir compte de son évolution.
+  - [ ] Le fichier présente le projet.
+  - [x] Le fichier ne présente pas le projet.
+## Prototype
+- Installation
+  - [ ] Le prototype s'installe sans effort.
+  - [ ] Le prototype s'installe en suivant une procédure.
+  - [x] Le prototype ne s'installe pas.
+- Exécution
+  - [ ] Le prototype s'exécute en cliquant sur une icône.
+  - [ ] Le prototype s'exécute en suivant une procédure.
+  - [x] Le prototype ne s'exécute pas
+- Stabilité
+  - [ ] Le prototype est parfaitement stable
+  - [ ] Le prototype est rarement instable
+  - [x] Le prototype est instable
+- Affordabilité
+  - [ ] Toutes les instructions de jeu sont inclues dans le prototype sous forme d'un tutoriel.
+  - [ ] Les instructions de jeu sont sous forme d'un manuel.
+  - [x] Les instructions de jeu ne sont pas données.
+- Transmission du concept
+  - [ ] Le prototype permet de parfaitement transmettre le concept-cible au joueur.
+  - [ ] Le prototype permet de transmettre le concept-cible au joueur.
+  - [x] Le prototype ne permet pas de transmettre le concept-cible au joueur.
+## Cahier des charges
+- Modèle de document
+  - [ ] Le CdC respecte parfaitement le modèle de document.
+  - [ ] Le CdC respecte globalement le modèle de document.
+  - [x] Le CdC ne respecte pas le modèle de document.
+- Description de l'application
+  - [ ] La description permet de se faire une idée précise et exhaustive de l'application attendue.
+  - [ ] La description permet de se faire une idée de l'application attendue.
+  - [x] La description ne permet pas de se faire une idée de l'application attendue.
+- Modèle conceptuel
+  - [ ] Le modèle conceptuel applicatif (MCD ou digramme de classe) est exhaustif et détaillé.
+  - [ ] Le modèle conceptuel applicatif (MCD ou digramme de classe) est donné.
+  - [x] Le modèle conceptuel applicatif (MCD ou digramme de classe) n'est pas donné.
+- Entrées / Actions du joueur
+  - [ ] La description des entrées permet de connaitre parfaitement les interactions avec l'application.
+  - [ ] La description des entrées permet de se faire une première idées des interactions avec l'utilisateur.
+  - [x] La description des entrées ne pas permet pas de se faire une première idées des interactions avec l'utilisateur.
+- Sorties / Infomations au joueur
+  - [ ] La description des sorties permet de connaitre parfaitement les interactions avec l'application.
+  - [ ] La description des sorties permet de se faire une première idées des interactions avec l'utilisateur.
+  - [x] La description des sorties ne pas permet pas de se faire une première idées des interactions avec l'utilisateur.
+- Description du moteur interne
+  - [ ] La description du moteur interne permet de comprendre parfaitement le fonctionnement de l'application.
+  - [ ] La description du moteur interne permet de comprendre le fonctionnement de l'application.
+  - [x] La description du moteur interne ne permet pas de comprendre le fonctionnement de l'application.
+- Découpage modulaire 
+  - [ ] L'application est couverte par des modules pertinents et pleinement décrits.
+  - [ ] L'application est découpée en modules pertinents.
+  - [x] L'application n'est pas découpée en modules pertinents.
+- Granularité des fonctionnalités
+  - [ ] Les fonctionnalités sont très fines.
+  - [ ] Les fonctionnalités sont fines.
+  - [x] Les fonctionnalités sont grossières.
+- Exhaustivité des fonctionnalités
+  - [ ] Les fonctionnalités couvrent la totalité de l'application.
+  - [ ] Les fonctionnalités couvrent globalement l'application.
+  - [x] Les fonctionnalités ne couvrent pas l'application.
+- Description des fonctionnalités
+  - [ ] Les fonctionnalités sont précisément décrites.
+  - [ ] Les fonctionnalités sont décrites.
+  - [x] Les fonctionnalités ne sont pas bien décrites.
+- Priorisation des fonctionnalités
+  - [ ] Les fonctionnalités sont classées par priorités de façon pertinentes.
+  - [ ] Les fonctionnalités sont classées par priorités.
+  - [x] Les fonctionnalités ne sont pas classées par priorités.
+- Difficulté des fonctionnalités
+  - [ ] Les fonctionnalités sont annotées par une difficulté pertinente.
+  - [ ] Les fonctionnalités sont annotées par une difficulté.
+  - [x] Les fonctionnalités ne sont pas annotées par une difficulté.
\ No newline at end of file
diff --git a/psychorientation/psychorientation/Config.cs b/psychorientation/psychorientation/Config.cs
index 16b19f61d75488cb12079ff45cf2a36ce370011a..f7dcb873bac01ceee1816f04d7c5df74ee2989ba 100644
--- a/psychorientation/psychorientation/Config.cs
+++ b/psychorientation/psychorientation/Config.cs
@@ -18,7 +18,7 @@ namespace psychorientation
         public double coeffCompetenceEcrit;
         public double coeffEffortEcrit;
 
-        public static Config getInstance()
+        public static Config GetInstance()
         {
             if (Config.instance == null)
             {
@@ -33,22 +33,22 @@ namespace psychorientation
             }
         }
 
-        public double getCoeffEffortOral()
+        public double GetCoeffEffortOral()
         {
             return this.coeffEffortOral;
         }
 
-        public double getCoeffCompetenceOral()
+        public double GetCoeffCompetenceOral()
         {
             return this.coeffCompetenceOral;
         }
 
-        public double getCoeffCompetenceEcrit()
+        public double GetCoeffCompetenceEcrit()
         {
             return this.coeffCompetenceOral;
         }
 
-        public double getCoeffEffortEcrit()
+        public double GetCoeffEffortEcrit()
         {
             return this.coeffEffortEcrit;
         }
diff --git a/psychorientation/psychorientation/Form1.Designer.cs b/psychorientation/psychorientation/Form1.Designer.cs
deleted file mode 100644
index 27d836493902ca709dce268d64971783d9ba551a..0000000000000000000000000000000000000000
--- a/psychorientation/psychorientation/Form1.Designer.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-namespace psychorientation
-{
-    partial class Form1
-    {
-        /// <summary>
-        /// Variable nécessaire au concepteur.
-        /// </summary>
-        private System.ComponentModel.IContainer components = null;
-
-        /// <summary>
-        /// Nettoyage des ressources utilisées.
-        /// </summary>
-        /// <param name="disposing">true si les ressources managées doivent être supprimées ; sinon, false.</param>
-        protected override void Dispose(bool disposing)
-        {
-            if (disposing && (components != null))
-            {
-                components.Dispose();
-            }
-            base.Dispose(disposing);
-        }
-
-        #region Code généré par le Concepteur Windows Form
-
-        /// <summary>
-        /// Méthode requise pour la prise en charge du concepteur - ne modifiez pas
-        /// le contenu de cette méthode avec l'éditeur de code.
-        /// </summary>
-        private void InitializeComponent()
-        {
-            this.SuspendLayout();
-            // 
-            // Form1
-            // 
-            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
-            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(1024, 560);
-            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
-            this.MaximizeBox = false;
-            this.Name = "Form1";
-            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
-            this.Text = "Psychorientation";
-            this.Load += new System.EventHandler(this.Form1_Load);
-            this.ResumeLayout(false);
-
-        }
-
-        #endregion
-    }
-}
-
diff --git a/psychorientation/psychorientation/Form1.cs b/psychorientation/psychorientation/Form1.cs
deleted file mode 100644
index 7d4e0967dacda6fa864cf8a30f2a9b94fa5e7aac..0000000000000000000000000000000000000000
--- a/psychorientation/psychorientation/Form1.cs
+++ /dev/null
@@ -1,63 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows.Forms;
-
-namespace psychorientation
-{
-    public partial class Form1 : Form
-    {
-        List<string> listClasse = new List<string>();
-        GestionnaireEleve gestEleve = new GestionnaireEleve();
-
-        int nombreEleve = 5;
-
-
-        public Form1()
-        {
-            InitializeComponent();
-        }
-
-        private void InitialiserTableau()
-        {
-            listClasse.Add("Seconde");
-            listClasse.Add("Premiere");
-            listClasse.Add("Terminale");
-        }
-
-        private void CreerEleve(int nbEleve)
-        {
-            for(int i = 0; i < nbEleve; i++)
-            {
-                Eleve elev = new Eleve(i);
-                gestEleve.ajouterEleve(elev);
-            }
-        }
-
-
-        private void Form1_Load(object sender, EventArgs e)
-        {
-            InitialiserTableau();
-            CreerEleve(nombreEleve);
-
-            TypeMessage tm = TypeMessage.INFORMATION;
-            Message m = new Message(-1,"Bonjour apprenti prof, vous allez apprendre à éduquer des joueurs !! ","Début",tm);
-            m.ShowDialog();
-            
-            
-            InterfaceInfoEleve ii = new InterfaceInfoEleve();
-            ii.setParam(gestEleve.getEleve(0),listClasse);
-            ii.Left = 0;
-            ii.Top = 0;
-            ii.BorderStyle = BorderStyle.Fixed3D;
-            this.Controls.Add(ii);
-
-
-        }
-    }
-}
diff --git a/psychorientation/psychorientation/InterfaceClasse.Designer.cs b/psychorientation/psychorientation/InterfaceClasse.Designer.cs
new file mode 100644
index 0000000000000000000000000000000000000000..fbd748f616543491239c6dd6386c76b505582c18
--- /dev/null
+++ b/psychorientation/psychorientation/InterfaceClasse.Designer.cs
@@ -0,0 +1,95 @@
+namespace psychorientation
+{
+    partial class InterfaceClasse
+    {
+        /// <summary>
+        /// Variable nécessaire au concepteur.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Nettoyage des ressources utilisées.
+        /// </summary>
+        /// <param name="disposing">true si les ressources managées doivent être supprimées ; sinon, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Code généré par le Concepteur Windows Form
+
+        /// <summary>
+        /// Méthode requise pour la prise en charge du concepteur - ne modifiez pas
+        /// le contenu de cette méthode avec l'éditeur de code.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.pb_action_suivante = new System.Windows.Forms.PictureBox();
+            this.pb_liste_eleves = new System.Windows.Forms.PictureBox();
+            this.lbl_date = new System.Windows.Forms.Label();
+            ((System.ComponentModel.ISupportInitialize)(this.pb_action_suivante)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.pb_liste_eleves)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // pb_action_suivante
+            // 
+            this.pb_action_suivante.BackColor = System.Drawing.SystemColors.ControlDark;
+            this.pb_action_suivante.Location = new System.Drawing.Point(922, 471);
+            this.pb_action_suivante.Name = "pb_action_suivante";
+            this.pb_action_suivante.Size = new System.Drawing.Size(90, 77);
+            this.pb_action_suivante.TabIndex = 0;
+            this.pb_action_suivante.TabStop = false;
+            this.pb_action_suivante.Click += new System.EventHandler(this.Pb_action_suivante_Click);
+            // 
+            // pb_liste_eleves
+            // 
+            this.pb_liste_eleves.Location = new System.Drawing.Point(12, 12);
+            this.pb_liste_eleves.Name = "pb_liste_eleves";
+            this.pb_liste_eleves.Size = new System.Drawing.Size(90, 78);
+            this.pb_liste_eleves.TabIndex = 1;
+            this.pb_liste_eleves.TabStop = false;
+            this.pb_liste_eleves.Click += new System.EventHandler(this.Pb_liste_eleves_Click);
+            // 
+            // lbl_date
+            // 
+            this.lbl_date.AutoSize = true;
+            this.lbl_date.Font = new System.Drawing.Font("Microsoft Sans Serif", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
+            this.lbl_date.Location = new System.Drawing.Point(108, 12);
+            this.lbl_date.Name = "lbl_date";
+            this.lbl_date.Size = new System.Drawing.Size(142, 24);
+            this.lbl_date.TabIndex = 2;
+            this.lbl_date.Text = "Chargement...";
+            // 
+            // InterfaceClasse
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1024, 560);
+            this.Controls.Add(this.lbl_date);
+            this.Controls.Add(this.pb_liste_eleves);
+            this.Controls.Add(this.pb_action_suivante);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.MaximizeBox = false;
+            this.Name = "InterfaceClasse";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "Psychorientation";
+            this.Load += new System.EventHandler(this.Form1_Load);
+            ((System.ComponentModel.ISupportInitialize)(this.pb_action_suivante)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.pb_liste_eleves)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private System.Windows.Forms.PictureBox pb_action_suivante;
+        private System.Windows.Forms.PictureBox pb_liste_eleves;
+        private System.Windows.Forms.Label lbl_date;
+    }
+}
+
diff --git a/psychorientation/psychorientation/InterfaceClasse.cs b/psychorientation/psychorientation/InterfaceClasse.cs
new file mode 100644
index 0000000000000000000000000000000000000000..dc85503f882b2057fd3ef9331dfab0686ed9f504
--- /dev/null
+++ b/psychorientation/psychorientation/InterfaceClasse.cs
@@ -0,0 +1,71 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace psychorientation
+{
+    public partial class InterfaceClasse : Form
+    {
+        private List<String> libele_mois = new List<String>()
+        {"Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"};
+        private List<String> libele_niveau = new List<String>()
+        {"Seconde", "Première", "Terminale"};
+        private int mois_actuel = 8;
+        private int annee_actuelle = 0;
+
+        public InterfaceClasse()
+        {
+            InitializeComponent();
+        }
+
+
+        private void Form1_Load(object sender, EventArgs e)
+        {
+            lbl_date.Text = libele_mois[(mois_actuel % 12)] + " " + libele_niveau[annee_actuelle];
+
+            TypeMessage tm = TypeMessage.INFORMATION;
+            Message m = new Message(-1,"Bonjour apprenti prof, vous allez apprendre à éduquer des joueurs !! ","Début",tm);
+            m.ShowDialog();
+        }
+
+        private void Pb_action_suivante_Click(object sender, EventArgs e)
+        {
+            // Traite les actions à effectuer avant de passer au mois suivant.
+            if (false)
+            {
+                // Lance l'interface appropriee.
+                return;
+            }
+
+            // Passe au mois suivant.
+            mois_actuel++;
+            switch(mois_actuel)
+            {
+                case 17: // Fin de la 1ère année : Début Juin.
+                    mois_actuel = 20;
+                    annee_actuelle = 1;
+                    break;
+                case 29: // Fin de la 2nde année : Début Juin.
+                    mois_actuel = 32;
+                    annee_actuelle = 2;
+                    break;
+                case 42: // Fin de la 3ème année : Debut Juillet.
+                    // Fin de la partie.
+                    break;
+            }
+
+            lbl_date.Text = libele_mois[(mois_actuel % 12)] + " " + libele_niveau[annee_actuelle];
+        }
+
+        private void Pb_liste_eleves_Click(object sender, EventArgs e)
+        {
+
+        }
+    }
+}
diff --git a/psychorientation/psychorientation/Form1.resx b/psychorientation/psychorientation/InterfaceClasse.resx
similarity index 100%
rename from psychorientation/psychorientation/Form1.resx
rename to psychorientation/psychorientation/InterfaceClasse.resx
diff --git a/psychorientation/psychorientation/Program.cs b/psychorientation/psychorientation/Program.cs
index 41634b64976497c6ecde04d4b1db97b5e865c4aa..5f0feaef3dca7c8135265bd0b7ada4de49f35209 100644
--- a/psychorientation/psychorientation/Program.cs
+++ b/psychorientation/psychorientation/Program.cs
@@ -16,7 +16,7 @@ namespace psychorientation
         {
             Application.EnableVisualStyles();
             Application.SetCompatibleTextRenderingDefault(false);
-            Application.Run(new Form1());
+            Application.Run(new InterfaceClasse());
         }
     }
 }
diff --git a/psychorientation/psychorientation/psychorientation.csproj b/psychorientation/psychorientation/psychorientation.csproj
index b59ad5cd9b54821687dea3c897cfbdace609c1eb..767381f087b341998523d997794855a9b22c2bad 100644
--- a/psychorientation/psychorientation/psychorientation.csproj
+++ b/psychorientation/psychorientation/psychorientation.csproj
@@ -51,11 +51,11 @@
   <ItemGroup>
     <Compile Include="Config.cs" />
     <Compile Include="Eleve.cs" />
-    <Compile Include="Form1.cs">
+    <Compile Include="InterfaceClasse.cs">
       <SubType>Form</SubType>
     </Compile>
-    <Compile Include="Form1.Designer.cs">
-      <DependentUpon>Form1.cs</DependentUpon>
+    <Compile Include="InterfaceClasse.Designer.cs">
+      <DependentUpon>InterfaceClasse.cs</DependentUpon>
     </Compile>
     <Compile Include="GestionnaireEleve.cs" />
     <Compile Include="InterfaceInfoEleve.cs">
@@ -73,8 +73,8 @@
     <Compile Include="Note.cs" />
     <Compile Include="Program.cs" />
     <Compile Include="Properties\AssemblyInfo.cs" />
-    <EmbeddedResource Include="Form1.resx">
-      <DependentUpon>Form1.cs</DependentUpon>
+    <EmbeddedResource Include="InterfaceClasse.resx">
+      <DependentUpon>InterfaceClasse.cs</DependentUpon>
     </EmbeddedResource>
     <EmbeddedResource Include="InterfaceInfoEleve.resx">
       <DependentUpon>InterfaceInfoEleve.cs</DependentUpon>