UE25 Architectures logicielles
En pratique
-
Cette unité d'enseignement (UE) articule 1 activité d'apprentissage :
- Architectures logicielles
- En 2025-2026, elle s'organise au premier quadrimestre et couvre 6 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
- Sous-groupe
- en autonomie
Activité d’apprentissage
Les finalités de l'UE
Cette UE vise à former les étudiants à concevoir et implémenter des architectures logicielles backend robustes et évolutives, intégrant des frameworks modernes, des méthodologies de travail agiles, et des pratiques de CI/CD avec Docker. Elle s'inscrit dans le parcours professionnalisant en leur permettant de maîtriser des compétences clés telles que la collaboration en équipe, l'organisation du travail et la mise en production d'applications backend, contribuant ainsi à leur préparation aux métiers de développeur et d'architecte logiciel.
Les contenus de l'UE
L’UE explore les fondements des architectures logicielles backend, offrant une vision globale des différentes approches et de leur application dans le développement de solutions logicielles modernes. Le cours théorique présente les principaux types d'architectures (monolithique, microservices, etc.), avec des exemples pour comprendre leurs forces et faiblesses. Nous couvrons également les frameworks backend les plus utilisés (comme Node.js, Express, ou Spring), en mettant l'accent sur leur rôle dans la structure et l'efficacité d'une application.
L'UE aborde également l'intégration continue (CI) et le déploiement continu (CD), en utilisant Docker pour simplifier le déploiement d'applications dans des environnements contrôlés et reproductibles. Les laboratoires permettent aux étudiants de mettre en pratique ces concepts au travers l'élaboration d'une architecture backend complète qui pourra être intégrée à un front-end.
Enfin, l’accent est mis sur le travail en groupe : les étudiants, réunis en équipe, devront discuter avec un client, établir un cahier des charges, et appliquer les concepts vus en classe pour réaliser un backend fonctionnel, intégrant les meilleures pratiques de sécurité, de performance, et de maintenabilité adapté à la problématique client.
Les acquis d'apprentissage visés par l'UE
Au terme des apprentissages, l'étudiant·e sera capable de :
- Planifier et structurer le développement d'un projet logiciel à l'aide d'outils de gestion de versions et de tâches.
- Analyser les besoins d'un projet pour proposer et justifier une architecture logicielle cohérente, en considérant ses avantages, ses inconvénients et ses alternatives.
- Argumenter le choix d'un framework backend sur la base d'une analyse comparative de plusieurs alternatives, en fonction des contraintes spécifiques du projet.
- Expliquer les concepts théoriques fondamentaux (cycle de vie d'une requête, API, authentification, middlewares) sous-jacents à un framework backend.
- Mettre en œuvre une solution backend fonctionnelle et démontrable, capable de gérer des données et de traiter les erreurs conformément à un cahier des charges.
- Expliquer et justifier ses choix d'implémentation, la structure et la logique de chaque partie du code produit.
- 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.
La validation de l'unité d'enseignement requiert la validation de chacun des acquis d'apprentissage. La non-validation d'un seul acquis d'apprentissage entraîne une note finale maximale de 7/20 pour l'UE.
Les méthodes d'enseignement-apprentissage
L'UE combine des cours théoriques et des laboratoires pratiques pour favoriser une approche progressive et active. Les premières séances introduisent les concepts théoriques essentiels, permettant aux étudiants de développer une base solide. Ces notions sont ensuite approfondies dans des laboratoires où ils appliquent ce qu'ils ont appris en concevant et réalisant une architecture backend en groupe.
Les laboratoires sont conçus pour encourager l'autonomie, la collaboration, et l'apprentissage par la pratique. Les étudiants travaillent sur un projet concret avec des étapes de planification, de développement et de mise en production, en interaction avec un client fictif. Tout au long de l'UE, l'accent est mis sur la gestion de projet Agile et l'utilisation d'outils comme GitLab et Docker.
Engagement attendu de la part de l'étudiant.e
Pour réussir ce cours, il est essentiel de s'engager activement dans les apprentissages. Travaillez régulièrement sur votre projet en groupe, en répartissant équitablement les tâches et en communiquant fréquemment avec vos coéquipiers. Utilisez des outils de gestion de projet pour suivre votre progression. Enfin, n'hésitez pas à poser des questions et à solliciter des retours pour clarifier vos doutes et améliorer vos compétences.
Oral 1ere session
Cette épreuve présente des modalités spécifiques à la 1re session. Elle est organisée durant la session. Il s'agit d'un examen. 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 avec un support (à projeter). La correction de cette épreuve est assurée par délibération d'une équipe d’enseignant.es.
Oral 2eme session
Cette épreuve présente des modalités spécifiques à la seconde session. Elle est organisée durant la session. Il s'agit d'un examen. Cette épreuve est individuelle ou collective. 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 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
-
Documentation Officielle : Guides et références des frameworks et outils utilisés (Laravel, Django, Express,...).
-
Tutoriels en Ligne : Ressources pratiques pour approfondir les compétences techniques et résoudre des problèmes.
-
Articles et Études de Cas : Lectures recommandées sur les meilleures pratiques et tendances du développement backend.
-
Forums et Communautés : Espaces pour poser des questions et échanger avec d'autres développeurs.
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 unique épreuve : une présentation orale qui compte pour 100% de la note finale.
Support de l'évaluation : le projet
Cette évaluation orale porte sur un projet réalisé en groupe durant le quadrimestre. Pour le choix du projet, deux options sont possibles :
-
Choisir un projet parmi une liste proposée par les enseignant·es.
-
Proposer un projet personnel, qui devra être formellement validé par le responsable de l'UE pour s'assurer qu'il permet de couvrir tous les acquis d'apprentissage.
Mécanisme d'évaluation
Bien que le projet soit réalisé en groupe, l'évaluation est strictement individuelle. Chaque étudiant·e sera interrogé·e personnellement afin de vérifier sa maîtrise de l'ensemble des compétences visées par l'UE.
Le calcul de la note finale ne repose pas sur une moyenne, mais sur un système de validation des acquis d'apprentissage (AA). Le processus se déroule comme suit :
-
Validation des acquis : Pour chaque étudiant·e, chacun des 7 acquis d'apprentissage est évalué de manière binaire : il est soit "validé", soit "non validé".
-
Condition de réussite : Pour réussir l'UE (c'est-à-dire obtenir une note supérieure ou égale à 10/20), l'étudiant·e doit impérativement obtenir le statut "validé" pour la totalité des 7 acquis d'apprentissage.
-
Calcul de la note :
-
Cas 1 : Un ou plusieurs AA sont "non validés"
Si un seul acquis d'apprentissage (ou plus) n'est pas validé, la note finale sera automatiquement plafonnée et ne pourra excéder 7/20, quel que soit le niveau de performance démontré sur les autres acquis. -
Cas 2 : Tous les AA sont "validés"
Si et seulement si les 7 acquis d'apprentissage sont validés, une note finale comprise entre 10/20 et 20/20 est attribuée. Cette note reflète alors le niveau de maîtrise global, la qualité et la profondeur des justifications, ainsi que le professionnalisme démontré durant l'ensemble de l'épreuve orale.
-
Modalités pour la seconde session
Il n'y a pas de dispense partielle.
L'organisation de la seconde session dépend de la situation de chaque étudiant·e à l'issue de la première session :
-
Cas 1 : Échec individuel au sein d'un groupe majoritairement en réussite
Si un·e ou plusieurs étudiant·es d'un groupe ne valident pas l'UE (mais pas l'entièreté du groupe), chaque étudiant·e concerné·e devra représenter l'épreuve individuellement. L'évaluation portera sur un nouveau projet, de périmètre adapté à un travail individuel. Pour le choix de ce projet, et à l'instar de la première session, l'étudiant·e pourra proposer un sujet personnel (soumis à validation par le responsable de l'UE), ou se verra attribuer un projet défini par l'équipe enseignante. -
Cas 2 : Échec de l'ensemble du groupe
Si tous les membres d'un même groupe ne valident pas l'UE, le groupe a la possibilité de se présenter à nouveau ensemble en seconde session. L'évaluation portera alors sur une version améliorée 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 : C1-B3-Q1-UE25
- Cycle : 1er cycle
- Unité obligatoire : non
- Niveau CEC : 6
- 70 heures
-
Cursus
-
Enseignants prenant part à cette UE