• Niveau d'étude

    BAC +4

  • ECTS

    6 crédits

  • Composante

    Sciences économiques, gestion, mathématiques et informatique

  • Volume horaire

    60h

  • Période de l'année

    Enseignement septième semestre

Objectifs

Ce cours vise à introduire les méthodes et les outils supportant un développement logiciel de qualité. Cela inclut l’étude des méthodes agiles en général et de la méthode Scrum en particulier. En termes d’outils plus techniques, cela inclut les bonnes pratiques de codage, le développement dirigé par les tests, la gestion des versions et les systèmes associés, le build automatique et l’intégration continue.

Approche pédagogique et plan de cours.

Les bonnes pratiques vues en cours seront appliquées sur des cas vus en TD ainsi que mis en œuvre en mode projet.

  • Méthodes Agiles: démarches et organisation
  • Les artefacts clés d’une méthode agile. L’exemple Scrum
  • Planification et déroulement d’un sprint
  • Mettre en place Scrum et Kanban
  • Pratique du Product Owner
  • Notion de qualité de code (Clean Code et bonnes pratiques Java)
  • Concepts du test et approche développement dirigé par les tests (TDD)
  • Concepts du DevOps (gestion de version, build automatique, intégration, livraison et déploiement continus, dette technique)
Lire plus

Évaluation

Session 1 : Évaluation continue  (cf. règle par défaut de la section « Modalités spécifiques » des M3C spécifiques)

Session 2 : Règle par défaut décrite dans la section « Modalités de contrôle et examens / Modalités spécifiques »

Lire plus

Pré-requis obligatoires

  • Programmation objet en Java
Lire plus

Compétences visées

  • Clean code
  • Maitrise d’une méthode agile
  • Test logiciel et développement dirigé par les tests
  • Conception de tests pertinents et outils associés
  • DevOps
Lire plus

Bibliographie

  • Sommerville Software Engineering, Global Edition (Anglais), 2015
  • Meyer : Agile!: The Good, the Hype and the Ugly (Anglais) 2014
  • Martin The Clean Coder : A Code of Conduct for Professional Programmers (Anglais) 2011
  • Martin Clean Code : A Handbook of Agile Software Craftsmanship (Anglais) 2008
  • Garcia, Test-Driven Java Development - Second Edition : Invoke TDD principles for end-to-end application development (Anglais) Broché – 2018
  • JF Pradat-Peyre & J. Printz : Mise en œuvre des tests logiciels, Dunod 2017, 3ème édition
  • Bloch. Effective Java, 3rd Edition, 2017.
  • The DevOps Handbook, how to create World-class agility, reliability, and security in technology organizations, Gene Kim et al., 2016, ISBN, 978-1942788003
Lire plus