cursus.
Licence 1 · 6 cours · 10 leçons · 45 h

Génie logiciel

Organiser, spécifier, tester et faire vivre un logiciel à plusieurs — le tout appliqué à un projet collectif mené sur tout le semestre.

Commencer : Du programme au logiciel
0 % · 0 / 10 leçons
  1. C1

    Pourquoi le génie logiciel

    1 leçon · 6 h
    Non commencé

    Objectif. Comprendre ce qui change quand un programme devient un logiciel — durable, collectif, à maintenir — et pourquoi cela mérite une discipline.

    1. Du programme au logicielVous êtes iciCe qui change quand le code grossit, dure et passe entre plusieurs mains ; les qualités attendues ; le coût de la maintenance face au développement ; échecs célèbres et rôles dans une équipe.6 h · en cours
  2. C2

    Cycle de vie

    2 leçons · 8 h
    Non commencé

    Objectif. Situer les étapes d'un projet et choisir un modèle de développement — cascade, V, itératif, agile — selon le contexte.

    1. Étapes d'un projetAnalyse des besoins, conception, implémentation, tests, déploiement, maintenance ; pourquoi chaque étape existe ; ce que coûte une erreur détectée tard.4 h · non commencée
    2. Modèles de développementCascade et ses limites ; modèle en V ; développement itératif et incrémental ; méthodes agiles et Scrum (sprint, backlog, mêlée) ; comment choisir selon le contexte.4 h · non commencée
  3. C3

    Analyse et spécification

    2 leçons · 8 h
    Non commencé

    Objectif. Recueillir des besoins et les écrire sans ambiguïté, puis en tirer trois diagrammes UML utiles.

    1. Recueil des besoinsBesoins fonctionnels et non fonctionnels ; entretien avec le client ; rédaction d'un cahier des charges simple ; les critères d'un besoin bien formulé — vérifiable, non ambigu.4 h · non commencée
    2. Modélisation UMLDiagramme de cas d'utilisation, acteurs et scénarios ; diagramme de classes en première approche ; diagramme de séquence simple ; du modèle vers le code.4 h · non commencée
  4. C4

    Qualité du code

    2 leçons · 10 h
    Non commencé

    Objectif. Écrire un code que les autres — et soi-même dans six mois — pourront lire, et le concevoir pour qu'il résiste au changement.

    1. Écrire un code lisibleConventions de nommage et d'indentation ; découpage en fonctions courtes ; commentaires utiles contre commentaires bruyants ; documentation ; lecture croisée entre binômes.5 h · non commencée
    2. Principes de conceptionSéparation des responsabilités ; couplage et cohésion ; éviter la duplication ; dette technique ; refactoring d'un code volontairement mal écrit.5 h · non commencée
  5. C5

    Tests et outillage

    2 leçons · 9 h
    Non commencé

    Objectif. Éprouver son code plutôt que de l'espérer correct, et travailler à plusieurs sans se marcher dessus grâce à Git.

    1. TestsPourquoi « ça marche chez moi » ne suffit pas ; tests unitaires, d'intégration, de recette ; jeux de tests et cas limites ; framework de test ; couverture ; tests de non-régression.5 h · non commencée
    2. Gestion de versions et collaborationGit : dépôt, commit, historique ; branches et fusion ; résolution de conflits ; dépôt distant et travail à plusieurs ; suivi des tâches ; bonnes pratiques de messages de commit.4 h · non commencée
  6. C6

    Projet intégrateur

    1 leçon · 4 h
    Non commencé

    Objectif. Conduire en équipe un logiciel modeste de bout en bout : découpage, avancement, documentation, soutenance.

    1. Conduite du projetConstitution des équipes ; découpage en tâches et planification simple ; points d'avancement ; rédaction de la documentation ; soutenance et démonstration.4 h · non commencée