Recentemente ho iniziato a studiare Domain Driven Design e finora sembra che possa aiutare enormemente il progetto attuale del mio team. Mi sto imbattendo in un piccolo problema, anche se effettivamente determino quali sono i domini nel nostro progetto.
Dopo il mio passaggio iniziale, mi sono ritrovato con qualcosa del genere:
Hotredomini:A,BeCperdiverseareedell'azienda.Tuttavia,perognunodiquestihobisognoditracciareidatiattualiedicrearepianiperilfuturo.CiòmihaportatoadaggiungereundominioPlanning,manonvedounmodochiaropersepararePlanningdaglialtridomini.OA,BeCdevonoavereunaconoscenzadettagliatadiPlanningoviceversa.
Esempio:supponiamocheildominioAsia"inventario". L'implementazione ha messaggi per cose come ItemsAdded e ItemsRemoved e tiene traccia delle quantità di vari prodotti. Quindi, se voglio consentire la pianificazione di quantità future di elementi, ho bisogno di aggiungere classi al modello che mi permetteranno di associare future informazioni sui prodotti con varie finestre temporali. Questo tipo di sentirsi come un nuovo dominio ad eccezione della stessa pianificazione e logica della finestra temporale si applica anche al dominio B e C.
Essentialy, ho un dominio trasversale. Mi sembra di doverlo guardare nel modo sbagliato.
Forse ho effettivamente 6 domini e una libreria usata da 3 di loro?