Formation : Architecture logicielle

  • Auteur/autrice de la publication :
  • Post category:Formations

La design stamina hypothesis, présentée par Martin Fowler
La design stamina hypothesis, évoquée dans cet excellent Article de Martin Fowler

La phase d’apprentissage des langages et des frameworks est un passage obligatoire. Mais la prise de recul et la capacité à analyser les problèmes et prendre les bonnes décisions techniques est ce qui distingue le « hackeur » de l’ingénieur.

Dans ce module, je présente l’importance pour les dévs (expérimentés ou non) d’analyser leur travail et leur décisions sous l’angle de l’efficience économique. Et je cherche à réduire l’effet Dunning-Kruger en présentant de nombreuses options techniques disponibles, et comment choisir parmi ces options.

De la qualité de code jusqu’au DDD, ce module met les apprenant·e·s en situation en mêlant cours théorique et un TP fil rouge pour appliquer leurs découvertes.

Contenu théorique

  • Définition de l’architecture, et de l’importance que tout le monde soit concerné
  • Introduction au Test Driven Development
  • Bonnes pratiques de code et revue de code
  • Choisir sa base de données
  • Les Prérequis Non Fonctionnels (NFR: Non Functional Requirements)
  • Les architectures applicatives : couches, hexagonales, CQRS…
  • Notions d’intégration continue
  • Architecture d’entreprise : monter une architecture microservice
  • Le Domain Driven Design

Contenu pratique

  • TP fil rouge : création d’une application de gestion de tournoi OU travail sur un projet personnel ou certifiant comportant des choix d’architecture majeurs.
  • TP microservices : l’ensemble de la classe monte une architecture microservice autour de la logistique (par groupes) pour en découvrir les forces et les faiblesses.

Informations complémentaires

Volume horaire70h
CibleM1/M2
Langage de programmationIndifférent
Modules liésModule englobant la formation Microservices
Complété par Pilotage et Stratégie SI (haut niveau) et Méthodo de tests (Testabilité)