# Plan d'itération  2

## Étapes jalons

| Étape jalon          | Date       |
| :------------------- | :--------- |
| Début de l'itération | 2022/06/21 |
| Plan de l'itération  | 2022/06/21 |
| Conception           | 2022/06/28 |
| Démo (séance 8)      | 2022/07/05 |
| Fin de l'itération   | 2022/07/12 |

## Objectifs clés

- Terminer les tests des CU01a, CU01b et CU01c
- Terminer l'implémentation de CU02c et les test des CU02a, CU02b, CU02c, CU02d
- Terminer l'implémentation, les artéfacts et les tests de CU03a, CU03b, CU03c, CU03d
- Terminer l'implémentation, les artéfacts et les tests de CU05a, CU05b, CU05c, CU05d
- Créer l'infrastructure de journalisation des erreurs (F1)
- Créer une environnement d'intégration continue dans Github (S2)
- Continuer l'intégration _responsive_ des pages (U1)
- Créer un gestionnaire sémantique de gestion (S3)

## Affectations d'éléments de travail

Les éléments de travail suivants seront abordés dans cette itération:   

| Nom / Description | Priorité | [Taille estimée (points)](#commentEstimer "Comment estimer?") | Assigné à (nom) | Documents de référence |
| ----------------- | -------: | --------------------------: | ------- | -------------- |
| CU01x | 1 | 0 | Samuel | Terminer les tests commencé dans l'itération 01 |
| CU02x | 1 | 0 | Amin Sghaier | Terminer les tests commencé dans l'itération 01 |
| CU02c | 1 | 1 | Amin Sghaier | Terminer tâches commencé dans l'itération 01 |
| CU03a | 1 | 1 | Simon Roy & Frédéric | Avancement pour Itération 03 |
| CU03b |  1 | 1 | Simon Roy & Frédéric | Préalable pour CU04 |
| CU03c | 2  | 1 | Simon Roy & Frédéric | Préalable pour CU04 |
| CU03d | 2  | 1 | Simon Roy & Frédéric | Préalable pour CU04 |
| CU05a | 1  | 2 | Amin & Samuel | Préalable pour CU08 |
| CU05b | 1  | 1 | Amin & Samuel| Préalable pour CU08 |
| CU05c | 2  | 1 | Amin & Samuel | Préalable pour CU08 |
| CU05d | 2  | 0.5 | Amin & Samuel | Préalable pour CU08 |
| F1 | 2  | 1 | Jean-Felix | [Bonus (FURPS+) : Journalisation et traitement d'erreurs](https://github.com/profcfuhrmanets/log210-enonce-lab1/blob/main/README-exigences-client.md#f1-journalisation-et-traitement-derreurs) |
| U1 | 2  | 1 | Jean-Felix | [Bonus (FURPS+) : Facteurs humains](https://github.com/profcfuhrmanets/log210-enonce-lab1/blob/main/README-exigences-client.md#u1-facteurs-humains) |
| S2 | 2  | 1 | Jean-Felix | [Bonus (FURPS+) : Contrainte de développement : environnement d'intégration continue](https://github.com/profcfuhrmanets/log210-enonce-lab1/blob/main/README-exigences-client.md#s2-contrainte-de-d%C3%A9veloppement-environnement-dint%C3%A9gration-continue) |
| S3 | 2  | 1 | Jean-Felix | [Bonus (FURPS+) : Contrainte de développement : gestion sémantique de version](https://github.com/profcfuhrmanets/log210-enonce-lab1/blob/main/README-exigences-client.md#s3-contrainte-de-d%C3%A9veloppement-gestion-s%C3%A9mantique-de-version) |
| Problème | 1  | 0 | Jean-Felix & Amin | Revoir les commentaire et problème soulevé durant l'itération 01 |

## Problèmes

| Problème | Notes | 
| -------- | ----- |
|     test unitaire pour le middleware     |    Il n'y a pas de test unitaire pour la classe du middleware qui controle l'authentification   |
|     test unitaire pour le classes enseignant & étudiants     |    Il n'y a pas de test unitaire pour les classes qui modélise l'enseignant et l'étudiants  |
| _refactoring_ du cours | la classe cours et horaire-cours pourrai être améliorer pour respecté le couplage et la cohésion des classes|
| test unitaire de la classe coursControleur | Les tests pour cette classe on été un problème, car il faut créer un MOCK pour éviter de dépendre du SGB pour les tests et ceci s'avère plus compliqué qu'estimé |
| test unitaire supplémentaire pour CU01 | Les tests pour cette classe on été un problème, car il faut créer un MOCK pour éviter de dépendre du SGB pour les tests et ceci s'avère plus compliqué qu'estimé |
| _refactoring_ des méthodes JS | plusieurs méthodes JS sont dans des fichiers général. Pour l'instant nous n'avons pas beaucoup de classes, mais une fois que l'application sera plus lourd, ce type de fichier pourrait devenir gros et difficile a maintenir. Séparer les méthodes dans les fichiers générals dans des fichiers spécifique qui respecte une forte cohésion. | 
| _refactoring_ Utilisateur | nous récupérons l'utilisateur au SGB à chaque requête, à lieu de le sauvegarder dans une variable. |

## Critères d'évaluation

- Terminer 100% des artéfact pour CU03a, CU03b, CU03c et CU03d.
- 80% des cas de test passent pour CU03a, CU03b, CU03c et CU03d.
- Terminer 100% des artéfact pour CU05a, CU05b, CU05c et CU05d.
- 80% des cas de test passent pour CU05a, CU05b, CU05c et CU05d.
- Ajouter et récupérer un devoir est fonctionnel à 100%
- Modifier et supprimer un devoir est fonctionnel à 100%
- Ajouter et récupérer un questionnaire est fonctionnel à 100%
- Modifier et supprimer un questionnaire est fonctionnel à 80%
- Corrigé les problèmes relevé durant l'évaluation de l'itération 01 à 100%
