1. Accueil
  2. FR
  3. Étudier
  4. Offre de formation
  5. UE
COMM-Y1400

Conception d’un site web interactif

année académique
2026-2027

Titulaire(s) du cours

Tom Barbette (Coordonnateur)

Crédits ECTS

5

Langue(s) d'enseignement

français

Contenu du cours

Le cours présuppose la connaissance de base du langage de programmation Python tel que vu dans le cours d’initiation aux algorithmes. Les étudiants travaillent par groupe pour résoudre des problèmes plus complexes que ceux traités dans le cours de programmation. Chaque groupe travaillera sur un projet unique, mais avec plusieurs échéances et développements intermédiaires.

De façon générale, les étudiants devront apprendre à :
• travailler efficacement en groupe
• écrire des programmes corrects 
• documenter leurs codes

Lors des différentes phases, les compétences suivantes seront évaluées :
• écrire des tests qui valident le bon fonctionnement de leurs programmes
• documenter leurs programmes et les tests qui y sont associés
• apporter un regard critique sur le travail d'autres étudiants pour les aider à s'améliorer (peer-review constructive)
• évaluer les performances de leurs programmes
• trouver des librairies et modules python qui permettent de résoudre des problèmes similaires
• comparer les fonctionnalités et les performances de différentes solutions à un même problème
• documenter et analyser ces différences de fonctionnalités et de performances
• construire des requêtes SQL simples
• l'analyse quantitative des impacts énergétique de la sélection d'une technologie web particulière

