Table Of ContentQuality Assurance in Agile Distributed
Software Teams
Goal/Question/Metric Application in Agile Globally Dis-
tributed Software Development Teams
G.H. Kuijer
e
c
n
e
ci
S
r
e
t
u
p
m
o
C
y
t
ul
c
a
F
Q A A
UALITY SSURANCE IN GILE
D S T
ISTRIBUTED OFTWARE EAMS
GOAL/QUESTION/METRIC APPLICATION IN AGILE GLOBALLY
DISTRIBUTED SOFTWARE DEVELOPMENT TEAMS
by
G.H.Kuijer
inpartialfulfillmentoftherequirementsforthedegreeof
MasterofScience
inComputerScience
specialisationInformationArchitecture
attheDelftUniversityofTechnology,
TobedefendedonJune14,2016at1.00PM.
Studentnumber: 4094107
Projectduration: July1,2015–June14,2016
Supervisor: Prof.dr.ir.R.vanSolingen
Thesiscommittee: Prof.dr.ir.G.J.P.M.Houben(TUDelft)
Prof.dr.ir.R.vanSolingen(TUDelft)
T.Hurkmans(ExactSoftware)
P
REFACE
Thisreportiswrittenaspartofthegraduationofmasterofscienceincomputerscience,informationarchi-
tecture,attheDelftuniversityoftechnology,theNetherlands.
IstartedthisresearchwhenanopportunitypresenteditselfforacasestudyinMauritius. Itwasnotthe
tripabroadwhatinterestedmebutthecasetoliftateamtoahigherlevelofsoftwarequality. Duringmy
researchIgotmoreinterestedinsoftwarequalityassurance.EspeciallybecauseInoticedthatonmanyofthe
developer’sprioritylists,ithasalowpriority. Softwarequalityassuranceisoftenobservedasanobligation
insteadofahandytool.MytruemotivationforthisresearchwastoseeifIcouldchangethis.
Inthisresearchthechallengewastodevelopanewapproachforqualityassurancewithinagiledistributed
developmentenvironments. Theresearchwasstartedasfollow-upofseveralinterviewsperformedwithex-
pertsintheareaofsoftwaredevelopmentinwhichtheopportunitiesinthefieldwereobserved.
Theresearchpresentedinthisreportcanbeofvalueforallsoftwaredevelopmentengineers,withorwith-
outexpertiseinqualityengineering. Theresearchmightparticularlyberelevantifsearchingforstructured
approachesforimprovingsoftwareprocessesorproducts. Nexttothesespecificgroups,anyonewhoisin-
terestedinsoftwarequality(assurance),agile(distributed)approachesorthechallengesinthese,canobtain
relevantandinterestinginformationfromthisreport.
FortheguidanceIexperiencedduringmythesisIwouldliketothankRinivanSolingen,mymentorat
theUniversityandToineHurkmans, whoactedasmentoratExactSoftware. Iwouldfurtherliketothank
ExactSoftwarefortheopportunityofconductingacasestudyandinspecialtheTitan,ResearchandSystem
teamfortheircooperation. FurtherthanksgoestoSanderKrugerandGlobalEdgeSoftwarewhoofferedthe
opportunityforperformingtheorientatingcasestudy.
G.H.Kuijer
Delft,May2016
iii
C
ONTENTS
1 Introduction 1
2 TheoreticalBackground 3
2.1 SearchStrategy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.1 KeyTermsandSynonyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.2 StudySelectionCriteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1.3 PerformedSearch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2.1 Whatarecurrentapproachestowardssoftwarequalityassuranceproveninpractice? . . . 4
2.2.2 Whichchallengesandproblemsarepresentinsoftwarequalityassuranceincollocated
andgloballydistributedagilesoftwaredevelopment? . . . . . . . . . . . . . . . . . . . 5
2.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 CaseStudyProtocol 9
3.1 Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2 Questions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3 Propositions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.4 Unitsofanalysis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.5 DataCollection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.6 DataAnalysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.7 Context . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.8 Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.9 Validity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4 TitanTeam 13
4.1 Iteration1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.1.1 QuestionsandMetricsDetermination. . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.1.2 MetricandVisualizationImplementation . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.1.3 Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.1.4 TeamFeedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.1.5 Improvements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.1.6 ObservationsoftheIteration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5 ResearchTeam 29
5.1 Iteration1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.1.1 QuestionsandMetricsDetermination. . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.1.2 MetricandVisualizationImplementation . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.1.3 Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
5.1.4 TeamFeedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.1.5 Improvements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.1.6 ObservationsoftheIteration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.2 Iteration2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2.1 QuestionsandMetricsDetermination. . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2.2 Metricandvisualizationimplementation . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2.3 Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2.4 TeamFeedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.2.5 Improvements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.2.6 ObservationsoftheIteration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
v
vi CONTENTS
5.3 Iteration3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.3.1 Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.3.2 ResultsRetrospective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.3.3 Improvements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.3.4 ObservationsoftheIteration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
6 SystemTeam 47
6.1 Iteration1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.1.1 QuestionsandMetricsDetermination. . . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.1.2 MetricandVisualizationImplementation . . . . . . . . . . . . . . . . . . . . . . . . . 47
6.1.3 Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
6.1.4 TeamFeedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6.1.5 Improvements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.1.6 ObservationsoftheIteration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.2 Iteration2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6.2.1 QuestionsandMetricsDetermination. . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6.2.2 Results. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6.2.3 ResultsRetrospective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.2.4 ObservationsoftheIteration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
7 AgileGQM:TheEmergedApproach 55
7.1 QualityGoals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
7.2 Refinement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
7.3 MetricsImplementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
7.4 Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
7.5 Retrospective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
8 Discussion 59
8.1 ExactCaseStudyResults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
8.2 Whatarethechallengesinqualityassuranceinagloballydistributedagilehighorganisational
maturitylevelcompany? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
8.3 Howcanthechallengesofsoftwarequalityassurancebesolvedinagloballydistributedagile
highorganisationalmaturitylevelcompany? . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
8.4 BroaderApplicationofAgileGQM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
9 Conclusion 63
9.1 Whatarecurrentapproachestowardssoftwarequalityassuranceproveninpractice? . . . . . . 63
9.2 Which challenges and problems are present in software quality assurance in collocated and
globallydistributedagilesoftwaredevelopment? . . . . . . . . . . . . . . . . . . . . . . . . . 64
9.3 Whatarethechallengesinqualityassuranceinagloballydistributedagilehighorganisational
maturitylevelcompany? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
9.4 Howcanthechallengesofsoftwarequalityassurancebesolvedinagloballydistributedagile
highorganisationalmaturitylevelcompany? . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
9.5 Howcanthechallengesandproblems,thatariseinsoftwarequalityassuranceatsoftwarede-
velopmentthatisperformedinanagilegloballydistributedsetting,besolved? . . . . . . . . . 66
9.6 FutureWork. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
10LessonsLearned 69
10.1 Measuringinpractice. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
10.2 WorkingatExact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
10.3 ACaseStudyAbroad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
A ExploratoryCaseStudy 71
A.1 ProjectUnify . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
A.1.1 InitialProjectProcess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
A.1.2 AnalysisofInitialProcess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
A.1.3 UnifySoftwareQuality. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
A.1.4 UnifySoftwareQualityAnalysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
A.1.5 PlannedChanges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
CONTENTS vii
A.1.6 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
A.1.7 Experiences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
A.1.8 Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
B PerformedSearches 77
C Goal1:MetricSummary 79
D FullAnalysis 81
D.1 TeamTitanIteration1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
D.1.1 Whatinfluencestheaccuracyofestimationofstoryduration?. . . . . . . . . . . . . . . 81
D.1.2 Whatfactorsinfluencethevariationindurationofastorywiththesameamountofstory
points?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
D.2 ResearchTeamIteration1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
D.2.1 Whatinfluencestheaccuracyofestimationofstoryduration?. . . . . . . . . . . . . . . 88
D.2.2 Whatfactorsinfluencethevariationindurationofastorywiththesameamountofstory
points?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Bibliography 95
Description:Goal/Question/Metric Application in Agile Globally Dis- perts in the area of software development in which the opportunities in the feedback but does not guide the developer on when and how to take action. Javier Soriano, Xabier Larrucea, Andrés Leonardo Martínez, and Jesus M Gonzalez-.