Cookies op Tweakers

Tweakers is onderdeel van DPG Media en maakt gebruik van cookies, JavaScript en vergelijkbare technologie om je onder andere een optimale gebruikerservaring te bieden. Ook kan Tweakers hierdoor het gedrag van bezoekers vastleggen en analyseren. Door gebruik te maken van deze website, of door op 'Cookies accepteren' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt? Bekijk dan ons cookiebeleid.

Meer informatie
Toon posts:

Best practices Domain Driven Design icm monoliet

Pagina: 1
Acties:

Vraag


  • Furion2000
  • Registratie: september 2017
  • Laatst online: 25-07 08:45
In het kader van zelfonwikkeling als junior java ontwikkelaar ben ik bezig met een project om doormiddel van DDD (Domain Driven Design) van een grote monoliet modules te maken. Met het boek van Eric Evans over DDD is er al een module gemaakt en ben ik nu vooral op zoek naar ervaringsdeskundige.

Zijn er al veel bedrijven die ons voor zijn gegaan met dit idee en hier al wat jaren ervaringen mee hebben?

Ik krijg vooral het idee dat bedrijven de monoliet als 1 module beschouwen en zodra er een nieuw domein ontstaat er de mogelijkheid zich voor doet er een module naast de monoliet word gebouwd. Ook vooral omdat zodra je klaar zou zijn het al weer legacy code zou zijn.

Zijn er dus mensen met best practices op gebied van DDD ontwikkeling tegen een bestaande monolitische architectuur? De talloze tegenargumenten zijn wel bekend, maar de tips om te leren omgaan met DDD i.c.m. een monoliet zou op dit moment waardevol kunnen zijn.

Alvast bedankt.

Alle reacties


  • Furion2000
  • Registratie: september 2017
  • Laatst online: 25-07 08:45
@Hydra

Strangler pattern ziet er interessant uit en zou het 'vage' domain gedeelte in DDD, voor mij, vooral ook omdat ik nog niet heel veel kennis heb over het domein, behapbaar houden. Want als ik het goed begrijp kun je services eruit slopen en er naast zetten of nieuwe services er naast zetten. Ga als ik tijd heb even verder lezen hierover, want deze was anders nog trager.

Off: bijna een jaar geleden hielp je mij nog met informatie over starten als ontwikkelaar en leer op dit moment ontzettend veel over architectuur, maar vaak gaat het mij op het moment van lezen/horen al te snel en moet ik weer een stapje terug doen, mijzelf inlezen en weer verder erover nadenken ;)

@CyBeRSPiN

Ik denk ook dat dat deels het geval is, puur omdat het gevoel om te vernieuwen sterk aanwezig is en het op dit moment al een grote bowl of spaghetti is. De grootste wens is ook om een beetje order in deze spaghetti te brengen, omdat zelfs de langst zittende ontwikkelaars soms de weg kwijt raken in de laatste jaren en het onderhoud steeds intensiever word.

Ik noem het legacy code omdat er nog een groot gedeelte meer dan 15 jaar oud is en er over de jaren erg veel fixes over heen zijn gegaan die gaten hebben gedicht, maar niet de complete oplossing vormen. Nu is het management sinds een jaar ook overtuigd geraakt dat er dingen ECHT overnieuw weggezet moet worden en omdat er nu tijd en geld word vrijgemaakt willen iedereen hier graag natuurlijk goed gebruik van maken.


@Sandor_Clegane

Bounded context als in; we hebben een module weggezet die de invoice context bevat. CQRS, Event Sourcing doen we niet, alleen na deze tryout word het wel steeds vaker events genoemd als oplossing voor de moeilijkheden de we ondervonden.

Misschien moet ik de vraag dan aanpassen, is een spaghetti monoliet van zo'n 20 jaar nog te redden met DDD of zijn er betere oplossingen? Zo ja, heeft iemand ervaring met zo'n project of kent iemand die hier aan meegewerkt heeft?

  • Furion2000
  • Registratie: september 2017
  • Laatst online: 25-07 08:45
Aandachtig jullie reacties gelezen en wat het meest mij bij blijft zijn de volgende opmerkingen.

Het doel niet verwarren met het middel.
Het doel in deze is een verwarrende monoliet zonder documentatie, minder verwarrend te maken. Nieuwe mensen(junior-senior) kunnen vaak niet goed zien wat de aanpassing helemaal inhoud en wat er allemaal kapot kan gaan. De oplossing die men vooral wil zijn modules en in die slag gelijk meer documentatie erbij. Modules met daarin de bounded contexts@Brakkie41 want dit was jou vraag ;)

'Iedereen' denkt tegenwoordig Facebook of Netflix te zijn
Deels waar misschien, maar persoonlijk kreeg ik al tijdens mijn traineeship te horen dat bedrijven zoals de Rabobank alleen het jasje super hip houden en er op de achtergrond niet veel of snel verandering plaatsvind. Na een presentatie op JFall schijnt dit ook zo te zijn, more or less, en worden de nieuwe features gebruikt als poc.

"Besteed aandacht aan je infrastructuur, je tests en zorg dat de boel stabiel is." en leesbaar voor nieuwe mensen.

@Nick_S Ik zal hem gaan kijken, ben benieuwd. Cheers.

[Voor 3% gewijzigd door Furion2000 op 21-11-2018 11:47]

Pagina: 1


Apple iPad Pro (2021) 11" Wi-Fi, 8GB ram Microsoft Xbox Series X LG CX Google Pixel 5a 5G Sony XH90 / XH92 Samsung Galaxy S21 5G Sony PlayStation 5 Nintendo Switch Lite

Tweakers vormt samen met Hardware Info, AutoTrack, Gaspedaal.nl, Nationale Vacaturebank, Intermediair en Independer DPG Online Services B.V.
Alle rechten voorbehouden © 1998 - 2021 Hosting door True