2103404 kløvertidende 1 2010

Global Business Services, GBS
Kvalitetssikring og
agile udvikling
Gæsteforelæsning for
dSoftArk-E10 på Århus
Universitet
Global Business Services, GBS
Dagsorden
 Hvem er jeg og hvad er min baggrund i test og agile?
 Hvad kan I forvente?
 Agile og scrum
 Kvalitetssikring i praksis
 Hvad skal I huske efter i dag?
2
Agile udvikling og
Novembe
Global Business Services, GBS
Hvem er jeg?
Gitte Klitgaard Hansen
D
R
Ø
N
Advisory IT Specialist
[email protected]
Datalog (og erhvervsøkonom)
Har været tester, kvalitetsansvarlig,
tilbudsskriver, proceshaj, analytiker,
scrummaster osv i IBM’s division for
sundheds-IT.
Agile coach hos Danske Bank
Vild med: Film, min nevø, bøger, scrum, få
flere unge indenfor IT, film, hygge, venner
og film
3
Agile udvikling og
Novembe
Global Business Services, GBS
Hvad er min baggrund i test og agile?
Test
 Tester 2003-2009
 ISEB Certified Test Foundation 2003
 ISEB Certified Test Practitioner 2005
 Delvis fagpakke under softwarekonstruktion xx
Agile
 Projekter om XP på Aalborg universitet 2001-2002
 Scrum 2006 Certified scrummaster 2007
 Scrummaster 2007-2009
 Certified Productowner 2009
 Agile Coach 2010
4
Agile udvikling og
Novembe
Global Business Services, GBS
Hvad kan I forvente?
 Kort intro til agile, scrum og til kvalitetssikring i praksis
– Krydret med min erfaring
 Ikke dybdegående oplæg om agile, scrum,
kvalitetssikring og test
 Tre ting, som jeg gerne vil have, at I skal huske, når I
går herfra
5
Agile udvikling og
Novembe
Global Business Services, GBS
Manifesto for Agile Software Development
We are uncovering better ways of developing software by doing it
and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right, we value the
items on the left more.
© 2001
6
6
Agile udvikling og
www.agilemanifesto.org
Novembe
Global Business Services, GBS
Agile Framework
Agile is a conceptual framework for undertaking software
engineering projects
Extreme
Programm
ing (XP)
Unified
Process
SCRUM
Unified
Process
Crystal
Adaptive
Dynamic
Systems
Development
Method
(DSDM)
Feature Driven
Dev.
Feature
Driven
Development
Iterations at their heart
Agile Techniques: The above methods involve a range of techniques including:
Test-driven development
Continuous integration
Static Analysis
Planning game
Design improvement
Coding standard
Pair Programming
Small releases
Sustainable pace
Refactoring
7
7
Agile udvikling og
Simple design
Novembe
Whole team
Global Business Services, GBS
Sprint/iterationer gør at vi kan tilpasse undervejs
Zone of success
Planlagt mål
Planlagt sti
Start
Reel sti
Efterhånden som vi får
mere viden, bruger PO
sprint til at guide
projektet fremad mod
det reele mål
8
Agile udvikling og
Novembe
Reelt mål
Global Business Services, GBS
Scrum in one minute
Three Roles
Three Ceremonies
Three Artifacts
1.
Product owner
1.
Sprint planning
1.
Product backlog
2.
Scrum master
2.
Daily scrum meeting
2.
Sprint backlog
3.
Development team
3.
Sprint demo
3.
Burndown chart
Global Business Services, GBS
Kendetegn ved scrum
 Styringsværktøj – empirisk procesmodel
 Disciplin
 Systematik
 Samarbejde – kollektiv hjernekapacitet ;-)
 Timeboxing
 Læring (inspect and adapt)
 Done done i hvert sprint
10
Agile udvikling og
Novembe
Global Business Services, GBS
Hvorfor er det vigtigt at have fokus på kvalitet?
 Bliver ofte glemt som fokusområde
 Fleksibilitet kræver kvalitet
 Ting gøres færdig i inkrementer/iterationer
 Ting skal gøres helt færdig
 Kvalitet er vigtgi
 Det kan lade sig gøre 
11
Agile udvikling og
Novembe
Global Business Services, GBS
Hvorfor er det vigtigt at have fokus på kvalitet?
 Jo tidligere fejlen findes jo bedre
12
Agile udvikling og
Novembe
Global Business Services, GBS
Hvad er vitalt for agile testing?
 Tidlig test
 Testbar kode
 Test first
 Gøre ting helt færdig
 Pragmatiske processer
 Multiple specialer
 Tidlig test
13
Agile udvikling og
Novembe
Global Business Services, GBS
Hvad er de tre vigtigste ting, som I skal huske?
 Det er vigtigt at sikre kvaliteten fra starten
 Husk at stoppe op og reflektere
 Det kræver disciplin
14
Agile udvikling og
Novembe
Global Business Services, GBS
Spørgsmål??
15
Agile udvikling og
Novembe
Global Business Services, GBS
Referencer
 www.controlchaos.com
 www.agilealliance.org
 www.scrum-master.com
 www.danube.com
 www.scrumalliance.org
 www.softhouse.se
 scrumwiki.org
