| Code | Duur | Trainingsvorm |
|---|---|---|
| OCFODDD | 5 dagen | Individueel, Virtueel en/of Klassikaal, op aanvraag. |
| Lesmethoden: Individueel, Virtueel en/of Klassikaal | ||
| Prijs:€ 2.625,00 vrij van BTW. | ||
Leer hoe domeinmodellering en softwareontwerp samenwerken om complexe problemen op te lossen met Domain Driven Design, ondersteund door agile principes en samenwerking met domeinexperts.
Een softwareproject begint bij het domein: de echte wereld die software moet verbeteren, niet verstoren. Domain Driven Design (DDD) helpt om dit domein te modelleren via gesprekken met experts en geleidelijke abstractie. Volgens Eric Evans draait het om kennisoverdracht via diagrammen en zorgvuldig geschreven code. Omdat het domein te complex is om volledig te bevatten, ordenen we informatie in logische modules en laten we soms delen weg. Door samenwerking en visuele hulpmiddelen ontstaat een gedeelde taal voor domeinkwesties. Zodra een model ontstaat, volgt codeontwerp - minder fundamenteel dan softwareontwerp, maar essentieel. Agile aanpak voorkomt analyseverlamming en stimuleert iteratieve ontwikkeling en refactoring. Dit vergroot domeinkennis en leidt tot betere software. DDD integreert ontwerp en bouw, zodat ze elkaar versterken en complexe domeinen onderhoudbaar worden geïmplementeerd.
- Introductie Domain Driven Design
- Een gemeenschappelijke projecttaal
- Model Driven Design
- Bouwstenen van een model gestuurd ontwerp
- Gelaagde architectuur
- Soorten objecten: Entiteiten, Value objecten, Services, Modules
- Domein levenscyclus patronen: Aggregaten, Factories, Repositories, Query een repository, Objecten ontwerpen voor relationele databases
- Uitgebreid DDD voorbeeld [Evans]
- Introductie van het Cargo Shipping Systeem
- Domein isoleren: introductie van de applicaties
- Entities en value-objecten onderscheiden
- Associatie-ontwerp in het Shipping-domein
- Aggregatie Grenzen
- Repositories selecteren
- Controle en implementatie
- Factories en Constructors maken voor Cargo
- Handling Event toevoegen
- Refactoring pauze: een alternatief Cargo aggregaat ontwerp
- Een nieuwe functie introduceren
- Allocation Checking
- Model verbetering: bedrijf segmentatie
- Performance tuning
- Een laatste blik
- Introductie van het Cargo Shipping Systeem
- Uitgebreid DDD voorbeeld [Evans]
Gedetailleerde inhoud
* Modelio UML en Eclipse java project als uitgangspunt, als opdracht om te vormen tot Domain Driven Design project. Uitwerkingen beschikbaar.
* Functie ontwerp met UML (OCFOUML)
- DDD Refactoring naar een dieper inzicht (OCFODDDRF)
- DDD Strategic Design (OCFODDDSD)
