Der er brug for processer. Martin Fowler kritiserede i sin tid de tunge processer. Men har altid peget på nytten af agile processer. Lean processer. Gerne også adaptive, således at man i hvert udviklingsforløb kan tilpasse dem.
Nedenfor er listet de vigtigste agile processer. En del stammer fra Scrum, andre fra XP.
Når man læser listen ser den ud til at omfatte mere end processer. Der optræder både roller, værktøjer og aktiviteter. Men de skal forstås som processen.
For eksempel står der ProductOwner. Og det er jo en rolle. Men det er processen i at indsamle og prioritere kravene der refereres til.
Det samme gælder ProductBacklog, der er et værktøj. På denne liste menes den installerede proces i organisationen der sørger for at sådanne backlogs oprettes, vedligeholdes og at de fungerer efter hensigten. Nemlig at kravene altid er tilgængelige i en dokumenteret form.
Igen det samme for en aktivitet, for eksempel Planning Poker. Det er processen i at Planning Poker er kendt, udføres af teamet og virker efter hensigten. Nemlig at den producerer estimater.
Planlægning
(Agile Planning and Estimating)
Userstories - kravspecificeringsproces
SprintPlanningWorkshop
-
kravstyrings- og estimeringsproces
Planning Game - kravstyrings- og estimeringsproces
Storypoints
- estimeringsproces
Planning Poker - estimeringsproces
ProductBacklog - kravdokumentationsproces
SprintBacklog - aktivitetsdokumentationsproces
Releases og iterationer
- planlægningsproces
Styring
(Agile Project Management)
ProductOwner
- kravstyringsproces
ScrumMaster
- coachingsproces
Daily Scrum
- opfølgnings-
og koordineringsproces
On-site Customer
- beslutningsproces
BurnDownChart
- rapporteringsproces
SprintReviewMeeting
- accepttestproces
Retrospectives
- evalueringsproces
Test
(Agile Testing)
Unittest - udviklers testproces
Automatiseret unittest
- regressionstestproces
Accepttest
- testres testproces
Automatiseret Accepttest
- regressionstestproces
Conversational Test Creation
- testplanlægningsproces
Udvikling
(Agile Development)
Test-Driven Development
- design og konstruktionsproces
AcceptanceTestDrivenDevelopment - analyseproces
Pair Programming
- konstruktionsproces
Simple Design
- designproces
Refactoring
- konstruktionsproces
Continuous Integration
- integrationsproces
Agile Modeling (UML) - designproces
Systemforvaltning
(Agile Evolution)
Corrective evolution - fejlrettelsesproces
Adaptive evolution - tilpasningsproces
Perfective evolution - udbygningsproces
Refactoring af kode - saneringsproces
Agile processer er lean. De er desuden adaptive, således at hvert team kan tilpasse dem
Processerne kan nyttiggøres alene eller i kombination. Nogle har naturlige sammenhænge, for eksempel ProductOwner og ProductBacklog.
Man kan sagtens bygge større processer. For eksempel en samlet kravstyringsproces der omfatter ProductOwner, ProductBacklog, Userstories, Storypoints og SprintPlanningWorkshop. Men det har også sine fordele at arbejde med mindre og lean processer.