Domain Driven Design (DDD)
DDD er en systemudviklingsmetode, hvor man tager udgangspunkt i den forretning, som skal bruge systemet.
Domæne
Domænet er det område, som systemet skal omhandle. Der er brug for forståelse om, hvordan virksomheden fungerer og hvilke regler er der.
Domain Experts
Domain experts er personer, som har meget viden indenfor domænet. Der samarbejdes tæt sammen med disse personer.
Ubiquitous Language
DDD har fokus på et fælles sprog mellem udviklere og domain experts, sådan der ikke kommer misforståelser.
Bounded Context
Et stort domæne, kan opdeles i afgrænset dele, hvor hvert del ikke har noget at gøre med hinanden. Hver bounded context har sin egen model.
Entities og Value Objects
En entity er en unik identitet. Et value object beskrives af sine værdier og derfor ikke har en unik identitet.
Aggregates
Aggregate samler objekter, som hører tæt sammen. Det kan sikrer, at bestemte forretningsregler overholdes.