Professional Documents
Culture Documents
College 1
College 1
(ASY)
Content
Introductie
Hoofdstuk 1
Hoofdstuk 3
Hoofdstuk 4
2
Introductie
3
Leerdoelen
Na het voltooien van dit vak kan de student: de belangrijkste rollen, producten en
deliverables in een Agile project
de uitgangspunten, principes en
benoemen (kennis);
kenmerken van de Agile-werkwijze
benoemen (kennis); de wijze van samenwerken in een Agile-
team benoemen alsmede het schatten
de verschillen tussen de Agile-werkwijze
van taken en het maken van een planning
en de traditionele benadering benoemen
(kennis) en
(kennis);
de wijze van specificeren, prioriteren,
ontwerpen en plannen volgens Agile
uitvoeren (toepassing).
Werkvorm, toets en toetsvorm
5
Inleiding
6
Hoofdstuk 1: Agility
1. Projectleveringsmethode en levenscyclus
2. Voorspellende versus adaptieve levenscyclus
3. Agile versus Waterval
4. Is Agile nieuw?
5. Het Agile Manifesto
6. Agile principes
7. Praktische overwegingen over adaptieve levenscyclus
8. Is dit alleen geschikt voor IT-projecten?
9. Is Agile Sneller?
7
1.1.Projectleveringsmethode en levenscyclus
8
Levenscyclusmodel
9
Planning gestuurde ontwikkeling
Upfront specificatie
Upfront ontwerp
Planning gestuurde ontwikkeling
10
Adaptieve levenscyclus
11
1.2 Voorspellende versus adaptieve levenscyclus
12
1.3 Agile versus Waterval
Agile
Adaptieve levenscyclus
Waterval
Voorspellende levenscyclus
13
1.4 Is Agile nieuw?
De term is nieuw
Levenscyclus niet
14
1.6 Agile principes
1. Tevreden stellen van de klant door het 1. Mensen uit de business en
vroegtijdig en voortdurend opleveren ontwikkelaars moeten dagelijks
van waardevolle software samenwerken gedurende het project.
2. Verwelkom veranderende behoeften, 2. Bouw projecten rond gemotiveerde
zelfs laat in het ontwikkelproces. Agile individuen. Geef hun de ondersteuning
processen benutten verandering tot en omgeving die ze nodig hebben, en
concurrentievoordeel van de klant vertrouw erop dat ze de klus klaren.
3. Lever frequent werkende software op. 3. De effecientste en effectiefste manier
Liefst elke paar weken, ten minste elke om informatie te delen in en met een
maanden, met een voorkeur voor een Development Team is in een face-to-
korte tijdsperiode. facegesprek .
16
vervolg
7. Werkende software is de primaire maatstaf 7. Eenvoud – de kunst van het maximaliseren van
voor voorgang. werk dat niet gedaan hoeft te worden- is
essentieel.
8. Agile processen bevorderen constante
ontwikkeling. De opdrachtgevers, 8. De beste architecturen, eisen, en ontwerpen
ontwikkelaars, en gebruikers moeten in staat komen voort uit zelforganiserende teams.
zijn om een constant tempo te handhaven.
9. Op regelmatige tijdstippen onderzoekt het
9. Voortdurende aandacht voor een hoge team hoe het effectiever kan worden en past
technische kwaliteit en voor een goed ontwerp vervolgens zijn gedrag daarop aan.
versterken Agility.
17
1.7 Praktische overwegingen over adaptieve
levenscyclus
I. Fixed-scope versus fixed-time iteraties
VI. Machtigingen
18
1.7.1 Fixed-scope versus fixed-time iteraties
Fixed-scope Fixed-time
Vaste scope kost meestal meer tijd. Werkt aanzienlijk beter
Reduceert feedback en Dwingt je om te continu te
mogelijkheid tot aanpassingen concentreren op meest
waardevolle dingen.
Veel tijd besteden aan elke functie
en “minder- relevante” zaken.
Daarom zijn bijna alle Agile methoden fixed-time iteraties met een vaste tijdsduur.
19
1.7.2. Duur Iteraties
20
1.7.3 Dezelfde tijdsduur of verschillende tijden
voor iteraties?
Zelfde tijdsduur is meer gedisciplineerd
Voor Scrum moeten de timeboxen dezelfde lengte hebben, onder voorbehoud
van omstandigheden
Sprint: Scrumterm voor iteraties
DSDM: plan je duur van de timeboxen (Iteraties) wanneer je de scope plant.
21
1.7.4 Wat als sommige functies niet afgerond
zijn?
Selectie van functies voor de iteratie die timeboxed is
Doel: een increment van de software te leveren die wel voltooid is en feedback
te ontvangen om aanpassingen te kunnen doen om later waarde te genereren.
22
1.7.5. Wat gebeurd er binnen de iteraties?
Mini-Waterval Agile
Alle functies die tot de Alle stappen per functie
iteratie horen doorlopen
23
1.7.6 Machtigingen
Voorspellende Adaptieve
levenscyclus levenscyclus
Aan het begin en eind Beslissingspunten verspreid over
geconcentreerd bij hogere de hele levenscyclus.
managers Project niet afkrijgen bij escalatie
beslissingen.
Behoeft gemachtigde teamleden
die zelf beslissingen mogen
nemen zonder escalatie naar
hogere managers
(zelforganisatie)
24
1.8 Is dit alleen geschikt voor IT-projecten?
25
1.9 Is Agile Sneller?
26
Hoofdstuk 3
Extreme Programming
27
Hoofdstuk 3: Extreme Programming
28
3.1 Paring
Pair-programming Pair-programming
Driver: Coderen Verhoogt de kwaliteit, vermindert
Navigator: Code reviewen herstelwerk
Verhoogt expertise van ontwikkelaars
(kennisdeling)
Problemen sneller opgelost
Sneller complexiteit ontrafelt
Busfactor van het team vergroot
Continue teambuildingactiviteit
29
3.2 Assignments (toewijzen)
Niemand kan zeggen dat een 1 persoon verantwoordelijk is voor deel van de code.
Selectie van item met de hoogste prioriteit dat overeenkomt met de expertise
van het team.
30
3.3 Design
31
3.4 Write Test
Test-Driven Development / Test- Voordelen van TDD:
First Development: 1. Complete set tests voor het hele systeem.
1. Eerst een test maken 2. Continous integration. Elke keer als je een nieuwe
functie toevoegt, kun je eenvoudig de test
2. Daarna zoveel code
uitvoeren.
schrijven als nodig is om de
test te slagen. 3. Nieuwe code wordt geïntegreerd met de oude.
4. Het houdt iedereen gefocust op het probleem dat
ze gaan oplossen, in plaatst van de oplossing zelf.
32
3.5 Code
33
3.6 Refactoring
Fouten in oude functies repareren door nieuwe code of oude code aan te passen
35
3.11 Risk management
36
3.12 Spiking
37
Hoofdstuk 4: DSDM
38
4.1. Project Constraints (Projectbeperkingen)
Klassieke driekhoeks-projectbeperkingen
• Scope is gefixeerd
• Tijd, kosten en kwaliteit hebben doelen, zijn
meestal niet gefixeerd.
39
DSDM
40
Traditioneel vs DSDM
41
42
4.2 Vooraf plannen
1. Geen plan vooraf: Scrum aanpak, het project laten doorgaan en de scope
bepalen door voortschrijdend inzicht tijdens het project.
2. Een goed upfront plan: DSDM-aanpak, hier heb je een plan op ‘hoog-niveau’
en later pas je de details van elke functie aan.
43
4.3 Prioriteiten met MOSCOW
44
4.4 Uitzonderingen
Progress meting:
Voltooiingstijd
Kosten
DSDM:
Scope : Voorstellen welke items geleverd kunnen worden aan het eind van het
project.
Uitzondering: Als voorspelling uitwijst dat niet alle must have kunnen worden
geleverd aan het eind, wordt dit probleem geëscaleerd naar hogere
managementniveaus.
45
46