Architecte Logiciel

Domain Driven Design DDD, AI-Driven Design et les Architectures

Devenez un expert en architecture logicielle avec notre formation immersive “Architecte Logiciel” !

À travers des ateliers interactifs, découvrez comment aligner votre développement logiciel avec les besoins métiers, améliorer la communication et concevoir des systèmes robustes et évolutifs et devenez un architecte logiciel de pointe et de transformer vos projets grâce aux techniques avancées de DDD, AI-Driven Design et des modèles d’Architectures.

Formation Architecte Logiciel @AgilBee

Mise à jour du Programme : Mai 2024

Description

Les architectes logiciels sont souvent confrontés à des défis complexes tels que la conception de systèmes évolutifs, la gestion de la complexité des projets et la communication efficace avec les parties prenantes. Il est aussi indispensable de ne pas rentrer en conflit en ralentissant le produit quant le Product Owner recherche de la vitesse dans la gestion de son backlog et focalise sur l’optimisation de la valeur. Cette formation intensive de trois jours, “Architecte Logiciel”, est conçue pour aborder ces problématiques en profondeur. En utilisant des approches pratiques et interactives comme les ateliers et les sticky notes, les participants apprendront à maîtriser les concepts de Clean Architecture, d’Architecture Hexagonale, d’Architecture Événementielle et d’Architecture Distribuée. Ils découvriront comment le Domain Driven Design (DDD) et Model Driven Design (MDD) peuvent transformer leur manière de concevoir des systèmes logiciels robustes et maintenables. Cette formation est incontestable une formation pour rebooster ses aptitudes en bénéficiant de nos 20 années passées dans le domaine.

Pourquoi une telle formation ?

  • Complexité des Choix d’Architecture
  • Alignement avec les Métiers et le(s) Product Owner(s)
  • Risque de Génération de Backlogs Inutiles
  • Difficulté à Maintenir la Testabilité et la Flexibilité
  • Nécessité d’Optimiser les Décisions Architecturales

Objectifs Pédagogiques

1. Maîtriser les principes fondamentaux des principales architectures logicielles (Clean Architecture, Architecture Hexagonale, Architecture Événementielle).

2. Appliquer les concepts de Domain Driven Design (DDD) pour aligner le développement logiciel avec les besoins métiers.

3. Utiliser des techniques de modélisation avancées pour améliorer la conception et la communication au sein des équipes.

4. Maîtriser les techniques pratiques comme Event Storming, CRC Cards, et Wardley Mapping pour résoudre des problèmes réels.

5. Identifier et éviter les anti-patterns d’architecture logicielle.

Formation

TARIF
INTER : 2290€ HT / participant
INTRA : Nous consulter
DURÉE : 21 heures sur 3 jours
GROUPE : Maximum de 12 personnes

Prochaines Sessions

Aucune session planifiée à ce jour.
Coach-Instructeur

Coach-Instructeur

Nos intervenants sont des « Coachs Agiles & Formateurs » expérimentés

Taux de Satisfaction

Nouveauté 2024 (Pas d’évaluation)

Programme Indicatif

TOUR DE TABLE

Jour 1 : Introduction et Domain Driven Design (DDD)

Introduction :

  • Présentation générale de la formation
  • Importance du Domain Driven Design et de l’architecture logicielle

Module 1 : Introduction au Domain Driven Design (DDD)

Maîtriser les principes fondamentaux du DDD pour se poser des bases solides et communes.

  • Principes de base : Ubiquitous Language, Bounded Contexts, Entités, Valeurs, Agrégats, Référentiels et Services
  • Importance de l’alignement entre le code et le domaine métier
  • Atelier d’Ubiquitous Language et Communication Créer un langage partagé entre les développeurs et les experts métiers pour améliorer la communication et la compréhension mutuelle. Utilisation de sticky notes pour définir les termes clés du domaine. Discussions en groupe pour valider et affiner le langage commun

Module 2 – Exploration du Domaine avec Event Storming

Approfondir l’Event Storming pour découvrir et modéliser les processus d’affaires de manière collaborative et visuelle.

  • Principes et avantages de l’Event Storming
  • Atelier – Session d’Event Storming : Faciliter une session d’Event Storming pour identifier les événements clés, les commandes et les lectures dans votre domaine. Utilisation de sticky notes pour cartographier les événements. Collaboration entre développeurs et experts métiers pour explorer le domaine

Module 3 – Modélisation Tactique

Déployer les modèles tactiques du DDD pour structurer et organiser votre domaine de manière efficace.

  • Principes de la Modélisation Tactique
  • Entités, Valeurs, Agrégats, Référentiels et Services
  • Atelier – Modélisation des Agrégats et Référentiels : Modéliser les agrégats et référentiels de votre domaine pour assurer la cohérence et l’intégrité des données. Utilisation de sticky notes pour identifier et définir les agrégats. Discussion sur les relations entre agrégats et référentiels

Jour 2 : Architecture Logicielle et Techniques Avancées

Module 4 : Clean Architecture

Les systèmes complexes souffrent souvent d’un couplage étroit et d’une faible modularité. Ce module vous montrera comment la Clean Architecture peut structurer votre code pour faciliter les changements et la maintenance.

  • Introduction à la Clean Architecture
  • Origine, principes, et schéma
  • Comparaison avec l’architecture hexagonale
  • Atelier – Développement d’une Application Clean Architecture : Structurer votre code de manière à faciliter les changements et la maintenance. Utilisez des sticky notes pour définir les différentes couches et composants d’une application en Clean Architecture, et discutez en groupe des avantages et défis rencontrés.

Module 5 : Architecture Hexagonale

