Agile Architectuur / Architectuur /   |   2 maart 2020

Hoe architectuur kan bijdragen aan agile werken?

Solventa Architect David Kamp David Kamp

Hoe kan architectuur bijdragen aan het agile werken? Dit ga ik in deze blog toelichten wat dit betekent voor de architectuur producten, het moment waarop architectuur opgeleverd moet worden en de architectuur kennis die nodig is. Ik gebruik daarvoor deze figuur.

Architectuur Producten

De architectuur in het agile werken hoeft niet in het begin volledig beschreven te worden. Dit was het geval in de traditionele (bijv. Waterval) werkwijze, waar eerst een Big Design Up Front (bijv. een volledige PSA) opgeleverd werd. In de figuur aangegeven door de linker zwarte verticale rechthoek en de eerste tijdfasering op de horizontale as.

Je begint met een kort en bondig basis architectuur die alleen de high-over kaders en richtlijnen aangeeft voor je organisatie. Dit is de eerst architectuur en weergegeven als rode rechthoek links in de figuur. Deze dient als basis voor de rest van de architectuur tijdens de sprints. Bij SAFe is dit de Architectural Runway.

Architectuur wordt geleidelijk meer ingevuld naarmate het traject vordert . Het is een ‘emerging architectuur’ geworden. Hoe dichterbij een sprint komt des te meer detaillering er is voor de architectuur. Dit is te zien door de sprints te plotten op de verticale as in de figuur.

Verder is het belangrijk dat de architectuur makkelijk kan inspelen op veranderingen, aangezien de eisen en inzichten tijdens de sprints kunnen veranderen. De Agile werkwijze geeft aan dat het inspelen op een verandering wordt verkozen boven het volgen van een plan (Agile Manifesto).

Just-in-time Architectuur

Aangezien de sprints relatief kort van duur zijn, zullen de architectuurbesluiten ook relatief kort moeten zijn. Er zal in bepaalde sprints vooruit gewerkt moeten worden zodat het team niet stil komt te vallen. Dit heet ‘Just-in-time’ architectuur. In de figuur is dit te zien met de pijlen bij de verschillende sprints. Bij een sprint is dit 2-3 weken, bij een visie 1-3 jaar en bij een Program Increment een kwartaal. Er hoeft trouwens niet in iedere sprint wat voor architectuur uitgewerkt te worden.

De architectuur wordt uitgewerkt op basis van prioriteiten van de veranderingen. Een verandering met een hoge prioriteit (Bij Scaled Agile een hoge Weighted Shorted Job First score) komt eerder aan bod doordat het een hoge business waarde heeft met een kortere doorlooptijd. Hierdoor komen de significante architectuurbesluiten eerder aan de orde. De gedachte hier is om zo laat mogelijk architectuurbesluiten te nemen om de impact van verkeerde besluiten zo klein mogelijk te houden.

Architectuur Kennis

Een karakteristiek van het agile werkwijze zijn de zelfsturende teams. De architectuur is de verantwoordelijkheid van het team geworden en daarmee onderdeel ervan geworden. De beste architecturen , eisen en ontwerpen komen voort uit de zelforganiserende teams. (principe achter het Agile Manifest)

Hierdoor is de afstand tussen architectuur en het team kleiner geworden, waardoor er snellere feedback is op de architectuur en de architectuur simpeler. De architectuurbesluiten worden door het team genomen met de kennis op dat moment. Ze worden zo laat mogelijk genomen, om zoveel mogelijk opties open te houden en de nieuwste inzichten mee te nemen.

Aangezien het maken van een agile architectuur specifieke kennis, gedrag en vaardigheden vereist, is het belangrijk dat de juiste architect meedoet in het team. De architect moet namelijk de behoeften van de verschillende belanghebbenden kennen, de samenhang van de volledige oplossing beschrijven en de impact van veranderingen bepalen op de architectuur om maar een paar te noemen. Zie voor meer informatie onze Agile Architectuur Training 

Ik ben benieuwd hoe de architectuur bij jouw organisatie in het agile werken bijdraagt!?

Bespreek de mogelijkheden
3