Ga naar inhoud

Wat is agile-ontwikkeling?

Agile is de overkoepelende naam voor een familie van methoden die rond één weddenschap zijn opgebouwd: software is te onvoorspelbaar om vooraf tot in detail te plannen, dus lever in kleine porties op, luister naar wat er terugkomt en stuur voortdurend bij.

Deze pagina behandelt de achtergrond. Als je dit allemaal al weet, blader dan door naar Hoe East Agile Tracker zich verhoudt tot agile.

In februari 2001 kwamen zeventien softwarebeoefenaars — Kent Beck, Martin Fowler, Robert Martin, Ron Jeffries en anderen — bijeen in een skihut in Utah en schreven op wat ze gemeen hadden. Ze noemden het het Agile Manifesto. Het bestaat uit vier regels:

We ontdekken betere manieren om software te ontwikkelen door het zelf te doen en anderen daarbij te helpen. Door dit werk zijn we het volgende gaan waarderen:

  • Individuen en interacties boven processen en hulpmiddelen
  • Werkende software boven uitgebreide documentatie
  • Samenwerking met de klant boven contractonderhandeling
  • Inspelen op verandering boven het volgen van een plan

Dat wil zeggen, hoewel de zaken aan de rechterkant waarde hebben, waarderen we de zaken aan de linkerkant meer.

Dat is het. Een pagina inleiding, twaalf ondersteunende principes, en de vier regels hierboven. Het is het invloedrijkste document in de moderne softwarepraktijk.

Achter de vier waarden verduidelijken de twaalf principes van het manifest hoe “agile” er dag in dag uit werkelijk uitziet:

  1. De hoogste prioriteit is het tevredenstellen van de klant door vroege en continue oplevering van waardevolle software.
  2. Verwelkom veranderende eisen, zelfs laat. Agile-processen benutten verandering in het voordeel van de concurrentiepositie van de klant.
  3. Lever frequent werkende software op — weken in plaats van maanden.
  4. Mensen vanuit de business en ontwikkelaars moeten dagelijks samenwerken.
  5. Bouw projecten rond gemotiveerde individuen. Geef ze wat ze nodig hebben en vertrouw erop dat ze het werk gedaan krijgen.
  6. De meest efficiënte manier om informatie over te brengen is een gesprek van persoon tot persoon.
  7. Werkende software is de belangrijkste maatstaf voor voortgang.
  8. Agile-processen bevorderen duurzame ontwikkeling — een constant tempo, voor onbepaalde tijd.
  9. Voortdurende aandacht voor technische uitmuntendheid en goed ontwerp vergroot de wendbaarheid.
  10. Eenvoud — de kunst van het maximaliseren van het niet-gedane werk — is essentieel.
  11. De beste architecturen, eisen en ontwerpen komen voort uit zelforganiserende teams.
  12. Het team reflecteert regelmatig op hoe het effectiever kan worden, en stelt zijn werkwijze vervolgens bij.

“Agile” is een overkoepelende term. Eronder bevinden zich verschillende afzonderlijke methodieken:

  • eXtreme Programming (XP) — De meest veeleisende van de familie. Pair programming, TDD, continuous integration, on-site klant, kleine releases. Zie onze XP-pagina.
  • Scrum — Tijdgebonden iteraties die sprints heten, dagelijkse standups, benoemde rollen (Product Owner, Scrum Master). Lichter op het gebied van engineeringpraktijken dan XP.
  • Kanban — Visualiseer de workflow, beperk werk in uitvoering, optimaliseer de doorstroming. Geen tijdvakken; trekken in plaats van duwen.
  • Lean — Ontleend aan het productiesysteem van Toyota: elimineer verspilling, optimaliseer het geheel, lever snel op, bouw kwaliteit in.

Deze methoden overlappen en combineren. De meeste werkende teams kiezen het beste uit alle vier. East Agile Tracker is opiniërend richting XP — zie eXtreme Programming — maar het meeste van wat het biedt werkt voor elke agile-variant.

Een paar hardnekkige misvattingen die benoemd mogen worden:

  • Agile is niet “geen planning.” Plannen zijn kleiner en korter, maar plannen gebeurt voortdurend.
  • Agile is niet “geen documentatie.” Schrijf wat nodig is. Het manifest zegt dat werkende software meer waarde heeft dan uitgebreide documentatie — niet dat documentatie slecht is.
  • Agile is niet Scrum. Scrum is één agile-methode. Er zijn er verschillende.
  • Agile is geen tool. Geen enkele tool maakt je agile. Agile is een manier van werken. Tools (inclusief deze) helpen; ze zijn geen vervanging.

Hoe East Agile Tracker zich verhoudt tot agile

Section titled “Hoe East Agile Tracker zich verhoudt tot agile”

East Agile Tracker is ontworpen rond de bovenstaande principes. Hier is de overeenkomst:

PrincipeHoe de tracker het ondersteunt
Continue opleveringIteraties van 1–4 weken; velocity-gebaseerde automatische planning; releases als eersteklas story-type.
Verandering verwelkomenHerorden de backlog wanneer je maar wilt; stories bewegen vrij tussen iteraties; geen “iteratievergrendeling.”
Werkende software als maatstafVelocity telt standaard geaccepteerde punten — alleen opgeleverd, werkend werk telt mee.
Duurzaam tempoVelocity is geen doel; het is een waarneming. Het systeem plant de volgende iteratie met wat je werkelijk doet.
ReflectieAnalytics per iteratie: burndown, afwijzingspercentage, cyclustijd, projecties.
Zelforganiserende teamsRollen zijn bewust minimaal: owner / member / viewer. Het team beslist.
EenvoudHet detailpaneel is één scherm. Het bord past op één pagina. We weerstaan features die afleiden van opleveren.

Het manifest werd geschreven in 2001. Sindsdien heeft softwareontwikkeling een nieuw soort deelnemer gekregen: AI-agents.

Wij denken dat agents thuishoren in het agile-team — als benoemde deelnemers, met hun eigen rollen, die echt werk verzetten naast mensen. De principes blijven overeind. Individuen en interacties omvat nu agent-deelnemers. Zelforganiserende teams omvat nu het beslissen welke agents je inschakelt en wat ze mogen doen. Reflectie omvat nu het bekijken van agent-bijdragen in het activiteitenlog en het bijsturen van waar ze aan werken.

East Agile Tracker is gebouwd om dit praktisch te maken. Elke story kan eigendom zijn van een mens of een agent. Elke vermelding in het auditlog schrijft de werkelijke actor toe. Elke actie die een agent onderneemt is zichtbaar, beoordeelbaar en intrekbaar.

Gebouwd door East Agile.