Wat is Agile Development?

Agile Development? Dat betekent in goed Nederlands zoiets als: ontzettend praktische softwareontwikkeling. Tot ver in de jaren ’90 van de vorige eeuw was het laten ontwikkelen van volledig functionerende nieuwe bedrijfssoftware met regelmaat een jarenlang lopend en prijzig project voor ondernemers. Via Agile development is datzelfde project vooral snel, flexibel en prijstechnisch heel interessant voor alle partijen.

Ontstaan vanuit ervaring

De vertalingen van agile zijn woorden zoals ‘snel’, ‘rap’ en ‘oplettend’. En dan ook perfect van toepassing op de basisprincipes van agile development. De 4 pijlers waar deze vorm van softwareontwikkeling op steunt werden in 2001 officieel vastgelegd in het ‘Agile Manifesto’. De pijlers van het agile denken komen van The Agile Alliance. Dit is een groep van onafhankelijke IT-specialisten, welke zich als denktank manifesteren vanuit Utah, Amerika. De alliantie zocht naar betere en vooral snellere manieren in het ontwikkelen van nieuwe software.

De 4 pijlers van agile development

In het agile denken en werken gaat het vooral om flexibiliteit, samenwerking en korte looptijden. Dit blijkt uit de omschrijving van de 4 agile principes zoals die zijn opgesteld door The Agile Alliance:

  • Onderlinge interactie gaat boven processen en hulpmiddelen
  • Werkende software gaat boven allesomvattende documentatie
  • Samenwerking met de klant gaat boven contractonderhandelingen
  • Inspelen op verandering gaat boven het volgen van een plan

Agile development in de praktijk

In de praktijk komt het agile ontwikkelen van software neer op heel erg praktisch en oplossingsgericht denken. Waarbij de hoofdvraag altijd moet zijn: Hoe kom je samen met je klant zo snel mogelijk tot het best werkende eindresultaat?

Werken aan software in overleg met de organisatie waar de software voor bedoeld is. Luisteren naar de wensen van de klant en als ontwikkelaar duidelijk vooraf aangeven wat realistisch is binnen bepaalde budgetten en technieken. Dan volgt het in kleine en overzichtelijke stappen (iteraties) maken van wat voor de klant fijn werkt en tot slot het via wederom overzichtelijke en kleine vervolgstappen uittesten en verbeteren maken van het best mogelijke softwarepakket voor de klant. Waarbij praktijkgericht denken en inspelen op nieuwe ontwikkelingen altijd voorop staan.