Mogen Product Owners architectuurrichtlijnen opstellen?
In principe is het de taak van de Product Owner om te bepalen wat er gebouwd moet worden en niet hoe het gebouwd moet worden. Maar er zijn ook situaties waarin het passend is dat de Product Owner enkele beslissingen over de architectuur neemt.
Wanneer zijn richtlijnen van de Product Owner zinvol?
Toen het bedrijf Sun bijvoorbeeld jaren geleden de programmeertaal Java bekend wilde maken, bood het bedrijven geld aan voor de ontwikkeling van applicaties met Java. Sommige Product Owners met wie ik destijds werkte, gaven hun teams daarom de opdracht om met Java te werken.
In sommige gevallen waren de applicaties marginale business cases die zonder de financiering van Sun niet gerechtvaardigd zouden zijn geweest. In die gevallen waren de vereisten volkomen logisch. De ontwikkelaars verzetten zich er niet tegen, want ze wilden deze gloednieuwe technologie graag uitproberen.
Het zou niet te vaak moeten voorkomen dat een Product Owner een technische vereiste oplegt, en als dat toch gebeurt, moet hij dat uiterst zorgvuldig doen, zodat hij ook daadwerkelijk gelijk heeft om die technische vereiste op te leggen.
In de meeste gevallen was het echter geen goede beslissing om Java voor te schrijven, want in de begindagen kon Java nog niet echt omgaan met de uitdagingen van die applicaties.
Laten we een embedded device als ander voorbeeld nemen. De Product Owner heeft besloten dat het product met bepaalde hardware economisch rendabel is, maar met iets duurdere hardware niet.
De Product Owner vertelt het Dev Team dus dat ze alleen deze hardware mogen gebruiken. Natuurlijk zou het team misschien liever met de duurdere hardware werken, maar het product zou dan economisch niet meer haalbaar zijn.
Product Owners kunnen dus in sommige gevallen de architectuur voorschrijven. Maar dat zouden ze zelden moeten doen, goed doordacht en bij voorkeur in overleg met het team.
Deze tekst is afkomstig uit de blog van Mike Cohn en is ons ter beschikking gesteld voor vertaling naar het Nederlands.