Agile processer

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.