UE44 Développement et Architectures Logicielles Full Stack
En pratique
-
Cette unité d'enseignement (UE) articule 3 activités d'apprentissage :
- Projet Intégré
- Développement Frontend et intégration
- Architecture et développement backend
- En 2026-2027, elle s'organise au premier quadrimestre et couvre 11 crédits (ECTS).
- L'enseignement est principalement centralisé dans le campus : Département Informatique
- Cette UE est remédiable d'une session à l'autre
-
Modalités d'enseignement
- Auditoire
- Groupe classe
- Sous-groupe
- en autonomie
Activité d’apprentissage
Les finalités de l'UE
Cette unité d'enseignement vise à former les étudiant·es à la conception et à l'implémentation d'applications web complètes (full-stack), modernes, robustes et évolutives. Elle allie la maîtrise d'une architecture logicielle backend solide (intégrant des frameworks modernes, la conteneurisation Docker et les pratiques CI/CD) au développement d'interfaces frontend dynamiques de type SPA (Single Page Application).
Elle s'inscrit pleinement dans le parcours professionnalisant en préparant les étudiant·es aux métiers de développeur web full-stack et d'architecte logiciel, en développant des compétences techniques pointues ainsi que des compétences transversales clés : travail d'équipe, méthodologie Agile et communication technique.
Les contenus de l'UE
L'UE propose une vision globale du développement logiciel contemporain en reliant le front-end et le back-end à travers les thématiques suivantes :
-
Architectures logicielles et Back-end :
-
Fondements et comparaison des architectures (monolithique, microservices, etc.).
-
Frameworks backend majeurs (Node.js/Express, Spring, NestJS, etc.) : organisation en couches, middlewares, gestion des erreurs et sécurisation.
-
Modélisation et exposition d'API fiables et sécurisées (cycle de vie des requêtes, authentification, persistance des données).
-
Conteneurisation avec Docker et principes d’intégration/déploiement continus (CI/CD).
-
-
Frameworks Web et Front-end :
-
Principes et structuration des Single Page Applications (SPA).
-
Frameworks modernes pour interfaces utilisateur (ex. : React, Angular, Vue.js).
-
Approche par composants réutilisables, gestion de l'état (state management), routage applicatif et cycle de vie des composants.
-
Communication asynchrone avec le backend (consommation d'API).
-
Outils d'industrialisation et de build (npm, Vite, etc.).
-
-
Méthodologie et gestion de projet :
-
Pratiques Agiles, recueil des besoins clients et rédaction d'un cahier des charges.
-
Gestion de versions (Git/GitLab) et organisation des tâches au sein d’une équipe.
-
Les acquis d'apprentissage visés par l'UE
Au terme de cette unité d'enseignement, l'étudiant·e sera capable de :
-
Planification & Gestion de projet : Planifier et structurer le développement d'un projet logiciel complet (front-end et back-end) à l'aide d'outils de gestion de versions et de gestion de tâches.
-
Architecture logicielle globale : Analyser les besoins d'un projet pour concevoir et justifier une architecture logicielle cohérente, en évaluant ses avantages, ses inconvénients et ses alternatives.
-
Choix des frameworks : Argumenter le choix des frameworks web (front-end et back-end) sur la base d'une analyse comparative de plusieurs alternatives, en adéquation avec les contraintes techniques et métier du projet.
-
Implémentation & Concepts Back-end / DevOps : Mettre en oeuvre et savoir expliquer les concepts théoriques sous-jacents au backend et au déploiement (cycle de vie d'une requête, API, authentification, middlewares, conteneurisation Docker, CI/CD).
-
Implémentation & Concepts Front-end : Mettre en oeuvre et savoir expliquer les concepts fondamentaux d'un framework web moderne (architecture par composants, cycle de vie, routage, gestion de l'état).
-
Justification technique du code : Expliquer et justifier ses choix d'implémentation, la structure et la logique de chaque partie du code produit (front-end comme back-end).
-
Défense professionnelle : Présenter et défendre oralement son projet de manière claire, structurée et professionnelle, en répondant de façon argumentée aux questions techniques et méthodologiques.
Les méthodes d'enseignement-apprentissage
L'UE combine harmonieusement cours théoriques et laboratoires pratiques selon une démarche de pédagogie par projet :
-
Cours théoriques : Les séances magistrales posent les bases conceptuelles indispensables (patterns d'architecture, fonctionnement interne des frameworks front/back, sécurité, communication par API, CI/CD).
-
Laboratoires et projet intégré : En équipe, les étudiant·es appliquent directement les notions vues en cours sur un projet complet et concret mené de A à Z. Ils/Elles conçoivent l'architecture, développent le backend et le frontend, automatisent le déploiement et interagissent avec un client (fictif ou enseignant) pour valider les étapes du projet.
Engagement attendu de la part de l'étudiant.e
- Assiduité et participation : Participer activement aux cours et laboratoires, poser des questions et alimenter les discussions techniques.
- Travail collaboratif et régulier : S'investir de façon continue tout au long du quadrimestre. Répartir les tâches équitablement, communiquer ouvertement avec son équipe et synchroniser son travail via Git.
- Autonomie et démarche réflexive : Développer son autonomie face aux problèmes techniques en exploitant les documentations officielles et tutoriels avant de solliciter l'aide de l'équipe pédagogique.
- Gestion des délais et itérations : Respecter les jalons fixés, solliciter des retours réguliers des enseignant·es et intégrer le feedback pour améliorer la qualité du livrable final.
Oral
Cette épreuve présente des modalités similaires pour toutes les sessions. Elle est organisée durant la session. Il s'agit d'une présentation. Cette épreuve est individuelle et en équipe. Concrètement, l'épreuve repose sur une formulation écrite, une formulation orale, une réalisation par mise en pratique. L'épreuve repose sur des réponses longues, formulations personnelles. Elle se déroule à cours fermé, avec des documents autorisés, avec un support (à projeter). La correction de cette épreuve est assurée par délibération d'une équipe d’enseignant.es.
Règles de l’UE
Quels sont les supports et matériels de cours indispensables ?
Supports et matériels de cours
Ressources complémentaires recommandées :
-
Documentations officielles : Frameworks backend (Node/Express, Spring, etc.), frameworks front-end (React, Vue, Angular), Docker, Vite, npm.
-
Tutoriels et documentation en ligne : Ressources pratiques pour approfondir les aspects techniques et de configuration.
-
Articles et études de cas : Lectures recommandées sur les bonnes pratiques d'architecture logicielle, la sécurité et la performance web.
-
Forums et communautés : Espaces d'entraide technique (Stack Overflow, GitHub, communautés spécialisées).
Comment la note globale de l’UE est-elle déterminée ?
Explication de la pondération des différentes épreuves
L'évaluation de cette UE repose sur une épreuve unique : une présentation orale comptant pour 100 % de la note finale.
Support de l'évaluation : le projet
Cette évaluation orale porte sur le projet full-stack réalisé en groupe durant le quadrimestre. Deux options sont possibles pour le sujet :
-
Choisir un projet parmi la liste proposée par l'équipe enseignante.
-
Proposer un projet personnel, obligatoirement validé par le responsable de l'UE pour garantir qu'il couvre l'ensemble des acquis d'apprentissage.
Mécanisme d'évaluation et calcul de la note
Bien que le projet soit réalisé en groupe, l'évaluation et la note sont strictement individuelles. Chaque étudiant·e est interrogé·e personnellement pour vérifier sa maîtrise des compétences visées.
Le calcul de la note finale repose sur la validation binaire des Acquis d'Apprentissage (AA) : chaque AA est jugé "validé" ou "non validé".
-
Cas 1 : Tous les acquis d'apprentissage sont "validés"
L'étudiant·e réussit l'UE. Une note finale comprise entre 10/20 et 20/20 lui est attribuée selon la profondeur des justifications, la qualité technique du code et de l'architecture, la pertinence des réponses et le professionnalisme de la prestation orale. -
Cas 2 : Un ou plusieurs acquis d'apprentissage sont "non validés"
La note est plafonnée de manière dégressive selon le nombre d'acquis d'apprentissage non validés :-
Si 1 AA est en échec : la note finale est plafonnée à un maximum de 9/20.
-
Si 2 AA sont en échec : la note finale est plafonnée à un maximum de 8/20.
-
Si 3 AA sont en échec : la note finale est plafonnée à un maximum de 7/20.
-
Et ainsi de suite
-
Modalités pour la seconde session
Il n'y a pas de dispense partielle. L'organisation dépend de la situation à l'issue de la première session :
-
Cas 1 : Échec individuel au sein d'un groupe en réussite
L'étudiant·e présente l'épreuve individuellement. L'évaluation portera sur un projet de périmètre adapté à un travail individuel (sujet personnel validé par le responsable ou sujet imposé par l'équipe enseignante). -
Cas 2 : Échec de l'ensemble du groupe
Le groupe se présente à nouveau collectivement en seconde session. L'évaluation portera alors sur une version corrigée et enrichie de leur projet initial.
Quelles sont les informations administratives de cette UE ?
-
UE prérequises
-
UE corequises
Aucune -
Langue d'enseignement
Français -
Responsable de cette UE
TILLIEUX Arnaud -
Jury de délibération
- Président.e : MARTIN Vincent
- Secrétaire : COLLET Marianne
-
Identification
- Code :
- Cycle : 1er cycle
- Niveau CEC : 6
- 126 heures
-
Cursus
-
Enseignants prenant part à cette UE
Aucune