Ascent Group Horizontal New Copie 1

Software Ontwikkeling en Architectuur in een Agile Omgeving

0 Enrolled
3 day
  • 3 day
  • 9
  • 0
  • no
2,180.00€

Aperçu du cours

Doel van de opleiding: Deze opleiding richt zich op het ontwerpen van softwarearchitectuur in een Agile omgeving. De training behandelt het gebruik van concepten zoals Domain-Driven Design (DDD) en microservices om flexibele, schaalbare en goed beheersbare softwareoplossingen te creëren die goed passen binnen een Agile werkmethodiek.

Prérequis

  • Basiskennis van Agile werkmethoden (bijv. Scrum, Kanban)
  • Basiskennis van softwareontwikkeling en architectuurprincipes

Objectifs pédagogiques

  • Begrijpen van de basisprincipes van softwarearchitectuur in een Agile omgeving.
  • Het leren toepassen van Domain-Driven Design (DDD) om software te ontwerpen die bedrijfsdomeinen effectief ondersteunt.
  • Het begrijpen en implementeren van microservices-architecturen voor gedistribueerde systemen.
  • Het ontwikkelen van vaardigheden om Agile-methoden te combineren met architecturale keuzes voor schaalbaarheid, onderhoudbaarheid en prestaties.

Public ciblé

  • Softwareontwikkelaars
  • Softwarearchitecten
  • Agile coaches
  • Technische teamleiders
  • Projectmanagers die werken met Agile-methoden

Programme de formation

  • Dag 1: Introductie tot Softwarearchitectuur in een Agile Omgeving (7 uur)
    • Wat is Softwarearchitectuur in een Agile Omgeving? (2 uur) Het belang van softwarearchitectuur in Agile projecten. Verschillen tussen traditionele en Agile architectuur: flexibele ontwerpen voor verandering en snelle levering. Principes van architectuur in Agile: eenvoudig, evolueerbaar, schaalbaar. Activiteit praktische oefening: Groepsdiscussie: Hoe verschilt architectuur in Agile van traditionele benaderingen? Wat zijn de voordelen van flexibele architectuur in snel veranderende omgevingen?

    • Inleiding tot Domain-Driven Design (DDD) (3 uur) Wat is Domain-Driven Design en waarom is het relevant voor Agile teams? De relatie tussen bedrijfsdomeinen en softwarearchitectuur: contexten, bounded contexts, en aggregates. Het belang van samenwerking tussen domeindeskundigen en ontwikkelaars bij het ontwerpen van systemen. Activiteit praktische oefening: Oefening: Creëer een eenvoudig Domain-Model voor een fictief bedrijfsdomein en identificeer belangrijke bounded contexts en aggregates.

    • Architecturale Patronen en Principes in een Agile Omgeving (2 uur) Het gebruik van architecturale patronen zoals laaggediende architectuur, event-driven architectuur, en CQRS (Command Query Responsibility Segregation). Het belang van het naleven van principes zoals SOLID, KISS (Keep It Simple, Stupid) en DRY (Don’t Repeat Yourself) in een Agile omgeving. Activiteit praktische oefening: Oefening: Deelnemers werken in groepen om een eenvoudig systeem te ontwerpen met behulp van een gekozen architecturaal patroon, waarbij ze de Agile principes toepassen.

  • Dag 2: Microservices-Architectuur en Integratie (7 uur)
    • Inleiding tot Microservices (3 uur) Wat zijn microservices en hoe verschilt dit van monolithische systemen? De voordelen en uitdagingen van microservices-architectuur in een Agile omgeving. Ontwerpen van gedistribueerde systemen met microservices: autonome services, inter-service communicatie, en gegevensbeheer. Activiteit praktische oefening: Oefening: Het ontwerpen van een eenvoudig microservices-systeem voor een fictief bedrijf, inclusief beslissingen over service-afbakening, communicatie tussen services en gegevensbeheer.

    • Implementatie en Beheer van Microservices (2 uur) Het opzetten van een microservices-infrastructuur: containers, orchestration met Kubernetes, API-gateways. Het beheren van de levenscyclus van microservices: Continuous Integration (CI), Continuous Delivery (CD), monitoring en logging. Activiteit praktische oefening: Deelnemers plannen de implementatie van een microservices-systeem en creëren een implementatiestrategie voor CI/CD met behulp van tools zoals Jenkins of GitLab.

    • Integratie van Microservices in een Agile Omgeving (2 uur) De uitdagingen en best practices bij het integreren van microservices in een Agile ontwikkelcyclus. Het belang van automatische tests en integratie binnen een microservices-omgeving. Het beheren van gedistribueerde transacties en communicatie in een microservices-architectuur. Activiteit praktische oefening: Groepsopdracht: Ontwikkel een integratiestrategie voor het testen en monitoren van een microservices-systeem in een Agile team.

  • Dag 3: Schaalbaarheid, Beheerbaarheid en Evolutie van Softwarearchitecturen (7 uur)
    • Schaalbaarheid in Agile Softwarearchitectuur (3 uur) Het ontwerpen van schaalbare systemen: horizontale vs. verticale schaalbaarheid, load balancing, en stateless services. Hoe schaalbaarheid integraal onderdeel kan zijn van een Agile aanpak. Het belang van autoscaling en cloud-native architectuur in de context van microservices. Activiteit praktische oefening: Oefening: Ontwerpen van een schaalbare microservices-architectuur voor een high-traffic applicatie, met aandacht voor load balancing en failover.

    • Beheerbaarheid en Onderhoud van Softwarearchitecturen (2 uur) Het ontwerpen van systemen die makkelijk te onderhouden en te monitoren zijn. Loggen, foutopsporing, en monitoring in een microservices-omgeving. Het belang van versiebeheer en het beheren van de lifecycle van microservices. Activiteit praktische oefening: Oefening: Ontwikkel een plan voor het monitoren en onderhouden van een microservices-systeem, inclusief logbestanden, metrics en alerting.

    • Evolutie van Softwarearchitectuur in een Agile Omgeving (2 uur) Het belang van architecturale evolutie: het iteratief verbeteren van softwarearchitecturen in Agile cycli. Hoe architecten de flexibiliteit behouden om systemen op lange termijn te laten evolueren. Het toepassen van refactoring in een microservices-omgeving en het managen van technische schuld. Activiteit praktische oefening: Groepsdiscussie: Hoe kan een architect ervoor zorgen dat de softwarearchitectuur mee evolueert met de veranderende bedrijfsbehoeften in een Agile omgeving?

Instructeur

Avatar de l’utilisateur

bprigent

0.0
0 commentaire
0 Students
840 Courses
Main Content