2023.03.03 test R403 - ennonce2023.03.03 test R403 - ennonce 2023.03.03 test R403 - ennonce_QCM
Archives d’Auteur: alain
R4.03 – Manuel de cours
R4.03 – TDs
R4.03 Amphi
R4.03
Qualité et au-delà du relationnel
examen 2024 – 2025
fichier contenant certains mots de la langue française : liste_francais_V2
Mot de passe final : echanges2#Tresoraromatesalchimique4.rigoler?Aquarelliste7
2024- 2025 – SAE 1.01
Bonjour à tous,
l’objectif de cette SAE est de compléter le code donné en TP. Vous devrez :
- blinder le code donné lors de TPs liés à cette SAE (prog 10, prog 13, prog 14);
- i.e. pas de boulette :
- on ne peut pas jouer à la place du 2ème joueur;
- pas de débordement dans les indices – sauf si règles particulières;
- …
- i.e. pas de boulette :
- générer la documentation de votre projet à l’aide de doxygen
- fournir des améliorations
- utilisation de MinGL;
-
utilisation de la struct termios (pour ceux qui souhaite garder le terminal)
- ajout de fonctionnalités (liste non exhaustive) :
- lecture de fichiers de config (ie finir les TP 13 & 14);
- des niveaux de jeux;
- des points particuliers (téléportation, mur, …);
- un high score;
- …
Avertissement : je suis team 3.3 (ajout de fonctionnalités).
Pour cette sae, vous devrez :
- constituer des groupes de 4 ou 5 étudiants.
Le rendu votre SAE sera le suivant :
- rendu avant le vendredi 10 janvier (12h30) sur la plateforme ametice ;
- votre travail (une archive au format “zip” et ne contenant aucun binaire / exécutable – ni .o) devra contenir :
- un pdf expliquant ce que vous avez fait;
- un répertoire contenant la documentation que vous avez générée ;
- N’oubliez pas de générer les graphes des fonctions appelées et des fonctions appelantes …
- un fichier texte expliquant comment on joue à votre jeux et les règles de jeux.
- tips : pour pouvez lire ce fichier et le faire afficher dans votre programme. En revanche faites bien attention à son chemin / son emplacement …
- Votre archive devra suivre la nomenclature suivante GX_nom1_nom2_nom3.zip
- où X sera remplacé par votre numéro de groupe;
- nom1, nom2, … seront remplacés par les noms de votre groupe de projet. Ces noms devront être ordonnés par ordre alphabétique croissant.
- Prévoir une présentation de ~~ 10 minutes lors de la semaine du 13 janvier
- Notation (comment on va vous noter) – le barème est sur 20 pts :
- Rapport (2 pts);
- Présentation (3 pts);
- documentation (2 pts)
- Des points à vous répartir entre vous selon le principe suivant (3 pts):
- Chaque étudiant de chaque groupe de projet à 3 pts qu’il peut répartir comme il le souhaite;
- En conséquence, si vous êtes une équipe de 4 étudiants, vous disposez de 12 points à vous répartir, si vous êtes 5 étudiants, vous avez 15 points à vous répartir.
- L’équipe pédagogique n’interviendra pas dans la répartition de ces points – sauf si un, ou plusieurs, étudiant(s) aurait (auraient) une note > 20.
- votre code (10 pts) :
- au choix (2 pts) : MinGL / struct termios ;
- nouvelles fonctionnalités (8 pts) – voir paragraphe 3.3;
- bonus fun / lore (2 pts).
- Les pénalités seront les suivantes :
- Si plus de 2 faotes d’ortogravhezkjz par page / par slide => -1 pt;
- Si un bug est découvert => – 3 pts pour le premier, – 2pts pour le second, -1pt pour le troisième – on s’arrêtera là : si vous avez, au moins 3, bugs, ça vous donne un malus de -6 pts, ça ne sert à rien de continuer;
- triche :
- Copie sur un autre groupe => 0 + conseil de discipline;
- Intégration du code provenant d’un autre tiers (dev externe / LLM/ ….) :
- vous ne sourcez pas (voir partie copie – 2 lignes plus haut);
- Vous sourcez :
- note /2 si vous êtes capables d’expliquer le code;
- note = 0 (cf copie sinon).
R1.01 – TP4
Ce Tp est l’inverse du TP précédant.
Dans le TP précédant (ie TP3), nous vous demandions d’écrire les protocoles de test en utilisant :
- EASY_ASSERT ()
- assert ()
- Les tests via fichiers oracles
Cette fois-ci, vous devez passez tous les tests (et j’ai générer jusqu’à plusieurs milliards de test d’un coup).
Votre projet est à télécharger ici.
Warning : normalement, vous n’avez pas accès au code de ces fonctions de test.
Actuellement, j’ai certaines difficultés à faire fonctionner ce TP (et c’est très bien ainsi) :
- Je suis sur un environnent basé sur OSX avec des puces Apple;
- Si je compile mes bibliothèques (ie je ne vous donne que les signatures des fonctions), ça n’est pas compatible : les instructions entre les proc “Intel” et “Apple” ne sont pas les mêmes;
- Si je compile mes bibliothèques dans un environnement fourni par la DirNum AMU, ça ne passe pas car les bibliothèques fournies ne sont pas signées numériquement (ça se comprend aussi d’un point de vue cyber-sécu).
=> c’est pourquoi je ne vous fournirai pas de bibliothèque pré-complilée, mais tout le code source.
R5-05 Projet
Pour ce projet :
- Vous devez constituer des équipes de 4 ou 5 étudiants;
- Chaque équipe devra coder un des problème présents dans le document Little book of semaphores (partie 4.5 et partie 5);
- Vous devrez changer le lore du problème que vous allez coder (autrement dit, vous devez trouver un autre problème qui se résout de la même manière que votre choix);
- Votre rendu devra contenir 2 projets sous QT Creator :
- L’un contenant, au moins, un interblocage de thread;
- L’autre étant thread safe.
La date de rendu du projet est le mardi 22 octobre à 12h30, sur Ametice.
Vous devrez faire une soutenance (10 minutes de présentation + 10 minutes de questions / réponses) vendredi 25 octobre afin d’exposer vos travaux
R1.01 – TP3
Récupérer l’archive suivante.
Elle contient :
- une fonction liée à la lecture des
strings
en C++; - une fonction vous permettant de copier un fichier texte;
- la correction du TD7 (exercice 1);
- la signature des fonctions de tests de ces fonctions;
Le cours correspondant à cette séance est le suivant :
Exercice 1
Ouvrir le projet lié à cette séance.
Exercice 2
A l’aide d’un terminal, placez vous à l’endroit où situer l’exécutable de votre projet.
Tester la fonction lectureDUneLigneAuClavier()
.
Exercice 3
Tester la fonction testCopieFichier()
.
Utilisez les redirections d’entrées / sorties avec votre exécutable.
Quel est l’outil du shell qui vous permet de garantir que la copie du fichier est parfaite ?
Exercice 4
Regardez (lisez) la correction de l’exercice 1 du TD7.
Exercice 5
Codez les fonctions de tests qui vous sont demandées (dans l’ordre du main
).
Exercice 6
- Coder les fonctions liées à l’exercice 2 du TD7;
- Réécrire toutes les fonctions de test.