Les architectures traditionnelles peuvent devenir rigides et difficiles à maintenir, limitant la testabilité et la flexibilité. Appliquer les principes de l’architecture hexagonale pour concevoir des systèmes plus flexibles et faciles à tester.

  • Introduction à l’Architecture Hexagonale
  • Principes, ports et adaptateurs
  • Avantages et inconvénients
  • Atelier – Modélisation de l’Architecture Hexagonale : Améliorer la testabilité et la maintenabilité en isolant la logique métier. Utiliser des sticky notes pour modéliser une application en suivant les principes de l’architecture hexagonale et discuter des ports, adaptateurs et couches de domaine.

Module 6 : CQRS et Event Sourcing

Maîtriser les principes de CQRS et Event Sourcing afin d’améliorer la scalabilité et la flexibilité de votre système.

  • Principes, avantages et défis
  • Atelier – Implémentation de CQRS et Event Sourcing : Appliquer le CQRS et Event Sourcing pour séparer les responsabilités de lecture et d’écriture et gérer l’historique des événements – Utilisation de sticky notes pour modéliser les commandes et les événements – Simulation de différents scénarios d’événements

Jour 3 : Techniques de Modélisation Avancées, Stratégie et AI-Driven Design

Module 7 : Bounded Contexts et Context Mapping

Explorer comment diviser votre domaine en sous-domaines gérables et définir clairement les frontières contextuelles.

  • Introduction aux Bounded Contexts
  • Définition et importance des Bounded Contexts
  • Atelier – Context Mapping : Créer des Context Maps pour visualiser les interactions entre les différents sous-domaines et identifier les points d’intégration. Utilisation de sticky notes pour dessiner les Context Maps. Discussion sur les relations et intégrations entre les Bounded Contexts

Module 8 : Techniques de Modélisation Avancées

Approfondir vos compétences en modélisation avec des techniques avancées comme Example Mapping et CRC Cards.

  • Responsibility Mapping (CRC Cards)
  • Introduction et utilisation des CRC Cards
  • Atelier – CRC Cards : Utiliser des CRC Cards pour définir les responsabilités, collaborations et relations des classes dans un système. Utilisation de sticky notes pour créer les CRC Cards. Discussion et feedback sur les responsabilités et collaborations.

Module 9 : Example Mapping (BDD)

  • Introduction et principes de l’Example Mapping
  • Atelier – Example Mapping : Créer des scénarios de tests alignés avec les exigences métiers pour garantir des fonctionnalités correctes. Utilisation de sticky notes pour créer des exemples concrets et des scénarios de tests. Application pratique et discussion sur les tests

Module 10 : Wardley Mapping

Les architectes ont souvent du mal à visualiser la stratégie et l’évolution des composants de leur système. Ce module vous introduit à la méthode de Wardley Mapping pour clarifier la prise de décision stratégique.

  • Introduction à Wardley Mapping
  • Présentation de la méthode
  • Utilisation dans le contexte de l’architecture logicielle
  • Atelier – Wardley Mapping : Visualiser clairement la stratégie et l’évolution de votre système. Créez des Wardley Maps en utilisant des sticky notes pour visualiser les composants stratégiques et leur évolution, et discutez des implications pour l’architecture logicielle.

Module 11 : AI-Driven Design

Intégrer des techniques d’AI-Driven Design pour optimiser les architectures et améliorer la prise de décision basée sur les données et l’apprentissage automatique tout au long du cycle de vie de l’architecture.

  • Introduction à l’AI-Driven Design
  • Présentation des concepts d’AI-Driven Design
  • Utilisation de l’intelligence artificielle pour améliorer la conception logicielle
  • Atelier – Mise en Pratique de l’AI-Driven Design : Appliquer les principes d’AI-Driven Design pour améliorer une architecture existante ou concevoir une nouvelle architecture. Utilisation de sticky notes et d’outils AI pour analyser et optimiser les décisions architecturales. Discussion sur les bénéfices et les défis de l’intégration de l’IA dans la conception logicielle

Conclusion

  • Synthèse et Rappel des Points Clés pour être un bon Architecte Logiciel
  • Feedback des participants et questions
  • Questions et réponses
  • Prochaines étapes et ressources pour aller plus loin

Badge et Certificat

En suivant cette formation, obtenez votre badge et son certificat numérique.
certificat badgeBadge numérique vérifiable
certificat safeAccédez à votre coffre-fort
certificat inPubliez en un clic sur votre profil LinkedIn
certificat pdfTéléchargez le certificat en PDF
certificat communiquerCommuniquez le logo sur vos supports
certificat sharePartager sur les réseaux : Facebook, Twitter, LinkedIn, WhatsApp
certificat blockchainCertificat hautement sécurisé par Blockchain et OpenBadges.
Modalité d’Accès aux Personnes Handicapés à la Formation

Nous contacter pour répondre à vos besoins : rh@agilbee.com

Pré-Requis
Expérience pratique dans la conception ou le développement de logiciels fortement recommandée.
Pédagogie
  • Théorie : 30 % (support de cours, slides)
  • Pratique : 70 % (ateliers+ programmation)
Public
Cette formation est essentielle pour :

  • Architectes logiciels
  • Développeurs senior
  • Chefs de projet technique
  • Responsables d’équipe de développement
  • Et toute personne impliquée dans la conception et la gestion de l’architecture logicielle

Modalités d’Evaluation et Suivi

Evaluation lors des ateliers tout au long de la formation, évaluation des acquis en fin de formation, feuille d’émargement signée à la 1/2 journée, attestation de présence remise en fin de formation.
Call Now Button