Domain-Driven Design
Sviluppare modelli software a partire dal dominio, insieme alle persone che ne conoscono le regole.
Che cos’è il Domain-Driven Design?
Il Domain-Driven Design (DDD) fonda la modellazione software su un ambito aziendale. Esperti e sviluppatori chiariscono insieme termini, regole e relazioni. Un linguaggio condiviso deve avere lo stesso significato entro un contesto aziendale definito. Contesti diversi possono richiedere modelli propri; questo confine è spesso chiamato Bounded Context.
In un’azienda inventata, le vendite intendono per «ordine» una prestazione venduta, il gruppo di assistenza un intervento pianificato. I partecipanti descrivono entrambi i significati e il passaggio tra loro anziché presumere tacitamente un unico modello dati. Ne possono derivare confini software più chiari. DDD non impone però microservizi o un particolare database. La separazione e gestione tecnica dei modelli è un’ulteriore decisione architetturale.
Fonti
Termini correlati
- Architettura softwareDecisioni fondamentali su struttura, interazioni e obiettivi di qualità di un sistema software.
- Monolite modulareUn’applicazione rilasciata insieme, con moduli interni e interfacce esplicitamente delimitati.
- Cache stampedeUn cache stampede si verifica quando più cache miss simultanei avviano ripetutamente lo stesso calcolo o la stessa query costosa.
- BackpressureLa backpressure adatta il flusso di dati in ingresso alla capacità del destinatario attraverso segnali di rallentamento o pausa.
- Race conditionUn risultato errato dipende dall’ordine temporale di accessi sovrapposti.
- Memory leakMemoria non più necessaria resta trattenuta inutilmente durante il funzionamento.
Articoli sul tema

Il vostro progetto con ASES
Descriveteci il vostro progetto. Vi ricontatteremo con una prima valutazione.
