Scrum

Scrum

Scrum

Software ontwikkeling kost veel tijd en vaak ook veel geld. Met name bij projecten waarbij het einddoel nog niet geheel helder is kan de lange doorlooptijd een probleem zijn. Scrum is een manier om software te ontwikkelen waarbij er snel resultaten te zien zijn die kunnen dienen als basis voor verdere ontwikkeling. Het valt onder ‘agile software development’ waarbij er snel een prototype kan worden gemaakt die als basis dient voor het uiteindelijke product.

Waar komt scrum vandaan?

De basis van scrum dateert uit het midden van de jaren tachtig. In een onderzoek van Ikujiro Nonaka en Hirotaka Takeuchi werd als conclusie getrokken dat bij werken aan projecten in kleine teams de beste resultaten behaald worden. In 1993 zou uit dit onderzoek het scrum proces ontwikkeld worden door Jeff Sutherland. Uiteindelijk zou hier in 1995, in samenwerking met Ken Schwaber, de scrum ontwikkelmethode uit voorkomen. Het resultaat wordt voornamelijk gebruikt in Engelstalige projecten wat ook de Engelse termen verklaart die gebruikt worden. Scrum is bijvoorbeeld ook een term die voortkomt uit rugby.

Kleine teams met brede kennis

Het basisconcept van een scrum aanpak is het samenstellen van een klein maar multidisciplinair team dat in een korte periode een project ten uitvoer brengt. Het tijdspad ligt tussen 1 en 4 weken met als resultaat een werkend product. Dit betekent niet dat de software automatisch gereed is voor publicatie, het dient doorgaans als een prototype voor verdere ontwikkeling. Als er tijdens het proces nieuwe informatie beschikbaar komt of de eisen veranderen kan hier op ingespeeld worden.

Het team werkt nauw samen, bij voorkeur in een (virtuele) ruimte waar ideeën vrij uitgewisseld kunnen worden. Er is altijd een scrum master aanwezig die het project leidt. Een team bestaat doorgaans uit 3 tot 9 personen. De project eigenaar bepaalt de gewenste resultaten in de vorm van ‘user stories’ waarbij er wordt gewerkt vanuit prioriteiten. Er wordt tijdens de totale looptijd gewerkt in ‘sprints’, dit zijn afgebakende periodes van normaal gesproken twee weken waarin specifieke user stories afgerond moeten worden. Tijdens ‘daily scrums’ worden dagelijks korte bijeenkomsten georganiseerd.

Scrum werkt op basis van nieuwe inzichten

Binnen het relatief korte tijdspad zullen er veel nieuwe ontdekkingen worden gemaakt. Deze nieuwe data wordt meegenomen in het proces, deze flexibiliteit ligt ten grondslag aan een scrum project. Dit vereist dat teamleden openstaan voor veranderingen en in teamverband moeten kunnen functioneren. De opdrachtgever zal ook over deze flexibiliteit moeten beschikken omdat het eindresultaat niet altijd overeenkomt met het oorspronkelijke concept. Binnen het project is transparantie en communicatie van belang om tot een goed resultaat te komen.

Andere vormen van snel software development

Scrum is een vorm van software ontwikkeling dat gebonden is aan specifieke termen en werkwijze. Uiteraard zijn er ook andere vormen van snelle software ontwikkeling (bijvoorbeeld rapid prototyping) waarbij elementen die ook in scrum te vinden zijn terugkomen. Zo worden er regelmatig evenementen georganiseerd waarin software developers in enkele dagen of zelfs uren een applicatie moeten bouwen. Deze prototypes kunnen later uitgewerkt worden tot volwaardige applicaties.
arrow_drop_up arrow_drop_down