Objectifs (et/ou acquis d'apprentissages spécifiques)

Les étudiants ayant suivi avec succès ce cours seront capables de :
- analyser une situation-problème concrète nécessitant le développement d'une site web interactif et percevoir le rôle que celui-ci devra jouer ;
- concevoir le site web correspondant aux besoins identifiés et justifier les choix de conception ;
- implémenter le site web en utilisant à bon escient le langage Python et une base de données;
- documenter l’application web et mettre en œuvre des tests unitaires pour valider son bon fonctionnement;
- utiliser un environnement de programmation comportant des outils de programmation intégrés comme un éditeur, compilateur, debugger, et des outils de maniement de fichiers, de tests, de documentation.

Les étudiants auront développé des compétences méthodologiques et opérationnelles. En particulier, ils auront développé leur capacité à:
- contribuer au fonctionnement de groupe dans le cadre de dispositifs d'apprentissage actifs coopératifs de type projet, expliciter les enjeux (avantages, inconvénients) du travail de groupe et donner quelques pistes opérationnelles pour favoriser un travail de groupe efficace;
- mener une démarche de développement d'une application informatique
- comprendre une situation-problème décrite via des documents écrits, une présentation orale et en extraire ce qui en fait l'essence et le reformuler afin de définir le résultat attendu ;
- établir le cahier des charges et une feuille de route pour un projet;
- schématiser l'architecture du site web interactif pour en donner une description de haut niveau permettant à tout informaticien d'en percevoir rapidement la structure ;
- documenter l'application pour qu'elle puisse facilement être adaptée par le suite par un autre informaticien ;
- concevoir et réaliser des tests permettant de valider l'application développée ;
- collaborer de manière efficace sur le développement d'application;
- rédiger un rapport de projet cohérent et structuré afin de convaincre de la réussite du projet ;

Pré-requis et Co-requis

Connaissances et compétences pré-requises ou co-requises

Connaissances et compétences pré-requises ou co-requises
Le cours présuppose la connaissance du Python. Si l'étudiant a raté le cours d’algorithmique en Python, il est de son devoir de rattraper sa connaissance du Python au moyen de livres de référence, de ressources en ligne ou de séances d’aides organisées par la faculté le cas échéant.
L'apprentissage par projet signifie qu'une partie non négligeable des compétences doit être acquise par les étudiants eux-mêmes via les ressources renseignées dans le syllabus, tels que des tutoriaux en ligne.
 

Méthodes d'enseignement et activités d'apprentissages

Apprentissage par projet en groupe de plusieurs étudiants. Chaque groupe sera suivi par un membre de l'équipe d’enseignement.
4 ou 5 séances magistrales sont organisées (en fonction de l'avancement) pour donner les bases des technologies web, le SQL, le framework Python Flask, les tests unitaires ou Graph.js.
Au début de l’année, des TPs suivent les cours magistraux ; ces TPs sont remplacés progressivement par des séances de suivi du projet.

L’apprentissage par projet signifie que les étudiants doivent travailler par eux-mêmes environ 8 heures par semaine pour aller au-delà des bases vues en cours afin de construire leurs projets. Il est impossible de réussir le cours en ne venant qu’aux cours magistraux et aux séances de TP.

Les étudiants sont encouragés à poser des questions durant le cours magistral, et bien sûr les séances de suivi.

Cette unité d’enseignement aborde des questions liées au développement durable et à la transition à travers un module dédié à l'exploration de la performance et de la consommation électrique des serveurs web en fonction du choix technologique parmi diverses technologies web.

Support(s) de cours

  • Syllabus

Autres renseignements

Informations complémentaires

Autres infos
Le cours présuppose la connaissance du Python. Si l'étudiant a raté le cours d’initiation aux algorithmes, il est de son devoir de participer aux séances de remédiation et/ou d'aide à la réussite organisés par la faculté.

Ressources
L'UV (https://uv.ulb.ac.be/enrol/index.php?id=126580)
Le syllabus (https://sites.uclouvain.be/linfo1002/)
L'apprentissage par projet signifie qu'une partie non négligeable des compétences doit être acquise par les étudiants eux-mêmes via les ressources renseignées dans le syllabus, telles que des tutoriaux en ligne ou des vidéos youtube.

Campus

Charleroi Ville Haute

Evaluation

Méthode(s) d'évaluation

  • Travail de groupe
  • Présentation orale

Travail de groupe

Présentation orale

Le cours est divisé en une évaluation continue et un examen final sur ordinateur.
Évaluation continue (/70)
·      Une première phase individuelle (/5)
·      3 phases intermédiaires cotée par groupe (/5, /13, /12).  Chacune de ces phases intermédiaire sera suivie d’un test individuel en ligne fait au TP ou en cours juste après la remise de la phase. La note de la phase inclut le test individuel, qui compte pour 10%. Si le résultat du test < 50 %, la note de la phase est de 0. Ces tests sont faciles, ils ne sont là que pour s’assurer que l’étudiant comprend le code remis et n’a pas utilisé une IA
• Évaluation de la revue par les pairs (/5)
• Évaluation de la présence, sur base du suivi par la personne de l'équipe d'enseignement déléguée au suivi du groupe (/10)
• Le projet final sur base du code et du rapport (/20)
Les notes des travaux de groupe sont individualisées en fonction de l'implication de l'étudiant·e au sein du groupe, sur base la présence obligatoire aux activités, et la participation active aux travaux intermédiaires.
Examen écrit sur ordinateur (/30)
• Examen écrit individuel sur ordinateur qui évalue les connaissance acquises lors de la conception du projet. (/30)

Construction de la note (en ce compris, la pondération des notes partielles)

Pour constituer la note finale, la pondération donnée à l'évaluation continue (la pondération complémentaire correspondant à l'examen individuel) est :
• 70/100 si la note de l’examen écrit individuel est supérieure à 10/20 ;
• 0 si la note de l’examen écrit individuel est inférieure à 5/20 ;
• linéairement progressive entre 0, si la note de l’examen écrit individuel est de 5/20, et 70/100, si la note de l’examen écrit est 10/20.

La participation à toutes les activités d'enseignement est obligatoire. 

Les étudiants qui auront échoué en juin pourront refaire un projet individuel en seconde session. Ce projet ne sera évalué qu’au travers d’un examen écrit sur ordinateur qui remplacera les 100% de la note finale. Les travaux menant à la note d’évaluation continue ne peuvent donc pas être refaits.

Les examens écrits sur ordinateurs peuvent être personnalisé en fonction du code du projet de l’étudiant. Tous les tests et examens sur ordinateur doivent se faire sans accès à aucune ressource externe.

Bien que l’IA fasse partie des outils numériques modernes, il est indispensable de comprendre les bases de la programmation par soi-même afin de l’utiliser efficacement. Ce cours vise à enseigner les bases de l’informatique au travers d’un projet relativement simple pour un expert. Dès lors, l'usage des IA génératives (telles que ChatGPT, Claude, Gemini, …), autre que pour l’aide à l’écriture (c’est-à-dire reformuler une phrase écrite par vos soins, la corriger ou la traduire) est totalement interdit. L’enseignant se réserve le droit de mettre 0 à une partie ou à l’ensemble des projets qui contiendraient du code généré par IA. L’utilisation de l’IA peut également être assimilée à un cas de tricherie, qui sera traité par le jury d’année. L’enseignant se réserve également le droit de convoquer un étudiant en cas de doute sur l’authenticité du code dans le but de vérifier qu’il ou elle est capable d’expliquer le code qu’il ou elle a remis.  

Langue(s) d'évaluation

  • français

Programmes