Kontakt [email protected] for
diverse PDF-filer, slides m.v.
16
Agile udvikling og
Novembe
Global Business Services, GBS
Scrum basalt
17
Agile udvikling og
Novembe
Global Business Services, GBS
PO
3 roller
• Product owner
• Scrummaster
• Team
Product owner
 Repræsenterer kunden
 Ejer product backlog
 Estimerer ikke opgaver
 Prioriterer
 Beslutter teamets retning
3 værktøjer
• Product backlog
• Sprint backlog
• Sprint burndown
3 aktiviteter
• Sprint planning
• Daily scrum
• Sprint review
– Ikke hvordan de når frem til målet
– Ikke deres hastighed
 Definerer produktets scope /
vision / roadmap
18
18
Agile udvikling og
Novembe
Global Business Services, GBS
SM



Scrummaster
Hjælper, støtter og coacher fremfor at styre & kontrollere
Fjerner teamets forhindringer
3 aktiviteter
• Sprint planning
• Daily scrum
• Sprint review
Serviceorgan for teamet
Typisk en del af teamet
Impediment backlog
• Langsomme workstations
• Forstyrrelser fra sales
• For få Testmiljøer
• Manglende kundekontakt
• Kontoret er for lille
19
3 værktøjer
• Product backlog
• Sprint backlog
• Sprint burndown
Sikrer, at reglerne i scrum følges
–

3 roller
• Product owner
• Scrummaster
• Team
Agile udvikling og
Er scrum master et fuldtidsjob?
Lille team
Stort team
Få problemer
≈ 10%
≈ 50%
Mange problemer
≈ 50%
100%
Novembe
Global Business Services, GBS
SM
3 roller
• Product owner
• Scrum master
• Team
Team
3 værktøjer
• Product backlog
• Sprint backlog
• Sprint burndown
 5 – 9 full-time personer
3 aktiviteter
• Sprint planning
• Daily scrum
• Sprint review
 Cross-functional
 Selvorganiserende
 Sidder fysisk sammen
 Deler ansvaret
 Estimerer
Et Scrumteam er
IT-branchens svar
på en jamsession 
20
Agile udvikling og
Novembe
Global Business Services, GBS
3 roller
• Product owner
• Scrum master
• Team
Product backlog
Klar til at
sprinte
Kræver
klargøring
•
Acceptkriterier (hvornår er vi
færdige?)
•
Demo (hvordan viser vi, at vi er
færdige?)
•
Noter (er der nogle detaljer, som vi
bør huske på?)
•
Estimat (hvor lang tid tror teamet det
vil tage? )
Ideer og
visioner
21
Agile udvikling og
Novembe
3 værktøjer
• Product backlog
• Sprint backlog
• Sprint burndown
3 aktiviteter
• Sprint planning
• Daily scrum
• Sprint review
Global Business Services, GBS
3 roller
• Product owner
• Scrum master
• Team
Sprint backlog
3 værktøjer
• Product backlog
• Sprint backlog
• Sprint burndown
3 aktiviteter
• Sprint planning
• Daily scrum
• Sprint review
22
Agile udvikling og
Novembe
Global Business Services, GBS
3 roller
• Product owner
• Scrum master
• Team
Sprint burndown
3 værktøjer
• Product backlog
• Sprint backlog
• Sprint burndown
 Giver svar på det
vigtigste spørgsmål: når
vi i mål?
3 aktiviteter
• Sprint planning
• Daily scrum
• Sprint review
 Giver pejling i
hverdagen
– Giver optimal
synlighed – også for
stakeholders
– Alternativ til
traditionel
afrapportering
– Teamet drøfter
udviklingen på daily
scrum
23
Agile udvikling og
Novembe
Global Business Services, GBS
3 roller
• Product owner
• Scrum master
• Team
Sprint planning
3 værktøjer
• Product backlog
• Sprint backlog
• Sprint burndown
3 aktiviteter
• Sprint planning
• Daily scrum
• Sprint review
Sprintbeskrivelse
Product
Backlog
24
Sprint 15
Backlog
Agile udvikling og
Novembe
Global Business Services, GBS
3 roller
• Product owner
• Scrum master
• Team
Daily scrum
3 værktøjer
• Product backlog
• Sprint backlog
• Sprint burndown
15 minutes
- Hvad lavede jeg i går?
- Hvad vil jeg lave i dag?
- Er der noget, som forhindrer mig?
25
Agile udvikling og
Novembe
3 aktiviteter
• Sprint planning
• Daily scrum
• Sprint review
Global Business Services, GBS
Retrospective
Sprint review
 Løbende evaluering af projektet.
 Fokus på at forbedre og optimere
processen
 Få eventuelle problemer out in the
Sprint demo
open
 Teamet demonstrerer working
 Feedback indarbejdes i product
code for kunden/product owner
backlog
og stakeholders.
 Kun 100% afsluttede (done done)
opgaver demonstreres.
 Delvist afsluttede opgaver
demonstreres ikke!
 Direkte feedback fra stakeholders
 Feedback indarbejdes i product
backlog
26
Agile udvikling og
Novembe
3 roller
• Product owner
• Scrum master
• Team
3 værktøjer
• Product backlog
• Sprint backlog
• Sprint burndown
3 aktiviteter
• Sprint planning
• Daily scrum
• Sprint review