distributed agile patterns: an approach to facilitate ...usir.salford.ac.uk/id/eprint/46308/1/maryam...

256
Distributed Agile Patterns: An Approach to Facilitate Agile Adoption in Offshore Software Development Maryam Kausar College of Science and Technology School of Computing, Science and Engineering University of Salford, Manchester, UK Submitted in Partial Fulfilment of the Requirements of the Degree of Doctor of Philosophy October 2017

Upload: others

Post on 20-May-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

DistributedAgilePatterns:AnApproachtoFacilitateAgileAdoptioninOffshoreSoftware

Development

MaryamKausar

CollegeofScienceandTechnologySchoolofComputing,ScienceandEngineering

UniversityofSalford,Manchester,UK

SubmittedinPartialFulfilmentoftheRequirementsoftheDegreeofDoctorofPhilosophy

October2017

Page 2: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

2

TableofContents

LISTOFTABLES 5

LISTOFFIGURES 6

ACKNOWLEDGEMENTS 7

DECLARATION 8

ABSTRACT: 9

CHAPTER1 INTRODUCTION 111.1RESEARCHPROBLEM 131.2RESEARCHAIMANDOBJECTIVES 161.3RESEARCHQUESTIONS 161.4RESEARCHCONTRIBUTIONS 171.5RESEARCHMETHODOLOGY 181.6STRUCTUREANDHOWTOREADTHEREPORT 211.7CHAPTERSUMMARY 22

CHAPTER2 OFFSHORESOFTWAREDEVELOPMENT 232.1INTRODUCTION 232.2BACKGROUNDOFOFFSHORESOFTWAREDEVELOPMENT 232.2.1OVERVIEWOFOFFSHOREMODELS 232.2.1.1DomesticOutsourcing 242.2.1.2 SharedServices 252.2.1.3 InternalOffshoring 262.2.1.4 OffshoreOutsourcing 272.2.2BENEFITSOFOFFSHORESOFTWAREDEVELOPMENT 292.2.2.1 EconomicBenefits 292.2.2.2 Political-LegalBenefits 312.2.2.3 DemographicandGeographicBenefits 322.2.3.4 TechnologicalBenefits 332.3ASTUDYONIDENTIFYINGTHECHALLENGESOFOFFSHORESOFTWAREDEVELOPMENT 342.3.1TRUSTISSUES 362.3.2SOCIO-CULTURALISSUES 372.3.3COMMUNICATIONANDCOORDINATIONISSUES 442.3.4KNOWLEDGETRANSFERISSUES 462.4CRITICALANALYSISOFOFFSHORECHALLENGESONSOFTWAREDEVELOPMENTPHASE 502.5AGILEOFFSHORESOFTWAREDEVELOPMENT 642.5.1AGILESOFTWAREDEVELOPMENT 642.5.2AGILEMETHODOLOGYINOFFSHORING 652.6AGILEADOPTIONINOFFSHORESOFTWAREDEVELOPMENT 672.6.1TRANSITIONFROMTRADITIONALSOFTWAREDEVELOPMENTTOADOPTINGAGILEPRACTICES 672.6.1.1 FacilitatorstoAssistAgileAdoption 672.6.1.2 FrameworktoSupporttheEvaluation,AdoptionandImprovementofAgile Methods 682.6.1.3 SharedMentalModelstoUnderstandAgilePractices 692.6.2AGILEADOPTIONINOFFSHORING 702.6.2.1UseofPatternsinAgileAdoption 702.6.2.2 FactorsContributingtotheSuccessandFailureofAgileAdoption 732.6.2.3 UseofToolsinAgileAdoptioninOffshoreDevelopment 74

Page 3: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

3

2.6.3EFFECTOFOFFSHORINGONAGILEADOPTION 772.7ASTUDYONTHEUSEOFPATTERNSINAGILEADOPTIONINOFFSHOREDEVELOPMENT 832.7.1CURRENTPATTERNSFORAGILEADOPTION 842.7.2DISTRIBUTEDAGILEPATTERNS 942.8CHAPTERSUMMARY 94

CHAPTER3 RESEARCHMETHODOLOGY 963.1INTRODUCTION 963.2OVERVIEWOFRESEARCHONION 963.3RESEARCHMETHODOLOGYUSEDTODESIGNDISTRIBUTEDAGILEPATTERNS 1033.3.1RESEARCHPHILOSOPHY 1033.3.2RESEARCHAPPROACH 1043.3.3RESEARCHSTRATEGY 1113.3.4CHOICE 1203.3.5TIMEHORIZON 1223.3.6DATACOLLECTION 1233.4CHAPTERSUMMARY 124

CHAPTER4 DISTRIBUTEDAGILEPATTERNS 1254.1INTRODUCTION 1254.2DESIGNINGTEMPLATEFORDISTRIBUTEDAGILEPATTERNS 1254.3SELECTINGTHERIGHTPATTERNFROMTHEDISTRIBUTEDAGILEPATTERNSCATALOGUE 1284.4ORGANISINGTHEDISTRIBUTEDAGILEPATTERNSCATALOGUE 1314.5FULLDISTRIBUTEDAGILEPATTERNSCATALOGUE 1334.5.1MANAGEMENTPATTERNS 1334.5.1.1 DistributedScrumofScrumPattern 1334.5.1.2 LocalStandupMeeting 1364.5.1.3 LocalSprintPlanningMeetingPattern 1394.5.1.4 LocalPairProgrammingPattern 1414.5.1.5 AsynchronousRetrospectiveMeetingsPattern 1434.5.2COMMUNICATIONPATTERNS 1464.5.2.1 GlobalScrumBoardPattern 1464.5.2.2 CentralCodeRepositoryPattern 1494.5.2.3 AsynchronousInformationTransferPattern 1514.5.2.4 SynchronousCommunicationPattern 1534.5.3COLLABORATIONPATTERNS 1554.5.3.1 CollaborativePlanningPokerPattern 1564.5.3.2 Follow-the-SunPattern 1584.5.3.3 CollectiveProjectPlanningPattern 1614.5.3.4 VisitOnshore-OffshoreTeamPattern 1644.5.4VERIFICATIONPATTERNS 1664.5.4.1 ProjectCharterPattern 1664.5.4.2 OnshoreReviewMeetingPattern 1684.6CHAPTERSUMMARY 171

CHAPTER5 VALIDATIONANDEVALUATIONOFTHEDISTRIBUTEDAGILEPATTERNSCATALOGUE 1725.1INTRODUCTION 1725.2REVISEDDISTRIBUTEDAGILEPATTERNS 1725.3EVALUATINGDISTRIBUTEDAGILEPATTERNS 1795.4CHAPTERSUMMARY 184

Page 4: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

4

CHAPTER6 CASESTUDYTOSHOWAPPLICABILITYOFDISTRIBUTEDAGILEPATTERNS 1856.1INTRODUCTION 1856.2OVERVIEWOFREQUIREMENTSENGINEERINGPROCESS 1856.3REQUIREMENTSENGINEERINGPROCESSINTRADITIONALSOFTWAREDEVELOPMENTVS.AGILEMETHODOLOGY 1866.4APPROACHESTOIMPROVEREQUIREMENTSENGINEERINGPROCESSINAGILE 1876.5DISTRIBUTEDAGILEPATTERNSUSEDTOOVERCOMEREQUIREMENTSENGINEERINGCHALLENGES 1936.6MAPPINGDISTRIBUTEDAGILEPATTERNSONTHEREQUIREMENTSENGINEERINGLIFECYCLE 1966.7CHAPTERSUMMARY 198

CHAPTER7 CONCLUSIONSANDFUTUREWORK 1997.1INTRODUCTION 1997.2MEETINGTHEAIMANDOBJECTIVESANDANSWERINGTHERESEARCHQUESTIONS 2007.3RECOMMENDATIONFORFUTUREWORK 2017.4LIMITATIONOFTHESTUDY 2027.5CHAPTERSUMMARY 203

REFERENCES: 204

APPENDIXA:SELECTEDSTUDIESFOROFFSHORECHALLENGES 223

APPENDIXB:OVERVIEWOFEXISTINGSOFTWAREDEVELOPMENTAPPROACHES228

APPENDIXC:OVERVIEWOFBEECHAMETAL.(2014)GSDSOLUTION 229

APPENDIXD:SAMPLEQUESTIONSFORSEMI-STRUCTUREDINTERVIEWS 230

APPENDIXE:CONSENTFORMANDDATAPROCESSINGSTATEMENT 232

APPENDIXF:UNREVISEDDISTRIBUTEDAGILEPATTERNCATALOGUE 234

Page 5: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

5

ListofTablesTABLE2.1.CHALLENGESINOFFSHORESOFTWAREDEVELOPMENT. 35TABLE2.2SEVENVALUESFORCULTURALDIMENSIONS(TROMPENAARSETAL.,2004). 38TABLE2.3.CULTURALCOMPARISONBETWEENJAPANANDCHINA(OZAWAETAL.,2013). 41TABLE2.4.CULTURALPATTERNSINSOFTWAREPROCESSMISHAPS(MACGREGORETAL.2005). 42TABLE2.5.FACTORSAFFECTINGTASKALLOCATIONPROCESSINOFFSHOREDEVELOPMENT

(SAJJADETAL.2015). 47TABLE2.6.OFFSHORECHALLENGESAFFECTINGSOFTWAREDEVELOPMENTPHASES. 51TABLE2.7.OVERVIEWOFEXISTINGAPPROACHESUSEDTOOVERCOMEOFFSHORECHALLENGES. 59TABLE2.8.COMPARISONOFAGILEDEVELOPMENTVERSESOFFSHOREDEVELOPMENT(ŠMITEETAL.2010). 66TABLE2.9.AGILEPRACTICESUSEDFOROFFSHOREDEVELOPMENT(PAASIVAARAETAL.,2009). 76TABLE2.10.AGILEPRACTICESAFFECTEDBYOFFSHORECHALLENGES. 78TABLE2.11.DETAILOFTHREESITESADOPTINGAGILEPRACTICESATR&DUNITOFERICSSON(PAASIVAARAET

AL.,2013). 80TABLE2.12.EXISTINGOFFSHORESOFTWAREDEVELOPMENTPATTERNS. 85TABLE2.13.PATTERNSFORAGILESOFTWAREDEVELOPMENT. 89TABLE2.14.OVERVIEWOFAGILEADOPTIONPATTERNS(ELSSAMADISYETAL.,2006). 93TABLE3.1.OVERVIEWOFRESEARCHONION. 98TABLE3.2:KEYCONCEPTSSELECTEDFORRELATIONALANALYSIS. 106TABLE3.3.SEARCHTERMSUSEDINTHISREVIEW. 114TABLE3.4.OCCURRENCEOFAGILEPRACTICESINLITERATURE 115TABLE3.5.SIXSOURCESFORDATACOLLECTIONCOMPARISON(YIN,2003). 116TABLE3.6.TYPEOFINTERVIEWS(EASTERBY-SMITHETAL.,2012). 118TABLE3.7.DETAILOFCOMPANIESINTERVIEWED. 119TABLE3.8.OVERVIEWOFTHEQUANTITATIVEANDQUALITATIVEMETHODSUSEDINTHISRESEARCH. 120TABLE3.9.TIMEHORIZONACROSSFOUR-YEARPHDRESEARCH. 122TABLE4.1.COMPARISONOFEXISTINGPATTERNS. 125TABLE4.2.CATEGORIESOFDISTRIBUTEDAGILEPATTERNS. 132TABLE5.1.DETAILSOFTHECOMPANIES. 172TABLE5.2.DETAILSOFTHEPARTICIPANTSATTENDEDTHEWORKSHOP. 173TABLE5.3.AGENDAOFTHEREFLECTIONWORKSHOP. 174TABLE5.4.FLIPCHARTFORMATFORTHEREFLECTIONWORKSHOP(KERTH,2001). 174TABLE5.5.FLIPCHARTOFCOMPANY3PARTICIPANT5(C3P5). 176TABLE5.6.SUMMARISEDFLIPCHARTOFTHECOMPANIES. 177TABLE5.7.FEEDBACKONTHECHALLENGESDISTRIBUTEDAGILEPATTERNSSOLVE. 178TABLE5.8.EXISTINGSOLUTIONSINCOMPARISONTOTHEDAPCATALOGUE. 180TABLE6.1.USINGDISTRIBUTEDAGILEPATTERNSTOADDRESSREQUIREMENTSENGINEERINGCHALLENGESIN

AGILEOFFSHOREDEVELOPMENT. 193

Page 6: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

6

ListofFigures

FIGURE1.1RESEARCHMETHODOLOGY 18FIGURE2.1BUSINESSMODELSFORGLOBALSOFTWAREENGINEERING(OECD,2004). 24FIGURE2.2.DISTRIBUTIONOFWORKAMONGMULTIPLEDISTRIBUTEDTEAMS. 33FIGURE2.3.TRADITIONALSOFTWAREDEVELOPMENTLIFECYCLE. 50FIGURE2.4.THEMAINCOMPONENTSOFTHEAGILESOFTWARESOLUTIONFRAMEWORK(QUMERETAL.2008).68FIGURE2.5.AGILEADOPTIONANDIMPROVEMENTMODEL(QUMERETAL.,2007) 69FIGURE2.6.SOFTWAREPROJECTSUCCESSRATEFOROFFSHOREPROJECTS(MALIKETAL.,2010). 74FIGURE3.1.THERESEARCHONION(SAUNDERSETAL.,2007) 97FIGURE3.2.OVERVIEWOFDESIGNANDDEVELOPMENTOFDISTRIBUTEDAGILEPATTERNCATALOGUE 108FIGURE.3.3.THESELECTIONPROCESSOFPRIMARYPAPERS. 113FIGURE4.1.PROCESSOFSELECTINGPATTERNSFROMTHEDISTRIBUTEDAGILEPATTERNCATALOGUE. 130FIGURE4.2.DISTRIBUTEDAGILEPATTERNSAPPLICATIONONTRADITIONALSCRUMLIFECYCLE 130FIGURE4.3.DISTRIBUTIONOFWORKAMONGTHREEDISTRIBUTEDTEAMS(GUPTA,2009). 160FIGURE.5.1.DOCUMENTPRESENTEDINREFLECTIONWORKSHOPTOTHEPARTICIPANT 175FIGURE6.1.TRADITIONALREQUIREMENTSENGINEERINGPROCESS. 186FIGURE6.2.AGILEREQUIREMENTSCHANGEMANAGEMENTPROCESS. 187FIGURE6.3.STORYCARDBASEDMETHODOLOGYFOLLOWEDBYSOBATOOL(PATELETAL.,2008). 188FIGURE6.4.THEUSERSTORYDELIVERYPROCESS(DANEVAETAL.,2013). 191

Page 7: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

7

Acknowledgements

Firstandforemost,thisresearchwouldnotbepossiblewithouttheblessingofmyLord

ALLAH,themostMerciful,whohasgivenmethepatienceandstrengthtofinishthis

PhDjourney.

Iwouldliketoexpressmygratitudeandsincereappreciationtomysupervisor,Dr.Adil

Al-Yasiri,forhisassistance,guidance,andfeedbackduringmyPhD.

Special thanks to my parents, Kausar Iqbal Malik and Khalida Parveen, for their

encouragementandprayers.

IwouldliketoextendmythankstothemembersoftheSchoolofComputing,Science,

andEngineeringattheUniversityofSalford,forsupportingmeduringmyPhD.

Finally, Iwouldliketosaythankstoeveryonewhohelpedmeachievesuccessinthis

research.

Page 8: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

8

Declaration

Parts of the research presented in this thesis has been published in the following

papersandpresentations:

1-Kausar,M.,&Al-Yasiri,A.(2015).DistributedAgilePatternsforOffshoreSoftware

Development. Presented in the 12th International Joint Conference on Computer

ScienceandSoftwareEngineering(JCSSE2015).IEEEConference2015.

2- Kausar,M.,&Al-Yasiri, A. (2016).UsingDistributedAgile Patterns for Developing

Offshore Projects. Presented in the Proceedings of the CSE 2016 Annual PGR

Symposium(CSE-PGSym16),UniversityofSalford,Manchester,UnitedKingdom,2016

3-Kausar,M.,&Al-Yasiri,A.(2017).UsingDistributedAgilePatternsforSupportingthe

Requirements Engineering Process. Presented in the Requirements Engineering for

ServiceandCloudComputing.SpringerInternationalPublishing,2017.291-316.

Page 9: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

9

Abstract:

Over a decade, companies have been using agile methods for the development of

software. However with the increasing trends of offshore software development,

companies are becomingmore interested in using agile methods for such projects.

While offshore development has several dynamic benefits such as cost reduction,

flexibility, proximity tomarket, concentration on core processes and easy access to

talent, they have introduced new challenges, such as trust, socio-cultural,

communicationandcoordination,andknowledgetransferissues.Thesechallengesnot

onlyaffectthedevelopmentprocessbutalsoaffecttheapplicabilityofagilepractices

in offshore development. As a consequence, companies have been modifying and

adaptingagilepracticestoovercomethesechallenges.Howevertherehasbeenlittle

effort put to collect and document the common practices that have been used

repeatedlytosolverecurringproblemsinoffshoredevelopment.

Using the systematic literature review approach and applying customised search

criteriabasedon the researchquestions,we identifiedand reviewedover200cases

fromliterature.Aspartofthisresearchwealsoconductedsemi-structuredinterviews,

in which we involved practicing professionals who were working with distributed

teams.Asaresult,weidentifiedanddocumentedanumberofsolutionstoaddressthe

commonagileissuesinsoftwaredevelopment,whichweclassifiedasdistributedagile

patterns.

This research presents the challenges caused by offshore development, how they

affect the applicability of agile practices in offshoring. We have then developed a

catalogue containing the identified fifteen distributed agile patterns and have

classifiedthemintofourcategories.Wehaveusedacasestudytoexplainhowthese

patternscanbeappliedinoffshoresoftwaredevelopment.Toverifyandvalidateour

catalogue,weconducteda reflectionworkshop, inwhichwe invitedprofessionals to

review and comment on the patterns. The participants engaged in reviewing the

patterns and gave constructive feedback, which helped in improving the catalogue.

Page 10: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

10

Based on their feedback, the distributed agile patterns cataloguewas finalised. The

cataloguecanhelppractitionersmakeamoreinformeddecisionwhilechoosingagile

fortheiroffshoreprojects.

Page 11: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

11

Chapter1 Introduction

Recentadvancesinsoftwaredevelopmenthavemadeitpossibleandattractiveforthe

industrytomovetowardsGlobalSoftwareDevelopment(GSD).GSDisreferredtothe

practice in which companies move some/all part of their software project to an

offshorelocation.Forsomecompaniesthemotivationistocutdownoncost,whilefor

others themotivation is tobenefit fromthevariety in talentsavailable fromallover

theworld,orcloseness tomarket.Nonetheless,whatever the reasonwas tomaking

suchadecision,itisveryimportantforthemtoconsiderwhichtypeofglobalsoftware

engineering business model they will be using. Work has been done on proposing

different frameworks fromwhich organisations can selectwhich type ofGSDmodel

theywant to use (Robinson et. al, 1996; Prikladnicki et al. 2007 and Agerfalk et al.

2008).WehavepresentedanoverviewofdifferentmodelsinSection2.2.1.

Theterm“offshoreoutsourcingoroffshoring”iscommonlyusedforthepracticeofa

companytosubcontractworktothirdpartycompanies,whichareplacedatcountries

likeIndia,Pakistan,ChinaandRussia(Prikladnicketal.,2007).Thisway,acompanycan

focuson itscorebusinessand leavethedevelopmentofproductstocompaniesthat

canperformtheminhigherstandardsoratcheaperrates(Pilattietal.,2006).

The concept of offshoring isn’t new or exclusive to software development; many

companiesforyearshavebeenusingsubcontractorstoprovideassistanceinmultiple

areas,fromcleaningservicestoconsultations(Jahns,etal.,2006).Whathaschangedis

thatwiththehelpoftechnologythescopeofoffshoringhasexpandedinternationally

(Van, 2004). As technology has reduced the cost of communication, companies can

exchangeworkproductstofarawayplaces,cheaplyandefficiently.

A decade ago the trend of offshoring had increased mainly in the sector of

manufacturing(Garner,2004)butascommunicationbecamecheaperandfastermore

companies from different sectors started adopting the practice. In the IT sector,

offshoringhasbeenchanginghoworganisationsdevelopsoftwarearoundtheworld.

Page 12: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

12

Themain reason why companies choose offshoring is because of lower production

cost (Pilattietal.,2006)which ismainlybecauseof lowsalaries incountriesoutside

Europe, the US and Japan. For example in India an average ICT worker earns one

seventh of the amount earned by a British employee (Global Wages Comparison,

2013).

Offshoring can offer additional commercial advantages beyond cheaper labour; for

exampleinacountrylikeIndia,whichprofits90%oftherevenuesofallITandservice

offshore activity, produces two million university graduates per year (Kobayashi-

Hillary,2005).Withthisoffshorecompaniescanseenewopportunitiessuchasaccess

to larger pool of skilled people, shared best practices andproximity tomarkets and

customers (Smite et al., 2011). Kobayashi-Hillary who went to Bangalore to open a

software facility comments “The issue now was not finding good people; it was

filteringtheexcellentfromthegood”(Kobayashi-Hillary,2005).

TherearemanyadvantagesofoffshoredevelopmentbutasGSDcontinuestogrowit

has been noted that it causes some issues, which are caused as teams become

distributedoverdifferentgeographical locations(Damianetal.,2006). Issuessuchas

trust, socio-cultural, communication and co-ordination and knowledge transfer are

examplesofthechallengesfacingGSD.Ononehandsuchissuesrepresentbarriersto

thedistributedteams;ontheotherhandithasparticularimpactonAgileteamswhich

favour face-to-face communication and co-working between team members. A

numberof teamshaveexperimentedandadaptedvariousagilepractices inorder to

overcometheabovechallenges.Suchefforts(althoughdocumented)remainindividual

anddifficult to share. In this researchwehaveprovidedsolutions for someof these

challengesbyidentifyingagilepracticesthatarebeingusedrepeatedlyforaddressing

global software development issues.We believe that by identifying and cataloguing

thesepracticestheycanbeeasilyretrievedandappliedforsimilarproblems.

Page 13: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

13

1.1 ResearchProblem

Traditionally,softwarewasdevelopedatonelocationwherethewholeteamworked

fromthesameoffice.Similarlytheclients/sponsorsoftheprojectweresituatedinthe

same country. But as onshore software development became expensive companies

startedlookingforalternativewaystocutdownonsoftwaredevelopmentcost(Pilatti,

Audy, 2006).One suchalternativewas tomove someof their processes tooffshore

locations, as due to decrease in global communication rates companies could

coordinateworkviaonlinecommunicationtoolsandsetupcostincountrieslikeIndia

andChinaischeaperincomparisonstocountrieslikeUSA,UKandJapan(Prikladnick&

Audy,2012;Bush,Tiwana,andTsuji,2008;McLaughlin,2003)

Butascompaniescontinued to switch tooffshoredevelopment itbecameclear that

achieving reduced cost is not as straightforward as it initially seemed. As even if

companiesmanagetocutdowncostondevelopmentbysettingupcheapofficesand

finding cheap labor (Global Wages Comparison, 2013), offshoring introduces new

challenges. These challenges appear because companies distributed their team to

different locations having different time zones, different language and social values,

causingchallengessuchas:

• Theissueoftrustcausesdifficultyinformingalliancesamongfirmsthatdonot

know each other. It also introduces a risk of project failure as clients are

concerned with whether the offshore service provider will deliver the work

promisedwithoutcompromisingontheirrequirements.Lackoftrustcancause

misunderstanding and conflicts between the firms (Battin et al., 2001). This

issuewillbediscussedindetailinsection2.3.1.

• Socio-Culturalconflicts,suchasadifference in languages,nationaltraditions,

valuesandnormscauseproblems inoffshoresoftwaredevelopment (Carmel,

1999;Hofneretal.,2007).Asthedifferenceinlanguageorlanguagestylecan

cause problems while developing the code as the offshore team leaves

comments for the onshore team regardingwhat they have done but due to

Page 14: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

14

difference in language the onshore team cannot understand their comments

hence resulting in a delay in the project development. This issue will be

discussedindetailinsection2.3.2.

• Theteamfacescommunicationandcoordinationissues(Beulenetal.,2002),as

theteammembersaredistributedondifferentlocationsandtimedifferences,

whichmakesitdifficulttohavereal-timeface-to-facecommunication.Thiscan

causeproblemsinsharinginformation.Thisissuewillbediscussedindetail in

section2.3.3.

• Companiesstartedtofaceknowledgetransferissuestheymovedtheirbusiness

anddevelopmentprocesstooffshorelocations,asanymistakeinthetransfer

process can cause projects to fail (Kedia et al., 2007). This issue will be

discussedindetailinsection2.3.4.

Thesechallengeswerenotpartoftraditionalsoftwaredevelopmentbecausetheteam

workedinthesamecountryhavingthesametimezone,face-to-facecommunication,

and same social values (Meyer, 2006). If these challenges are not handled properly

theycanmaketheoverallcostoftheprojectseveraltimeshigherthaniftheproject

wasdevelopedatanyonshorelocation(Iacovouetal.,2008;Hartmannetal.,2011).

In offshoring, companies also have to deal with additional tasks as the team is

distributedoverdifferenttimezones(Evaristoetal.,2004).Theadditionaltasksare:

i) They have to maintain good communication with all its offshore offices

otherwisetheinformationflowwillbeaffected(Carmeletal.,2005),

ii) The onshore office has to decide which work/project should be sent to

offshore locationandwhichshouldbedeveloped in-house (Lamersdorfet

al.,2008)and

Page 15: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

15

iii) Once theprojectorprocess is selected theyneed tobecoordinatedwith

the onshore office in order to develop a product that meets the clients

requirements(Aundhetal.,2009).

Another problemwith offshoring is that the developmentmethodology for offshore

software development is different from the traditional approach as now companies

can either follow a global standard methodology for all its offices or it can have

differentdevelopmentmethodologiesfordistributedlocations(Senguptaetal.,2006).

Similarly the standard development methodologies starting from waterfall

developmentlifecycletoagileassumethattheteamislocatedatthesamelocation.

So if a company applies any of the standard development techniques by the book,

offshore projects are bound to fail. Many companies have customised agile

methodologies foroffshoreprojects, but thereare still limitations tohow successful

thoseprojectswillbeasagilemethodologyfocusesonface-to-facemeetingssuchas

daily-standupmeetingandretrospectivemeetings(Becketal.,2001).

The above challenges can directly cause problems in the software development life

cycle,whichcanresultintoaprojecttofail;morediscussionisprovidedinSection2.4.

Theproblemthatthisresearchwilltackleishowtoovercometheidentifiedchallenges

between the onshore and offshore teams as it affects agile practices on offshore

projects. This isparticularly important, as theemphasisof agilemethodologies ison

face-to-face meetings such as daily-stand ups, sprint meetings and sprint review

meetings(Benketal.2001),whicharedifficulttoconductinoffshoringastheteamis

distributedgeographicallyindifferenttimezones.Similarlyagilefocusesontheteam

to be self-organised (Benk et al. 2001) but due to lack or delay in communication

between theonshoreandoffshore team, it is difficult todistributeworkamong the

teammembersefficiently.TheseissuesarediscussedindetailinSection2.5.2.

Page 16: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

16

1.2ResearchAimandObjectives

Inordertoaddressthechallengesbetweenonshoreandoffshoreteamssuchastrust,

socio-cultural, communication and coordination, and knowledge transfer issues,this

researchaimstoproposeapatternbasedapproachbyidentifyingrepeatingsolutions

which have been proven in overcoming those challenges so that practitioners can

applythisapproachinordertomitigatetheeffectofthechallengesintheirprojects.In

additiontothemaingoaloftheresearch,wehavefourspecificobjectivesandtheyare

summarisedasthefollowing:

i. Toconductsystematicliteraturereviewtounderstandandanalysetheexisting

literature on offshore software development. Thiswill build up the research

foundationandformtheresearchquestionsforthisresearch.

ii. Identifying the key challenges from literature that occur while developing

softwareonoffshorelocationsandinvestigatehowagilepracticescanbeused

toovercomethosechallengesand.Basedonliteratureandinterviewsidentify

if there is a recurringagilepracticesbeingused to solve the samechallenge

thatwecanclassifyasapattern.

iii. Developacatalogueof the identifiedpatternsthatwillbedocumented,as it

willfocusonfacilitatingoffshoresoftwaredevelopmentprojectsbyproviding

asaguidelineforpractitionersthatwanttooffshoretheirprojects.

iv. ValidatingtheDistributedAgilePatternscataloguebyusingKerth’sreflection

workshopmethod(Kerth,2001)andevaluatethecataloguebycomparingthe

existingsolutionspresentedinliterature.

1.3ResearchQuestions

Duringthecourseofthisresearch,anumberofquestionshavebeenidentifiedtobe

addressed:

Page 17: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

17

RQ:Whataretherecurringadaptationsofagilepracticesthatarebeingusedwithin

offshoresoftwaredevelopmentinordertoaddresstheidentifiedissues?

Tobemorespecific,thestudy’sfocuswasonthefollowingtwoquestions:

RQ1: What are the agile practices that are being commonly used to deal with

offshorechallenges?

RQ2: Are the challenges identified in RQ1 recurring in offshore software

development?

1.4ResearchContributions

Thereisalackofeffortincollectingcommonpracticesthathavebeenusedrepeatedly

tosolverecurringproblemsinoffshoredevelopment.Inthisresearchwehavestudied

over200casesfromtheliteratureandinterviewedpracticingprofessionalsthatwork

in distributed teams. As a result we have observed a number of solutions for agile

issues in distributed development settings, which we have classified as Distributed

AgilePatterns.Wedefineddistributedagilepatternsasadaptationofanagilepractice

thatisbeingrepeatedlyappliedinordertosolvearecurringchallengeinadistributed

project scenario. The difference between distributed patterns and distributed agile

patternsisthatdistributedpatternsonlyfocusonpracticesthatarebeingrepeatedly

appliedinordertosolvearecurringchallengeinanoffshoreprojectirrespectiveofif

thosepracticesareagileornotwhereasdistributedagilepatternsfocusonrepeating

agilepractices.

This research confirms that there are four main challenges in offshore software

development, which are trust, socio-cultural, communication and coordination, and

knowledge transfer issues, thateveryorganisation facesand that theyhaveadapted

agilepracticestoovercomethosechallenges.

Page 18: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

18

The findings of this research will strengthen the existing literature on distributed

softwaredevelopmentandprovideaknowledgebaseforagilepractitionerswhouse

orintendtouseagileapproachesinoffshoresoftwaredevelopment.Thedocumented

findingshavebeenobservedfromliteratureandpractitionersinordertopreparethe

patternscatalogue.

Practitionerscanusethepatterncatalogue inthebeginningofoffshoreprojectsand

makeinformeddecisionsabouthowtoadoptagileapproachesasgeneralizedpatterns

makeiteasierforothercompaniestoreflectonandtoapplytheresultstotheirown

cases.

1.5ResearchMethodology

Thefollowingresearchmethodology isdevelopedandadoptedforthisresearch.The

mainstagesofthemethodologyareoutlinedinFigure1.1anddetailofeachstageis

presentedinChapter3ResearchMethodology.

Figure1.1ResearchMethodology

Page 19: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

19

Step1:ReviewPreviousLiteraturesandRelevantOffshoringChallenges.

In this step the previous relevant works is reviewed, to identify challenges

practitioners faces while developing their projects offshore. This helps in

acquiring a goodunderstanding ofwhat factors affect offshore projects. This

stepalsohelpsinansweringtheRQ1mentionedinSection1.3,astherewasa

needtostudywhatagilepracticesarebeingusedinGSD.

Step2:IdentifyandDefinetheResearchProblem.

The research starts by making assumptions on how to successfully develop

softwareonoffshore locations tomeet theobjectivesof the research. Todo

this,theresearchfocusesonstudyingandanalysingfactorsthataffectoffshore

softwaredevelopment,basedonthecasestudiesofdifferentcompaniesasthis

helpsinansweringtheRQ1mentionedinSection1.3inordertoidentifywhat

agilepracticesarebeingusedandalsotoanswerRQ2thatistoidentifyifthose

practicesarerecurringornot.

Toperformthisstepsemi-structuredinterviewsareconductedwithcompanies

who had chosen offshore processes for their projects. The research also

analyseshowmanycompaniesuseagiledevelopmentmethodologiesfortheir

offshoresoftwaredevelopmentprojectsandwhatlimitationstheyface.

Step3:CollectDatafromSystematicLiteratureReviewandInterviewingOffshore

Companies.

This research is carried out by, following Kitchenham’s guidelines for

conductingSystematicLiteratureReview(Kitchenhametal.2007).Thisisdone

to select primary studies from the existing literature.We also conducted 20

semi-structured interviewswithoffshorecompaniestogetpractitionerspoint

ofviewonthechallengestheyfacewhileworkingonoffshoreprojects.

Page 20: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

20

Step4:AnalyseDatacollectedfromSystematicLiteratureReviewandInterviewing

Offshorecompanies.

To analyse the data collected we use content analysis as proposed by

Kripendorfftoverifytheresultsofourfindings(Kripendorff,2004). Detailsof

thisstepispresentedinsection3.3.2.

Step5:DesignanddeveloptheDistributedAgilePatternsCatalogue.

BasedonthefindingsaDistributedAgilePatternsCatalogueisdeveloped;this

ispresentedinSection4.5.

Step6:ValidateandEvaluatethePatternCatalogue.

Inorder tovalidate theDistributedAgilePatternsCatalogue,weconducteda

workshopbyusingKerth’skeep/tryreflectionworkshopmethod(Kerth,2007).

Bydoing this, feedbackcollected fromthecompanies (whowouldhavebeen

interviewed) is sought to obtain their views on the catalogue, and its

effectiveness.Basedontheiranswersthecatalogueisvalidatedandthishelps

inansweringtheRQ2mentioned inSection1.3as itconfirmsthattheseagile

practicesarebeingusedtosolverecurringproblemsinGSD.

To evaluate the pattern catalogue we compare the catalogue with other

solutions mentioned in the literature for solving GSD challenges, which is

presentedinSection5.3.

Step7:ModifytheCataloguetoImproveResults.

Thenecessarymodificationsaremadeinthecataloguebasedonthefeedback

givenby the companies. This stepallows the research to improve the results

producedinthecatalogue.

Page 21: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

21

Step8:DocumentthePatternCatalogue.

The final stageof the research is todocument thepatterns catalogue,which

incorporates the answers of all the research questionsmentioned in Section

1.3.

Basedontheabovediscussionitcanbeseenthatwehaveusedaninductiveapproach,

astheresearchmovesfromspecific togeneral.Aswefirst identifiedanddesigneda

specificresearchproblemandthendevelopedagenericcatalogueofdistributedagile

patterns. In section 3.3.2 we have presented detail explanation on how we have

appliedinductiveapproachinourresearchapproach.

1.6StructureandHowtoReadtheReport

ThisthesispresentsthecompleteDistributedAgilePatternsCatalogue.Theremainder

ofthethesisisarrangedinthefollowingchapters.Chapter1presentstheresearchaim

and objectives, the research problem, the research questionswewill answer in this

studyandtheoverviewoftheresearchmethodologythatiscarriedouttoanswerthe

aim and objectives set for this study. Chapter 2 Offshore Software Development,

presents the background of offshore software development which concentrates on

describingdifferenttypesglobalsoftwaredevelopmentmodelsaswellaswhatarethe

benefitsandchallengesofoffshoresoftwaredevelopmentandwhatroleagileplaysin

overcomingthosechallenges.Italsofocusesonhowpatternscanbeusedtoovercome

the challenges of offshore development. In Chapter 3 we present the research

methodology that has been followed in order to conduct this research. Chapter 4

consistsof the final versionof theDistributedAgilePatterns catalogue,aswedidn’t

wanttoconfusethereaderbypresentingtwoversionsofthecatalogue,theunrevised

versioncanbefoundinAppendixF.Chapter5presentshowthecatalogueisvalidated

and evaluated with the use of reflective workshop and comparing other solutions

present in literature for offshore software development. To help practitioners

understandhow theDistributedAgilePatterns canbeapplied,Chapter6presents a

case study on how the requirement phase is conducted using the distributed agile

Page 22: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

22

patterns catalogue and finally in Chapter 7, the conclusions has summarised the

findingsofthisresearchandwehavepresentedanoverviewofthefuturework.

1.7ChapterSummaryThis chapter presented an introduction to the thesis through defining the research

problem and discussing the researchmotivation, then the aim of the research, the

objectives, and researchquestionswerepresented. The research contributions have

beendefinedalongwiththeresearchmethodology,inadditiontodefiningtheoutline

ofthethesis.

In summary, this thesis presents a catalogue of distributed agile patterns which

practitionerscanusewhileoffshoringtheirprojects.Inthenextchapter,abackground

fortheresearchfieldispresented.

Page 23: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

23

Chapter2 OffshoreSoftwareDevelopment

2.1Introduction

This section summaries the work that has been completed to-date. It presents the

background research that has been done on offshore software development so far.

The background involves reviewing the models of offshoring and the benefits it

provides. The review also covers and highlights the main challenges and issues

offshore software development which we identified using Systematic Literature

Review.Wehavealsomentionedhowagilecanbeusedtoovercomethosechallenges

andwhatarethelimitationsofagile.Wehavealsopresentedfiveapproachesusedin

literature to facilitatepractitioners inagileadoption. Lastlywehavementionedhow

patternscanaidinagileadoptioninoffshoresoftwaredevelopmentbypresentingan

overviewofcurrentpatternsbeingusedforagileadoptionandgivinganoverviewof

thedistributedagilepatterns.

2.2BackgroundofOffshoreSoftwareDevelopment

In this section we have presented a background study on offshore software

development to understand why organisation move towards offshoring their

processes.Wegaveanoverviewofdifferenttypesofoffshoremodelsbasedonwhat

typeofbusinessmodel theychose to followwhileoffshoring theirprojects.Wealso

presentedwhatarethekeybenefitsthatorganisationsconsiderwhiledecidingtogo

foroffshoresoftwaredevelopment.

2.2.1OverviewofOffshoreModels

Whenanorganisationdecidestomovesomeoftheirprocessestootherlocations,itis

very important for them to consider which type of global software engineering

businessmodeltheywillbeusing.Robinsonprovidedaframeworktocategorisethese

Page 24: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

24

business models based upon relationship structure and geographical location

(Robinsonetal.,2004).

PrinkladnickiusedanadaptationofRobinson’sframeworkbasedonthemostcommon

models used in practice, whichwas than presented in Agerfalk and Fitzgeraldwork

(Prinkladnickietal.,2007;Robinsonetal.2004;Agerfalketal.,2008).Inthisthesiswe

haveusedafurtheradaptedversionwith inputsfromtheOrganisationforEconomic

Co-operation&Developmentreport(OECD,2004)showninFigure2.1.Thereasonfor

choosing this version is because it clearly identified the fourmain business models

selectedbyorganisationsthatdecidetomovetheirprocessestoadifferent location,

where its in thesamecountryoranoffshore location.Thissectiondiscusseseachof

thesemodelsindetail.

Figure2.1BusinessModelsforGlobalSoftwareEngineering(OECD,2004).

2.2.1.1DomesticOutsourcing

Domesticoutsourcingisalsoreferredasonshoreoutsourcing(Robinsonetal.,2004).

In this business model an external company acts as a subcontractor for providing

software development services or software products to an organisation. In this

scenariothesubcontractingcompanyislocatedonshore(Prikladnickietal.,2012).The

Page 25: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

25

companies that select this type of businessmodel go for a joint-venture offshoring

approach.

In joint venture offshoring, an organisation collaborates with a local company to

developsoftware.Thiscollaborationcantakemanydifferentforms.Insomecasesthe

revenuestreamisseparatedfromrestofthecompany’sbusinessastheserversbeing

outsource generates its own revenuewhich results in reduced risk for the company

offshoringtheirservices.Boththecompanyshareapercentageoftherevenueearned.

Inothercases,jointventurescanbebetweentwoormorecompanies,thegoalbeing

tobuildanoffshorecentrewithmultipleownersinordertoreducethestart-upcosts

andoperational risks.Hence in jointventurescompanies’collaborationcanbeequal

that isbothof thecompanyhaveequal stakeor thecompaniescanbe independent

butjustcontributetheirresourcestoeachother.Thegoalofthismodel istobenefit

from the strengths of the organisations, in order to achieve awin-win situation for

bothofthem(Babu,2005).

Tomotivate both the companies to go for joint venture contracts,many companies

include a build-operate-transfer (BOT) clause. This clause helps the companies to

decideonhowtheywillworktogetherinordertocompletetheproducts(Vashisthaet

al.,2005)andfurthermoreitalsoallowstheonshorecompaniestoselltheirstakesto

foreigncompaniesafterachievingagreed-uponmilestones.

Jointventureoffshoringhasmanyadvantagessuchasboththecompanieslearnfrom

eachother.Italsohelpsbuildrelationshipsacrossthevendersandboththecompanies

sharetheirrecoursestodevelopthebestproduct(Babu,2005).

2.2.1.2 SharedServices

SharedServicesisalsoreferredasonshoreinsourcing.Inthisbusinessmodelthereisa

department in the company’s building or a subsidiary in the same country that

provides software development services for the internal projects (Prikladnicki et al.,

Page 26: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

26

2012).Thismodelisthemostsimpleandknownbusinessmodelasnotmanyrisksare

involvedinadoptingitsincealltheteamsareworkinginthesamecountry(Prikladnicki

etal.,2007).

Manycompanieschooseonshoreinsourcinginordertoavoidtheriskofmovingtheir

processes to an offshore location. A study done by Amiti in the United States, the

United Kingdom, andmany other industrialised countries showed that jobs in these

countriesarepreferredtobe insourcedratherthantooutsourcethembecausethey

areconcernedthat if theyoutsourcedmore jobstheywillbe losinganetamountof

jobsfortheirnationals(Amitietal.,2005).

Onshoreinsourcingisconsideredthebetteralternativetooutsourcingasthejobsstay

inthecountryandtheydonothavetoinvestinthestart-upcosts(Prikladnickietal.,

2012). Similarly companies can avoid challenges such as communication and

coordination problems, language issues, software quality standard issues and trust

issues(Prikladnickietal.,2007).

2.2.1.3 InternalOffshoring

Internal Offshoring is also referred as offshore insourcing. In this businessmodel, a

company internally offshores its services by creating its own software development

centre (subsidiary) in foreigncountry (Prikladnickietal.,2012).Somecompaniesopt

fortheultimateapproach,“doityourself”thatisgooutandbuiltyourownsubsidiary

centreinanoffshorelocation(Vashisthaetal.,2005).Manycompaniesgodirectly in

for a subsidiary or local offices instead of opting for joint ventures, as there

managementiscomfortableindealingwithinternationalandlocalmarketoperations.

Thecommontermsusedforthiskindofmodel includeoffshoredevelopmentcentre

(ODC),captivedevelopmentcentre,branchorlocaloffice.

Companies usually use such a model when they already have very large physical

presences in thecountries involved in theoffshoring.Sometimesthecaptivecentres

Page 27: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

27

run independent businesseswith their ownbudget and bottom-line accounting.GE,

HSBC,andAmericanExpressareconsideredthemostsophisticatedatdeploying this

model. Another example is Citibank who does commercial banking in Brazil and

Portland.

Theadvantagesofthismodelare,itguaranteesmarketforacompany’sservicesandit

helps in establishing management hierarchy. It also alleviates some organisational

issuessuchascontrolandpoliticsthatmanagetheback-officeoffshoreactivitieswith

external vendors (Robinson et al., 2004). This approach has one key challenge that

apart from internationalisation and localisation of business management, managers

are concerned about finding the right staff, line works, technical experts and line

managersfrommulticulturalbackgrounds(Aronetal.,2005).

Manylargeorganisationsarecomfortableinmanagingtheirtechnologydevelopment

andinnovationatlocaloffices.LargesoftwaredevelopmentcompaniesincludingIBM,

Microsoft and Oracle already have global marketplace and are comfortably moving

workaroundtheworld(Babu,2005).

2.2.1.4 OffshoreOutsourcing

OffshoringOutsourcing is also referred, asoffshoring. It is themost commonlyused

business model by companies. In this business model external suppliers that are

located in other countries (offshore) provide software development services

(Prikladnickietal.,2012).Carmeldefinesoffshoringasmovingbusinessprocessesthat

werebeingdoneatalocalcompanytoaforeigncountryinordertotakeadvantageof

cheaplabour(Carmeletal.,2005).Whileselectingthisbusinessmodelcompaniescan

choosefromthreedifferentapproachessuchas:

i. Service-provideroffshoring,

ii. Dedicatedcentresand

iii. Third-partytransplant.

Page 28: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

28

In service-provideroffshoring,companiessubcontractdevelopmentwork tooffshore

organisationsinordertofocusoncorebusinessactivities(Vashisthaetal.,2005).The

advantagesofchoosingthistypeofoffshoringratherthanbuildingsubsidiaryoutletsis

similar to the advantages provided by offshoring rather than keeping all the

functionalities in house such as getting product developed at low cost and

concentratingmoreoncorebusinessactivities(Vashisthaetal.,2005).Henceinorder

toavoidtherisksattachedwithoffshoringandcapitalizefromthebenefitsitprovides

companies choose to outsource projects, program, and individual work orders to

offshorevendors.

Thismodelisbecomingincreasinglypopularanditencompassesawiderangeofwork

includingsmallprojectstomulti-yearcontractscontainingofbudgetup-tomillionsof

dollars(Aronetal.,2005).PopularcompaniessuchasGE,AmericanExpress,VeriSign

andAbbeyNationalarealreadyusingthismodelsuccessfully(Vashisthaetal.,2005).

Anotherapproachofthismodelistocreateadedicatedcentrethatissomecompanies

are too cautiousaboutquality,whichprevents them fromhiringanoffshore service

provider,andtheyalsohaveissueswithcost,whichpreventsthemfrombuildingtheir

ownoffshorecentre.Suchcompaniestakeanalternativeapproachinwhichtheybuild

dedicatedcentrerelationship.Inthismodelanoffshoresupplieroperatesadedicated

centreforacompanybutthestaff,equipmentandresourcesareallwhollydedicated

tothecompany.

Such centres do share some processes and long-term risks, which include co-

ownership or co-leasing of resources. An example of a company using thismodel is

Wipro.WiproisadedicatedcentreforSunMicrosystemasitrunsthe“Orbit”,whichis

ahighlytechnicaldeveloperassistancecentreforSunMicrosystem’SolarisOperating

System(Sadagopan,2002).Afterworkingasadedicatedcentrefor10yearstheynow

have access to Sun’s Wide Area Network and troubleshoots developer needs from

aroundtheworld.

Page 29: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

29

In third-party transplant approach, a third-party rather than a company builds and

maintains the offshore presences of a company (Vashistha et al., 2005). Many

companies that already outsources theirwork on onshore third- party locations use

thismodelasit’sanaturalprogresstomovetheirworktooffshorelocationsinorder

toeithercutdownoncostortogainprofitbymarginingwithathird-party,orboth.

Anexampleofacompanyusingsuchamodel isAccenture. Ithasmorethan83,000

employees;over5,000arebasedinlow-costdeliverycentresinlocationssuchasIndia

and the Philippines (Robinson et al., 2004).This allows its client companies to that

advantage from the low- priced labour without having to go through the risk of

starting up in those markets. The objective of Accenture is to provide a faultless

outsourcingexperienceforcorporations(Hendriketal.,2011).

Thismodelallowscompanies likeAccenturetodistributeandmanagetheiractivities

acrossmultiple global locations at lower rateswithout risk. It also answers to faster

time-to-market requests by dividing work among onshore and offshore locations

(Robinsonetal.,2004).Manylargecompaniesthathireglobaloutsourcerspreferthis

distributed approach as this model saves clients from huge investments on team

employmentanditadaptstothechangingrequirementsoftheclient.

2.2.2BenefitsofOffshoreSoftwareDevelopment

BasedupontheframeworkmentionedinFigure2.1thefocusofthisreportisonthe

offshoring.Inthissectionwewilldiscussthebenefitsduetowhichcompanieschoose

offshoresoftwaredevelopment(Hittetal.,2002).

2.2.2.1 EconomicBenefits

AsmentionedinChapter1thatthemainreasonforcompaniestoswitchtooffshoring

istocutdownoncost(Pilattietal.,2006;Radlo,2016).Similarlyaresearchdoneby

Smiteconfirmsthatthemainreasonforcompaniestoadoptoffshoredevelopmentis

to reduce cost (Smite et al., 2011). Cut-down on cost is achieved by paying lower

Page 30: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

30

salariestotheiremployees(Smiteetal.,2011).AsinIndia,asoftwaredeveloper’sbase

annualsalaryisU.S$15,000thatisonequarterofthesalaryofanIrishdeveloperwho

earnshalf incomparisontoaUSdeveloper(Conchúiretal.,2009).Othereconomical

factorsthatencourageoffshoringare interestrates,developmentofcapitalmarkets,

capitalcostanddevelopmentoftechnologycentres.

Among the above-mentioned factors, development of technology centres plays an

important role in finding the required resources.We know that talenteddevelopers

arethekeyfactorforgreatdevelopmentproductivityandqualityhoweveritisdifficult

tofindthemingeneral.Withthehelpofoffshoringthisconstrainthasbeensolvedas

itprovidescompanies’accesstotechnicalexpertsfromallovertheworld(Smiteetal.,

2011).ForexamplecountrieslikeIndiaandChinaarehighlypopulatedastheyhave1

billionpeopleandtheyproducehundredsofthousandsofsoftwareengineersperyear

(Conchúiretal.,2009).

Manysoftwarecompaniesgetintooffshoresoftwaredevelopmentinordertoprovide

theirclientswithawidehorizonofexpertstochoosefrom.Astheygatherspecialised

peoplewith specific skill setandability toexcel inonearea,whichenables them to

deliverperfect-engineeredapplications.

Anotheradvantageprovidedbydevelopmentoftechnologycentresisthatitprovides

competitive advantageby getting innovative ideas fromdifferent countries. Thishas

been also confirmed by amanager at Global Investments who said “Having people

coming from different backgrounds will always help, getting different views from

different people, since people coming fromdifferent parts of theworldwould have

differentwaysofdoingsomething.” (Conchúiretal.,2009).ResearchdonebyPorter

andStern shows thatAsianeconomies showahigh rateof investment intonational

innovativecapacityincomparisontoLatinAmericaneconomies(Porteretal.,2001).

Page 31: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

31

2.2.2.2 Political-LegalBenefits

Political-legalbenefitsincludetaxationlaws(Hittetal.,2002),rightsandworkinghours

of labours, trade barriers such as tariff and non-tariff barriers (Stack et al., 2005).

Treaties and agreementwithin trade unions such asMERCOSUE,NAFTA andASEAN

playanimportantroleinencouragingcompaniestogoforoffshoring.Anexampleof

trade barriers is that for the past 10 years they keep on decreasing, which aid in

facilitatingoffshoreagreements(Jahnsetal.,2006;Oshrietal.,2015).

An example of flexible labour laws can be see from the success of an overseas IT

services providerWipro. It is India’s most successful outsourcing consultant. It gets

12%of itswork fromUKcompanies (TheEconomist,04-03-2004)and in2012 ithas

achieved the awardof ‘OffshoringProject of the Year' byUK'sNationalOutsourcing

Associationfortheirproject ‘BTRecognized’(Wipro,14-12-2012). Inastudydoneby

EconomicTimesshowedthat India isstill theNo.1destinationfor IToffshoring(The

EconomicTimes21-12-2010).

Considering that UK economy only represents one-sixth of the west-European total

economyshowshowmuchUKcompaniesareinclinedtowardsoffshorebusiness.One

majorreasonbehindthisistheflexiblelabourlawsintheUK,whichmakesitrelatively

easyforUKcompaniestorelocatejobsoffshore.

As thepolitical and legal factors provide certainbenefits they alsohave adownside

suchasduetothemlabourconditionsareexploitedandsomedebatethatduetothis

thenational labourmarket iseffectedasthenation losses jobstooffshorecountries

thoughthereisstillnoconsentonthismatter(vonCampenhausen,2005).Anexample

of this is that in a debate, titled “Offshoring in 2012 and beyond” held by British

ComputerSocietyconcludedwiththattheUKisnotgoingtonecessarilyloseIT-related

jobstooverseasprofessionalsasinorderforoffshoringtoworksuccessfullytheyneed

ahighlyskilledteamontheonshorelocation,whichcreatesnewjobopportunitiesfor

thepeopleintheUK(BritishComputerSociety,2012).

Page 32: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

32

2.2.2.3 DemographicandGeographicBenefits

Socio-demographic benefits include population size, age structure, education levels,

workforcemotivationandtimezonedifference.Asmentionedearlierthatincountries

likeIndiaandChinaarehighlypopulated.Theyhave1billionpeopleinwhich53%of

the population is under the age of 25 (Robinson et al., 2004) hence producing

hundredsofthousandsofsoftwareengineersperyear(Conchúiretal.,2009).Another

significantfactoristheavailabilityofEnglish-speakingpopulationincountieslikeIndia,

South- Africa and Philippines, which makes it easy for companies to outsource

customerservicessuchascall-centrestosuchlocations(vanZoest,2004).

Considering the time zonedifferencebetween theoffshore countries companies cut

downon costby increasedevelopment timebyadopting “follow the sun”workflow

which means it allows 24 hours development as due to different time zones a

company’s employees can do development 24hrs a day (Carmel, et al., 2001). For

exampleanemployeeworksfrom9a.m.to5p.m.intheUSA.At5p.m.shehandsover

theincompletetasktoacolleagueinAustraliawhoworksfrom9a.m.to5p.m.based

onhistimezone.At5p.m.accordingtohiscountry,hetransferstheupdatedtasktoa

colleagueinPolandwhoworksontheupdatedtaskforthenexteight-hoursandthen

forwardsittohiscolleagueintheUSA(Gupta,2009).

WhiletheemployeeintheUSAhadleftworktwoofhercolleaguesworkedonhertask

aswhenshewillcometotheofficenextmorningalotoftheworkwouldhavebeen

done. Thiswork scenario takes advantage of the geographical distances as it allows

peoplefromdifferenttimezonestoworkround-the-clockinordertobuildsoftware

(Gupta,2007).

Thework distribution among the team can be done in twoways. First either the 3

teamsdistributedondifferentgeographicallocationsworkonthesametaskandeach

teamkeepsupdatedthetaskasmentionedintheabovescenarioorsecondlyamost

efficientwayisthatwedivideddifferentaspectofthesameproblemamongtheteam

Page 33: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

33

for example in Figure 2.2 we can see how a problem has been distributed among

differentteamsallovertheworld.

Figure2.2.DistributionofWorkamongMultipleDistributedTeams.

2.2.3.4 TechnologicalBenefits

Technological benefits are referred to the development of telecommunication and

transportationtechnologiesespeciallytheInternetandmobilecommunication.Most

ofthesedevelopmentshappenedduetothedramaticincreaseinthememorysizeof

microprocessors,storage, increaseintheintegrationof informationtechnologiesand

telecommunications(Picotetal.,2003).

Many companies started moving towards offshoring as it became cheaper to

communicate with offshore offices via conference calls and video conferencing

(Prikladnicki et al., 2012). With the help of cheaper technology available the

organisational and national boundaries remained no longer important as now

companiescanrelocatetheirofficestooffshorelocationswithoutfacingahugehurdle

ofcommunicationandtransportationcosts(Jahnsetal.,2006;Oshrietal.,2015).

Similarly use of standard tools for development of software across countries helps

informationsharingasalltheinformationisrepresentedinthesameformat(Beulenet

al.,2005).Fromaservice-providerpointofviewuseofstandardglobaltoolssupports

Page 34: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

34

consistent and cost effective service provisioning, which means it allows consistent

follow of information throughout the team and it encourages efficient delivery of

services(Beulenetal.,2005).

2.3 AStudyonIdentifyingtheChallengesofOffshoreSoftwareDevelopment

As highlighted in the previous section there aremany benefits to adopting offshore

development, however as it continues to grow (Damian et al., 2006) it has been

observed that it causes some challenges, due to temporal, geographical and socio-

culturaldifferences (Holmstromet al., 2006).As softwaredevelopment is ahuman-

centric and socio-technical process, it depends on complex interaction, attitudes,

behavioural norms and communication approaches, which can lead to

misunderstandings due to anymisinterpretation of the project aims that can result

intoconflicts,mistrustandunderutilizationoftalent(Ozawaetal.,2013).Studiesdone

by Carmel (Carmel et al., 2005) and by Sahay (Sahay et al. (2003) show that these

challengescancausecomplications to theprojectprocessessuchascommunication,

coordinationandcontrolofprojectactivities(Damian,2002,Janetal.,2016).

It has also been observed that due to the significant differences in engineering

culture/stylearoundtheworldcollaborationsbetweencountrieshaveuniqueflavours

(Herbslebetal.,2005). In this sectionwewill studyhowtemporal,geographicaland

socio-cultural differencescan pose different challenges for companies adopting

offshoresoftwaredevelopment.Thestudyfocusesonthechallengesthatoccurinthe-

offshoringbusinessmodel,offshoreoutsourcing.

As the characteristics of onshore and offshore are different causing different

challenges. Based on an extensive literature review on offshore software

development,we identified fourkeychallenges thatoccuras theteam isdistributed

over different time zones and these challenges also affect the adoption of agile

practices in offshore development. In this section we study the challenges that are

inherenttooffshoringandthenwediscusshowtheyaffectagilepractices.Table2.1

Page 35: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

35

showstheresultsofthestudythatwecarriedouttoidentifytheinherentchallenges,

which are trust; socio-cultural; communication and co-ordination; and knowledge

transferissues.Thereasonforchoosingtofocusonthesefourchallengesisbecause

of their repeatedoccurrence in literature. Table2.1 shows the frequency that these

challengeshaveoccurredintheliterature.Thefirstcolumnshowsthecategoriesofthe

challengesconstructedfromthedataextractedfromtheevidencethatarepresented

inthesecondcolumn.Eachoccurrencehasthesameweight,thusthefrequencyofthe

occurrence shows the number of times a category has occurred in literature. The

selectedstudiesarepresentedinAppendixA.

Table2.1.ChallengesinOffshoreSoftwareDevelopment.

No. Challenge Evidence Occurrence

1 Trust E1, E2, E3, E4, E5, E6, E7, E11, E13,

E19,E20,E24,E28,E29,E30,E33,E38,

E41,E42,E45,E46,E47,E49,E54,E56,

E57,E62,E67

29

2 Socio-Cultural E1, E2, E3, E4, E6, E7, E11, E12, E16,

E18,E19,E24,E26,E27,E28,E31,E32,

E35,E41,E42,E46,E47,E44,E48,E52,

E62,E66,E67

29

3 Communication

andCo-ordination

E1,E4,E6,E8,E9,E10,E16,E16,E18,

E19,E21,E22,E23,E24,E25,E28,E36,

E37,E39,E40,E41,E43,E46,E47,E48,

E50,E52,E53,E55,E58,E59,E60,E61,

E62,E63,E64,E65

37

4 Knowledge

Transfer

E1,E10,E14,E15,E22,E32,E34,E46,

E47,E51,E53,E55,E60,

13

Page 36: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

36

2.3.1 TrustIssues

The firstmajor challenge to offshore development is the factor of trust. Trust is an

important aspect of interpersonal (Boon et al., 1991) aswell as inter-organisational

relationship (Ring et al., 1994) in order to have successful partnership and alliances

amongthefirms(Dasetal.,1998).Itisalsoconsideredasacrucialfactorforbuilding

business relationships as trust enables open communication which, results in high

performance of the team, high quality of projects and satisfactory decision making

process(Kanawattanachaietal.,2002;Morganetal.,1994;Rousseauetal.,1998).

In terms of software outsourcing, trust helps in establishing an open exchange of

information and cooperative behaviour among the companies. It also helps in

removingconflictandnegotiationonsoftwaredevelopmentcostanditalsoimproves

response to any crises, whichmight occur during a project (Rousseau et al., 1998).

Moreover trust also enables ease in development process as it encourages an open

discussion in the requirement gathering process and helps remove unnecessary

expensivedocumentation(Humphrey,1989).

Trustplaysanimportantroleinoffshoresoftwaredevelopmenthoweveritisdifficult

to establish because it is difficult to develop a relationship with unknown foreign

partnersthataretimelyandgeographicallydistant(Prikladnickietal.,2012).Themain

reason behind this is that the companies do not have any relationship beyond the

projectitself,whichisofalimitedduration.Moreovertrustcanbedifficulttoestablish

as most projects are developed through structural mechanisms, which include

deliverables, penalty clauses and reporting arrangements whereas in-house

developmentrelaysmoreontrustratherthanondetailsstructuredreporting(Lander

etal.,2004).

Whilerealisingthedifficultyinestablishingtrustinoffshoreprojectitisstillneededin

ordertocooperatedwithforeigncompaniesasdistrustcanhurttheperformancesasit

leads to finger pointing and each organisation starts focusing on how other

organisations may have hurt the project whereas trust improves the performance

Page 37: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

37

(Sabherwal, 1999). Issues in trust have led some organisations to create their own

software development centres in countries like India, China, Russia and Brazil

(Prikladnickietal.,2012).InSection2.4wehavedemonstratedhowtrusteffectseach

stageofsoftwaredevelopmentlifecycle.

2.3.2 Socio-CulturalIssues

Inoffshoredevelopmentdistributedteamsfacemanysocio-culturaldifferences,such

asdifference in languages, national traditions, values andnorms. Kluckhohn identify

fiveareaswhichall-culturalgroupshavefundamentalthroughdifferingbeliefs,which

arelistedasfollows(Kluckhohnetal.,1961):

• Howacultureviewshumannature,

• Therelationshipofitspeoplewithnature

• Priorityitgivestotraditionalcustoms,futureplansorpresentevents.

• Howisthesocietyorganised,isitlinearinhierarchy?

• Howisbusinessandlifeconducted?Publicallyorprivately,oramixofboth?

Similarly another widely refereed work on culture is by Hofstede (1980,1997), who

developedasetofculturalindices.Heidentifiedfiveculturaldimensions,whichare:

• PowerDistance

• Individualism/Collectivism

• Masculinity/Femininity

• UncertaintyAvoidance

• Long-Term/Short-TermOrientation.

Thesocio-culturaldistance is themeasureofoneperson’sunderstandingofanother

person’svaluesandnorms (Pilattietal.,2006). It iscommonlyobservedthatpeople

from one society strangely perceive the actions of people from another society as

noted by Kotlarsky, culture can have a huge effect on how people understand and

reacttocertainsituations(Kotlarskyetal.,2005).Ithasalsobeenobservedthatteam

Page 38: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

38

memberswithdifferentvaluescauseconflictswithintheteamresultingindecreasein

motivation, involvement and cohesiveness with the team members (Ozawa et al.,

2013).

TrompenaarsandHampden-TurnerbuildtheirworkonHofstede’sculturaldimensions

withthefocusontheimpactof interculturalvariancesonbusinessandmanagement

process (Trompenaars et al., 2004). They developed a set of seven values for

dimension,whichareshowninTable2.2below:

Table2.2SevenValuesforCulturalDimensions(Trompenaarsetal.,2004).

No. CulturalValueDimension

1.

Universalismsvs.Particularism

Rules to be followed under all

circumstances

Special consideration based on the

uniquenessofthesituation.

2. Individualismvs.Communication

People believe in personal freedom

andachievement

Peoplebelievethatthegroupismore

important than individual

achievement.

3. Specificvs.Diffuse

Keep work and personal lives

separate. Focused on work-oriented

relationships.

Overlap between work and personal

life.Believethatinordertohavegood

relationshipswithco-worksisvitalfor

thesuccessoftheirbusiness.

4. Neutralvs.Emotional

Page 39: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

39

Reluctant to reveal their feelings and

make an effort to control their

emotions.

Display their thoughts and feelings

openly. People find ways to express

theiremotions,evenspontaneouslyat

work.

5. Achievementvs.Ascription

Theorganisational culture values you

based on your performance at work.

They believe that you are what you

do.

Status intheorganisationisbasedon

a variety of factors such as power,

titleandposition.

6. SequentialTimevs.SynchronousTime

Likeevents tohappen inasequential

order. They place a high value on

punctuality, planning and sticking to

schedules.

Focus on past, present and future

events as interwoven periods. Work

on several projects at once and

consider planning and commits

flexibly.

7. InternalDirectionvs.OuterDirection

Control nature of their environment

to achieve their goal. This includes

how they work with teams within

theirorganisations.

Consider that the nature of the

environment controls them and that

they must work with their

environmenttoachievetheirgoals.At

work they focus their actions on

others in order to avoid conflicts

where possible and need constant

reassurance that they are going a

goodjob.

Page 40: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

40

Tylor,awellknownSociologistandAnthropologistdefinedculture,as“Cultureisthat

complexwholewhich includes knowledge, belief, art,morals, law, customs and any

other capabilitiesandhabitsacquiredbymanasamemberof society” (Tylor1871).

Fromthisdefinitionofcultureitisclearthatcultureplaysagreatroleinallaspectof

life. Similarly in offshore software development the socio-cultural distance between

distributesteamsisacomplexdimensionasitinvolvesorganisationalculture,national

culture and language, politics and motivation of individuals and work ethics

(Holmstrometal.,2006).

Ozawa et al. (2013) identified three main challenges causes due to socio-cultural

differences,whichare:

i) Differenceintheopennessinthesociety.

ii) Differenceinthewillingnesstoadoptnewtechniquesandtechnologies.

iii) Differenceincommunicationmethods,implicitoverexplicitcommunication

The most obvious disadvantage is language, as English is not the first language in

counties like India, Pakistan and China so extra effort is required to communicate.

Differences in language can lead to miscommunication due to language style or

incorrect use of vocabulary (Carmel, 1999; Hofner et al., 2007). Some reports show

thatlanguageproblemaffectstheproductandthecodeitselfasthecommentsinthe

codefromanoffshoreteamwhosefirstlanguageisnotEnglishmayseemoddornot

understandable byonshore team.Hence adding a hidden cost of codemaintenance

(Matloff,2005).

InaresearchdonebyLee,showsthatculturaldifferencesaffecttheproductandthe

processofdevelopment(Leeetal.,2001).Alotofworkhasbeendoneonhowmuch

culturaldifferencesaffect theendproduct inorder forpeopleofa region toengage

withtheproduct(Yeo,2001).ForexampleanemployeeinaUScompanycandirectly

passworktohispeerinIndiaeasilybypassingthemanagementhierarchywhereasan

employee in India cannot do so without upsetting higher management. This shows

Page 41: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

41

howculturesoftwodifferentcountriesaffecttheworkplaceenvironmentasinIndia,

theyfollowstrictmanagementhierarchiesandinUStheydon’t(Matloff,2005).

AsimilarexperiencewasobservedwhenaJapanesecompanyoffshoredtheirsoftware

projecttoacompanyinChina(Ozawaetal.,2013).Theywerefacingdifficultiesdueto

thelowqualitydeliverablesandahighturnoverrateofChinesemembersbecauseof

socio-culturaldifferences.BasedonOzawaetal.(2013)wepresentasummaryofthe

socio-culturaldifferencebetweenJapanandChinainTable2.3(Ozawaetal.,2013).

Table2.3.CulturalComparisonbetweenJapanandChina(Ozawaetal.,2013).

No. Japan China

1. Ajobisforalifetime. Acquirenewskillsandswitchjobs.

2.

Hire fresh graduates and teach them

tofitintheirorganisationratherthan

tohireexperiencedpeople.

Preferhiringexperiencedpeople.

3.

Focus on avoiding failure and use

existing methodologies rather then

focusing on attaining success and

tryingnewtechnologies.

Want to acquire new skills and try

new methodologies and

technologies. More focused on

success.

4.

Tight grouped communities, so they

understand each other without

“implicitly”sayingthem.

Morediversity, sousemoreexplicit

informationincommunication.

5. Questioningconsideredhumiliation. Questioningconsideredhumiliation.

Due to the differences in the teams’ socio-cultural values, the Japanese company

foundithardtoretainitsChineseemployees,astheirmotivationtoworkwaslow.The

projectspecificationswerenotclear,astheJapanesecompanyreliedmoreonimplicit

Page 42: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

42

information,whichwerenotcleartotheChineseteammembersandsincequestioning

isconsideredhumiliation inboththecultures, theChineseteammembersdidn’task

the Japanese clients to clarify the requirements hence resulting in low quality

deliverables.

MacGregor identified 5 cultural patterns, which highlight the problems caused by

socio-cultural challenge when the team is distributed over different locations

(MacGregoretal.,2005).Table2.4,givesanoverviewoftheirpatterns.Thoughthey

arecallingthempatternstheyhaveclassifiedsomeofthemasanti-patterns.

Table2.4.CulturalPatternsinSoftwareProcessMishaps(MacGregoretal.2005).

No. PatternName Assumption PatternOverview

1. Yes(butNo) PersonAhasassumed

PersonBmeant“YesIwill

doit,whenPersonB

meantIheardwhatyou

said.”

- PersonBperceivedPerson

Atobehigherin

hierarchy.

- Bdoesn’twanttoaffect

thedeadline.

- Makeclarificationand

rephraserequest.

2. ProxyPattern Companiesarenotwilling

toinvestinintercultural

training

- Placebi-codedindividuals

inapositionwherethey

cantranslatebetweenthe

cultures.

3. We’ll-take-you-

literally(Anti-

Pattern)

Differentculturesmay

havedifferentperceptions

foradevelopment

practice,processor

- Resultingininefficient,

frustrationanddistress

amongdifferentcultural

teams.

Page 43: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

43

artefact.

4. We’re-one-single-

team

Agileencourages“flat

team”howeverinsome

culturestheyfollowa

morehierarchical

approachdependingon

powerdistance

- Formalcommunication

withpeopleonhigher

hierarchylevel.

- Developersdon’tfeelthey

havearighttotake

decisionsregardingthe

systemtheyare

developing.

5. The-customer-is-

king(Anti-Pattern)

Lesshierarchydominant

structureencourageopen

anddirectcommunication

betweentheclientand

developers.Whilehigh

hierarchyorganisation

preferindirect

communicationbetween

theclientanddevelopers.

- Whenproblemarises,

developersfromhigh

hierarchyorganisation,

thedeveloperscannot

contacttheclientdirectly

hencecausingdelayin

developmenttime.

- Similarlytheclientmight

feelthatthe

communicationislimited.

- Asnatureofsocialculture

alsoaffectsthe

relationshipbetweenthe

developersandclientsuch

aswhereitiswork-

orientedorrelationship

oriented.

Page 44: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

44

Fromtheaboveexamples,wecanseethatsocio-culturalconflictscancauseproblems

in the development of an offshore project. In order to solve such conflicts, the

organisationsneedtocreateanenvironmentthatencouragesteamstocommunicate

witheachother.Theyneedtocontinuouslyadaptteamrolesbasedonthechanging

relationship between the teammembers. This can reducedissatisfaction among the

employeesandincreasetrustresultingingivingeachothermoreresponsibilities,thus

improvingthequalityofsoftware.

2.3.3 CommunicationandCoordinationIssues

In offshore development as the team is separated and implemented at different

geographical locations they face many communication and coordination issues

because the team members work on different time zones or time shifts in a day

(Alzoubietal., 2016). This reduces theopportunity for real-timecommunication (Al-

Zaidietal.,2017).Thebasicissueinoffshoringishandlingthecomplexcommunication

and team coordination, as they can’t have frequent face-to-face communication

(Sahayetal.,2003).Insufficientteamcommunicationoftencreateschallengessuchas

trust,relationshipsandefficiencyoftheteam(Lanubileetal.,2013).

AresearchdonebyEbertshowsthatapproximatelyhalfofallthedistributedprojects

fail due to insufficient communication and trust among the team members (Ebert,

2012). In order to increase communication among the teammembers, awareness is

necessary. Awareness in distributed teams helps in ensuring that individual

contributions,contributetothewholegroup’sefforttodevelopsoftwaresuccessfully.

PaulDourishandVictoriaBellottidescribedgroupawarenessas“anunderstandingof

the activities of others, which provides a context for your activity” (Dourish et al.,

1992).

Groupawarenesscanhelpovercomesomechallengesofoffshoreprojects(Lanubileet

al.,2013).Therearefourtypesofgroupawareness,whichare(Gutwinetal.,1996):

Page 45: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

45

• Informal awareness provides information about which team members are

aroundandavailableforwork.

• Group-structuralawarenessfocusesontheknowledgerolesonteammembers

andstructureoftheteam.

• Workspace awareness gives information about the interactions the team

membershavewithsharedresourcesataworkspace.

• Social awareness consistsof information that teammembersmaintainabout

each other in conversational context for the purpose of social connections

withintheteam.

In order to achieve group awareness in distributed teams, technology plays an

important role. In the survey conducted by Lanubile focused onwhich technologies

andtoolssupportgroupawarenessandcollaborationsuchasforinformalawareness,

IM (Instant Message) and VoIP (Voice over Internet Protocol) tools can be used

similarlyforworkspaceawarenessemailsandRSScanbeused(Lanubileetal.,2013).

Another way to increase the communication between the teams is to keep the

workinghoursflexiblesothattheonshoreandoffshoreteamscanachieveoverlapping

hours with each other. For example in order to get real-time communication,

occasionallyoneteamhastostaylateandtheotherteamhastocomeearlytohavea

combinedmeetingviavideo/audioconferencingtools(Yuetal.,2016).Henceinorder

to organise work between geographically distributed teams we must consider

temporaldistancetofacilitatethereal-timecommunication(Holmstrometal.,2006).

Temporaldistance isameasureof thedislocation intimeexperiencedbytwoactors

whowishtointeract(Pilattietal.,2006).

Asynchronous tools are seen as a crucial part for communication and coordination

amongremotelocations.Duetotemporaldistancetheincreaseintheresponsetime

Page 46: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

46

createsafeelingof“beingbehind”aswhenonelocationsendsarequesttheygetreply

thenextday.Asseen inthecasestudydonebyBolandandFitzgeraldasynchronous

communicationovernightcanbeoverwhelmingforadeveloperbeginningworkinthe

morning (Boland et al., 2004). Also a study done by Holmstrom shows that limited

overlapwithcollegescausesdelay inresponsewhichmakespeople losetrackof the

overall work process which leads to problems in distributed yet time-crucial work

(Holmstrom et al., 2006). Similar results were noted by Herbsleb, the drag in the

problemand response could cause increase in the cost (Herbsleb,2007).Asa result

response time increases when working hours do not overlap between the remote

locations(Sarkeretal.,2004).

2.3.4 KnowledgeTransferIssues

Knowledge is a very common and widely used concept. In order to clarify what is

referredasknowledgewehaveusedthedefinitionprovidedbyDavenportandPrusak

(Davenportetal.,1998).Theydefinedknowledgeas“Afluidmixofframedexperience,

values, contextual information, and expert insight that provides a framework for

evaluating and incorporating new experiences and information. It originates and is

applied in theminds of knowers. In organisations, it often becomes embedded not

only in documents or repositories but also in organisational routines, processes,

practices,andnorms.”(Davenportetal.,1998)

Using the above-mentioned definition of knowledge, as companies started moving

their business and development process to offshore locations, knowledge transfer

became critical (Zahedi et al., 2016).A studydonebyAccenture shows thatpeople,

patentandknowledgecomprisefor70%ofExchange-listedcompaniesvaluewhereas

in1980itwasjust20%(Aronsson,2007).Thisshowshowimportantknowledgeisfor

companiesandanymistakeduringaknowledgetransfercancauseanegativeaffecton

thecompanies.Inoffshoringtheprocessofknowledgetransferisnotstraightforward

as when transferring knowledge from one country to another the factor of cultural

differencescauseschallenges(Kediaetal.,2007).Culturedoesnotautomaticallyaffect

Page 47: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

47

theknowledgetransferprocessbutifthereispoormanagementitcancauseprojects

tofail(Javidanetal.,2005).SimilarlyinastudydonebyRadoff’sshowsthatifwedo

notunderstandtheculturaldifferencesbetweenthecountriesitcancauseanegative

impact on outsourcing (Radoff, 2006). As we need to understand the cultural

differences inorder to successfullymanage theprojects. The report also shows that

thecompaniesthateducatetheiremployeesof interculturalcommunicationincrease

theirproductivityby30%.

Onemajorchallengeorganisationsface,whichdirectlyaffectstheknowledgetransfer

process, is when they decide to offshore their process before they have tested the

readiness of their management. This includes the difficulties of keeping awareness,

andknowledgecohesionwhenvariousworkinggroupsconcurrentlyaccessit(Khanet

al., 2014). These difficulties directly affect how work is distributed through task

allocation in distributed environment. According to Sajjad the factors presented in

table2.5shouldbeconsideredwhileallocatingtaskswhentheteamisdistributedto

overcometheknowledgetransferchallenges(Sajjadetal.,2015).

Table2.5.FactorsAffectingTaskAllocationProcessinOffshoreDevelopment(Sajjad

etal.2015).

No. Factors Percentage AffectofFactoronTaskAllocationProcessin

OffshoreDevelopment

1. SiteTechnical

Expertise

68% Selectsitewithappropriatedomainexpertiseand

knowledgeiscrucial.

2. TimeZone

Different

63% Allocation of tasks should be based on the time

zone.Therearetwocommonapproachesusedby

practitionerswhileconsideringthetimezone,they

eitherallocate tasksbasedonTime-ZoneBandor

Follow-the-Sun.Theselectionismadeconsidering

the fact that it shouldallow thedifferent sites to

be able to have synchronous communication to

Page 48: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

48

allowknowledgesharing.

3. Resource

Cost

47% ProjectManagers do aim to assignwork units to

low cost labour sites in order to cut down on

developmentcost.

4. Task

Dependency

44% Keeping the cost benefit in mind, it is however

advised to not only consider the cost while

assigning the tasks but to also consider task

dependencies. As high task dependent tasks

shouldbe assigned to the same location inorder

tosavetimeoncommunicationandcoordination.

5. Vendor

Reliability

36% The perceived reliability of a particular vendor

helps clients to bettermanage tasks allocation in

globalsoftwaredevelopment.

6. TaskSize 29% Tasksizehasalsobeenconsideredimportantasit

helps in deciding how much time the team will

spendtodevelopit.

7. Vendor

Maturity

Level

21%

Itisimportanttoconsiderthematuritylevelofthe

vendor as, if they are new to offshore

development, they may face issues in code

integration.

8. Local

Government

Regulations

13% This factor isn't directly related to the software

development process, however it has been

perceivedasanimportantfactortobeconsidered

whiletaskallocation.

Page 49: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

49

9. Requirements

Stability

7% Based on the type of project, requirements

stability is important in order to break them into

tasksfortheteamtodevelop.Howeverithasonly

beenconsideredtobean important factorby7%

based on the selected literature of this research,

as it is a universal fact that requirements do

change and organisations have placed

requirementchangemanagementmodelsinplace

tohandlethisissue.

10. Product

Architecture

7% Since the requirements keep changing, the

product architecture keeps evolving throughout

thesoftwaredevelopmentlifecycle.Thishasbeen

consideredasanimportantfactorby7%basedon

thearticlesselectedfromliterature.

11. Intellectual

Property

Ownership

2% In distributed software development, as code is

being developed at different locations, it is

important to consider the issue of intellectual

property however this factor isn't considered

critical for task allocation as the client is usually

the onewho has the intellectual property of the

codebeingdeveloped.

Thecommonproblemsbetweenwiththecompanythatistransferringknowledgeand

the company that is receiving the knowledge are: i) communication problem, ii)

differentwaystoconductwork,iii)differentworkattitudes,andiv)differentdecision-

makingprocess(Radoff,2006).

Page 50: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

50

2.4 CriticalAnalysisofOffshoreChallengesonSoftwareDevelopmentPhase

Inthissectionwewilldiscusshowtheabove,identifiedchallengesaffectthedifferent

phasesofsoftwaredevelopmentandpresentacriticalanalysis.

The traditional software development lifecycle consists of five stages, which are,

Requirements, Design, Coding, Testing and Integration. Figure 2.3 below shows the

softwaredevelopmentlifecycle.

Figure2.3.TraditionalSoftwareDevelopmentLifecycle.

Theexecutionofthesephasesdependsonwhicheversoftwaredevelopmentapproach

thedevelopmentteamdecidestoselected.Anoverviewoftheexistingapproachesis

presented in theAppendix B showing how these phases are executed based on the

selectedapproach.

Based on the literature review, we present in Table 2.6 how each phase of the

traditional software development lifecycle is affectedwhen organisations choose to

move their projectsoffshore. Wehavemapped the four key challengesof offshore

developmentoneachlifecyclephasetoshowhowtheseoffshorechallengeseffectthe

executionofeachphase.

Page 51: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

51

Table2.6.OffshoreChallengesAffectingSoftwareDevelopmentPhases.

No. Phase Offshore

Challenge

EffectofOffshoreChallengeonSoftware

DevelopmentPhase

1. Requirements Trust • Establishing correct estimates of

requirements is difficult, as onshore

team does not have clear

understanding of offshore team skills

(Alnuemetal.,2012).

• Getting the main objective and core

functional requirementsof theproject

clear toall the teammembers located

atdifferentsitesisdifficult(Herbslebet

al.,2001).

Socio-Cultural • Differences in cultural values and

language can cause misunderstanding

ofrequirements(Damianetal.,2003).

• As at the beginning of the project the

clientisn'tsureofalltherequirements,

which can result in vague

requirements, which need to be later

clarified to the teams who aren’t on-

site(Birdetal.,2009).

• Difference in ways to express

dissatisfaction, perception regarding

punctuality, scheduling, hierarch,

Page 52: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

52

urgency or risk often leads to

misunderstanding among the client

andteammembershencespoiling the

relationship (Damianet al., 2003;Niaz

etal.,2012;Bhatetal.,2006).

Communication

andCoordination

• Changesintherequirements,needsto

becommunicatedtoallthedistributed

teams. Any mistake in recording the

change can cause problems in the

development of the system (Sengupta

etal.,2006).

Knowledge

Transfer

• As the project is being developed at

different locations, there can be

inconsistencies in the work done and

documented user stories (Bhat et al.,

2006).

• Maintainingbidirectionaltraceabilityof

requirements across different sites is

difficult as each site is working on

different requirements (Berenbach et

al.,2006).

• Managing requirements, on-site

customer and daily meetings become

difficultwithdistributedteams(Bhatet

al.,2006).

Page 53: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

53

2. Design Trust • Lack of standard method that can

proactivity verify organisation

structure can createmistrust between

the client and the team (Herbsleb,

2007).

Socio-Cultural • It is difficult to communicate

architecture design decisions to

geographicallyandculturallydispersed

teams(Clerc,2008).

• Synchronous meetings of architecture

and developers are difficult, which

impinge building of common

understanding of architecture and

developers(Boschetal.,2010)

Communication

andCoordination

• Coordination problems occur due to

lack of common understanding of

architecture design (Jaakkola et al.,

2010).

• Itisdifficulttodiscoverthecorrelation

betweenarchitecturedecisionandthe

coordination requirements they will

enforce(Herbsleb,2007).

Knowledge

Transfer

• Non-textual artefacts make it difficult

to highlight and manage change

(Sengupta,etal.,2006).

Page 54: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

54

• Lack of documents that describe the

overall architecture of the software

under development (Ovaska et al.,

2003).

• Out-dated documentation leads to

rework(Cataldo,etal.,2007).

3. Coding Trust

Socio-Cultural

• Insufficient social integration can

degrade the performance, lower

motivation and satisfaction of the

developer. Resulting in creating

mistrust between the client and the

development team (Koehne et al.,

2012).

• Duetoculturaldifferences,developers

often misinterpretation each other,

causing wrong requirements to be

coded(Herbslebetal.,2005).

• Misinterpretations of technical

vocabulary due to dissimilarity in

technical cultures causes

misunderstanding, rework and

consequently delays in the projects

(Herbslebetal.,2005).

• Developersatremotesites,insufficient

use version control systems due to

different organisational cultural habits

Page 55: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

55

(Cataldoetal.,2007).

• Developers belonging to higher

economycountriesusuallydonothelp

people belonging to low economy

countries infearof losingtheir jobsto

them(Birdetal.,2009).

Communication

andCoordination

• Usage of different process and

disparity in process maturity at

different sites can cause coordination

problems(Birdetal.,2009;Herbslebet

al.,2005).

• Staff members at new offshore sites

haveatendencytonotreplyquicklyto

emails of onshoremembers (Herbsleb

etal.,2005).

• Communicating all the details and

normsoftheprocesstobefollowedto

remote teams is very time consuming

(Mullick,etal.,2006).

Knowledge

Transfer

• Difficulties in tracking information in

distributed development (Herbsleb et

al.,2005;Koehneetal.,2012).

• Divergence in tool usage among

different teams causes knowledge

transferproblems(Birdetal.,2009).

Page 56: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

56

4. Testing Trust • Customers feel insecure to trust their

real-life data with offshore

organisations, as they haven’t worked

withthembefore,hencetheygenerate

mock databases for the purpose of

testing(Senguptaetal.,2006).

• In acceptance testing, as feedback is

being provided indirectly, vital

information can be lost, causing the

client to not trust the development

team(Liskin,etal.,2012).

Socio-Cultural • Offshore testers don’t get sufficient

cooperation from the onshore

members due to misunderstanding

(Tervonenetal.,2013).

• Communicationisdifficultbetweenthe

onshore testers and offshore testers

due to the absence of a common

native language and different

vocabulary(Camachoetal.,2013).

Communication

andCoordination

• Face-to-facemeetingsaredifficultand

expensive causing communication and

coordination gaps among the team

members(Tervonenetal.,2009).

• Reduced awareness of work due to

lack of informal contact and

Page 57: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

57

geographical dispersion (Tervonen et

al.,2013).

• Limited budget restricts

communication, coordination and

collaborationmechanism (Tervonenet

al.,2013).

Knowledge

Transfer

• It is hard to spot a developer of the

codewhereabug is found (Grechanik

etal.,2010).

• Testers in the development countries

arenotfamiliarwiththeclientstesting

tools and code, which is to be tested

(Liskin,etal.,2012).

• Due to frequent misinterpretations of

requirements and interface

specification confusions and

misunderstanding occur, which cause

inconsistence, which are not exposed

until integration testing (Sengupta et

al.,2006).

5. Integration Trust • Inadequate and incomplete interface

specificationsareidentifiedonlyatthe

integration phase, which cause

mistrust among the client and

development team (Sengupta et al.,

2006).

Page 58: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

58

Socio-Cultural • It isdifficult toresolvedifficultieswith

unfamiliar remote participants while

integrating the code (Conchúir et al.,

2006).

• Due to lack of cohesiveness and

cooperation between the different

locations,theoffshoreteamfeelsthey

are integrating components of

competitors(Herbsleb,etal.,2005).

Communication

andCoordination

• Inadequatecommunicationandlackof

domain knowledge lead to lack of

understanding in developers about

requirements, which often lead to

misinterpretedandconflictingmodules

(Damianetal.,2003;Bhat,etal.,2006;

Senguptaetal.,2006).

• Communication between remote site

only through a single mediator can

because the cause of integration

failure(Čavraketal.,2012).

Knowledge

Transfer

• Implementing different code branches

at each development site can lead to

complex integration problems

(Herbsleb,etal.,2005).

• Inadequateknowledgeandexpertisein

GSD of integration team can increase

Page 59: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

59

risks of integration failure (Kommeren

etal.,2007).

• Risk of integration failure increases

withtheincreaseininterdependencies

between modules to be developed

(Herbsleb,2007).

Basedontheabovetablewecanseehoweachphaseofthedevelopmentlifecycleis

effectedbyoffshorechallenges.Fromthesefindingswecanobservehowtheoffshore

challengesare interlinkedandunderstandhowthesechallengesare interrelatedand

affect the development lifecycle such as we can now say that trust, socio-cultural,

communicationandcoordinationandknowledgetransfer issueseffectall thephases

ofthedevelopmentlifecycle.

To overcome the challenges mentioned in Table 2.6, work has been done using

differentapproachessuchaspatterns,ontology-basedandagilemethodology. Table

2.7givesanoverviewofsuchapproaches.

Table2.7.OverviewofExistingApproachesusedtoOvercomeOffshoreChallenges.

No. Approach OverviewoftheApproach

1. UseofPatternsfor

GlobalSoftware

Development

MacGregor(MacGregoretal.,2005),Shah(Shahetal.,

2012), Paasivaara (Paasivaara et al., 2003), Bricout

(Bricout, 2004), Lescher (Lescher, 2010), van Heesch

(van Heesch, 2015), Valimaki (Valimaki et al., 2009),

Pehmöller (Pehmöller et al., 2010) and Salger (Salger

et al., 2010) provided patterns to be used in Global

Software Development. Details of their patterns can

befoundinSection2.7.

2. UsingAgilePracticesto Beecham proposed to use agile practices to solve

Page 60: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

60

SolveGlobalSoftware

DevelopmentProblems

global software development problems (Beecham et

al., 2014). The aim of their researchwas to answer

theresearchquestion:

• WhatGSDproblemscanagilemethodssolve?

They interviewed24practitioners fromFS groupand

fromthattheypresented16issuesthatwereraisedby

the practitioners while they developed software

offshore.Theyanswered9issuesusingagilepractices

and partially answered 3 and left 4 unanswered.

DetailoftheirsolutioncanbeseeninAppendixC.

3. Ontology-BasedMulti-

AgentSystemto

SupportRequirements

TraceabilityinMulti-

SiteSoftware

Development

Environment

Pakdeetrakulwong proposed an ontology-based

solution using multi-agents to collect requirements

when the project is being developed is offshore

(Pakdeetrakulwong et al., 2015). Their proposed

architecturehadfouragents:

i) UserAgent

ii) RecommenderAgent

iii) OntologyAgent

iv) EvolutionAgent

Themaincapabilitiesoftheseagentsareto:

• Handle change in the requirements

(add/update/deleted).

• Identify requirements traceability information

andgeneratetraceabilitymatrix.

• Analyse change impact on requirements and

Page 61: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

61

softwareartefacts.

• Sendmessagetonotifyrelevantuseraboutthe

impactofrequirementchange;and

• Recommend incomplete requirement

information.

4. Experimentsfor

offshoreprojectto

addresscentrifugal

forces.

Based on Carmel’s identified five centrifugal forces

thatpullpeople,teamandproductgroupapartwhich

areasfollows(Carmel,2010):

• Geographicaldispersion

• Coordinationbreakdown

• Lossofcommunicationrichness

• Lossofteam-ness

• CulturalDifferences

CragLarmanandBasVoddedesignedexperimentsto

be conducted by offshore teams in order to address

these issues (Larman et. al., 2010). An overview of

theirexperimentsislistedbelow:

• Try..Fewersites

• Try..Think“multisite”evenwhenclose.

• Avoid..Believinginmulti-sitedailyscrummagic

orthatmultisiteforcesareinconsequential.

• Avoid.. Thinking distributed must mean

dispersed.

• Try..Oneiteration(Sprint)fortheproduct,not

forsite.

Similarly they designed experiments related to team

Page 62: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

62

and site structures, interaction and coordination,

multisitecultureandnorms,tool,andtests.

5. Understanding

CollaborativePractices

inDistributedAgile

Developmentusing

TheoreticalConcepts

Modi presented a research proposal in which they

usedaninterpretativequalitativeapproachalongside

case studies, to gain deeper understanding into how

teams collaborated in distributed agile development

scenario(Modietal.,2013).Thereanalysiswasbased

on theoretical concepts such as common ground,

boundary objects and awareness,. The aim of their

research was to answer the following research

questions:

• How do global teams collaborate to establish

commonground/sharedunderstanding?

• Howdoesknowledgesharingtakeplace?

• Whattransformationtakesplace?

• What can we learn from existing distributed

agileteams?

Based on their selected theoretical concepts they

explainedonhowtheycanhelpdistributed teams to

solve the collaboration challenges. Below we have

defined each concept and given an overview of how

they can help improve collaboration in distributed

scenario:

• Common Ground: According to Clark theory of

common ground regarding mutual knowledge,

beliefs and assumptions maintain that the

participants must have a shared awareness to

Page 63: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

63

carry out a joint activity (Clark et al., 1991).

According toModi’s research failure to establish

and maintain a common ground can result in

serious breakdowns in collaborative work (Modi

etal.,2013).

• BoundaryObjects:Stardefinedboundaryobjects

as objects, which are both plastic enough to

adapt to local needs and constraints of the

several parties employing them, yet robust

enoughtomaintainacommonidentifyacrosssite

(Staretal., 1989). BasedonModi’s research, in

GSDtheprojectartefactssuchasuserstories,the

sharedcodeandtestcasesaretheintegralpartof

agile and canbe viewedasboundaryobjects in-

use, as they provide a common focus to the

project goals and act as mediators for

communication, coordination and cooperation

among the team members distributed over

differentsites(Modietal.,2013).

• Awareness isdefinedasanunderstandingof the

activities of others, which provide a context for

the project activates. According to Modi’s

research the 3C collaboration model, defines

collaboration as the union of communication,

coordinationandcooperationefforts(Modietal.,

2013).

In Table 2.7 we presented different approaches that are being used to overcome

offshorechallengeshowevertheyhavelimitationsforexampleusingagilepracticesto

solve global software development problems has limitation that even though this

Page 64: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

64

approachanswersGSDchallenges itdoesnotdiscuss indetailhowpractitioners can

solve themas theyonlypresented single line solutions similarlyusingontologies for

requirementsapproachonlyfocusesonovercomingthechallengesoftherequirement

phasebyusingontologiesanditprovidesaverytechnicalsolutionwhichisdifficultto

beusedbyproductownersthataren’tfromITbackground.Furtherwehavediscussed

theseapproachesintable5.8.

2.5 AgileOffshoreSoftwareDevelopment

In this section we will first explain what agile is and then how we can use agile

methodologiesforoffshoresoftwaredevelopment.Wehavealsomentionedwhatare

thelimitationsofagilewhenusedforoffshoring.

2.5.1 AgileSoftwareDevelopment

In2001theformationofagilemanifestohasbroughtunprecedentedchangestohow

softwareisdeveloped(Becketal.2001).Themanifestofocusesonfourpointswhich

are: i) individuals and interaction over process and tools ii) working software over

comprehensive documentation iii) customer collaboration over contract negotiation

andiv)respondingtochangeoverfollowingaplan.Broadlyspeakingagileencourages

collaborativedevelopmentinwhichpeopleareinvolvedthroughoutthedevelopment

processallowingthemtoopenlyexchangewhichhelpsbridgethegapbetweenclients

anddevelopersresultinginasuccessfulproduct.

Agilesoftwaredevelopmentfocuseson12principleswhichareasfollowing(Becket

al.,2001):

• “Customersatisfactionbyrapiddeliveryofusefulsoftware

• Welcomechangingrequirements,evenlateindevelopment

• Workingsoftwareisdeliveredfrequently(weeksratherthanmonths)

• Workingsoftwareistheprincipalmeasureofprogress

• Sustainabledevelopment,abletomaintainaconstantpace

Page 65: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

65

• Close,dailycooperationbetweenbusinesspeopleanddevelopers

• Face-to-faceconversationisthebestformofcommunication(co-location)

• Projectsarebuiltaroundmotivatedindividuals,whoshouldbetrusted

• Continuousattentiontotechnicalexcellenceandgooddesign

• Simplicity—theartofmaximizingtheamountofworknotdone—isessential

• Self-organizingteams

• Regularadaptationtochangingcircumstances”.

Agilesoftwaredevelopmentisaniterativeandincrementaldevelopmentmodelwere

the requirement of the project and its solution keeps on changing based on the

collaborationandcoordinationofself-organisedandcross-functional teams (Larman,

2004).AgiledevelopmentlifecyclehasmanymethodologiessuchasAgileModelling,

Agile Unified Processes, Crystal Methods, Dynamic System Development Method

(DSDM), Extreme Programming (XP), Scrum and Lean etc. (Dybå et al., 2008). In

generalagilemethodologiesemphasizeson frequentdeliveryofproduct increments,

time boxes, communication and collaboration, working software as a measure of

progress,adaptiveplanningandmeetings.

Alotofworkisbeingdoneonagileanditisbeingwidelyadaptedbymanycompanies

todevelopsoftware(Abrahamssonetal.,2003).AliteraturesearchintheISIWebof

Science showed that 1551 research papers have been published on agile software

developmentfrom2001till2010(Dingsøyretal.,2012).

2.5.2 AgileMethodologyinOffshoring

Companiesthatoptforoffshoringperceiveitastheyaretakingriskinsomeaspectsof

the software development process in order to reduce cost of software production

(Nisar et al., 2004). As there is tension between agile benefits and difficulties of

implementingagile.Agilemethodshelpbuildtrustandconfidencebetweenclientsas

it considers customers as part of the team. It also helps in reducing the risk of

production of low quality software as by using agile methods like unit testing, pair

Page 66: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

66

programming, continuous integration etc. ensures good quality software (Danait,

2005). However the process of adopting agility with distributed projects is not

straightforward(Šmiteetal.,2010).Globalsoftwareengineeringshouldfocusonhow

to cleverly use information and communication technology to compensate for the

inherentproblemsofdistributedworksandbridgetheremotesitestogether(Hanssen,

2011).

Inindustrytherearetwodifferentopinionswhenitcomestoagile:

• Some companies believe that agile methods are a best fit for offshore

development as offshore projects involve high risks of security, decreased

development visibility, management and integration. Thus with the help of

agile methods such projects can be better planned and executed (Simons,

2002,Hayes,2003,Massol,2004).

• SomebelievethatAgilemethodsareamismatchwithoffshoring(Kontioetal.,

2004). Taylor claim that projects that use agile for offshore development go

throughalotofdifficultiesbecauseofthedifferencesindevelopmentpractices

aswell as due to complex development environment (Taylor et al., 2006). A

characteristic comparison done by Šmite shows how agile development is

different fromoffshore development shown in Table 2.8 below (Šmite et al.,

2010):

Table2.8.ComparisonofAgileDevelopmentversesOffshoreDevelopment(Šmiteet

al.2010).

No. Characteristics AgileDevelopment Offshore

Development

1. Communication Informal

Face-to-face

Synchronous

Many-toMany

Formal

Computer-mediated

OftenSynchronous

Tunnelled

Page 67: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

67

2. Coordination Change-driven

Mutualadjustment,self

management

Plan-driven

Standardisation

3. Control Lightweight

Cross-functionalteam

Command-and-

control

Clearseparationof

roles

2.6AgileAdoptioninOffshoreSoftwareDevelopment

In this sectionwewill highlight approaches used by organisation to transition from

traditional software development to agile methodology, we also present different

approachesusedtoadoptagileinoffshoreenvironment.

2.6.1TransitionfromTraditionalSoftwareDevelopmenttoAdoptingAgile

Practices

In this section we have focused on approaches present in literature that focus on

facilitatingorganisationstotransit fromanytraditionalsoftwaredevelopmentmodel

toadoptingagilepractices.Wehaven’tconsideredthecomplexityaddedbyoffshore

softwaredevelopment.

2.6.1.1 FacilitatorstoAssistAgileAdoption

Javdaniconductedastudyconsistingof33agileexpertsacross13differentcountries

to identify facilitators that would help organization to transition and adopt of agile

methods (Javdani et al., 2014). They identified 8 facilitators that would help agile

practitionerstodotheirjob,whichareasfollows:

• Training

• Goodcoachingandmentoring

• Managementbuy-in

Page 68: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

68

• Teammemberbuy-in

• Rightpeopleselectionandempoweringteam

• Continuousmeetingandnegotiation

• Agilechampions

• Incentivefactors

Based on their results it is clear that for the success of agile adoption, the team

membersandmanagementneedtohavecommoninterest.Howeverthelimitationof

thisresearchisthatitonlyfocusesonco-locatedteammembersanddoesnotdiscuss

thecomplexityaddedduetooffshoreteams.

2.6.1.2 FrameworktoSupporttheEvaluation,AdoptionandImprovementofAgile

Methods

Qumer also suggested a framework to support the evaluation, adoption and

improvement of agile methods (Qumer et al., 2008). In their framework they

developed an Agile Toolkit, which facilitated the construction and evaluation of

processes in complex software projects. Figure 2.4 shows themain components’ of

their agile software solution framework, which are Agile Toolkit, Method Core and

SoftwareTechnology.

Figure2.4.TheMainComponentsoftheAgileSoftwareSolutionFramework(Qumer

etal.2008).

Page 69: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

69

They also developed an analytical tool that evaluated the degree of agility in a

developmentpractice.TheyalsodesignedanAgileAdoptionandImprovementModel

(AAIM)basedonindustryanalysisandagroundedtheoryresearchmethodology.The

AAIMhas3agileblocks:i)AgileBlock:Prompt,ii)AgileBlock:Cruxandiii)AgileBlock:

ApexwhicharefurtherdividedintosixstagesasshownintheFigure2.5below.This

model focuses more on how to evaluate the degree of agility adopted in an

organisationratherthenprovidingaguidelineonhowagileshouldbeadoptedandit

doesn’tnotexplainhowagileshouldbeadoptedinoffshoresoftwaredevelopment.

Figure2.5.AgileAdoptionandImprovementModel(Qumeretal.,2007)

2.6.1.3 SharedMentalModelstoUnderstandAgilePractices

Yuuseda theory fromcognitivepsychologyknownassharedmentalmodels tohelp

practitionersunderstandandapplyagilepractices,asaccordingtoempiricalresearch

Page 70: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

70

itwas found that theperceivedbenefitsofagile softwaredevelopmentarenot fully

understoodinresearchorbyorganisations(Yuetal.,2014).Hencecausingtofailures

in achieving the required results. There research emphases on answering three

researchquestions:

i) Why is improved interaction needed among development teams and

customers?

ii) Whataspectsof interactions shouldbeemphasisedamong thedevelopment

teamandcustomers?

iii) How does increased interaction improve collaboration during software

development?

TheyfocusedonthreeScrumandXPpractices,whichwereSystemmetaphor,Standup

meetingsandon-sitecustomerandlinkedthemtothetypesofsharedmentalmodel

that would facilitate understanding and adoption of agile practices. For example,

according to their research, standup meetings using shared mental model practice

reflexivity can enhance developers understanding of the project. Similarly that with

efficientreflectivediscussesduringthestandupmeeting,theteamunderstandabout

theprojectgoals,challenges,limitationsandsystemrequirements.

2.6.2AgileAdoptioninOffshoring

Inthissectionwehavepresenteddifferentapproachespresentinliteraturethatare

usedtoadoptagilepracticesinoffshoresoftwaredevelopment.

2.6.2.1UseofPatternsinAgileAdoption

AsmentionedinSection2.4workhasbeendoneonusingpatternsinglobalsoftware

development. In this sectionwewill give anoverviewofwhat is a pattern andhow

they can be used to facilitate agile adoption in offshore software development.We

further conducted a study on identifying existing patterns used in GSD and then

investigating specific patterns that are being used for agile adoption, which is

presentedinSection2.7.

Page 71: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

71

The term ‘pattern’ was introduced in software development as an inspiration of

Christopher Alexanderwork on architectural patterns. He defined patterns as “Each

patterndescribesaproblemwhichoccursoverandoveragaininourenvironment,and

thendescribesthecoreofthesolutiontothatproblem,insuchawaythatyoucanuse

this solution a million times over, without ever doing it the same way twice”

(Alexander et al. 1977). He used this definition for buildings and town patterns

howeverwhathesaysaretrueforsoftwarepatternsaswell.

Generallyapatternhasfouressentialelements(Gamma,etal.,1997):

• Thepattername:togiveahighlevelofabstracttothepattern.Itgivesusthe

ideaofwhatproblemthepatternisprovidingasolutionforinawordortwo.

Givinganametoapatternmakesiteasyforustotalkaboutitwithpeopleand

fordocumentation.

• Theproblem:helpsindescribingwhenthepatterncanbeapplied.Itprovides

details of the problem and its context. It may include lists of conditions or

scenarios,whichmustbemetinordertoapplythepattern.

• The solution: describes the elements that makeup the patterns, their

relationships and responsibilities. The solution doesn’t describe a particular

concretepracticeorimplementation,becauseapatternislikeatemplatethat

canbeappliedinmanydifferentscenarios.Apatterndoesprovideanabstract

descriptionofaproblemandhowageneralarrangementofelements/practices

cansolveit.

• The consequence: describes the outcome of applying the pattern. They are

criticalforevaluatingapatternandforunderstandingthebenefitofapplyinga

patterntoseeifithelpedinsolvingtheproblemandifyes,uptowhatextend.

Forsoftwaretheconsequenceoftenrefertospaceandtimetrade-offs.

Page 72: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

72

Currentlytherearesixtypesofpatterns:

- Requirements Patterns: Robertson defined requirement patterns as

patterns that provide high-level abstraction of system requirements

(Robertson, 1996). They help in the creation of better and precise

requirementdescriptionsinlessertime.

- Anaylsis Patterns: Fowler defined analysis patterns as patterns that

“reflects conceptual structures of business processes rather than actual

softwareimplementations"(Fowler,1997).

- Design Patterns: Gamma defined as “descriptions of communicating

objectsandclassesthatarecustomizedtosolveageneraldesignproblem

inaparticularcontext(Gamma,etal.,1997).

- Architectural Patterns: Buschmann defined architecture patterns as

patterns that contain best practices for decomposing a software system

into sub-systems (Buschmann et al., 1996). They also specify the

responsibilitiesbetweenthesub-systemsthat includerulesandguidelines

fororganizingtherelationshipsbetweenthem.

- Anti-Patterns:Browndefinedanti-patternsasthosepatternsthatdescribe

negativeexamplesofsolutions(Brownetal.,1998).Theydescriberepeated

negative practices observed while solving a problem and provide better

solutions.

- Idioms: They are patterns of the lowest level of abstraction. They show

commonprogrammingtechniquesandconventionsthatrecurwhilesolving

programmingtasks.Theyareoftenlanguage-specific.

Page 73: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

73

Workhasalsobeendoneonidentifyingoffshoresoftwaredevelopmentpatternsand

agile patterns in offshore development. MacGregor and Shah designed cultural

patterns to manage the cultural difference challenges in offshore development

(MacGregor et al., 2005; Shah et al., 2012). Paasivaara, Bricout, Lescher and van

Heesch designed communication and coordination patterns to overcome

communicationandcoordinationchallengesthatonshoreandoffshoreteammembers

facewhileworkingtogether(Paasivaaraetal.,2003;Bricout,2004;Lescher,2010;van

Heesch, 2015). Valimaki designed patterns for projectmanagement (Valimaki et al.,

2009)andPehmöllerdesignedtestingpatterns(Pehmölleretal.,2010).Salgerworked

ondesigningpatterns for the requirementsengineeringprocess (Salgeretal.,2010).

OverviewofthesepatternsispresentedinTable2.12.

Similarlyworkhasbeendoneonidentifyingagileoffshorepatterns.Hvatumdesigned

magicbacklogpatternstomanagethebacklogwhentheprojectisbeingdevelopedat

multiplesites(Hvatumetal.,2015).Fowlerdesigneddaily-standuppatterns(Fowler,

2016)andVälimäkidesignedninedistributedprojectmanagementandscrumpatterns

(Välimäki et al., 2008). Cordeiro designedmulti-site software development patterns

(Cordeiro et al., 2007) and Elssamadisy focused on the dynamics of agile adoption

(Elssamadisy et al., 2006). Overview of these patterns has been presented in Table.

2.13

2.6.2.2 FactorsContributingtotheSuccessandFailureofAgileAdoption

Malik identified factors that contributed to the success and failure of agile offshore

softwaredevelopment,whichareasfollows(Maliketal.,2010):

• DevelopmentStrategy

• ProjectType

• CommunicationChannel

• CulturalDifference

• SplitLocation

Page 74: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

74

• SizeofProject

According to their research, coding and testing phases should be considered to be

offshored and that critical modules such as project planning and design should be

done on onshore location. The type of projects that havemost success in offshore

developmentarewebsitesandwebapplications.Figure2.6showstheresultoftheir

researchonfindingwhatprojecttypeissuitableforoffshoredevelopment.

Figure2.6.SoftwareProjectSuccessRateforOffshoreProjects(Maliketal.,2010).

2.6.2.3 UseofToolsinAgileAdoptioninOffshoreDevelopment

AsmentionedinSection2.3.3,themainissuewithoffshoringiscommunicationgapas

agile is a bigmismatch as itsmethods focus on regular face-to-face communication

henceincreasingthedemandforcommunication(Becketal.,2001).Analternativeto

this approach is that agile methods solve communication problem by “Offshore

Development requires more communication, Agile methods provides more

communication”(Nisaretal.,2004).

Page 75: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

75

Nowthequestionishowtoapplyagilemethodsinsuchawaythatwecanreducethe

gap without providing face-to-face communication as the teams are geographically

split. Many companies have solved this issue with the use of technology as they

(Fowler,2006;Simons,2002;Danait,2005):

• Holdonlinevoiceorvideochatsessionsastheyprovidereal-timeface-to-face

meetings,whichallowtheteamstohaveanefficientconversation (Kotlarsky,

Oshri,2005).

• Collaborative tools such asWiki, IM and discussion boards help improve the

qualityofcommunicationofinformation.

Another issue isthetransfersofprocessesas inoffshoringcompaniesmovesomeof

theirbusinessordevelopmentprocessestooffshorelocation,whichcausesproblems

when companies outsource critical modules of domain specific projects. General

Motors is an example of such offshoring projects where they outsourced the

development of their web-based “New Owner Centre” project. Agile provides a

solutiontothisproblembysendingambassadorsfromoneoffshoresitetoanotherin

ordertohelpgatherinformationofthebusinessdomain.Butthedisadvantagetothis

approachisthatthispracticeiscostly(Fowler,2004).

Companies also face trust issues in offshoring as mentioned in Section 2.3.1, agile

suggests to use web conferencing for virtual white-boarding to share and discuss

projectdesignsandinformation(Braithwaiteetal.,2005).Thishelpstosolvetheissue

ofknowledgetransfermentionedinsection2.3.4asthewholeteamisdirectlysharing

informationface-to-faceviaInternet.Agilemethodsalsosuggestusingasharedcode-

repositoryasitallowstheteamstoseeeachother’swork(Danait,2005).

Somecompaniesevenopttocollocatetheteamduringtheinitialperiodoftheproject

sothattheteammemberscangettoknoweachother(Cottmeyer,2008).Thishelpsin

building trust among the team and develops sense of that they all are one team

despitelocatedatdistributedlocations(Danait,2005).Howevertocollocatetheteam

Page 76: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

76

isacostlyprocess (Nisaretal.,2004). Ina literaturestudydonebyPaasivaaraetal.

(2009) they classified how different agile practices contribute in offshore agile

projects,Table2.9summarisestheirclassification.

Table2.9.AgilePracticesusedforOffshoreDevelopment(Paasivaaraetal.,2009).

No. NameofAgilePractice Description

1. DailyScrums For coordination and communication which in

offshoreprojectsisdoneviavideo/audioprofessional

conferencing tools such as Skype (Berczuk, 2007;

Danait,2005;Jensen,2003).

2. Sprint Planning

Meeting

Meetingdoneatthestartofeverysprint.Ifdifficultto

schedule it for whole team due to time-zone

difference, only team leads can hold this meeting

using synchronous communication tools. (Berczuk,

2007; Holmstrom, Conchùir, Agerfalk, Fitzgerald,

2006;Layman,Williams,Damian,andBures,2006).

3. SprintReviewMeeting Thewholeteamincludingtheoffshoreteammembers

are present in this meeting using synchronous

communication tools to discuss the progress of the

project(Berczuk,2007).

4. Demonstrationof

WorkingFunctionality

Aftereachsprint,newfunctionalitiesareaddeddueto

the sprint review meeting. These new requirements

need to be shared via videoconferencing or through

desktopsharing(Berczuk,2007;Danait,2005;Fowler,

2006).

5. Proxy/Remote

Customers

Somecompanieschooseproxycustomers inorder to

improve quality of product and to add a third party

Page 77: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

77

whichcommunicateswiththerealcustomersandthe

team. The proxy customers can take decisions on

behalf of the real team. They communicatewith the

team via videoconferencing or email (Kircher, Jain,

Corsaro,andLevine,2001;Layman,Williams,Damian,

andBures,2006;Nisar,andHameed,2004).

6. Distributed Scrum of

Scrums

This isusedwhenthe team isvery large.Onlyscrum

mastersmeet every 2-3 days either in person or via

videoconferencing to discuss the progress of the

project(JensenandZilmer,2003;Smits,andPshigoda,

2007).

2.6.3EffectofOffshoringonAgileAdoption

In the Section 2.3 we identified four key challenges that affect offshore software

development, which also affect the adoption of agile practices in offshore software

development (Ghafoor et al., 2017). For example, consider the trust issue; it can

introduce certain difficulties in agile practices such as dispute over collective

ownership of code andmaintaining a sustainable pace of the project development.

Similarly,issuescausedduetosocio-culturaldifferencesalsoaffectagilepracticessuch

asfrequentdeliveryofcode,self-organisingteams,embracingchangeandresponding

inatimelymanner.

For teams wanting to adopt agile, communication and coordination issues are very

importantastheyimpactmostoftheagilepractices.Likewise,knowledgeandtransfer

ofknowledgearecentraltotheprinciplesofagilesoftwaredevelopmentastheyaidin

achieving sustainable pace of development, motivated individuals and continuous

code review. In Table 2.10 belowwehave highlighted some agile practices that are

affectedbytheoffshorechallenges.

Page 78: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

78

Table2.10.AgilePracticesaffectedbyOffshoreChallenges.

No. Offshore

Challenge

AgilePractice EffectofChallengeonagile

practice

1. Trust CollectiveOwnership Dispute over code ownership

among the onshore and

offshoreteammembers

SustainablePace Difficulties in maintaining a

sustainable pace of project

development

2. Socio-cultural Iterativeand

incremental

development

Delays in frequent delivery of

code.

Self-organisingteams

Problemsinunderstandingeach

other’sculturalandsocialvalues

can cause a barrier in the

formation of self-organising

teams.

3.

Communication

and

Coordination

SprintPlanning

As the team is distributed, due

to lack of sufficient

communication, it can cause

projects in designing a correct

sprint.

ContinuousIntegration

Multiple versions of code

developed at different location

can cause any build to break

Page 79: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

79

duetoerrorsbeingintegratedin

thecode.

4.

Knowledge

Transfer

ProductBacklog

Any change in product backlog

not documented correctly can

causeaprojecttofail.

SprintReview

Due to multiple locations of

sprint development. It causes

problems in determining the

progressoftheworkdone.

Table 2.10 demonstrates that agile practices cannot be used as it is in offshore

softwaredevelopmentandthatiswhypractitionershavebeenmodifyingandadapting

agilepractices.Webelieve thatpatternscanmake theagileadoptionprocesseasier

forpractitioners.

A case study done by Paasivaara showedhowR&Dunit of Ericsson, amultinational

telecommunication equipment and services company, integrated its global sites into

the leanandagiletransformation(Paasivaaraetal.,2013).Aspartofthisstudythey

observed how Ericsson integrated three sites,whichwere Finland, Hungary andUS.

TheystartedtheagileadoptionprocesswiththeFinlandsiteinwhichtheytransitioned

toagilemethodologyusinganevolutionarymodel,thatistheygraduallytransformed

theirprocessesoneatatimeandtheneventuallythewholesiteshiftedtousingagile

practices for their projects. Table 2.11, demonstrates an overview of how agile

practices were adopted at the three sites. Later we have explained what were the

successandfailuresoftheirtransition:

Page 80: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

80

Table2.11.DetailofThreeSitesAdoptingAgilePracticesatR&DUnitofEricsson

(Paasivaaraetal.,2013).

No. Finland Hungary US

1. TransitionUsingfour

phase:

• Studyingand

Planning

• PilotTeams

• Full-ScaleRollOut

• Maturationand

Continuous

Improvement

Transitionsusingtwo

phases:

• Piloting

• RollOut

Transitionusingthree

phases:

• Studying

• Planning

• TeamStartWorking

2. Hiringexternal

consultingfirmtotrain

inagile.

Hiredapersonfroma

competitorwhohad

startedusingagile

TheacquiredUS

companyhadasimilar

productwiththe

existingcustomer.

Finnishteamcoached

them.

3. Impedimentbacklog

wasatFinland.

Didn’thaveelectronic

access,howeverwouldget

updatesusingphonecall

orsometimespicturesof

thebacklog.

Theinformationwas

madeavailabletothe

USteammembersas

soonaspossible.

4. Usedanevolutionary

changeapproach.

Usedaverydramatically

changeapproach.

Themanagementdid

finalteamselection.

5. Mostdevelopersin Developersweremostly TheUSteamhasbeen

Page 81: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

81

Finlandhaveover10

yearsexperience

workinginEricsson.

youngandinexperience.

Hiredrightoutofschool.

usingleanandagile

practicesfor

developmentandthat

wasevidentfromtheir

work.

6. Hadmoreproduct

knowledgecomparedto

Hungariandevelopers.

Beforethetransition,the

Hungarianteamwas

viewedmoreasasub-

contractingsiteworking

onlyonspecificproduct

parts.

Whatwasdifferent

betweentheHungary

andUSteamsisthat

theyUSteamwere

involvedinallthelevels

oftheproject.

7. Causingincompetency

gapsbetweenthe

FinlandandHungary

developersasaresult

anexchangeprogram

wasdesigned.

Someofthedevelopers

lefttheHungaryteam,as

theydidn’twanttoadopt

agilepractices.

Theteamstarted

integratingwithother

sitesbystartingtheir

processesbyintensive

collaborationplanning

phase

8. Languagebarrier

stoppedFinnishteam

memberstocommitto

longstaysinHungary.

Feltthesupportofthe

management,asthey

visitedtheHungaryteam.

Mutualvisitsbetween

thesitesatalllevels

wereencouraged

betweentheUSand

Finnishteams.

9. Duetothenationaland

organisationalculture,

theFinnishteam

membersweremore

comfortableforming

HowevertheHungary

teammembersfeltthey

needtobetoldwhatthey

shoulddo.

Finnishexpertsvisiting

andsupportingatthe

USsite,duringthefirst

fewmonthsof

transition,helpedthe

Page 82: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

82

self-organisingteams teamstounderstand

eachother’scultural

differences.

Based on the above presented transition process between the three sites, Ericsson,

foundsuccessbyfollowingthepracticesmentionedbelow:

• Earlyinvolvementofglobalsites

• Broadinvolvementofatallorganisationallevels.

• CompetenceExchangeProgram.

• ConstantCommunicationandCross-sitevisits.

• JointInfrastructure.

However having presented the success factors above, Ericsson still faced some

challengesduringtheintegrationprocess,whichare:

• Creatingasharedunderstandingofthechange,thatiseventhoughtheFinland

and Hungary sites, were able to create a shared understanding at the

managementlevel,butcommunicatingittothelowerlevelswasdifficult.

• EnablingEnd-toEndDevelopment,astheconceptofdeliveringaworkingpiece

of code within 2-4 week duration was a new concept for the development

team.

• Bridging cultural differences, as all the three sites had different natural and

organisationalculturalvalues.

• Creating Transparency between the sites, as the Hungary site felt as if they

were not part of the actual team as all the software artefacts were at the

FinlandsiteandwerenotavailabletotheHungarysiteelectronically.Thisissue

waslaterresolvedbyusingonlinewikis.

Page 83: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

83

Researchers such as Holmstrom have done work on how we can solve

communication and coordination issues using agile practices as it is such as

(Holmstrometal.,2006):

• XPPairProgramming-Helpstoincreasetimeoverlap,whichinturnhelps

in reducing temporal distance. However they did not discuss about how

much time would be wasted in order to just coordinate different time

zones.

• Scrum Simple Planning: Helps increase “team-ness”,which in turn helps

reducegeographicaldistance. The limitation to thisapproach isasabove

mentionedtheauthorsdidn’tdiscusshowmucheffortwouldberequired

tocommunicationandcoordinatethedistributedteams.

• XPPairProgrammingandScrumPre-GamePhase:Helpsincreasemutual

understandingand collaborationbetween the teams,which in turnhelps

reducesocioculturaldistance.Similarlytheresearchersdidn’tdiscusshow

efficientlytheteamsshouldcollaborateinordertoachievethisbenefitas

in order to collaborate with geographically distributed teams requires

coordinationoftimefromallthedistributedsites.

2.7 AStudyontheUseofPatternsinAgileAdoptioninOffshore

Development

Inthissectionwehavegivenanoverviewofpatternscurrentlypresentinliteraturefor

agileadoptionandwehavealsopresentedanoverviewofourdistributedagile

patternscatalogue.

Page 84: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

84

2.7.1CurrentPatternsforAgileAdoption

Based on the definition of patterns mentioned in Section 2.6.2.1, we define agile

patternsas“focusonhowanagilepracticeisbeingrepeatedlymodifiedandusedin

order to solve a recurring agile problem in a particular context”. The difference

betweenanagilepracticeandagilepattern is thatagilepracticesarea collectionof

methodsandtechniquesputtogethertosupporttheapplicationofagilemethodology

fordevelopingaproject,whereasanagilepatternfocusesonagilebestpracticesthat

occur repeatedly while applying agile methodology for developing software. That

meansanagilepatternconsistsofbestagilepracticethatisbeingrepeatedlyusedto

overcomeaspecificchallengeinapplyingapractice.

For example, daily standup meeting is an agile practice, which helps the team to

coordinate their daily activity by answering three questions: i) What did you do

yesterday ii)Whatareyougoing todo today?and iii)What isgetting inyourway?,

whereasdailymorning standupmeeting is an agile pattern as it has been observed

that conducting daily standup meeting in the morning is more effective than

conductingitduringmid-dayorattheendofwork-day.Therepeatedobservationof

themodifiedpractice ledtothecreationofdailymorningstandupmeetingpatterns.

With thehelpof thispatternweaddressedthechallengeofknowledgetransferand

communicationandcoordinationissues.

As companies are choosing to develop software offshore, new patterns are being

designed. Noll has worked on making a decision support system for offshore

development to help practitioners by providing them with patterns that occur in

offshoring (Noll et al., 2014). Lescher provided collaboration patterns for global

development that he observed in Siemens (Lescher, 2010). He identified 5 patterns

whichfocusedonimprovingthegeneralcommunicationandcoordinationoftheteam

inoffshoredevelopmentforexampleonepatternheidentifiedwasTailoredTraining

inwhich the team is co-locate early on in the project for training to familiarize the

wholeteamwithtechnologiesneededintheproject.SimilarlyvanHeeschpresented

two collaborative patterns for offshore development, which focused on how the

Page 85: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

85

onshoreandoffshoreteamshouldbeformedinordertoimprovecollaborationamong

the teams (Heesch et al., 2015). Table 2.12 demonstrates the offshore software

developmentpatternspresentedbypractitionersandresearchers:

Table2.12.ExistingOffshoreSoftwareDevelopmentPatterns.

No. Scope Detail

1. CulturalPatterns Based on the exploration and evidence from the

literaturedesigneda fewpatternsandsomeof them

might be considered as anti patterns (MacGregor et

al.,2005).Belowisthelistoftheircatalogue:

• Yes(butNo)

• ProxyPattern

• We’ll-take-you-literally(Anti-Pattern)

• We’re-one-single-team(Anti-Pattern)

• Thecustomer-is-king(Anti-Pattern)

Shah presented the idea of “cultural models” as

patternsthatgovernconventionalbehaviours(Shahet

al., 2012). As according to them patterns identified

using dimensions specified by Hofstede’s and

Hampden-Turner,limitsthemeaningofculture,make

culture to be viewed as a static entity and

characterises teams based on nationality rather then

individuals.Followingaremodelspresentedbythem:

• UnproductiveProductivity

• HesitanttoalwayssayYes

• Owningratherthanmodularizing

2. Communication

and Collaboration

The identified four types of communicationpatterns,

whichareasfollowing(Paasivaaraetal.,2003):

Page 86: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

86

Patterns • ProblemSolving

• Informing,monitoringandfeedback

• RelationshipBuilding

• DecisionMakingandCoordination

Bricoutpresentedthirteencommunicationpatternsto

deal with communication between the team and

differentpartsoftheorganisation,whichare(Bricout,

2004):

• OneProject

• ExplicitCommunicationStrategy

• EarlyBonding

• Face-to-faceEvery2Months

• IterateasyouMeet

• CommonTerminology

• ContinuallyAlignedProcess

• ResponsibilityModel

• CultureAwareness

• FlexibleHours

• TemporaryEngagement

• SocialFunds

• JoinforCompletion

Based on Lescher observation of offshore software

development at Siemens, identified five collaborative

patterns,whichare(Lescher,2010):

• TailoredTraining

• Co-locatedAnalysisPhase

• OnsiteManagementVisits

• Cross-siteDelegation

• UnfilteredLineManagerCommunication

Page 87: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

87

vanHeeschpresentedtwocollaborativepatterns(van

Heesch,2015)whichhelinkedwiththeworkdoneby

Lescher and Bricout (Lescher, 2010; Bricout, 2004),

whichare:

• ExperienceMix

• DissolveGeographicalBoundaries

3. Patternsfor

Project

Management

A catalogue was presented for global software

developmentpatternsforprojectmanagement,which

includedthefollowing(Valimakietal.,2009):

• GSDStrategy

• FuzzyFront-end

• CommunicateEarly

• DivideandConquereachIteration

• KeyRolesOn-site

• CommunicationTools

• CommonRepositoriesandTools

• WorkAllocation

• ArchitecturalWorkAllocation

• Phase-basedWorkAllocation

• Feature-BasedWorkAllocation

• UseCommonProcesses

• IterationPlanning

• Multi-leveldailyMeetings

• IterationReview

• OrganiseKnowledgeTransfer

• ManageCompetence

• NoticeCulturalDifferences

4. TestingPatterns A research conducted with Technische Universitat

Page 88: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

88

Munchen (TUM) in cooperation with Capgemini, a

Germansoftwareandconsultancycompanytoidentify

the problems in testing a GSD project and provide a

solution to those problems (Pehmöller et al., 2010).

They developed 16 testing patterns for offshore

projects,whichare:

• TestcasesasMemorandumofunderstanding

ofKnowledgeTransfer

• Light-weightPer-AcceptanceTest

• CommunicationonEyeLevel

• UsetoolforBugTracking

• Movingon-/offBusinessAnalyst

• ComplementingTestingAttitudes

• AlignunderstandingofGeneralTesting

Approach

• ContinuousIntegrationTesting

• MirroredTeamManager

• ExtensionoftheDay

• TraceableTestCases

• Tester’sSparringPartner

• ComplementtestSkills

• SynchronisedTestEnvironment

• CentralTestEnvironment

• EvaluationofConstraintsoftestdata

5. Requirement

Engineering

Patterns

Salger presented “Specification Patterns”, which

describe practices that analysts should keep inmind

while writing down the software requirement

specificationdocumentforanoffshoreproject(Salger

etal.,2010).Theidentifiedthefollowingpatterns:

Page 89: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

89

• Define‘BusinessRule’

• Define‘UseCase’

• On-boardBusinessAnalystduringRequirement

Engineering

• ShipTestCases

• UseWorkPackagesandHandoverCheckpoints

• UseBidirectionalCrossReferences

• MapBusinessTermstoEntityAttributes.

Work has also been done on identifying agile patterns in offshore development.

Cordeiro combined organisational patterns and scrum to provide a solution for

offshoredevelopment(Cordeiroetal.,2007).Theyidentified6patternsandproposed

apatternlanguagestructurebasedonliteratureandlateradaptedthepatternsbased

on the authors’ experience of running somemulti-site projects. Välimäki presented

patterns fordistributedscrum,whichfocusedonfindingpracticestosupportproject

managementindistributedscrumprojectsthatuseApplicationlifecyclemanagement

suchasEstablishApplicationLifecycleManagementtool(Välimäkietal.,2008).Table

2.13belowliststheagilepatternsidentifiedsofar:

Table2.13.PatternsforAgileSoftwareDevelopment.

No. PatternName Detail

1. MagicBacklog

Patterns

Identified nine backlog patterns to help practitioners

document correct story cards as a need to formalise

thebacklogincreasedwiththesizeoftheproject.The

pattern catalogue was designed based on their 50+

years experience in system development, however

their focushasbeenonco-locatedteams(Hvatumet

al.,2015).Theirpatternsare:

• BacklogFrame

• BacklogViews

Page 90: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

90

• BacklogPeople

• BacklogTales

• BacklogUsageModels

• BacklogPlaceholders

• BacklogPlans

• BacklogConnections

• BacklogAnswers

2. DailyStandup

Patterns

Fowler presented patterns for daily standupmeeting

howeverhedidn’tconsidersoftwarebeingdeveloped

offshore(Fowler,2016).Thelistofhispatternsis:

• WorkItemsAttend

• YesterdayTodayObstacles

• ImprovementBoard

• WalktheBoard

• ObstaclesarenotRaised

3. DistributedProject

Managementand

ScrumPatterns

Nine distributed project management and scrum

patterns were presented, which are (Välimäki et al.,

2008):

• HaveaKick-offMeeting

• MakeaReleasePlanwithsomeSprints

• OrganiseneededScrumRolesineachSites

• EstablishApplicationLifecycleManagement

Tool

• Establishafastandreliableinfra

• Establishefficientcommunicationmethods

• KnowledgeTransfer

• VisualiseStatusofProject

Page 91: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

91

• HavemergeDailyScrums

4. Multi-site

Software

Development

Patterns

Apatternlanguagewasdesignedtomanagemulti-site

software projects (Cordeiro et al., 2007). They

combined organisational patterns and scrum to form

their pattern language, in which they proposed 6

patterns,listedbelow:

• SurrogateCustomer

• StoriesReworkSubsystem

• InversionofControl

• CodeLine(CodeOwnership)

• IntegrationBuild

• PlanBugsonSustainablePace

5. AgileAdoption

Patterns

Elssamadisyfocusedonthedynamicsofagileadoption

that is focused more on understanding the ideas,

values and philosophy supporting agility in order to

optimise the agile adoption process (Elssamadisy et

al., 2006). He designed a pattern catalogue of seven

patterns that intended to focus on the granularity of

agilepracticesandhow itwouldhelppractitioners in

adoptingagile.Thelistofthisproposedpatternsinas

following:

• ReciprocalVisibility

• StaticInformationRadiator

• DynamicInformationRadiator

• EvocativeDocumentation

• StandupMeeting

• ReaffirmationRitual

Page 92: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

92

• SolidarityRitual

Elssamadisyprovidedatemplatefortheiradoptionpattern,whichis(Elssamadisyet

al.,2006):

• Name:Uniquenameofthepattern.

• Sketch:Astorythatactsasa‘sketch’forthedesignofthepattern.

• Context:Whoandinwhatcircumstancesthepatternisuseful.

• Forces:Usedtoelaboratethecontextsectionandgivespecificissuesthatcan

beresolvedwiththehelpofthepattern.

• Therefore:Descriptionofthepattern.

• But:Consequencesandlimitationsofthepattern.

• How:Guidelinesofhowthepatternshouldbeadopted.Alsoincludessmellsto

indicatewhereapatternadoptioncangowrong.

• a.k.a:Similarpublishedpatterns.

Theyproposedthecustomisedformatforthepurposeofdocumentingtheirpatterns;

they introduced the conceptof smells inpatternsand introduced theexplicituseof

“AbstractPatterns”.Abstractpatternmightbeseenasacategoryofpatternsasitlacks

animplementationindependenceofitsconcretepatterns.

AccordingtoAmrElssamadisyand),inordertoachievesuccessfulagileadoption,itis

not just enough to focus on what practices should be adopted rather we need to

answeradditionalquestionssuchas(Elssamadisyetal.,2006):

• WhichpracticesdoIadoptfirst?

• Whichpracticesrelatetoothers?

• CanIincrementallyadoptagivenpracticeorincrementallyadoptfromasetof

practices?

• CanIadopttheformofapracticewithoutalteringitssubstance?

• CanIaddtoordeletefromaspecifiedsetofpractices?

Page 93: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

93

• Whatvaluesandassumptionsarepresupposedbyagivenpractice?

• And, consistent with the spirit of agility, what business value does each

practicedeliver?

They identified 7 patterns, which are mentioned in Table 2.13. Overview of

ElssamadisypatternsisexplainedinTable2.14(Elssamadisyetal.,2006).

Table2.14.OverviewofAgileAdoptionPatterns(Elssamadisyetal.,2006).

No. PatternName Overview

1. Reciprocal

Visibility

ImpedimentChangeisrecordedandmadevisibletothe

wholeteam.

2. Static

Information

Radiator

ScrumMastermakescommonScrumBoardchartforthe

wholeteamtoview

3. Dynamic

Information

Radiator

DailyStandupmeetingsandretrospectivetakeplaceinorder

toexchangeinformation.

4. Evocative

Document

Documentisdoneusingsymbolsandinformalstylesothatit

iseasiertounderstand.

5. StandupMeeting Dailystandupmeetingareconductedwiththeteamandthis

isatime-boxedactivity.

6. Reaffirmation

Ritual

Theorganisation’satmosphereiskeptlaid-backinorderto

keeptheteammotivatedtowork.

7. SolidarityRitual Theteamhasitsownconsolidatedspacetoworkand

conducttheirmeetings.

Page 94: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

94

Howevertheirfocuswasonhowtoimprovecommunicationandcoordinationamong

the team members, which are co-located and did not consider the complications

addedduetodistributedteamslocatedindifferenttimezones.

2.7.2DistributedAgilePatterns

The work done so far is either generic to patterns observed in offshore software

development, or the ones that target agile development which tend to focus on

projectmanagementandcoordinationofaproject. Incontrast,ourresearchfocuses

on identifying distributed agile patterns that will help practitioners’ adopt the agile

practices inanoffshoresoftwaredevelopmentcontext.Westudiedmanycasesfrom

the literature and observed some common practices that companies utilise to

overcomethechallengesofoffshoredevelopmentbyapplyinganagilemethodology.

From our observation we found recurring solutions for recurring offshore problems

thattheteamfacefromrequirementgatheringtodeploymentoftheproject.Building

onthepreviousdefinitionofagilepatterns,wedefineadistributedagilepattern as

adaptationofanagilepractice that isbeing repeatedlyapplied inorder to solvea

recurringchallengeinadistributedprojectscenario.Inourresearch,weappliedthe

systematic literature review and content analysis research methods to develop a

catalogueof distributed agile patterns.As a resultwehave identified15distributed

agile patterns, which we have organised in four categories. Details about the

distributedagilepatternscataloguehavebeendiscussedinChapter4.

2.8ChapterSummary

This chapter presented an overview of the work done in the area of agile offshore

development. The chapter started by presenting a background on offshore

development in which we discussed different offshore models and what are the

benefitsofoffshoring.Wethenpresentedastudyinwhichweidentifiedchallengesin

offshoredevelopmentandhowthosechallengesaffected thesoftwaredevelopment

Page 95: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

95

process.Wealsodiscussedaboutagilesoftwaredevelopmentandhowagile isbeing

adoptedinoffshoresoftwaredevelopment.Wethenpresentedastudyontheuseof

patternsinagileadoptioninsoftwaredevelopmentinwhichwepresentedthecurrent

patternsthatarebeingusedinagileadoptionandgaveanoverviewofourdistributed

agilepatterns.

In the next chapter, the research methodology used in this research has been

presented.

Page 96: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

96

Chapter3 ResearchMethodology

3.1Introduction

Researchmethodologycanbedefinedassomethingpeopleundertakeinordertofind

out things in a systematic way thereby increasing their knowledge (Saunders et al.,

2007). There are many ways in which research methods can be explained. In this

chapterwewill firstlydiscussdifferent stagesof the researchmethodologywith the

help of Saunders’s research onion and then we will map those stages to how we

carriedoutourresearch(Saundersetal.,2007).Basedonourresearchmethodology,

wehavediscussedtheresearchphilosophywehavefollowedthroughouttheresearch

which is realism and then presented our research approach and strategy based on

whichwedesignedourresearchquestionsanddiscussedthedatasourceandsearch

strategiesusedtocollectthedatafortheresearch.Lastlywehavedemonstratedthe

validationprocessusedforvalidatingtheresultsofthisresearch.

3.2OverviewofResearchOnion

The researchonionwasdevelopedbySaunders to illustrate thestages thatmustbe

coveredwhen undertaking research (Saunders et al., 2007). Each outer layer in the

research onion describes a more detailed stage of research process and contains

differentwaysinwhichalayerofresearchcanbeconducted.Thisapproachprovides

aneffectiveprogressionthroughwhicharesearchmethodologycanbedesignedand

its usefulness lies in the fact that it can adapt to almost any type of research

methodologyandcanbeusedinawiderangeofcontexts(Bryman,2012).

TheFigure3.1demonstratesanoverviewofSaunders’sResearchModelshowingthe

mainstagesoftheresearchprocess.

Page 97: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

97

Figure3.1.TheResearchOnion(Saundersetal.,2007)

According toSaunders’s researchonion showed in Figure3.1, the researchneeds to

startbydefiningtheresearchphilosophyasithelpsincreatingastartingpointforthe

selectionoftheappropriateresearchapproach,whichaccordingtothemisthesecond

stepoftheresearchprocess(Saundersetal.,2007).Oncetheresearcherhasselected

theresearchwhatresearchapproachtheywillbeusingtheymoveontothenextstage

oftheresearchprocessinwhichtheywilldecidewhatresearchstrategytheywilluse,

thatiswhatplantheywillfollowtoanswertheirresearchquestions.Thefourthstepis

deciding the researchapproach thatwill beusedby the researcher, that is are they

goingtousemono-method,mixedmethodormulti-method.Thefifthstepisdefining

the time horizon for the research, as that will determine the time frame for data

collection.The last stepaccording the researchonion isdatacollection, in this stage

theresearcherdecidedhowhe/shewillbecollectingdatafortheirresearch,isitgoing

tobebyusingprimarydataorsecondarydata.

In order to explain each phase of the research onion we have designed Table 3.1,

whichgivesanoverviewofeach research stepandprovidesdetailofwhatdifferent

typeofprocesses researchers canuse toconduct their research ina systematicway

withthehelpofSaunders’sresearchonion(Saundersetal.,2007).

Page 98: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

98

Table3.1.OverviewofResearchOnion.

No. Research

Phase

Definition Type Detail

1. Research

Philosophy

Reflectstheway

researchers

think about the

development

knowledge,

which affects

the way, the

researcher does

hisresearch.

Positivism Assumes that the reality exists

independent from the variables

under observation. This type of

research philosophy is usually

considered quantitative as the

problem is identified from

literaturehenceonly focusingon

certainvariables.

Realism Focusesonthewaypeoplemake

sense of theworld, especially by

sharingtheirexperiences(Hussey

etal.,1997).Thistypeofresearch

is usually considered qualitative,

as it requires the researcher to

examine real-life events in order

to explain how and why certain

obstacles occurred during the

research.

2. Research

Approaches

Definesthe

approachthe

researchchoses

toconducthis

research.

Deductive In this approach the researcher

starts with theoretical

proposition and them moves

towards concrete empirical

evidence. That is the researcher

develops the hypothesis upon a

pre-existing theory and then

Page 99: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

99

formulateshisresearchapproach

to test it. This type of research

owes to positivism research

philosophy as it allows the

researcher to formulate

hypothesis and statistical testing

fortheexpectedresults.

Inductive Characterised as to move from

specific to general, that

observation are considered a

starting point and patterns are

looked at from the data to

formulate a research problem

and find its solution.This typeof

research follows a more realism

researchphilosophy.

3. Research

Strategies

Itisaplanto

answerresearch

questions,

whichwill

satisfythe

research

objectives.

Experiment Refereed to the strategy of

creating a research process that

examines the results of an

experiment against the expected

results. This research strategy is

used when you have a limited

number of factors and youwant

tostudytherelationshipbetween

themandjudgethemagainstthe

expectedresearchresults.

Survey Tend to be used in quantitative

research projects and involve

Page 100: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

100

samplingofdifferentproportions

ofvariables.

CaseStudy Usedwhen the researcherwants

togainin-depthunderstandingof

the context of the research

problem. Yin also recommended

to use case study strategy for

when the researcher has little

controlovereventsandwhenthe

focus inon contemporaryevents

(Yin,2003).

Grounded

Theory

It is a qualitative methodology

that draws on an inductive

approach in which patterns are

derived from the data as

preconditionsforthestudy(May,

2011).

Ethnography Involves close observation of

people and examines their

cultural interactions and their

meaning(Bryman,2012).

Action

Research

Characterised as a practical

approach to a specific research

problem, within a community of

practice (Bryman, 2012). It

involves reflective practices, in

whichprofessionals get feedback

Page 101: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

101

on their research, to improve

theirresults.

Archival

Research

In this research strategy, the

research is conducted from

existing material (Flick, 2012).

Thisformofresearchmayinvolve

systematic literature review,

where the researcher examines

patterns inordertoestablishthe

sumofknowledgeonaparticular

study or to examine the

applicationofexistingresearchto

identifyaspecificproblem.

4. Choice Outlinesthe

researchby

decidedwhat

research

approachthe

researcherwill

use.

Mono

Method

As the name suggests it involves

the researcher using one

approachforhisresearch.

Mixed

Method

Inmixedmethod, the researcher

uses two or more methods of

research such as using both

quantitative and qualitative

methodology(Bryman,2012)

Multi-

Method

Thisinvolvesthatmixedmethods

combine create a single dataset

(Flick,2011)

5. TimeHorizon Focusesonwhat

timeisallocated

Cross

Sectional

The time frame is already

established according to which

Page 102: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

102

to complete the

research.

thedatahastobecollected.

Longitudinal Collectionofdatarepeatedlyover

an extended time period and is

usedwhereanimportantfactoris

beingexaminedoverachangeof

time(Goddardetal.,2004).

6. Data

Collection

There are a

variety of ways

through which

data can be

collected. In

quantitative

methodology,

the researcher

is focused on

measuring

variables or

counts their

occurrence.

Whereas in

qualitative

methodology,

the research

emphasises on

the experience

of a

phenomena.

PrimaryData Refers to data that is derived

from first-hand sources such as

data collected through

interviews, direct observation,

participant observation,

questionnairesandsurveys.

Secondary

Data

Data isderived fromtheworkor

opinions of other researchers

(Newman, 1988). For example

archival records, organisational

documentation, publications and

annualreports.

Page 103: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

103

3.3ResearchMethodologyusedtoDesignDistributedAgilePatterns

InthissectionwehavefocusedonthehowwehaveusedSaundersresearchonionin

ordertoconductourresearch(Saundersetal.,2007).

3.3.1ResearchPhilosophy

BasedonthedefinitionofresearchphilosophymentionedinTable3.1wehaveused

Realism research philosophy for conducting our research. Since the focus of this

researchistounderstandhowpractitionersdevelopprojectsoffshorewhileusingagile

practices. We are studying these variables in the real-life events. This is reflected

throughout our research methodology mentioned in Figure 1.1 Research

Methodology.

AsfromStep1:ReviewPreviousLiterature,wearefocusingonidentifyingcasestudies

thatdemonstratehowpractitionersareusingdevelopingsoftwareatoffshorelocation

in order to formulate our research questions, which is Step 2 of our research

methodologythatistoIdentifyandDefinetheResearchProblem.

In order to conduct Step 3: Collect Data from Literature and Interviews, to identify

recurringagilepracticesthatarebeingusedbypractitionerstoovercomechallengesin

offshoredevelopment,wefocusedonexaminingthehowandwhypractitionerschose

toadaptanagilepracticesandifthatsolutionhasbeenusedrecurrentlytosolvethe

sameoffshorechallengebyotherpractitioners.

In Step 4: Analysing Data Collected from Literature and Interviews, we used

Krippendorff’s content analysis (Krippendorff, 2004). Since the data being analysed

was based on real-life events in order to explain how practitioners adapted agile

practices for their offshore projects, hence this reflects our research philosophy of

realism.

Page 104: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

104

Basedonthedatacollected inStep3andtheanalysesdone inStep4.Wedesigned

ourDistributedAgilePatternCatalogue.AsStep3andStep4wereconductedusing

real-lifedata fromevents, thepatterncatalogue isbasedonpatternsobservedfrom

literature and by practitioners. Hence Step 5: Design and Develop Distributed Agile

PatternsCataloguehasbeendonefollowingtherealismresearchphilosophy.

Step 6: Validate and Evaluate the Distributed Agile Patter Catalogue we involved

experts toreviewourpatterncatalogueandbasedontheir feedbackStep7:Modify

the Catalogue to Improve the Results is conducted in which we havemodified our

catalogue.

Basedontheoverviewofeachstepofourresearchmethodologyitisevidentthatthe

researchphilosophychosenbyusforthisresearchisrealism.

3.3.2ResearchApproach

As mentioned in Table 3.1 there are two types of research approaches that are

DeductiveandInductive.TheresearchapproachusedforthisresearchisInductive.As

the research started by reviewing the previous literature on Global Software

Development at mentioned in Figure 1.1 Research Methodology’s Step 1: Review

PreviousLiterature.Inthatstepwefocusedonstudyingcasesinliteraturetoidentify

whatarethechallengesinGlobalSoftwaredevelopmentandbasedonthatstudywe

definedourresearchproblemandformulatedourresearchquestions,whichisStep2:

IdentifyandDefineResearchProblem.

To further refine our research problem we conducted Step 3: Collect Data from

Literature Review and Interviews, to identify how specific challenges in offshore

softwaredevelopmentaffecttheapplicationofagilepracticesandwemovedtowards

developing generic distributed agile patterns that practitioners could use while

planningtomovetheirprocessestooffshorelocations.

Page 105: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

105

In Step4:AnalysingDataCollected fromLiteratureand Interviews,wego intomore

detail by using Krippendorff’s content analysis approach to analyse the data we

collected in Step 3, to get meaningful information (Krippendorff, 2004). Content

Analysis is a research tool used to determine the presences of certain words or

concepts within text or set of texts. Researchers use it to quantify and analyse the

presencesofmeaningandrelationshipofwordsandconcepts.Theyareusuallyused

forthefollowingpurposes:

• Revealinternaldifferencesincommunicationcontext.

• Detecttheexistenceofpropaganda.

• Identifytheintentions,focusorcommunicationtrendsofan individual,group

orinstitutions’.

• Describeattitudinalandbehaviouralresponsestocommunication.

• Determinepsychologicaloremotionalstateofapersonorgroupofpeople.

The reasonwe selected this approachwas to identify the trends of global software

developmentandunderstandtheattitudinalbehaviourofoffshoredevelopmentand

how it effects the adoption of agile in offshore projects. There are two types of

contentanalysis,conceptualandrelational,definedbelow(Writing@CSU,2004):

• ConceptualAnalysis:Theyonlyfocusoffindingtheexistenceandfrequencyof

atext/wordbutdonotfocusonifthattext/wordhasanyrelationwithwords

aroundit.

• Relational Analysis: It is one step further from conceptual analysis and it

focuses on examining the relationships among concepts in a text and it also

identifieswordsthathavesimilarmeaning.

For thepurposeofour researchwehaveusedrelationalanalysisaswearenotonly

focusingoncountingthefrequencyof“GlobalSoftwareDevelopment”ratherwealso

Page 106: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

106

consider its relationshipwith agiledevelopment andwealso consideredwordswith

similarmeaning.Table3.2showsourselectedkeyconceptsandtheirsimilarmeaning.

Table3.2:KeyConceptsSelectedforRelationalAnalysis.

Type KeyConcepts SimilarMeaning

1 GlobalSoftwareDevelopment GlobalSoftwareEngineering

OffshoreSoftwareDevelopment

Offshoring

DistributedSoftwareDevelopment

DistributedDevelopment

2 AgileMethodology Agile

Agilepractices

Agilemethods

Scrum

XP

RelationalAnalysishaseightkeystepsthatare(Writing@CSU,2004):

• Identifythequestion,asitindicatesweretheresearchisheadedandwhy?

• Chooseasampleorsamplesforanalysisthatisyouneedtodecidehowmuch

informationisrequiredforanalysis.Thisstepneedstobeconductedcarefully

as the sample will determine your results and insufficient samples can limit

yourresultsandtoomuchsamplescancausedifficultiesincodingthesample.

• Determinethetypeofanalysis.Therearethreetypesofanalysisyoucanselect

from: Affect extraction, Proximity analysis and Cognitive mapping. The

approachweselectedwasproximityanalysisasitevaluatesconceptsbasedon

co-occurrences because we wanted to analyse global software development

Page 107: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

107

and itseffectonagile softwaredevelopment.Whereasaffectextraction just

focused on evaluating individual concepts and cognitivemapping focused on

creatingmodels,whichisn'trelevanttoourresearch.

• Reduce the text to categories and code for words or patterns. At this stage

codingisdonetoidentifymereexistenceofaconcept/word.

• Exploretherelationshipsbetweenconcepts.Thatistodeterminethedegreeto

which two or more concepts are related to each other and whether that

relationship is positive or negative. Lastly focus on the direction of the

relationshipe.g.impactofXonYandinourcaseitwouldbestudytheimpact

ofglobalsoftwaredevelopmentonagilesoftwaredevelopment.

• Code the relationships. In this step statements and relationships between

conceptsarecoded.Assigningcodestorelationshipsisanefforttodetermine

whethertheambiguouswordsarejustfiltersorholdsinformation.

• Performstatisticalanalyses. In thisstepweexplore thedifferenceor look for

relationshipsamongthekeywords/concepts.

• Map out the representations. You can use graphical notations to represent

your findings. However we did not use this approach as our focus was on

identifying the relationship and developing our distributed agile pattern

catalogue.

DetailoftheanalysisispresentedinSection3.3.3,basedontheresultsoftheanalysis

wemovedtowardsStep5:DesignandDevelopDistributedAgilePatternsCatalogue.

The main follow of the steps followed to develop and design the catalogue is

demonstratedinFigure3.2below:

Page 108: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

108

Figure3.2.OverviewofDesignandDevelopmentofDistributedAgilePattern

Catalogue

Anoverviewofwhathappensineachstepisgivenbelow:

Step1:Identifyexistingpatternsandrecurringpractices.

Asmentioned inSection3.3.1, the research startedby reviewing theexisting

literature fromwhichwe identified our research problem. In order to find a

solutionfortheidentifiedproblem,weconductedsystematicliteraturereview

toidentifypatternsusedtosolvechallengesinoffshoresoftwaredevelopment.

Based on this step we were able to collect data that was required for

conducting this research. We also conducted semi-structured interviews to

identifypatterns.Detailsofhowthisstep isexecutedhavebeenpresented in

Section3.3.3.

Step2:Analysetheidentifiedpatterns.

Inordertofocusoncollectingtherightdataforourresearch,wefirstfilteredcase

studiesbasedontheidentifiedresearchquestionsmentionedinSection1.3andto

furtherrefineourdatawesetaselectioncriteriawhichwasthatthepapersshould

addressthefollowingquestions:

Page 109: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

109

- Does a paper address a challenge in applying any Agile Practice in

distributedprojects?

- Does a paper discuss any real life experience of using Agile practices for

distributedprojects?

- Is their any Agile Practice that has been repeatedly adapted and used to

solveissueswithdistributedprojects?

Basedontheabove-identifiedcriteria,wewantedtoidentifypatternsinliterature

thatarebeingusedtosolveanoffshoredevelopmentchallenge.Furtherwealso

focused on identifying solutions that practitioners used to overcome offshore

challenges and analyse if any other practitioner has used a similar solution.We

havedemonstratedindetailthefiltrationandselectionprocessinSection3.3.3.

After the data collection phase was completed we moved towards studying

literatureonexistingpatternsused insoftwaredevelopment.Currentlythereare

sixtypesofpatternsmentionedinSection2.6.2.1.

Step3:DevelopDistributedAgilePatternsCatalogue.

From the systematic literature review and semi-structured interviews, we

identified 15 patterns that were being used in distributed agile software

development. In our research we have classified an agile practice as a

distributedagilepatternifithasbeenrepeatedinmorethenatleast2articles

and has been used to solve a recursive problem. Table 3.4 presents an

overview of howmany times agile practices were used to solve an offshore

challengeinliterature,whichwefurtherclassifiedasdistributedagilepatterns.

Page 110: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

110

Step4:Organiseanddocumentthecatalogue.

Based on the existing template mentioned in Section 2.6.2.1, we selected

Gamma’sDesignPatternstemplateinordertopreservefamiliarity,astheyare

perceived as the first pattern catalogue to be documented by the software

community.DetailofthisstephasbeendiscussedinSection4.2.

Thedistributedagilepatternswereorganisedintofourcategoriesbasedonthe

type of problem they solved. The four categories are management,

communication,coordinationandverificationpatterns.Detailofeachcategory

ispresentedinSection4.3.

Step5:MapDistributedAgilePatternsonTraditionalScrumLifecycle.

The identified15distributedagilepatternsweremappedontothetraditional

scrumlifecycleinordertohelppractitionersdecidedwhichdistributedpattern

canbeusedatdifferentstagesofthescrumwhichisshowninFigure4.2.

Step6:ValidateandEvaluatetheDistributedAgilePatternCatalogue.

Inordertovalidatethepatterncatalogueweusedreflectionworkshopandto

evaluate it we compared our solution to the existing solutions presented in

literature.DetailofthisstepispresentedinChapter5.

Step7:FinalisetheDistributedAgilePatternsCatalogue.

Based on the feedback given to us as part of the reflection workshop, we

modifiedourpatterncatalogue.Inordertoavoidconfusionforthereaderwe

presented theoriginal patterns inAppendix F and theRevised versionof the

catalogueinSection4.5.

Page 111: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

111

According to the above discussion it can be seen that we have used an inductive

approach, as the researchmoves from specific to general.Aswe first identified and

designed a specific research problem and then developed a generic catalogue of

distributedagilepatternstobeusedbypractitionerswhilechoosingtodeveloptheir

projectsatoffshorelocations.

3.3.3ResearchStrategy

AsdefinedinTable3.1,researchstrategydeterminestheplanaresearcherintendsto

followinordertoanswertheidentifiedresearchquestions.Yin(2003)pointedoutthat

in order to select the correct research strategy, it is important to consider three

aspectsoftheresearch,whichare:

• Thetypeofresearchquestionsposed;

• Theextentofcontrolandinvestigatorhasoveractualbehaviouralevents;and

• Thedegreeoffocusoncontemporaryasopposedtohistoricalevents.

Therearesevenwaysaresearchercanachievethis.Wehaveselectedthreewaysto

answerourresearchquestionsmentionedinSection1.3,whichare:archivalresearch,

casestudyandactionresearch.

InordertoachievethatwestartfromFigure1.1Step1:ReviewPreviousLiterature,in

which we study cases from literature, this form of research is referred as archival

researchasresearchisconductedfromexistingmaterial.SystematicLiteratureReview

is a technique to identify, analyse and interpret relevant published primary studies

with reference to a specific research questions. It provides a summary of reported

evidenceavailable foragivenareaof interest. It isdifferent fromordinary literature

surveys as they are formally planned and methodically executed. Kitchenham

recommendedtouseSLRasareviewmethodologybecauseitallowedtheresearcher

to(Kitchenhametal.,2007):

• Systematicallysummariseexistingevidencefromliterature.

Page 112: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

112

• Identifygapsinresearch.

• Provideaframeworktopositionfutureresearchactivities.

To identify challenges in offshore development we conducted the first Systematic

LiteratureReview.ThedetailsoftheSLRarementionedinSection2.3andthestudies

thatwereselectedasevidencearepresented inAppendixA.Basedonthe literature

review wemoved to the Step 2: Identify and Define Research Problem. The board

objectiveofthisstudywasdefinedastoanswerthefollowingquestion:

RQ:Whataretherecurringadaptationsofagilepracticesthatarebeingusedwithin

offshoresoftwaredevelopmentinordertoaddresstheidentifiedissues?

Tobemorespecific,thestudy’sfocuswasonthefollowingtwoquestions:

RQ1: What are the agile practices that are being commonly used to deal with

offshorechallenges?

RQ2: Are the challenges identified in RQ1 recurring in offshore software

development?

As mentioned earlier this type of research strategy involves Systematic Literature

Reviews. To identify patterns in offshore software development we conducted the

second Systematic Literature Review following Kitchenham and Charters guidelines,

which isStep3:CollectData fromLiteratureReviewand Interviews.Toconduct this

step we searched for papers that are written in English and that where available

online. The search strategy includes electronic databases and manual searches of

conferenceproceedings.Thefollowingelectronicdatabasesareused:

• IEEEXplore(www.ieeexplore.ieee.org/Xplore)

• ACMDigitalLibrary(www.portal.acm.org/dl.cfm)

• GoogleScholar(www.scholar.google.com)

• ElsevierScience(www.sciencedirect.com)

Page 113: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

113

• AISeLibrary(www.aisel.aisnet.org)

• SpringerLink(www.springerlink.com)

• TaylorFrancisOnline(http://www.tandfonline.com)

Wealsosearchedthefollowingconferenceproceedingsforthepapersontheuseof

Agileinoffshoresoftwaredevelopment:1)AgileConferenceand2)AgileProcessesin

Software Engineering and Extreme Programming. The papers ranged from industrial

experience reports, theoretical,empiricalandexperimentalacademicpapers. Figure.

3.3,showsthereviewprocessandthenumberofpapersidentifiedateachstage.

Figure.3.3.TheSelectionProcessofPrimaryPapers.

WedesignedTable3.3basedonourkeyconceptsselectedinTable3.2.Instage1,we

selectedthedatabasesusingthesearchitemslistedinTable3.3.Category1hasmore

keywords and shows many variations of the same term “Global Software

Development”. All these search items were combined using the Boolean “AND”

operator,whichrequiresthatanarticlethatfocusesonbothAgileandGlobalSoftware

Development,willberetrieved.Hencewesearchedeverypossiblecombinationofthe

keywords fromCategory Type 1 AND Category Type 2. Our search excluded articles

Page 114: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

114

that addressed editorials, prefaces, article reviews, discussion comments, news, and

summaries of tutorials, workshops, panels and poster sessions. The search strategy

resultedinatotalof6614“hits”.

Table3.3.SearchTermsusedinthisReview.

Type Category Keywords

1 GlobalSoftwareDevelopment GlobalSoftwareEngineering

GlobalSoftwareDevelopment

OffshoreSoftwareDevelopment

Offshoring

DistributedSoftwareDevelopment

DistributedDevelopment

2 UseofAgilePractices Agile

Agilepractices

Agilemethods

Scrum

XP

We used the following screening criteria to ensure that the papers addressed our

researchtopic:

1. Doesapaperaddressachallenge inapplyinganyAgilePractice indistributed

projects?

2. Does a paper discuss any real life experience of using Agile practices for

distributedprojects?

3. IstheiranyAgilePracticethathasbeenrepeatedlyadaptedandusedtosolve

issueswithdistributedprojects?

Page 115: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

115

Inour studywealsocollectedsecondarydatabyconsidering“lesson learnt” reports

based on expert opinion that addressed how Agile practices are used in offshore

projects.These3pointsprovidedameasureoftheextenttowhichweareconfident

that a selectedpaper couldmakea valuable contribution tounderstand the current

useofAgilepracticesindistributedsettingsandtoidentifyrepeatingpracticesthatare

being used to solve offshore problems. Each of the 3 criteria was graded on a

dichotomous(“yes”or“no”)scale.

Weselected212papersoutof544articlesbycarryingoutaqualityassessmentbased

onthe3screeningcriteria.Weacceptedapaperthatsatisfiedall3criteriaandgraded

asall“yes”.Forexampleweexcludedpapersthatdidnotshowanagilepracticebeing

used to solve a repeatedly occurring problem. For example, if an organisation used

split pair programming teams but no other organisation used it for better code,we

didn’tincludethataspartofourcatalogue.Inourresearchwehaveclassifiedanagile

practiceasadistributedagilepattern if ithasbeenrepeated inmorethanat least2

articlesandhasbeenusedtosolvearecurringproblem.

In the Table 3.4, we have shown how many times an agile practice occurred in

literature for example synchronous communication practices occurred in over 200

paperswhile collective planning poker activity occurred in 10 papers. Based on the

frequencyofapracticeweidentifiedpatterns.

Table3.4.OccurrenceofAgilePracticesinLiterature

Page 116: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

116

Wealso used case study strategy for our research as according to Yin, a case study

examines a phenomenon in its natural setting, to answer how and why questions

whentheresearcherhaslittlecontrolovertheevents.Thecasestudymethodcovers

both the phenomenon of interest and its content, resulting in producing a larger

numberofpotentiallyrelevantvariables.

According to Yin six sources of evidence should be used for data collection for case

study,whichareshowninTable3.5(Yin,2003).

Table3.5.SixSourcesforDataCollectionComparison(Yin,2003).

No. DataSource Advantage Limitation

1. Interviews • In-depthknowledge

andcanextract

requiredinformation.

• Biasduetopoorly

constructedquestions.

• Responseisbias.

• Inaccuratedata,dueto

poorrecallofeventsby

theresearcher.

2. Documents • Broadcoverage.

• Unobtrusive-not

createdasaresultof

thecasestudy.

• Biasedselectivityif

collectionisincomplete.

• Accessmaybe

deliberatelyblocked

• Reportingbiasesbased

ontheauthors’bias

reflection.

3. ArchivalRecords • Preciseand

quantitative.

• Broadcoverageof

data.

• Notcreatedasaresult

• Accessibilityblockeddue

toprivacyissues.

• Biasedasitisbasedon

theselectionofthe

researcher.

Page 117: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

117

ofthecasestudy.

4. DirectObservation • Coverseventsinreal-

time.

• Focusedoncovering

thecontextofthe

event.

• Timeconsuming

• Addedcostbasedonthe

hoursneededbythe

humanresource.

• Eventsmaytakeplace

differentlyastheyare

beingobserved.

5. Participant

Observation

• Insightfulin

understanding

interpersonal

behaviourandmotives.

• Eventsarecoveredin

real-time.

• Eventsarefocusedon

context.

• Biasedasitisbasedon

theresearchers

manipulationofresults.

• Timeconsuming.

• Addedcostduetothe

hourshumanresource

spendontheresearch.

6. PhysicalArtefacts • Insightfulintocultural

features.

• Insightfulin

understanding

technicaloperations.

• Selectivity-asitdepends

ontheresearcherwhat

heselects.

• Dependsonthe

availabilityofthe

artefacts.

Eachsourceofdatahasitsadvantagesandlimitations.Forthisresearchwehaveused

interviewsandarchival records.According toEasterby-Smithet al. (2012) interviews

arethebestmethodofgatheringinformation.Therearethreetypesofinterviews:

Page 118: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

118

Table3.6.TypeofInterviews(Easterby-Smithetal.,2012).

No. Type Definition

1. FullyStructured

Interview

Usequestionnairetopredefinethequestionsasstandardof

research.

2. Semi-

Structured

Interview

Theresearcherhasalistofthemesandquestionsthatcover

thephenomenonunderstudy.Howeverthesequestionscan

change based on the answers given by the interviewee in

order to get more clarification (Robson, 2002; Saunders,

2007).

3. Unstructured

Interview

Thisisusedtoexploreindepthageneralareaofinterestfor

theresearcher.Thebasicobjectiveistoputtheinterviewee

ateaseandallowthemtoexpressthemselves.

We conducted 20 semi-structured interviews to collect primary data, in which we

askednineopen-endedquestionscoveringdifferentaspectsofoffshoring inorderto

get expert opinion regarding the practices. According to Easterby-Smith semi-

structuredinterviewsareappropriatewhen(Easterby-Smithetal.2004):

• Theresearcherwantstounderstandwhatconstructsthe intervieweeusesas

basisforhisbeliefsandopinionaboutthephenomenonunderstudy.

• Aim is tounderstand the“respondent’sworld”, so that the researchermight

influenceitandchallengeit.

• Step by step logic is not clear, that is some information be confidential or

sensitiveandtheintervieweemightbereluctanttosharethetruesituation.

Jankowicz suggested that semi-structured interviews are a powerful data collection

technique when used in case study (Jankowicz, 2005). The reason for using semi-

structuredinterviewsinthisresearchisbecauseitprovidesflexibilitytotheresearcher

Page 119: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

119

tomodify the questions in order to understand the phenomenon under study. The

sampleusedtoconductthesemi-structuredinterviewsispresentedinAppendixD.We

alsosignedconsentformfromtheorganisationsweinterviewedduetoconfidentiality

issues,whichisavailableinAppendixE.Thecompaniesweinterviewedwereselected

based on their experience in offshoring and as mentioned in Table 3.7 we further

divided them into three categories based on the organisational type, which are

startup, breakeven and profitable. Companies that are still in their early stages of

earning revenue and have not yet reached breakeven are categorized as startup;

companiesthathavereachedbreakevenbasedonfinancesasbreakevenandlastlythe

companiesthataregeneratingprofitasprofitable.Table3.7showsanoverviewofthe

organisationsthatwereselected.

Table3.7.DetailofCompaniesInterviewed.

Category Experienceinoffshoring

(years)

Offshore

Projects

No.Of

Companies

Startup

Breakeven

Profitable

1-2

>3

>5

3

8-9

>10

4

6

10

Basedonthecollecteddata,wemovedtowardsStep4:AnalysingDataCollectedfrom

Literatureand Interviewswhichhasbeendiscussed inSection3.3.2,basedonwhich

we identified 15 distributed agile patterns that is Step 5: Design and Develop

Distributed Agile Patterns Catalogue. We validated the catalogue using an action

research technique, which is Step 6: Validate and Evaluate the Distributed Agile

PatternsCatalogue,ofourresearchmethodology.

We conducted a reflection workshop based on Kerth’s “The keep/try reflection

workshop” for verification and validation of the catalogue. For this workshop we

invitedfourorganisationstotakepart(Kerth,2001).Thefocusofthisworkshopwasto

getfeedbackfromcompaniesinordertoobtaintheirviewsontheidentifiedpatterns.

Basedontheiranswers,anassessmentwasaimedforidentifyingthecompletenessof

Page 120: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

120

the catalogue and the usefulness of the identified patterns in adopting agile for

developing offshore projects and overcoming offshore challenges. Detail of the

validationandevaluationprocesshasbeenpresentedinChapter5.

3.3.4Choice

The choice outlined in the research onion mentioned in Table 3.1 includes three

methods,whicharemonomethod,mixedmethodandmulti-method.Weselectedto

usemulti-methodapproachtoconductourresearchasweusedbothquantitativeand

qualitativemethods for determineour results. Themain differencebetweenmixed

method andmulti-method approach is that is provides the researcherwith awider

selectionofmethodstouse(Bryman,2012).

Inmulti-method researchers can divide their research into separate segments, with

each segment producing a specific dataset; each is dataset is then analysed using

techniquesderivedfromquantitativeorqualitativemethodologies(Felizer,2012).

AsmentionedinSection3.3.4wehaveusedbothquantitativeandqualitativemethods

forcollectingandanalysingthedata.InStep3andStep4ofourresearchmethodology

showed in Figure 1.1ResearchMethodology,we startedwith reviewing the existing

literature(Step1)fromwhichtheresearchquestionswereformulated(Step2)based

on which we conducted systematic literature review and interviewed practitioners

(Step3)andthenanalysedthecollecteddata(Step4).Table3.8showsanoverviewof

thequantitativeandqualitativemethodsusedinthisresearch.

Table3.8.OverviewoftheQuantitativeandQualitativeMethodsUsedinthis

Research.

No. MethodType UsedintheResearch

1. Quantitative

Methods

Step1:ReviewPreviousLiterature.

Step3:CollectDataFromLiteratureReviewandInterviews:

Page 121: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

121

- SystematicLiteratureReview(SLR).

Step6:ValidateandEvaluatetheDistributedAgilePatterns

Catalogue:

- Forevaluation:Filter theSLRto identifysolutions

other than patterns and compare how the

Distributed Agile Patterns catalogue is a

comparativelyabetterandeasysolution.

2. Qualitative

Methods

Step3:CollectDataFromLiteratureReviewandInterviews:

- Semi-StructureInterviews.

Step 4: Analysing Data Collected from Literature and

Interview:

- ContentAnalysis(RelationalAnalysis).

Step 5: Design and Develop Distributed Agile Patterns

Catalogue:

- Filtering the studies identified in the SLR to

identify:

o Solutions for offshore software

developmentchallenges(FSD).

o Recurring agile solutions for adoption

practicesinoffshoring.

o Patternsinagileadoptioninoffshoring.

Step6:ValidateandEvaluatetheDistributedAgilePatterns

Catalogue:

- For validation: Kerth’s, “The keep/try reflection

workshop”.

- Evaluationofthecataloguewasdonebyreviewing

existing work done on designing solutions other

Page 122: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

122

thenpatterns,toovercomeoffshoredevelopment

challenges

3.3.5TimeHorizon

TheTimeHorizonisdefinedasthetimeframewithinwhichtheintendedresearchisto

be completed in. There are two types of time horizons inwhich research is usually

conductedwithin,whicharecrosssectionalandthelongitudinal(Bryman,2012).For

thepurposeof this research the timehorizon is cross sectional as this researchwas

conductedaspartofaPhDThesisandwehadafixtimedurationfordatacollection.

HoweversincethedurationofthePhDwas4-yearswehadtheflexibilityondeciding

whenthedatacollectionshouldtakeplacebasedontheprogressoftheresearch.

Table 3.9 shows the time frame inwhich the researchmethodologywas conducted

duringthecourseofthefouryearsofPhDResearch.

Table3.9.TimeHorizonacrossFour-YearPhDResearch.

No. PhDYear ResearchMethodologyStepConducted

1. Year1(2013) Step1:ReviewPreviousLiterature.

Step2:IdentifyandDefineResearchProblem.

2. Year2(2014) Step3:CollectDataFromLiteratureandInterviews.

Step4:AnalysingDataCollectedfromLiteratureand

Interviews.

3. Year3(2015) Step5:DesignandDeveloptheDistributedAgilePatterns

Catalogue.

4. Year4(2016) Step6:ValidateandEvaluatetheDistributedAgilePatterns

Catalogue.

Page 123: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

123

Step7:ModifytheCataloguetoImprovetheResults.

Step8:WriteupthePhDThesis.

3.3.6DataCollection

Thedatacollectionandanalysisapproachisdependentontheresearchmethodology

a researcher decides to use (Bryman, 2012) which is Step 3: Collect Data From

LiteratureReviewand Interviews,ofour researchmethodology in Figure1.1. There

arebasicallytwomainapproachesthroughwhichdataiscollectedwhichareprimary

andsecondarydatacollectiontechniques.

Inthisresearchwehaveusedbothprimaryandsecondarytechniquestocollectdata.

Weusedsemi-structureinterviewsastheprimarysourceofinformationasitallowed

us to discuss in detail the factors the participants considered to affect the

development process and how they had been adapting agile practices for their

offshore projects. The interviews were open ended, allowing us to probe for more

informationandgaveustheflexibilityof rephrasingquestionsandsimplifyaspecific

question if it was too complex for the participant to understand. The detail of the

interviewhasbeenpresented inSection3.3.3andthe listofquestionsaskedcanbe

foundinAppendixD.

Forsecondarydatawestudiedover200cases from literature to identifypatternsof

how practitionerswere adapting agilemethods for distributed agile projects and to

identify specific challenges in offshore development we conducted systematic

literaturereview,detailshavebeenpresentedinSection2.3andthestudiesthatwere

selectedasevidencearepresentedinAppendixA.

Page 124: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

124

3.4ChapterSummary

Inthischapterwepresentedtheresearchmethodologyusedtoconductthisresearch.

We first gave an overview of Saunder’s research onion and then applied it on our

researchmethodologyasthishelpeduspresentourmethodologyinasystematicway.

Theresearchmethodologywaspresentedinsixstages,whichareresearchphilosophy,

researchapproach,researchstrategy,choice,timehorizonanddatacollection.

In thenext chapter,wehavepresentedourdistributedagilepatterns catalogueand

howpractitionerscanuseit.

Page 125: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

125

Chapter4 DistributedAgilePatterns

4.1Introduction

In this section we present the distributed agile patterns that were identified from

systematicliteraturereviewandsemi-structuredinterviews.Wealsopresenthowthe

template for thedistributedagilepatterns is designedanddemonstrate theprocess

through which practitioners can choose which pattern is suitable. Further the

catalogue is divided into four categories such as management, communication,

collaborationandverification,basedonwhattypeofchallengethepatternsolves.The

distributedagilepatternsarethenmappedontothetraditionalscrumlifecycletohelp

practitioners choose patterns based on what functionality they want to perform.

Lastlythefulldistributedagilepatternscatalogueispresented.

4.2DesigningTemplateforDistributedAgilePatterns

Patterns are described using a standard format in order to provide structured

informationthatmakesthemeasiertounderstandandcompare.InTable4.1wehave

providedacomparisonbetweentheexistingdifferenttemplatesthatareusedforthe

patternsmentionedinChapter2(Robertson,1996;Fowler,1997;Gammaetal.,1997;

Buschmann et al. 1996; Brown et al. 1998) such as requirement, analysis, design,

architectural, anti-patterns and idioms. The purpose of this comparison is to

understandwhatarethekeycomponentsrequiredfordocumentingapattern.

Table4.1.ComparisonofExistingPatterns.

Requirement

Patterns

Analysis

Patterns

Design

Patterns

Architectural

Patterns

AntiPatterns Idioms

Name

Name

Name

Name

Name

Name

Page 126: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

126

Context

Solution

Related

Patterns

Alsoknown

as

Evolution

Structural

Adjustment

Problem

Motivation

Context

Applicability

Requireme-

nts

Modelling

Consequen-

ces

Example

Knownuses

Intent

Alsoknown

as

Motivation

Applicability

Structure

Participants

Collaborat-

ion

Consequen-

ces

Implement-

ation

Sample

Code

Knownuses

Related

Problem

Category

Context

Solution

Rational

Consequence

Example

Knownuses

Related

Patterns

Problem

Context

Solution

Consequence

Design

Rational

Example

RelatedAnti

Patterns

Intent

Also

known

Motivati-

on

Solution

Sample

Code

Known

uses

Page 127: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

127

Related

Patterns

Patterns

From the above table we can see that all the current templates cover detail

descriptionsofaproblemanditssolution.Asonlygraphicalnotationsaren’tsufficient

to capture the process of an end product, in order to reuse a solutionwe need to

recordall thedecisions that lead to formapattern.Similarlywecanseeallof them

have put in sample code or example section as they help in understanding how a

patterncanbeusedinpracticalscenarios.

In this research, the proposed catalogue is developed based on literature and

interviews and we have used Gamma’s pattern template in order to preserve

familiarity, as they are perceived as the first pattern catalogue documented by the

software community. A customised template was then developed to capture the

specific findings related todistributedagilepractices. Thedistributedagilepatterns

templatecontainsthefollowingsections:

• Pattern Name: As patterns represent generic knowledge it is vital to give a

goodname thatwouldmake it recognizableand reusable.Agoodnamealso

helpsinfacilitatingcommunicationamongpractitionersaboutthepattern.

• Intent: A short statement that highlights the issues and problems that are

requiredtobesolvedbyapplyingthepattern.

• AlsoknownAs:Thepattern’sotherwell-knownnames,ifanyarementionedin

thissection.

• Category: Based on the similarities of the patterns we grouped them into

differentcategoriestobeabletoprovideanabstractviewofallthepatterns.

Page 128: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

128

• Motivation: Itconsistsofthedescriptionoftheproblemandwhythepattern

should be used in order to avoid the problem from recurring. It provides

scenariosthathelpunderstandtheabstractdescriptionofthepattern.

• Applicability:Underwhatconditionsthepatterncanbeapplied.

• Participants: The participants are those people that are required in applying

thepattern.

• Collaboration: How participants will coordinate with each other in order to

fulfiltheirresponsibilitiesthatarerequiredtocompletetheprojects.

• Consequences: Discuss the trade-offs of applying the patterns such as

advantagesanddifficultiesfacedwhenapplyingit.

• Knownuses:Examplesofrealscenariosfoundthatfollowthepatterninorder

toprovideclarityofhowthepatterncanbeused.

• RelatedPattern:Listofsimilarpatternsinordertoidentifywhichpatternscan

beusedtogethertoimproveaparticularsituation.

4.3SelectingtheRightPatternfromtheDistributedAgilePatternsCatalogue

Basedon the identifieddistributedagilepatternsandhowwehaveorganised them.

We have developed a process throughwhich practitioners can selectwhich pattern

wouldhelpthemwhilechoosingtodeveloptheirsoftwareoffshore.Followingarethe

stepsthepractitionershouldfollowinordertoselectadistributedagilepattern:

• To provide ease to the practitioners we have used names similar to agile

practices, forexample, ifthepractitionerwantstousetheagilepracticedaily

standup meeting, he can look for Pattern Name Local StandupMeeting for

Page 129: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

129

distributeddevelopmentor formore clarificationhe can lookatAlso Known

As,whichisDailyScrummeetingordailymeeting.Anotheralternativestarting

pointcanbeselectingwhichpatternthepractitionerwantstousebasedonthe

Category the practitioner wants to solve. For example, if they are facing

management issues, they can start by looking at the patterns that solve

management problems such as distributed scrum of scrum, local standup

meeting, local sprint planning, local pair programming and asynchronous

retrospective.

• After shortlistingapattern thepractitioner, can furtherunderstandwhat isa

pattern does by reading the Intent, as it highlightswhat issues and how the

patternsolvesit.

• To understand in detailwhat problem a pattern solved andwhat is the best

wayofapplyingit,thepractitionershouldreadtheMotivationnext.

• Every pattern has some advantages and some limitations. In order to clearly

understand them the next section the practitioner should read is

Consequences.

• Tounderstandunderwhichconditionsapatternisapplicableandwhoshould

participate and how while applying a pattern, the practitioner should read

Applicability,ParticipantsandCollaborationsections.

• Togetmoreinformationonhowexistingorganisationsandpractitionershave

usedthispattern,thepractitionercanreadKnownUses.

• IfthepractitionerwantstofindpatternsthatarerelatedtheycanreadRelated

Patternssection.

Figure 4.1 shows the follow of how the practitioner should read a distributed agile

pattern inorder toselectapattern fromthedistributedagilepatternscatalogue for

Page 130: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

130

theiroffshoreprojects.Apractitionercaneitherstartbyreadingapatternsnameorby

the category aswe have divided our pattern catalogue into four categories such as

management,communication,collaborationandverificationpatterns.Thecategories

helpthepractitionerindecidingwhichtypeofchallengetheywanttoovercome.

Figure4.1.ProcessofselectingpatternsfromtheDistributedAgilePatterncatalogue.

The distributed agile patterns are spread across the Scrum software development

lifecycleasshowninFigure4.2.Thepractitionercanpickandchosewhicheverpattern

hewouldliketoapplyandwhicheverScrumphase.Thepatternsnamesarewrittenin

redandtheblueboxunderthemshowsonwhichscrumpracticesthedistributedagile

patterncanbeapplied.

Figure4.2.DistributedAgilePatternsApplicationonTraditionalScrumLifecycle

Page 131: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

131

4.4OrganisingtheDistributedAgilePatternsCatalogue

Distributed agile patterns vary in their granularity and level of abstraction. Because

there aremany distributed agile patterns, we have organised them in 4 categories,

whicharemanagement,communication,collaborationandverificationpatterns.This

classificationhelpsinlearningandidentifyingwhichpatternistobeusedinaspecific

scenario.We have classified distributed patterns based on the problem they solve.

Followingarethedefinitionofthe4categories:

• ManagementPatterns:As inoffshoringtheteamisdistributedoverdifferent

time zones, it isdifficult tomanageall thedistributed teammembersandas

theyareworkingondifferentmodulesoftheprojectitisdifficulttodetermine

the overall progress of the project. In order to handle this problem we use

management patterns as they consist of practices that help inmanaging the

onshore and offshore teammembers and their activities to effectively apply

agileinadistributedenvironment.

• Communication Patterns: Since the team is distributed geographically over

different time zones they have minimum overlapping working hours, which

makes it difficult tomaintain real time communication between the onshore

and offshore team members. Communication patterns focus on providing

solutions to how distributed team members can maintain an effective

communication channel in an agile setting using different online toolswhich

providebothsynchronousandasynchronousmethodforcommunication.

• CollaborationPatterns:Evenifthenatureoftheprojectisoffshoring,thereis

stillaneedtoconductsomecollectiveteamactivitiesinordertoimprovethe

coordinationamongtheonshoreandoffshore teammembers.Because if the

onshoreandoffshoreteammembersdon’tmeeteachotheritcreatesmistrust

and misunderstanding among the team members, which affects the overall

team’sproductivity. Inordertosolvethis issuecollaborationpatternsprovide

Page 132: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

132

solutions regardingwhich activities theonshore andoffshore teammembers

shouldconducttogethertoimproveteamcoordinationandprojectprogress.

• Verification Patterns: As in agile we focus on building the right product

according to the satisfaction of the client. But as the team is distributed on

differentlocationsitisdifficulttosetastandardguidelineforallthedistributed

developmentsitesandhowtoshowprojectprogresstotheclient.Inorderto

solve thisproblemverificationpatterns focusesonhowefficiently the clients

can get a distributed project developed according to their requirements and

monitortheprogressofwhathasbeendeveloped.

Table4.2.CategoriesofDistributedAgilePatterns.

Category

Management

Patterns

Communication

Patterns

Collaboration

Patterns

Verification

Patterns

Pattern

Names

Distributed

ScrumofScrum

LocalStandup

meeting

LocalSprint

Planning

LocalPair

Programming

Asynchronous

Retrospective

GlobalScrumBoard

CentralCode

Repository

Asynchronous

InformationTransfer

Synchronous

Communication

Collaborative

PlanningPoker

Follow-the-sun

Collective

ProjectPlanning

Visit onshore-

offshore

ProjectCharter

Onshore

Review

Meeting

Page 133: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

133

4.5FullDistributedAgilePatternsCatalogue

In this section we have presented our full finalised Distributed Agile Patterns

Catalogue.Inordertoavoidcausingconfusionforthereaderwepresentedtheoriginal

unrevisedpatternsinAppendixF.

4.5.1ManagementPatterns

Inthissectionwehavedescribedthedetailofeachmanagementpattern.

4.5.1.1 DistributedScrumofScrumPattern

In agile methodology, Scrum is an iterative and incremental project management

approachthatprovidesasimpleframeworkthat“inspectandadapt”(Hossain,Babar,

andPaik,2009).Weobservedthatinoffshoreprojectstheonshoreandoffshoreteam

practices separate scrums in order to develop the project. Based on this observed

practicewehavedesignedthefollowingpatterndetails:

PatternName

DistributedScrumofScrumPattern

Intent

To apply scrum, sub-teams are formed based on location. Each team has its

ownscrum.Scrumofscrummeetingsarearrangedtodiscusstheprogressof

theproject,whichisattendedbykeypeople.

AlsoKnownAs

ScrummeetingorMetaScrum

Page 134: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

134

Category

Management category as this pattern helps the onshore and offshore team

manage their separate scrums and keep each other updated of the project

progress.

Motivation

The motivation of this pattern is to address the communication and co-

ordination, and knowledge transfer challenges. For example consider a team

that is divided into sub-teams based on location and they are working on

different tasks of a project. It is difficult to have both onshore and offshore

teamworkonthesamescrumastheybothworkondifferenttimezonessoin

ordertoworkonthesameproject,bothteamsworkonseparatescrums.

To coordinatework both teams arrange a scrum of scrummeeting,which is

attendedbykeypeoplefrombothteamstoupdateeachotheroftheprogress

oftheproject.

Applicability

UseDistributedScrumofScrumwhen:

• Teamisdistributedoverdifferenttimezones.

• Theoverlappingworkinghoursbetweentheonshoreandoffshoreteam

isless.

Participants

• Distributedonshoreandoffshoreagileteam.

• ScrumMastersofagilesub-teamsandProductowner.

Collaboration

• Keymembers fromonshoreandoffshore teamsdecide time forScrumof

Scrummeeting.

Page 135: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

135

Consequences

The Distributed Scrum of Scrum pattern has the following benefits and

liabilities:

1. It prevents the onshore and offshore team from wasting time on

collaborating tasks with each other through online tools as both the

teamsareworkingon theirownscrumso theydon’thave towait for

eachothertocompletetasks.Thishelpsovercomethecommunication

andcoordinationchallenges

2. Itprovidescontroltobothonshoreandoffshoreteamtoworkontheir

scrum,whichavoids theoffshore team fromhaving to adjustworking

hours based on onshore teams availability. This helps overcome the

communicationandcoordinationchallenges.

3. It allows key people such as Scrum Masters and Product owners’ to

discuss the progress of the project without having the whole team

presentwhich keeps themeeting timeboxed andhelps in knowledge

transferamongtheteams.

4. Its limitation is that due to minimum collaboration between the

onshore and offshore team, both sub-teams don’t feel they are one

team.

5. SinceonlykeypeopleattendtheScrumofScrummeeting,itlimitsface-

to-face interaction of both onshore and offshore team, which affects

trustbuildingbetweenbothteams.

Knownuses

WhenCheckFreedecidedtomovetheirworktoanIndianoffshoreconsulting

firmtheyusedScrumofScrumtogatherandreviewtheoverallteamstatistics

andprogressoftheproject(Cottmeyer,2008).Similarly,multiplecasestudies

Page 136: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

136

done on organisations using Scrum for distributed teams also used Scrumof

Scrumtocoordinateworkwithoffshoreteam(Hossainetal.,2009;Paasivaara

et al., 2009). Siemens also used Scrum of Scrum for two large distributed

projects in which the development teams were located in USA, Europe and

India.IntheirScrumofScrummeetingstheycoveredtechnicalandmanagerial

issuesthatoccurredinmultipleteams(Avritzeretal.,2010)

RelatedPatterns

Distributed Scrum of Scrum pattern is often used with Local Sprint Planning

PatternandAsynchronousRetrospectivemeetingPatternas theonshoreand

offshore teammembers areworking on different story cards and at the end

havetheirseparateretrospectivemeetingstodiscussthesprint

4.5.1.2 LocalStandupMeeting

Agilemethodologyfocusesonconductingadailystandupmeeting.Weobservedthat

inoffshoreprojectstheonshoreandoffshoreteamconducttheirownseparatedaily

standupmeetingsanduseonlinetoolssuchasWiki’stosharemeetingminuteswith

eachother.Basedon thisobservedpracticewehavedesigned the followingpattern

details:

PatternName

LocalStandupMeetingPattern

Intent

Todiscussdailyupdatesonworkdone,eachlocalteamwillconducttheirown

standupmeetings.

AlsoKnownAs

DailyScrummeetingordailymeeting

Page 137: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

137

Category

Management category as this pattern helps the team members of both

onshoreandoffshoreteammanagetheirdailyactivitiesandupdateeachother

withtheworkdone.

Motivation

The motivation of this pattern is to address the communication and co-

ordination,andknowledge transferchallenges. Forexampleconsidera team

thatisdividedintosub-teamsthatarelocatedondifferenttimezones.Tohave

a collaborative daily standupmeeting is difficult and time consuming as the

offshore team either has to come early to work or stay late to attend the

meeting.Toavoidthis,theonshoreandoffshoreteamconductsseparatelocal

standupmeetingsinwhichtheyanswerthefollowingquestions:

o Whatdidyoudoyesterday?

o Whatareyoudoingtodotoday?

o Whatisgettinginyourway?

After conducting local standup meetings both onshore and offshore team

share,meetingminutesviaonlinetoolssuchasWiki’stokeepboththeteams

uptodatewiththeprogressoftheproject.

Applicability

Uselocalstandupmeetingwhen:

• Teamisdistributedoverdifferenttimezones.

• Theoverlappingworkinghoursbetweentheonshoreandoffshoreteam

isless.

Participants

• Distributedonshoreandoffshoreagileteam.

Page 138: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

138

Collaboration

• Both onshore and offshore team share-meetingminuteswith each other

usingonlinetools.

Consequences

Thelocalstandupmeetingspatternhasthefollowingbenefitsandliabilities:

1. It prevents the offshore team from waiting for the onshore team’s

availabilitytoconductthedailystandupmeeting.Thishelpsovercomethe

communicationandcoordinationchallenges.

2. It allowsbothonshore andoffshore team flexibility to conduct their own

standup meeting at whichever time they want. This helps overcome the

communicationandcoordinationchallenges.

3. Itallowstheonshoreandoffshoreteamtotransferknowledgebysharing

meetingminuteswitheachother.

4. Itlimitstheonshoreandoffshoreteamfromreal-timecommunicationand

bothteamheavilyrelyonthemeetingminutessoanymistakecanleadto

misunderstandingintheprogressoftheproject.

Knownuses

OrganisationssuchasPulpCo(Paasivaaraetal.,2009)andWiproTechnologies

(Sureshchandraetal.,2008)uselocalstandupmeetingsforcommunicatingthe

progressoftheprojectwithteammembers.

RelatedPatterns

DailyStandupmeetingpattern isoftenusedwithGlobalScrumBoardPattern

as once the onshore and offshore team members have conducted their

meetingstheysharethemeetingminutesonasharedtoolsothatbothcansee

theprojectprogress.

Page 139: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

139

4.5.1.3 LocalSprintPlanningMeetingPattern

Inagile,ascrumconsistsofmanysprints.Thedurationofasprintvariesfrom2weeks

to4weeksdependingonthesizeoftheproject.Atthestartofeverysprinttheteam

has a sprint-planningmeeting inwhich the team defines the goal of the sprint and

prepare the sprint backlog. When the team is divided and is working on different

modules of the project it has been observed that the onshore teammembers and

offshoreteammembersconducttheirownseparatesprintplanningmeetings.Based

onthisobservedpracticewehavedesignedthefollowingpatterndetails:

PatternName

LocalSprintPlanningMeetingPattern

Intent

Eachteamwillhavetheirownsprintplanningmeetings

AlsoKnownAs

SprintPlanningMeetingorIterationMeeting

Category

Management category as this pattern helps the onshore and offshore team

work on their separate module and conduct independent scrum and sprint

planningmeetings.

Motivation

The motivation of this pattern is to address the communication and co-

ordination,andknowledgetransferchallenges.Forexamplewhenaprojectis

distributedtoateamthatisdividedoverdifferenttimezones,andareworking

ondifferentmodulesoftheprojectandareconductingtheirownscrums. As

the onshore and offshore teams conduct their separate scrums, they also

conduct separate sprint planningmeetings to decide what they will develop

Page 140: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

140

during a sprint. Both teams prepare their sprint backlogs, which are shared

usingonlinetools.

Applicability

UseLocalSprintPlanningMeetingpatternwhen:

• Team is distributed over different time zones and is working on

differentmodules/subsystemoftheproject.

Participants

• Distributedonshoreandoffshoreagileteam.

Collaboration

• Theonshoreteamandoffshoreteamsharesprintbacklogwitheachother

toshowtheworktheywillbedoingoverthenextsprint.

Consequences

TheLocalSprintPlanningMeetingpatternhasthefollowingbenefitsandliabilities:

1. It allows both teams to work independently without having to wait for the

onshore teamtobeavailable toconduct themeeting,whichhelpsovercome

thecommunicationandcoordinationchallenges.

2. Itprovidescontroltobothonshoreandoffshoreteamtoworkontheirscrum

and conduct their own sprint planning meetings, which avoids the offshore

team from having to adjust working hours based on the onshore team

availability. This helps overcome the communication and coordination

challenges.

3. Both teams can share their sprint backlog with each other, which provides

visibility of the project progress and helps overcome the knowledge sharing

challenges.

Page 141: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

141

4. Asboththeteamsareworkingindependentlyitcancausetheteamstofeel,as

they are not part of one team, rather create an effect that they are two

separateteams.

Knownuses

WhenCheckFreedecidedtomovetheirworktoanIndianoffshoreconsulting

firm they used local sprint planning meetings to plan their sprint activities

(Cottmeyer,2008).

RelatedPatterns

Local SprintPlanningPatterns inoftenusedwithDistributedScrumof Scrum

Pattern and Global Scrum board Pattern as the meetings minutes of the

planningmeetingaresharedwithbothonshoreandoffshoreteammembers.

4.5.1.4 LocalPairProgrammingPattern

In agile, pair programming consists of two programmers that share a single

workstation that is they share one screen, keyboard and mouse. The programmer

usingthekeyboardisusuallycalledthe"driver",theother,iscalled“navigator”asheis

activitygivinghis remarksonthecodeandhelpingthedriver towrite thecode.The

programmers are expected to switch roles after every few minutes. It has been

observedthatwhentheteamisdividedondifferentlocations,theteammembersthat

are co-located form pairs as it is difficult to form pairs with other locations team

members due to the time difference. Based on this observed practice we have

designedthefollowingpatterndetails:

PatternName

LocalPairProgramming

Intent

Makepairprogrammingteamsfromthesamelocation.

Page 142: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

142

AlsoKnownAs

PairProgrammingorPairedProgramming

Category

Management categoryas thispatternhelps the local teammembers to form

pairsandworkontheirstorycard.

Motivation

The motivation of this pattern is to address the communication and co-

ordination challenges. For examplewhena team is distributedoverdifferent

locationsbasedontimezones,itisdifficulttoformpairsbetweenthemdueto

thetimedifferenceinworkinghours.Soeachteamformspairsbasedontheir

locationastheyareco-locatedandcanworktogether.PairProgramminghelps

improvethequalityofcodeasinsteadofonepersonwritingthecodetheother

personischeckingthecode.

Applicability

UseLocalPairProgrammingpatternwhen:

• Team is distributedover different time zones and isworking on different

modules/subsystemoftheproject.

Participants

• Distributedonshoreandoffshoreagileteamandworkingondifferentstory

cards.

Collaboration

• The onshore team and offshore teammembers share a keyboardwith a

fellowteammemberfromtheirrespectivelocation.

Consequences

TheLocalPairProgrammingpatternhasthefollowingbenefitsandliabilities:

Page 143: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

143

1. The offshore team members don’t have to wait for the availability of

onshore team members to start work, which helps overcome the

communicationandcoordinationchallenges.

2. Someorganisationsfeelit’sawastehavingtworesourcingworkingonthe

samething.

Knownuses

InacasestudyconductedbyMaruping(2010)onanorganisationthathadits

developmentcentersinIndia,U.SWestCoast,U.SMid-WestandU.SEastCoast

showedthatpairswheremadeonthebasesofphysicallocations.

RelatedPatterns

SinceinLocalPairprogrammingweareselectingteammembersfromthesame

location,weoftenuseitwithLocalSprintPlanningMeeting.

4.5.1.5 AsynchronousRetrospectiveMeetingsPattern

Inagile,whenateamisusingScrumattheendofeverysprintafterthesprintreview

meeting, a retrospectivemeeting is conducted which is attended by only the team

membersandthescrummaster. Inthismeetingtheteamdiscussesallthegoodand

badthingsthathappenedduringthesprintandhowtheycanimprovetheirwork.They

alsodiscussthefeedbackgivenbytheclient.Ithasbeenobservedthatwhentheteam

isdividedondifferenttimezones,teamsconducttheirownretrospectivemeeting,as

duetothetimedifferenceitisdifficulttohaveacollectiveretrospectiveattheendof

each sprint (Kamaruddin, 2012). Once both the onshore and offshore teams have

conducted their retrospective meeting they share the meetings minutes with each

other using online tools. Based on this observed practice we have designed the

followingpatterndetails:

Page 144: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

144

PatternName

AsynchronousRetrospectiveMeetings

Intent

Teams conduct separate retrospectivemeetings based on location and share

the key information via email. The Scrum Masters discuss possible

improvementswiththeteambasedonthefeedbackfromtheclient.

AlsoKnownAs

RetrospectiveMeetingsorIterationRetrospective

Category

Management category as this pattern helps the onshore and offshore team

members to review their sprint and discuss their performance. The Scrum

Master advises the team on how they can improve their performance and

discussesthefeedbackoftheclient.

Motivation

The motivation of this pattern is to address the communication and co-

ordination, and knowledge transfer challenges. For examplewhen a team is

divided on different time zones and are working on different

modules/subsystemsofaprojectandconductingtheirownindependentScrum

andsprintsitisdifficulttohaveacollectiveretrospectivemeeting.Theonshore

andoffshoreteammembersconducttheirseparateretrospectivemeetingsto

discusswhatwentgoodandbadinthesprintandhowtheycanimprovetheir

work in the next sprint. The Scrummaster attends thesemeetings and gives

feedbackontheperformanceontheteamanddiscussestheremarksgivenin

thesprintreviewmeetingbytheclient.Oncebothteamshaveconductedtheir

retrospectivemeetingstheysharethemeetingminuteswitheachotherusing

anonlinetool.

Page 145: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

145

Applicability

UseAsynchronousRetrospectiveMeetingswhen:

• Team is distributed over different time zones and is working on

differentmodules/subsystemoftheproject.

Participants

• Distributedonshoreandoffshoreagileteammembers.

• ScrumMaster

Collaboration

• Theonshore teamandoffshore teammemberssharemeetingminutesat

theendoftheirretrospectivemeetings.

Consequences

TheAsynchronousRetrospectiveMeetingspatternhasthefollowingbenefitsand

liabilities:

1. It allows onshore and offshore team members to conduct retrospective

meeting independentlyof eachother’s availability,whichhelpsovercome

thecommunicationandcoordinationchallenges.

2. It helps team members discuss their independent problems and doesn’t

makebothonshoreandoffshore teamtobepresent for themeetingand

cansharemeetingminutesusingonline-sharingtools.Thishelpsovercome

theknowledgetransferchallenges.

3. Sinceonshoreandoffshoreteammembersconductseparateretrospective

meetingstheydon’tunderstandeachother’sproblems.

Knownuses

ElasticPath,aVancouver,BritishColumbia-basedcompanydecidedtooffshore

theirworktoLuxsoft,anoutsourcingpartnerusedasynchronousretrospective

Page 146: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

146

sessionstodiscussthesprintprogressandwellaswhatimprovementstheycan

make. Once all locations had conducted their retrospective meetings, they

postedcommentsandresultsonSharePoint,whichwerethenviewedbyScrum

Masterandtechnicalleadfortheirremarks(Vax,2008).

RelatedPatterns

We often used Distributed Scrum of Scrum Pattern with Asynchronous

RetrospectivemeetingPattern. It isalsooftenusedwithLocalSprintPlanning

Pattern as in order to review the progress of a sprint and the teamwe use

retrospective meeting. After all the distributed teams have conducted their

retrospectivemeetings they share themeetingminutes with each for which

theyuseGlobalScrumBoardPattern.

4.5.2CommunicationPatterns

Inthissectionwehavedescribedthedetailofeachcommunicationpattern.

4.5.2.1 GlobalScrumBoardPattern

Agile has many artefacts such as product backlog, sprint backlog, storyboard, task

board, team velocity and burndown charts which help the team in managing the

project.Ithasbeenobservedthatwhentheteamisdividedtodifferentlocationsthey

maintainaonlinerecordofalltheseartefactssothattheycansharethemwitheach

other using online tools such asWiki’s, Rally and Jira (Danait, 2005; Berczuk, 2007;

Cottmeyer, 2008). Based on this observed practice we have designed the following

patterndetails:

PatternName

GlobalScrumBoardPattern

Intent

An online-shared Scrum board, will be used by, both onshore and offshore

teamstoviewtheproductbacklog,storyboard,taskboard,burndowncharts

andotheragileartefactsusingonlinetools

Page 147: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

147

AlsoKnownAs

ScrumBoardorAgileStoryBoard

Category

Communicationcategoryasthispatternhelpstheonshoreandoffshoreteam

communicatewitheachotherusinganonline tool tovieweachother’swork

andunderstandtheprogressoftheoverallproject.

Motivation

The motivation of this pattern is to address the trust, socio-cultural;

communication and co-ordination, and knowledge transfer challenges. For

examplewhenaproject isdistributedtoateamthat isdividedoverdifferent

timezones,andareworkingondifferentmodulesoftheproject,tosharetheir

worktheyuseanonlinetooltodisplayagileartefacts.Basedontheworkdone

by both teams it is easier to see the progress of the project and it helps

understandifthereisaproblemwithateam.

Applicability

UseGlobalScrumBoardpatternwhen:

• Teamisdistributedoverdifferenttimezones.

Participants

• Distributedonshoreandoffshoreagileteam.

Collaboration

• Theonshoreteamandoffshoreteamshareagileartefactswitheachother

toshowtheirprogress.

Consequences

TheGlobalScrumboardpatternhasthefollowingbenefitsandliabilities:

Page 148: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

148

1. Itallowsthewholeteamtoseetherequirements,whichcreatesvisibilityofthe

projectandhelpsinovercomingtrustchallenges.Thescrumboardisdesigned

keepingthesocio-culturaldifferencesinmind.

2. It allows the onshore and offshore teams to understand the progress of the

project, which helps overcome the communication and coordination

challenges.

3. It increases the visualization of the work done by each team, which helps

overcomeknowledgetransferchallenges.

Knownuses

FAST,asearchcompanywithheadquarters inNorwaywhilebuildingasearch

applicationontopof theircoresearchplatformexperimentedwithcoupleof

onlinetoolstokeepbothteamsupdatedwiththeprogressoftheproject.They

tired XPlanner and Jira and settled for Jira, which is a web-based tool that

allowed the remote team members to view the backlog and update tasks

whenevertheywanted(Berczuk,2007).SimilarlyinastudydonebyCristalon

an organisation that has development centres across North America, South

AmericaandAsia concludedwith that theuseof a global scrumboard could

help improve the productivity of global agile teams (Cristal et al., 2008).

Similarly companies like Valtech (Danait, 2005), Telco (Ramesh et al., 2006),

BNP Paribas (Massol, 2004), Aginitys LLC (Armour, 2007) and SirsiDynix

(Sutherland et al. 2007) used online tools to share agile artefacts with their

offshoreteammembers.

RelatedPatterns

GlobalScrumboardpatternisoftenusedwithCentralCodeRepositoryPattern

astheteamsharesalltheagileartefactsandcodeusinganonlinetool.

Page 149: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

149

4.5.2.2 CentralCodeRepositoryPattern

Inagile,whenateamisusingScrumandXP,theteammembersaredividedinpairsof

twoandareworkingondifferenttasksduringasprint.Whenataskiscompletedthe

teammemberscommittheircodetoasharerepositoryforcontinuousintegrationof

thecode. It isobservedthatevenwhentheteammembersaregeographicallyapart

they still use a share code repositorywhere they commit their code so that all the

teammembers can see the code as well as determine the progress of the project.

Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:

PatternName

CentralCodeRepository

Intent

Thewholeteamwillmaintainacentralcoderepositorysothatbothteamcan

seeeachother’scodeandseetheprogressoftheworkdone.

AlsoKnownAs

SourceCodeRepositoryorGlobalBuildRepository

Category

Communicationcategoryasthispatternhelpstheonshoreandoffshoreteam

members to write code and share it on a central code repository where all

teammemberscanseethecodeandedititifrequired.

Motivation

The motivation of this pattern is to address the communication and co-

ordination, and knowledge transfer challenges. For examplewhen a team is

divided on different time zones and are working on different

modules/subsystemsof aproject theyusea central code repository to share

theirworkwithallteammembers.TheycanuseonlinetoolssuchasGitHubfor

committing their codeandmaintainversionsof theproject (Räty,2013).This

Page 150: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

150

helps the whole team to see the code and provides visibility of the project

progress.

Applicability

UseCentralCodeRepositorywhen:

• Team is distributed over different time zones and is working on

differentmodules/subsystemoftheproject.

Participants

• Distributedonshoreandoffshoreagileteammembers.

Collaboration

• The onshore team and offshore teammembers share a keyboardwith a

fellow team member from their respective location and once they have

finishedatasktheycommittheircodetoacentralcoderepository.

Consequences

TheCentralCodeRepositorypatternhasthefollowingbenefitsandliabilities:

1. It allowsonshoreandoffshore teammembers tovieweachother’s code,

whichhelpsovercomecommunicationandcoordinationchallenges.

2. Ithelps indeterminingtheprogressof theproject,whichhelpsovercome

knowledgetransferchallenges.

3. As all the team is committing to a central repository, if a team commits

codewitherrorsitcanaffectthewholebuildoftheproject.

Knownuses

WDSGlobalisaleadingglobalproviderofknowledge-basedservicestomobile

operators, manufacturers and application and sales channels. In 2004 they

combinedtheirdevelopments,whichwere located inUK,USAandSingapore.

Page 151: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

151

They shared their codeona central code repository tominimizeduplications

andreducecostofmaintenance(Yap,2005).Manycompaniesusecentralcode

repositoryfortheirdistributedprojectssuchasExtolInternational(Kussmaulet

al., 2004), Valtech (Danait, 2005), Manco (Ramesh et al., 2006), Aginity LLC

(Armour,2007),SirsiDynix (Sutherlandetal.,2007),CEInformant (Bose,2008)

andABCBank(Modietal.,2013).

RelatedPatterns

CentralCodeRepositorypatternisoftenusedwithGlobalScrumBoardPattern.

4.5.2.3 AsynchronousInformationTransferPattern

Agile emphases on close face-to-face communication between the team members

rather than detailed documentation. When a team is distributed on different time

zones it has been observed that the teams adopted asynchronous tools for sharing

information with each other such as emails, wikis and SharePoint. Based on this

observedpracticewehavedesignedthefollowingpatterndetails:

PatternName

AsynchronousInformationTransfer

Intent

Duetothetimedifferencebetweentheonshoreandoffshoreteamuseonline

toolstoexchangeinformationwitheachother.Eachteamshouldresponseto

querieswithin12hours.

AlsoKnownAs

InformationTransferorKnowledgeSharing

Category

Communicationcategoryasthispatternhelpstheonshoreandoffshoreteam

memberstoanswereachother’squerieswithin12hours.

Page 152: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

152

Motivation

The motivation of this pattern is to address the communication and co-

ordination,andknowledge transfer challenges. ForexampleWhena team is

dividedondifferenttimezonestheymayhavequeriesaboutworkbutdueto

the time difference they cannot get a direct reply at that time so they use

emailstocommunicatequeries,whicharethenansweredwithin12hoursmax.

Organisationshavesetstandardsforresponsetimeinordertoavoiddelaysin

work(Vax,2008).

Applicability

UseAsynchronousInformationTransferwhen:

• Teamisdistributedoverdifferenttimezones.

Participants

• Distributedonshoreandoffshoreagileteammembers.

Collaboration

• Theonshoreteamandoffshoreteammembersshareinformationandask

queriesusingasynchronoustools.

Consequences

The Asynchronous Information Transfer pattern has the following benefits and

liabilities:

1. It allows onshore and offshore team members to exchange information

when synchronous communication cannot be conducted due to working

hours time difference. This helps overcome the knowledge transfer

challenges.

Page 153: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

153

2. Ithelpsteammembersfromwaitingforonshoreteammemberavailability

toaskaquery.Thishelpsovercomethecommunicationandcoordination

challenges.

3. If the team members don’t respond timely it can cause delays in the

project.

Knownuses

VTT Technical Research Centre of Finland and National University of Ireland

conducted a research on two organisations that were developing a system

together.Oneorganisationwasacustomerorganisation inU.Sand theother

organisationwasadevelopmentorganisationlocatedinIreland.Basedontheir

findingsthecompaniesusedasynchronoustoolsforcommunication.Theyused

wikisforstoringdocumentsandmeetingminutesandusedEmailsfordecisions

and queries (Korkala, 2010). Similarly Valtech used Twiki for asynchronous

communication(Danait,2005).

RelatedPatterns

Asynchronous Information Transfer pattern is often used with Global Scrum

BoardandSynchronousCommunicationPattern.

4.5.2.4 SynchronousCommunicationPattern

Agile emphases on close face-to-face communication between the team members

rather than detailed documentation. When a team is distributed on different time

zones it has been observed that the teams adopted synchronous tools for sharing

informationwitheachothersuchasvoice,videoconferencinganddocumentsharing

tools.Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:

PatternName

SynchronousCommunicationPattern

Page 154: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

154

Intent

In order to discuss issues the teams uses synchronous tools for voice, video

conferencing,documentsharing,applicationsharingetc.

AlsoKnownAs

SynchronousKnowledgeTransfer

Category

Communicationcategoryasthispatternhelpstheonshoreandoffshoreteam

memberstoanswereachother’squerieswithin12hours.

Motivation

The motivation of this pattern is to address the trust, socio-cultural

communication and coordination, and knowledge transfer challenges. For

examplewhenateamisdividedondifferenttimezonestheymayhavequeries

whichtheycandiscusswiththeonshoreteamusingsynchronoustoolstoget

real-timeresponse(Vax,2008).

Applicability

UseSynchronousCommunicationPatternwhen:

• Teamisdistributedoverdifferenttimezones.

Participants

• Distributedonshoreandoffshoreagileteammembers.

Collaboration

• Theonshoreteamandoffshoreteammembersshareinformationandask

queriesusingsynchronoustools.

Consequences

TheSynchronousCommunicationpatternhasthefollowingbenefitsandliabilities:

Page 155: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

155

1. It allows onshore and offshore team members to exchange information.

Thishelpsovercomeknowledgetransfer,communicationandcoordination

challenges.

2. Teammembers canask eachotherquestionswhichbuilds trust andhelp

understand each others socio-cultural differences, which helps overcome

trustandsocio-culturalchallenges.

3. Itassiststeammembersfromwaitingforonshoreteammemberavailability

toaskaquery.Thishelpsovercomethecommunicationandcoordination

challenges.

4. If the team members don’t respond timely it can cause delays in the

project.

Knownuses

CampusSoft is a UK based company that used synchronous communication

whentheymovedtoAgilewiththeiroffshoresuppliers inIndiaandRomania.

Theyusedvideoconferencingfacilitiesforplanningsessionsandlatershiftedto

WebExsessionsandGoToMeetingsothattheycouldsharedesktopswiththe

remoteteammembers.FordailyScrummeetingstheypreferredtouseSkype

callandmadeeveryonewearheadsetstomakethemeetingeasier.Forsprint

reviewmeetingstheyusedsharingdesktoptoolsaswellasconferencephones

sothatmembersfrombothendcouldtalkwitheachother(Summers,2008).

RelatedPatterns

SynchronousCommunicationpatternisoftenusedwithGlobalScrumBoard

andAsynchronousInformationTransferPattern.

4.5.3CollaborationPatterns

Inthissectionwehavedescribedthedetailofeachcollaborationpattern.

Page 156: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

156

4.5.3.1 CollaborativePlanningPokerPattern

Anagileteamplaysplanningpokertoputpoint’sestimationoneachstorycard.The

productowneralsotakespartinthisactivity.Hetellstheteamtheintentandvalueof

a story card baseduponwhich the development teamassigns an estimation on the

card.Basedon thepointsassigned the teammemberswhoassigned the lowestand

highestestimationwill justify their reasons.The teamwillhaveabriefdiscussionon

eachstoryandassignanestimationuponwhichthewholeteamagreeson.

It has been observed that even when the team is distributed the planning poker

activityisconductedwhenbothteamsareco-locatedfortheprojectplanningactivity.

Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:

PatternName

CollaborativePlanningPokerPattern

Intent

Onshoreandoffshoreteammemberstakepartinthisactivity.

AlsoKnownAs

PlanningPokerorScrumPoker

Category

Collaborativecategoryasthispatternhelpstheonshoreandoffshoreteamto

discussthedurationofastorycard.

Motivation

The motivation of this pattern is to address the trust, socio-cultural,

communication and co-ordination, and knowledge transfer challenges. For

examplewhenaproject isdistributedtoateamthat isdividedoverdifferent

time zones, it is important that all the team members agree on the time

duration of a feature before they start developing the project. This helps

estimatethedurationoftheprojectcompletionaswellasitprovidesvisibility

Page 157: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

157

ofprojectprogress.Forthispurposetheonshoreandoffshoreteammembers

playplanningpoker inordertocollectivelyagreeontheestimationofastory

card.Oncetheestimation isdecidedtheywrite itdownandapprovedbythe

productowner/clientandmoveontothenextstorycard,tillallthestorycards

areestimated.

Applicability

UsePlanningPokerpatternwhen:

• Team is distributed over different time zones andwill beworking on

differentstorycardsinasprint.

Participants

• Distributedonshoreandoffshoreagileteam.

• Productowner/Client.

Collaboration

• Theclientapprovestheestimationmadebytheteammembers.

Consequences

ThePlanningPokerpatternhasthefollowingbenefitsandliabilities:

1. Itallowstheonshoreandoffshoreteamstoagreeonastorycardestimation,

whichhelpstheteamestablishtheirteamvelocity.Sincemembersfromboth

locationsarepresentduringthisactivity,thishelpsovercometrustandsocio-

culturalchallenges.

2. It provides the product owner/client with estimation of project completion,

which helps overcome the communication and coordination, and knowledge

transferchallenges.

3. Ifallteammembersdon’tagreeonestimationonastorycarditcanleadtoa

longdiscussion,resultingtheplanningpokertoprolong.

Page 158: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

158

Knownuses

UShardware has development centres across North America, South America

and Asia. When transitioning to distributed agile environment they used

planningpokeractivityforestimationoftheirstorycards(Wildtetal.,2010).

RelatedPatterns

Planning Poker Pattern is often used with Collective Project Planning as its

better to conduct this pattern when the whole team is co-located. The

estimatedstorycardsarethensharedontheGlobalScrumboardsothatwhole

teamcanviewthemduringtheproject.

4.5.3.2 Follow-the-SunPattern

Whenaagileteamisdistributedoverdifferenttimezones ithasbeenobservedthat

companiescutdownoncostbyincreasingdevelopmenttimebyadopting“followthe

sun”workflowwhichmeans itallows24hoursdevelopmentduetothedifference in

timezonesallowingacompany’semployeestododevelopment24hrsaday(Carmelet

al., 2001; Yap, 2005; Kroll, et al., 2012). Based on this observed practice we have

designedthefollowingpatterndetails:

PatternName

Follow-the-SunPattern

Intent

Onshore and offshore teamswillwork 9:00 a.m-5:00 p.m. according to their

owntimezones.

AlsoKnownAs

24-hoursDevelopmentPatterns

Page 159: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

159

Category

Collaboration category as this pattern helps the onshore and offshore team

managetheirworkandhandofftheirworktotheotherteambeforetheyleave

fromwork.

Motivation

The motivation of this pattern is to address the communication and co-

ordination,andknowledge transferchallenges. Forexampleconsidera team

that is divided into sub-teams that are located on different time zones. To

adjust the working hours of the offshore team for both the onshore and

offshoreteamworktogetherisdifficultastheoffshoreteamhastocomeinthe

eveningandstaytillearlymorning.Thismakestheoffshoreteamfeeltheyare

lessimportantincomparisontotheonshoreteamanditaffectstheemployees’

sociallife.

In order to avoid that, the onshore and offshore team use “follow-the-sun”

approach.Forexampleanemployeeworksfrom9:00a.m.to5:00p.m.inthe

USA. At 5:00 p.m. she hands over the incomplete task to a colleague in

Australiawhoworks from9:00 a.m. to 5:00 p.m. basedonhis time zone.At

5:00p.m.accordingtohiscountry,hetransferstheupdatedtasktoacolleague

in Polandwhoworks on the updated task for the next eight-hours and then

forwardsittohiscolleagueintheUSA(Gupta,2009).

WhiletheemployeeintheUSAhadleftworktwoofhercolleaguesworkedon

her task aswhen shewill come to theoffice nextmorning a lot of thework

wouldhavebeendone.Thisworkscenariotakesadvantageofthegeographical

distances as it allows people from different time zones to work round-the-

clockinordertobuildsoftware(Gupta,2007).

Theworkdistributionamongtheteamcanbedoneintwoways.Firsteitherthe

3teamsdistributedondifferentgeographicallocationsworkonthesametask

andeachteamkeepsupdatedthetaskasmentionedintheabovescenarioor

Page 160: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

160

secondlyamostefficientway is thatwedivideddifferentaspectof thesame

problemamongtheteamforexampleinFigure4.3wecanseehowaproblem

hasbeendistributedamong3teams(Gupta,2009):

Figure4.3.DistributionofWorkamongThreeDistributedTeams(Gupta,2009).

Applicability

Usefollow-the-sunpatternwhen:

• Teamisdistributedoverdifferenttimezones.

• Theonshoreandoffshoreteamsareworkingondifferenttasks.

Participants

• Distributedonshoreandoffshoreagileteam.

Collaboration

• Bothonshoreandoffshoreteamhandovertheirworktoeachotheratthe

endofeveryworkingdayusingonlinetools.

Consequences

Thefollow-the-sunpatternhasthefollowingbenefitsandliabilities:

1. Itallowscontinuesdevelopmentduringdifferentworkingshiftsacrossdifferent

time zones, which helps overcome the communication and coordination

challenges.

Page 161: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

161

2. Itallowsbothonshoreandoffshoreteamtoworkaccordingtotheirtimezone

andsharetheirworkwithouthavingtoeithercomeearlytoworkorstaylate

tillearlymorning.Thishelpsovercometheknowledgetransferchallenges.

3. Itreducesthedevelopmentlifecycleortime-to-market(Denny,etal.,2008).

4. It limits theonshoreandoffshoreteamfromreal-timecommunicationas the

overlappingworkinghoursbetweendifferenttimezonescanbelessorzero.

Knownuses

Yahoo! used follow-the-sun approach when they offshored their Yahoo!

PodcastproductfromSunnyvale,CaliforniacampustoYahoo!Bangalore,India

Campus(Drummondetal.,2008).SimilarlyorganisationslikeWDSGlobal(Yap,

2005)andWiproTechnologies(Sureshchandra,etal.,2008)usefollow-the-sun

approach.

RelatedPatterns

Follow-the-sunPatternisoftenusedwithLocalStandupmeetingPatternand

DistributedScrumofScrumPatternasbothonshoreandoffshoreteam

membersareworkingseparately.

4.5.3.3 CollectiveProjectPlanningPattern

Agilefocusesonindividualsandinteractionsoverprocessesandtools.Whileplanning

fortheprojectthewholeteamispresent.Unlikethetraditionaldevelopmentwherea

projectmanagerhandsaprojectplantotheteam.Inagilethewholeteamtakespart

in the planning activity in order to determine when and how the project will be

developed.Ithasbeenobservedthateveniftheprojectisofadistributednatureitis

better to co-locate the team onshore and offshore team for the project planning

activity. Based on this observed practice we have designed the following pattern

details:

Page 162: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

162

PatternName

CollectiveProjectPlanningPattern

Intent

Both the onshore team and the offshore team will collectively work in the

project-planningphase.Oncebothteamhaveengagedintheprojectplanning

activity,theteamwillpreparetheprojectbacklog.

AlsoKnownAs

ProjectPlanningorAgileProjectPlanning

Category

Collaborationcategoryasthispatternhelpstheonshoreandoffshoreteamto

worktogetherandcomeupwithaprojectplan.

Motivation

The motivation of this pattern is to address the trust, socio-cultural

communication and co-ordination, and knowledge transfer challenges. For

example consider a team that is divided into sub-teams that are located on

differenttimezonesandboththeteamscometoonelocationtodotheproject

planningactivity.Inthebeginningofanydistributedproject,theoffshoreteam

is invited to the onshore location so that they may work together and

understandeachother’srequirements.

Whiletheteamsareco-locatedtheyworkedonpreparingtheproductbacklog

andtheyspendat leastoneortwosprintstogetherbeforetheoffshoreteam

leaves and starts working on the project (Cottmeyer, 2008; Therrien, 2008).

This helps the onshore team bymaking the offshore team understand their

workingstyleandworkstandard.

Applicability

UseCollectiveProjectPlanningpatternwhen:

Page 163: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

163

• Teamisdistributedoverdifferenttimezones.

Participants

• Distributedonshoreandoffshoreagileteam.

Collaboration

• Onshoreteamandoffshoreteamworktogethertomakeaproductbacklog.

Consequences

TheCollectiveProjectPlanningpatternhasthefollowingbenefitsandliabilities:

1. It allows the onshore and offshore teams to work together and understand

each other. This helps build trust among the team members and overcome

communicationandcoordinationchallenges.

2. Onshoreteamworkswiththeoffshoreteamandmakesthemunderstandwhat

typeofworktheywant.Thishelpsovercomethesocio-culturalandknowledge

transferchallenges.

3. Itaddsadditionalcostof travelandstayof theoffshoreteamat theonshore

location.

Knownuses

FAST,asearchcompanywithheadquarters inNorwaywhilebuildingasearch

applicationontopoftheircoresearchplatformusedcollectiveprojectplanning

to co-locate the team and make them work together in project planning

activities (Berczuk, 2007). Siemens also used collaborative planning for their

distributedprojects (Avritzeretal.,2010;Avritzeret.al,2007) inwhich team

membersfrommultiplesitesgot involvedintheearlystagesoftheproject in

ordertocreateanopencommunicationchannelandhighleveloftrustamong

thedistributedteammembers(Avritzeret.al,2010)

Page 164: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

164

RelatedPatterns

CollectiveProjectPlanningPatternisoftenusedwithProjectCharterPatternas

itprovidesacentraldocument thatconsistsof thegoalandobjectivesof the

projectwrittenbytheclient.

4.5.3.4 VisitOnshore-OffshoreTeamPattern

Asagileemphasesoncloseface-to-facecommunicationbetweentheteammembersit

hasbeenobserved thatwhen the team isdividedondifferent timezones, the team

memberstravelquarterlyorannuallytovisiteachother.Thisactivityhelpsbuildtrust

among the team members and helps them understand each other’s cultural

differences (Ramesh,2006; Therrien, 2008; Summers, 2008;Paasivaaraet al., 2014).

Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:

PatternName

VisitOnshore-OffshoreTeamPattern

Intent

Bothonshoreandoffshoreteamsshouldquarterly/annualvisiteachotherin

ordertobuildtrust,exchangeculturalvaluesandimproveteamcoordination.

AlsoKnownAs

TravelOnshore-Offshore

Category

Collaboration category as this pattern helps the onshore and offshore team

members to co-locate and understand each other and build a good

relationship,whichimprovesteamcoordination.

Motivation

The motivation of this pattern is to address the trust, socio-cultural

communication and co-ordination, and knowledge transfer challenges. For

Page 165: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

165

examplewhena team isdividedondifferent time zones theydon’t feel that

they are both part of one team and they don’t trust each other. They don’t

understandeachother’sculturalvaluesandworkethics.Inordertosolvethese

issuestheonshoreandoffshoreteamvisitseachothertodevelopthefeelingof

trust and understand each other’s cultural andworking values. During these

visitstheyattendtrainingtogetheraswellasengageintoinformalactivitiesto

better understand each other. This helps build a bond between the team

members,whichresultsingoodteamcoordination.

Applicability

UseVisitonshore-offshoreTeamwhen:

• Teamisdistributedoverdifferenttimezones.

Participants

• Distributedonshoreandoffshoreagileteammembers.

Collaboration

• Theonshoreteamandoffshoreteammembersvisiteachothertoimprove

teamcoordination.

Consequences

TheVisitonshore-offshoreTeampatternhasthefollowingbenefitsandliabilities:

1. Itallowsonshoreandoffshoreteammemberstoexchangeculturalvalues

with each other andwork ethics. This helps overcome socio-cultural and

communicationandcoordinationchallenges.

2. Ithelpsteammembersto feel theyarepartofoneteam,whichdevelops

trust among onshore and offshore team members. This helps overcome

trustandknowledgetransferchallenges.

3. Thetravellingaddsadditionalcosttotheprojectbudget.

Page 166: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

166

Knownuses

EricssonisaSwedishmultinationalproviderofcommunicationstechnologyand

services.TobuildaXaaSplatformandasetofservicestheyusedagilesoftware

development methodologies. The development team was distributed over 5

sites located in3countries.Fourof thesiteswere located inEuropeandone

waslocatedinAsia.Theyconductedworkshops,whichwereattendedbyteam

members from different locations. The purpose of these workshops was to

createacommonvisionforthewholeorganisationbysettingcommonvalues

aswell also to improve the collaboration between the sites, thus build trust

(Paasivaaraetal.2014).

RelatedPatterns

Visit onshore-offshore Team pattern is often used with Collective Project

PlanningPatternasplanningisbetterdonewhenthewholeteamisco-located.

4.5.4VerificationPatterns

Inthissectionwehavedescribedthedetailofeachverificationpattern.

4.5.4.1 ProjectCharterPattern

In project management, project charter is a statement that defines the scope,

objectives and participants of a project. It is used to explain the roles and

responsibilities,outlineoftheprojectobjectivesandidentifymainstakeholders.Ithas

beenobservedthatwhilestartingadistributedprojectusingagilemanyorganisation

useprojectcharter toclarify thegoalsandobjectivesof theproject tobothonshore

andoffshore team (Galen,2009).Basedon thisobservedpracticewehavedesigned

thefollowingpatterndetails:

PatternName

ProjectCharterPattern

Page 167: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

167

Intent

Beforestartingtheprojectplanningactivity,agileteamsuseprojectcharterin

ordertohaveacentraldocumentbetweentheonshoreandoffshoreteamthat

definestheproject.

AlsoKnownAs

ProjectDefinitionorProjectStatement

Category

Verification category as this pattern helps the onshore and offshore team to

have a central document clarifying the project goals and objectives,which is

writtenbytheproductowner/client.

Motivation

Themotivationofthispattern istoaddressthetrust,communicationandco-

ordination,andknowledgetransferchallenges.Forexamplewhenaprojectis

distributed to a team that is divided over different time zones, a central

documentiswrittenknownastheprojectcharter,whichclarifiestheonshore

andoffshoreteamthegoalsandobjectivesoftheproject.Italsoidentifiesthe

rolesandresponsibilitiesoftheonshoreandoffshoreteam.Thepurposeofthis

activityistohaveadocumentthathelpstheteamintheproject-planningtask.

Applicability

UseProjectCharterpatternwhen:

• Teamisdistributedoverdifferenttimezones.

Participants

• Distributedonshoreandoffshoreagileteam.

• Client.

Page 168: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

168

Collaboration

• Theclientgivestheprojectchartertotheonshoreteamandoffshoreteam

toclarifythegoalsoftheproject.

Consequences

TheProjectCharterpatternhasthefollowingbenefitsandliabilities:

1. Itallowstheonshoreandoffshoreteamstounderstandtheproject.Thishelps

overcome communication and coordination, and knowledge transfer

challenges.

2. Since it isasingledocumentstating thegoalsandobjectivesof theproject it

helpsestablishtrustbetweentheonshoreandoffshoreteammembers.

3. It is intendedtoclearlysetthestagefortheprojectbyaligningtheteamand

settingsgoalsandexpectations.

Knownuses

IONATechnologiesusedProjectCharter fortheirdistributedprojects inorder

to have a central document that clarifies the goals of the project to both

onshore and offshore teammembers (Poole, 2004). Similarly in a case study

conducted by Brown (2011) on Agile-at-Scale Delivery it was observed that

organisationsuseprojectcharter.

RelatedPatterns

ProjectCharterpatternisoftenusedwithVisitonshore-offshoreTeampattern.

4.5.4.2 OnshoreReviewMeetingPattern

Inagile,at theendofeachsprint,asprintreviewmeeting isheld inwhichtheteam

meetswiththeclientsandshowsthemtheworktheyhavedonethroughademo.In

thismeetingtheclientgivesremarksabouttheworkandiftheyrequireanychanges

Page 169: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

169

theytelltheteam.Ithasbeenobservedthatwhentheteamisdistributedondifferent

locations, then the team that is co-locatedwith client conducts the reviewmeeting.

Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:

PatternName

OnshoreReviewMeeting

Intent

Theonshoreteamwillpresentthedemoastheyarelocatedwheretheclient

is.

AlsoKnownAs

SprintReviewMeeting

Category

Verification category as this pattern helps the client see the progress of the

projectaswellastheycansuggestearlychanges.

Motivation

The motivation of this pattern is to address the trust, socio-cultural

communication and co-ordination, and knowledge transfer challenges. For

example consider a team that is divided into sub-teams that are located on

differenttimezonesandoneoftheteamislocatedinthesamecountryasthe

client. Inordertoshowtheprogressoftheproject it ismoreconvenientthat

theteam,whichislocatedneartheclient,presentsthedemoinordertohavea

face-to-facemeeting.Oncethemeetinghasendedtheonshoreteambriefsthe

offshoreteamstheremarksoftheclient.

Applicability

UseOnshoreReviewMeetingpatternwhen:

• Teamisdistributedoverdifferenttimezones.

• Theonshoreislocatedinthesamecountryastheclient.

Page 170: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

170

Participants

• Distributedonshoreandoffshoreagileteam.

• Client

Collaboration

• Onshore team presents demo to the client and discusses the meeting

minuteswiththeoffshore.

Consequences

TheOnshoreReviewMeetingpatternhasthefollowingbenefitsandliabilities:

1. It allows the client tomeet the development team face-to-face and give

feedback. This helps overcome the communication and coordination

challenges.

2. Itallowsbothonshoreandclientstodiscusswhatchangestheywantand

how much time will be required based on the modification. This helps

overcometheknowledgetransferchallenges.

3. It limits the offshore team frommeeting the clientswhich can cause the

offshoreteamfromdiscussingthechangesandgivingtheirremarksonthe

clientsfeedback.

Knownuses

Wipro Technologies, a global service provider company used onshore review

meetings so that they could get quick feedback from the customer/business

user, which was then shared with the remote team over mail and/or

teleconference (Sureshchandra et al., 2008). Similarly when SirsiDynix, USA

outsourced their work to Starsoft, Ukraine they also used onshore review

meetingstoshowthedemooftheworkdone(Sutherlandetal.,2007)

Page 171: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

171

RelatedPatterns

Onshore Review Meeting pattern is often used with Asynchronous

Retrospective Meetings Pattern because after the demo both onshore and

offshoreteammembersconducttheirseparateretrospectivemeetings.

4.6ChapterSummary

Thischapterpresentedthedistributedagilepatternscatalogue.Thechapterstartsby

discussingthetemplatesofexistingpatternsandthenpresentshowthetemplateof

distirbuted agile was designed. We then discuss how the pattern catalogue is

organised and can be used by the practitioners. At the end of the chapter we

presented the whole distributed agile patterns catalogue.

Page 172: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

172

Chapter5 ValidationandEvaluationoftheDistributedAgile

PatternsCatalogue

5.1Introduction

In this section we have validated and evaluated the Distributed Agile Patterns

catalogue.Inordertovalidatethecatalogueweusedreflectionworkshoptechniqueas

proposed by Kerth (Kerth, 2001). For theworkshopwe invited 4 companies to take

part. From each company two representatives took part. Theworkshop lasted from

9:30 a.m.- 4:00 p.m., inwhich the cataloguewas presented to the participants and

thentheygavefeedbackonhowtoimprovethecatalogue.Basedontheirsuggestions

thepatterncataloguewasmodified.Forevaluationwecomparedthecataloguewith

othersolutionspresentedintheliteratureanddiscussedtheirlimitationsandhowour

patterncatalogueovercomesthoselimitation.

5.2RevisedDistributedAgilePatterns

Inordertoverifyandvalidatetheidentifieddistributedagilepatterns,weconducteda

reflection workshop based on Kerth’s “The keep/try reflection workshop” (Kerth,

2001).Thereasonforchoosingthismethodwastogetexpertopinionsonthepatterns

andfindoutifthepatternsactuallyexistbasedonthepractitionerspointofviewand

if they help practitioners in applying agile in offshore projects. To conduct this

workshopfourcompanieswereinvitedtotakepart;detailsareshowninTable5.1.

Table5.1.DetailsoftheCompanies.

Company Category Typeof

Business

HQ Loc.of

Business

Exp.

in

Agile

C1 Startup ITservices Pakistan Dubai,U.K 2years

Page 173: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

173

C2 Breakeven Product-

based

Pakistan U.S.A,U.K 5years

C3 Breakeven Multinational

ITservice

provider

Pakistan Dubai 8years

C4 Profitable Software

solutions

U.S.A Pakistan 10years

Fromeachcompany,weinvitedtwoparticipantstotakepartintheworkshopsothat

wecanhaveamanagerialanddevelopmentpointofviewforourpatterns.Table5.2

showsthedetailsoftheparticipantsandtheirexperienceinagileanddistributedagile

practices(DAP):

Table5.2.DetailsoftheParticipantsAttendedtheWorkshop.

Company Participant

Name

JobTitle RoleinAgile Exp.in

Agile

(years)

Exp.inDAP

C1 P1 CEO Scrum

Master

2 2

P2 Developer Developer 2 1

C2 P3 CEO Product

Owner

5 5

P4 Senior

Developer

Developer 5 5

C3 P5 CEO Scrum

Master

8 8

P6 Developer Developer 5 4

C4 P7 Senior Developer 8 5

Page 174: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

174

Developer

P8 Senior

Software

Engineer

Developer 8 4

TheworkshopwasconductedatC1’sboardroomand thedurationwas7hours.The

agendaoftheworkshopisshowninTable5.3below:

Table5.3.AgendaoftheReflectionWorkshop.

No. AgendaItems Time

1.

2.

3.

4.

5.

TeaandNetworking

Introductionofwhatisreflectionworkshop

anddiscussedhowwewillconductit

DiscussiononDistributedAgilePatterns

Lunch

Feedbackandrecommendation

9:30a.m.-10:00a.m.

10:00a.m.-11:00a.m.

11:00a.m.–2:00p.m.

2:00p.m.–3:00p.m.

3:00p.m.-4:00p.m.

Theworkshopwasstartedbyexplainingtotheparticipantswhatareflectionworkshop

is and what is expected from them at the end of the workshop. Based on Kerth

keep/try reflection workshop method, this workshop focused on capturing three

things on a flip chart, which was then displayed for the group to see and discuss.

(Kerth,2001).Thethreethingsare:

• Whatshouldwekeep?

• Wherearewehavingon-goingproblems?

• Whatdowewanttotryinthenexttimeperiod?

TheformatoftheflipchartlookslikeintheTable5.4below:

Table5.4.FlipChartFormatfortheReflectionWorkshop(Kerth,2001).

Page 175: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

175

Keepthese

Trythese

Problems

The patterns catalogue was presented in the form of a document so that the

participants can have a copy and make notes during the presentation (Figure 5.1).

Since the documentwas new to the participants, the cataloguewas presented one

pattern at a time. The participants were then invited to discuss among themselves

beforemovingtothenextpattern.Thedocumentwaspresentedasshown inFigure

5.1 to help make the documentation on the flip chart easier while referring to a

pattern:

Figure.5.1.DocumentPresentedinReflectionWorkshoptotheParticipant

Page 176: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

176

Asanexampletoshowhowwedocumentedthereflectionworkshop,Table5.5shows

thedetailofaflipchartofCompany3Participant5(C3P5).IntheKeepthese,section

we have mentioned all the patterns that C3P5 thinks should stay as they were

presented, that is he wants section 1.2-1.5 to remain the same. In the Problems

section,C3P5wantsSection2.2tobechanged,asaccordingtohimthepatternCentral

CodeRepositoryistoogeneric.

In the section Try these, C3P5 has given suggestions on how we can improve the

patterns, suchashewantsus tochange thenameofpattern1.1ScrumofScrum to

distributedScrumofScrumbecausetheScrumofScrumwordisusuallyusedinagile

for a Scrum inside a Scrum whereas in this pattern wemeant two separate scrum

workingindependently.

Table5.5.FlipChartofCompany3Participant5(C3P5).

Keepthese

• Keep1.2,1.3,1.4,1.5

• Keep2.2,2,3,2,4

• Keep3.1,3.2,3.4

• Keep4

Trythese

• 1.1: Try changing name of 1.1 to

distributed Scrum of Scrum as just

scrumofscrumisconfusing.

• 3.3:Trycomingupwithgenericset

of preferences and then let the

distributedteamdefineexactlyhow

theywanttocollaborate.

Problems

• 2.2: Need to change this pattern as it is too

generic, that is add details on what code

repositoryshouldbeused.

Page 177: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

177

AsummaryoftheflipchartsbyallparticipantsisshowninTable5.6:

Table5.6.SummarisedFlipChartoftheCompanies.

Keepthese

• Keep1.2,1.3,1.4,1.5

• Keep2.2,2,3,2,4

• Keep3.1,3.2,3.4

Keep4

Trythese

• 1.1: Try changing name of 1.1 to

distributed Scrum of Scrum as just

scrumofscrumisconfusing.

• 1.1: Trymaking 1.2,1.3,1.4,1.5 part

of 1.1 as they are related to each

other.

• 3.3:Trycomingupwithgenericset

of preferences and then let the

distributedteamdefineexactlyhow

theywanttocollaborate.

• 4.2: Onshore review is good and

recommended, however in some

demos offshore team should also

be there especially if they are

visiting the onshore team. This

would boost their moral and help

themunderstandtheclientbetter.

• Toallpatterns,adddetailsonwhich

challenge they help overcome and

modifytheconsequencessectionto

highlight how a benefit can aid in

overcomingachallenge.

Problems

• 2.2: Need to change this pattern as it is too

generic, that is add details on what code

repositoryshouldbeused.

• 3.1:Whole team should be part of planning

poker,as itwillhelp theteamtounderstand

eachother’sculture.

• 3.2: Only applicable teams that are in the

time zonenext toeachother e.g. 5:00p.m is

9:00a.m.inanothercountry.

Page 178: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

178

Table5.7.FeedbackontheChallengesDistributedAgilePatternsSolve.

PatternName Trust Socio-

Cultural

Communicationand

Coordination

Knowledge

Transfer

Agreed

DistributedScrumofScrum 80%

LocalStand-upMeeting 80%

Followthesun 50%

OnshoreReviewMeeting 75%

CollaborativeProject

Planning

100%

ProjectCharter

75%

CollaborativePlanningPoker

100%

GlobalScrumBoard

100%

LocalSprintPlanning 80%

LocalPairProgramming 80%

CentralCodeRepository 100%

AsynchronousRetrospective

Meeting

65%

AsynchronousInformation

Transfer

80%

SynchronousCommunication

100%

VisitOnshore-Offshore

Teams

100%

Afterreceivingfeedbackonthepresentedcatalogue,thediscussionwasthendirected

towards the usefulness of the patterns to help overcome the offshore challenges.

According to the results collected fromtheworkshop,Table5.7 showswhatpattern

helps solve which offshore challenge based on the feedback of the participants. As

showninTable5.7:

• 50% of the participants agreed that the follow the sun pattern helps in

improving communication and coordination of the team. However the other

half believe that by applying follow the sun pattern, the team has less

Page 179: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

179

overlapping working hours which results in less real-time communication

amongtheteammembers.

• 75%of theparticipantsagreed thatproject charter patternwouldhelpsolve

thetrust,communicationandcoordinationandknowledgetransferissue.Asit

is a singledocument that is sharedbetween theonshoreandoffshore team,

definingthegoalandobjectiveoftheproject.However25%oftheparticipants

believedthatitisdifficulttoestablishtrustatthestartoftheprojectthrougha

document as to develop trust among the team members, they need to

communicatewitheachotherfrequentlythroughouttheproject.

• Similarly 80% of the participants agreed that distributed scrum of scrum

pattern helps solve communication and coordination as well as knowledge

transfer issue in offshore software development. As it allows each team to

conducttheirownscrumandattheendbothteamssharetheirworkwitheach

other hence providing synchronous exchange of communication and

information.

• Alltheparticipantsagreedthatvisitonshore-offshoreteampatternhelpsbuild

trust among the onshore and offshore team members. It also helps team

membersunderstandeachother’ssocio-culturaldifferencesandastheteamis

co-located, it will help in improving the team’s communication and

coordinationandknowledgetransfer.

5.3EvaluatingDistributedAgilePatterns

Inthissectionwewillevaluatethedistributedagilepatterns(DAP)approachwiththe

other existing approaches present in literature and discuss what advantages our

approachhasovertheexistingsolutionsthatwerementionedinSection2.4.

Page 180: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

180

Table5.8.ExistingSolutionsinComparisontotheDAPCatalogue.

No. Type ExistingSolutionsforGlobalSoftwareDevelopment

1. Approach UsingAgilePracticestoSolveGlobalSoftware

DevelopmentProblems.

OffshoreChallenges

answeredinthis

approach

Beecham proposed to overcome the challenges of poor

communication, lack of control, low staff morale and

ambiguous requirements (Beecham et al., 2014). They

achieved this by identifying agile practices that solve the

identified challenges. As mentioned in Table 2.7 that the

solution presented did not provide details of how the

identifiedpracticeswillovercometheoffshorechallenges.

Furthertheyhavenotaddressedoffshorechallengessuchas

trust,socio-culturalandknowledgetransfer.

Limitation The limitation to their approach is that even though they

have considered the challenges of GSD, they have not

discussed in detail how practitioners can solve them. For

example for the challenge identified as “vague/missing

requirements” the solution they presentedwas a one line

answer, “ Product owner role; Planning game; Frequent

interactions; on-site customer.” Theydidn’t give anydetail

onhoworwhataffectthesepracticeswillhave.

2. Approach Ontology-BasedMulti-AgentSystemtoSupport

RequirementsTraceabilityinMulti-SiteSoftware

DevelopmentEnvironment.

OffshoreChallenges This approach, focuses on communication, coordination

Page 181: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

181

answeredinthis

approach

and knowledge transfer challenges. They have used

software engineering ontology as a communication

framework to enable knowledge sharing and reuse. The

proposed framework supports automated requirements

traceability tasks. As mentioned in Table 2.7, Agent

Communication Language is used for requirement

traceability.

Thisapproachonlyfocusesonrequirementtraceabilityina

distributedenvironmentandtheydidnotconsideroffshore

challengessuchastrustandsocio-culturalissues.

Limitations Amajorlimitationtotheirapproachisthatitistootechnical

considering in agile the requirements/user stories are

writtenbytheproductowner.Asimplerequesttoupdatea

requirement using the Agent Communication Language

(ACL)lookslikebelow:

((action (agent-identifier

:name UserAgent@platform1

:addresses (sequence

http://192.168.0.4:7778/acc))

(UpdateRequirement

:name FR03

:resourceType Requirements)))

For a technical person it isn't a difficult piece of code, but

considering the fact that product owners do not have a

technical background. It is difficult to use this system.

Secondlytheyhaveonlyfocusedontherequirementsphase

thus providing us with an incomplete solution to the

challengesaffectingtheoffshoredevelopmentprocess

Page 182: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

182

3. Approach ExperimentsforOffshoreProjecttoAddressCentrifugal

Forces.

OffshoreChallenges

answeredinthis

approach

Larman has suggested experiments to overcome offshore

challenges such as communication and coordination

(Larman et al., 2010). But they have just provided uswith

brief description of experiments that they think based on

their experience with Valtech should predict success for

otherorganisationsoffshoringtheirprojectsusingagile.For

exampleoneoftheirexperimentisto:

“Try..Outside-the-siteagilecoaches,inwhichtheystatethat

every organisation benefits by bringing in outside agile

coachingexpertstoactasviralagent.Thisisdoublytruefor

offshoreorganisationssteepedintraditionalcommand-and-

control managements and process culture. If the offshore

organisationismultinationalstartbylookingforin-company

coachesfromothernations.“

This approach focuses on providing agile experiments in

distributedenvironmentandtheydidnotconsideroffshore

challenges such as trust, socio-cultural and knowledge

transferissues.

Limitations Limitationof theirapproach is thattheyhavenotprovided

exampleonhowandwhyshouldpractitionersperformthat

experiment. They have not provided samples of

organisations doing that experiment and what results did

theyachievebydoingthatexperimentandwhatdifference

does it make if practitioners do not perform this

Page 183: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

183

experiment.

4. Approach UnderstandingCollaborativePracticesinDistributedAgile

DevelopmentusingTheoreticalConcepts

OffshoreChallenges

answeredinthis

approach

Modi research presented a new way of solving the

collaboration challenge (Modi et al., 2013). They have

presented amodel representing the interrelationship with

common ground, boundary objects and awareness as

according to their proposed solution interlinking these

theoretical models within the globally distributed agile

setting, can lead to increasing awareness regarding the

project artefacts which in turn contributes to establishing

and negotiating common ground for joint collaborative

practicestobeheldatdifferentdistributedsites.

Thisapproachfocusesoncollaborationchallengesanddoes

not consider trust, socio-cultural and knowledge transfer

challenges.

Limitations Althoughthis researchpresentedanewwayofsolving the

collaborationchallenge; theyhaven’tpresentedanyresults

as their idea was presented as a research proposal. They

have justmentionedwhat researchmethodology theywill

useandwhat their expected resultswill bebasedon their

assumptions.

5. Approach Distributed Agile Patterns for Offshore Software

Development

OffshoreChallenges

answeredinthis

As part of this research we designed a catalogue of 15

distributed agile patterns. The focus of thesepatternswas

Page 184: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

184

approach

to overcome offshore challenges such as trust, socio-

cultural, communication and coordination, and knowledge

transfer.Inchapter4wehavepresentedthecatalogue.

Strengths Comparedtotheabove-mentionedapproaches,ourpattern

cataloguecoversthemainchallengesofoffshoring;wehave

categorisedthecataloguebasedonwhattypeofproblemit

solves such asmanagement, communication, collaboration

and verification patterns. The pattern catalogue also

provides details of how practitioners can use the patterns

and in each pattern there is a section on known uses in

which examples are given on which companies have used

thepattern.

5.4ChapterSummary

This chapter presented the validation of the distributed agile patterns catalogue by

using Kerth’s (2001) keep/try reflection workshop method. For the workshop we

invitedfourcompaniestotakepartandwepresentedourpatternscataloguetothem.

Basedontheirfeedbackwemodifiedourpatternscatalogue.Inordertoevaluatethe

results of this research we compared our catalogue with other existing solution

present in literature such as ontology-based multi-agent system to support

requirementsandexperiments foroffshoreproject toaddresscentrifugal forces.For

the different approaches we identifiedwhat challenges they helped solve and then

discussedtheir limitationsandfurtherexplainedhowourpattercatalogueaddresses

theoffshorechallenges.

Innextchapteracasestudyhasbeenpresentedwhichshowshowthedistributedagile

patternscanbeusedintherequirementphase.

Page 185: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

185

Chapter6 CaseStudytoShowApplicabilityofDistributedAgile

Patterns

6.1Introduction

InthissectionwepresentacasestudyonhowtheDistributedAgilePatternscatalogue

can be used for offshore software development to give an overview to the

practitionersonhowtoselectpatternsfromthecatalogue.Howeverweonlyfocuson

the requirement-engineering phase of the software development lifecycle. The

chapterstartsbypresentinganoverviewoftherequirementsengineeringprocessand

howrequirementsaregathered inagilesoftwaredevelopment.Wethenpresentthe

existingworkdoneonimprovingtherequirementsengineeringprocessandlastlywe

show how distributed agile patterns can be used to overcome the requirements

engineeringchallengesinoffshoredevelopmentthatwehighlightedinChapter2and

then we map the selected distributed agile patterns onto the requirements

engineeringlifecycletoshowhowthepatternsimproveeachstepofthelifecycleina

distributedproject.

6.2OverviewofRequirementsEngineeringProcess

Wiegersdefinedrequirementsassomething,whichasystemmusthaveorsatisfyor

perform which is being identified by the client side (Wiegers, 2007). Similarly Zave

stated that requirements engineering is the branch of software engineering that is

concerned with the real-world goals for, functions of and constraints on software

system (Zave, 1997). The process of requirements elicitation is one of the most

challengingandcriticaltasksinsoftwaredevelopment.AccordingtoJacobsthecostof

incorrect,misunderstoodandnotagreeduponrequirementsaffectsallofusinterms

of time,moneyand lostopportunities (Jacobs,2007). Fowlerargued thateverything

else in software development depends on the requirements, as without having a

stable set of requirements to startwith, the development team cannot start coding

Page 186: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

186

(Fowler, 2005).Darke,Davis andAnthonyhavealsodone similarworkbyexplaining

how critical the requirement process is and how it directly impacts the success and

failureofaproject(Darke,1997;Davis,1989;Anthony,1992).

6.3RequirementsEngineeringProcessinTraditionalSoftwareDevelopment

vs.AgileMethodology

In traditional software development methodologies, the client would predefine all

their requirements to thedevelopment teambefore thestartof subsequentphases.

Theteamwouldthenanalysetherequirementsandfinaliseasoftwarerequirements

specification(SRS)document.Oncetheclienthasapprovedthedocument,theywould

start the development phase. Figure 6.1 shows the traditional requirements

engineeringprocess.Thisprocessofrequirementselicitationhasproblemssuchas;a

longtimeisspentinpreparingthisdocumentation,whichcausesissuesindealingwith

future requirements change requests from the client once the actual development

phase starts. Over decades of software development we have learnt that

requirementschangeis inevitableduringthedevelopmentstage,becauseneither

theclientnorthedevelopersare100%sureofalltherequirementsofthesystem

atthestartoftheproject.

Figure6.1.TraditionalRequirementsEngineeringProcess.

In agile software development, this problem is solved with the use of story cards,

which isa lighterprocess forthedefinitionofveryhigh-levelrequirementsand isan

artefactofmethodssuchasSCRUMandXP.Theycontainjustenoughinformationfor

Page 187: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

187

the developer to be able to estimate howmuch effort and timewill be required to

developthemandcanhandlechangerequestswithlittleeffort.Thereisalsoanagile

requirements change management process to control changing requirements

throughout the software development lifecycle. Based on this process, new

requirementscanbeaddedandreprioritizedbasedontheclient’srequest.Figure6.2

illustratestheagilerequirementschangemanagementprocess:

Figure6.2.AgileRequirementsChangeManagementProcess.

6.4ApproachestoImproveRequirementsEngineeringProcessinAgile

Toolshavebeenmadetoeasetheprocessofdocumentingstorycards.Onesuchtool

isSoBA(Pateletal.,2008).Thetooladdressedissuesthatareremainingtobesolving

regardingstorycardbaseddevelopment,whichare:

i. Toexplorestorycardfortestdrivendevelopmentanddesignfortestability.

ii. Tostructurestorycardswithuserstoriesandacceptancetesting.

iii. Toaddressnon-functionalrequirementsandeffortestimationforstorycards.

iv. Toexpresstraditionalsoftwaredevelopmentbestpracticesasguidelineswitha

toolsupport.

v. Tocapturestorycardsandplantaskssupportingpair-wisedevelopment.

Page 188: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

188

This model can capture user stories in five formats, which are face-to-face

communication, electronic discussions, knowledge and experience from similar

systems, graphical notations and voice. This tool consists of five stages, which they

havebasedonthetraditionalmodelforcollectionrequirement,whichare:capturing

user stories and refining them, develop story cards, structuring story cards, effort

estimationandprioritiesstorycards.

Figure 6.3 shows themethodology used in SoBA tool to document story cards and

whatstepsareperformedbeforeauserstorycangointodevelopmentphase.Thatis

the customer and the tem capture the user stories, which can be collected in five

different multi-media format such as face-to-face, electronic discussion, knowledge

systems, graphical notation and voice. Once the user stories are captured they are

refinedanddocumentedintostorycardswithindexing.Thenextstepsarestructuring

those cards and assigning effort estimation and putting the cards in prioritization

order.Oncethecardsarereadytheyaremovedtodesignanddevelopmentphaseof

theproject.

Figure6.3.StoryCardBasedMethodologyfollowedbySoBATool(Pateletal.,2008).

Khan conducteda systematic literature review to identify factors that generate risks

during the requirements engineering process in a global software development

Page 189: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

189

environment.Basedontheirresearch,theyfound74factors,whichtheygroupedinto

8classifications,whichare(Khanetal.,2014):

i. CommunicationandDistance.

ii. Cultural,Background,Language,OrganisationalandTimeDifferences.

iii. KnowledgeManagementandAwareness.

iv. Management.

v. Tools,TechnologiesandStandards.

vi. Stakeholders.

vii. ProjectandProcess

viii. Requirements.

Theseclassificationscanfacilitatethepractitionersbyservingasachecklisttoconsider

while capturing requirements however since this studyhas only collecteddata from

literatureandhasnotvalidatedtheir findingsfrompractitioners,wecannotconsider

this as a standard classification nor we don’t know howmuch effect it has on the

requirementsprocessifthepractitionerusesit.

Workhasalsobeendoneonhowagilerequirementscanbeprioritisedinalarge-scale

outsourced system.Daneva conducted an empirical study that aimedprioritise agile

requirementsbutkeepingthefollowingpointsinmind(Danevaetal.,2013):

• Focusonnotonlycreatingvalue,

• But also accumulating it over time, while minimizing the risk for the

developmentteam.

According to their study the taskofprioritising requirementswas the jobofproduct

ownerortheclientandthecontextualfactorsaffectingtherequirementsprioritisation

processareasfollows:

• Theneedtoembracechange,

• Projectconstraints

• ProjectScope

Page 190: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

190

• Thenumberofprojectstaff.

As every software project is subjected to the need of change in requirements and

every project has constraints, Daneva, focused on the affects of project scope and

number of staff working on the project as according to their study, the scope

determinesthecomplexityoftheprojectandthenumberofstaffisdirectlylinkedto

risk,aslargernumberofclientsoftenleadstocontradictioninrequirements.Theyalso

classifiedrequirementsintosixtypesofdependencies,whichare(Danevaetal.,2013):

i. Inter-domain dependencies are referred to dependencies that are concerned

withrequirements thatareoverlappingmultiplebusinessareassuchasclient

policiesandsettingupclientcomplaintmanagementsystem.

ii. Intra-domain dependencies are those dependencies caused due to the close

linksbetweentheprocessesandentities.

iii. Dependenciesdue todownstreamactivities,suchassequencing requirements

thatmaximisestheuseofavailablehumanresource.

iv. Team-baseddependenciesdealwithavoidingmultipleteamshavingtodothe

sameworkorondependentartefacts.

v. Dependencesamonguserstoriestheseareimposedbytheorderofactivitiesin

aspecificbusinessprocess.

vi. Dependenciesamongdelivery stories, theseare referred to thedependencies

causedbynon-functionalrequirements.

Aspartof their study theydesignedauserstorydeliveryprocess,which is shown in

Figure6.4.

Page 191: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

191

Figure6.4.TheUserStoryDeliveryProcess(Danevaetal.,2013).

They also identified 10 characteristics practices that should be followed while

gatheringandprioritisinguserstories.Anoverviewofthepracticesisgivenbelow:

i. Maintain traceability between the user stories and delivery stories. In their

research they introduced the concept of delivery stories. A delivery story

consistsofthefollowing:

• Numberofusecases

• Requiredtimeforusecasesimplementationinpersondays

• NumberofGUIscreens

• RequiredtimeforGUIscreensimplementationinpersondays

• Businessrulesandvalidations

• Numberoftestscenarios

• Requiredtimefortestcasespreparationinpersondays

• Requiredtimefordatamodelsinpersondays

• Totaltimerequiredforsub-processimplementation

Page 192: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

192

ii. Establish a dedicated Delivery Story Team. According to their study in larger

projects,weneedtohaveaseparateteamtohandletherequirementsprocess.

Asunlikesmallprojectswhichdonothaveanydetailedrequirements,inlarge

projectsthereisaneedtoadddetailinrequirementstomakeiteasierforthe

offshoreteammembersandclientstounderstandwhattheyhavetodo.

iii. Run series of workshops, as it helps build trust between the client and

developmentsites.

iv. EstablishaDomainOwner.Asa resultof their study, theyhave introduceda

newroleofDomainOwner,andtheyclassifieditasacriticalroleforacquiring

knowledgeaboutthecorebusinessprocessesandoperationalprocedures.

v. Understandthedependenciesofrequirementsbeforecarryingoutthedesign

process.

vi. TheProductOwnerroleshouldbeset-upattheclient’ssite.

vii. Set-up a requirement change analysis management process, as the

requirementsdochangeoverthesoftwaredevelopmentlifecycle.

viii. DirectlyasktheProductOwnertoconfirmanychangeintherequirements.

ix. Inordertoencouragetransparency,usestatusreports,whichshouldbeshared

withtheclientaftereverythreeweeks.

x. Trainingonthedomainshouldbegradualandtheteamshouldbepreparedfor

it.Mostofthetimetrainingsweresupportedbytheclient’sorganisation.

However,SoBAhelps indocumentingandmanaginguserstories itdoesnotconsider

the complexity added by distributed agile developments such as any change in the

requirementsneedstobecommunicatedoverdifferent locationsandduetocultural

Page 193: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

193

and language differences, requirements can be misunderstood (Patel et al., 2008).

Similarly the work done by Daneva does facilitate the practitioners by providing us

with a checklist of 10 practices to considerwhile documenting and prioritising user

storiesbut theydidnotconsider theaffectofculturaldifferencesandhow language

affects the requirements process and they introduced two new concepts such as

dedicatedteamforrequirementsandDomainowner,whichaddadditionalcosttothe

development,whileasmentionedinSection2.2.1,themainreasonfororganisations

tochoosetooffshoretheirprojects,istocutdownoncost(Danevaetal.,2013).

6.5DistributedAgilePatternsusedtoOvercomeRequirementsEngineering

Challenges

Inthissectionwewilldiscusshowdistributedagilepatternscanbeusedtoovercome

the challenges we identified in Section 2.4. However we will focus only on the

requirements engineeringprocess. The selectionof patternswasdone following the

processidentifiedinFigure4.1.

Table6.1.UsingDistributedAgilePatternstoAddressRequirementsEngineering

ChallengesinAgileOffshoreDevelopment.

No. Requirements

ChallengeinAgile

Offshore

Development

DistributedAgile

Pattern

Solution

1. Requirement

Estimation

CollectivePlanning

Poker

By doing the planning poker

activitytogetherallteammembers

will get a better understanding of

eachothersskills.

2.

Objectiveandcore

ProjectCharter

Havingaprojectcharterdocument

Page 194: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

194

functional

requirements

writtenat the startof theproject,

will give all the team members a

clear understanding of the

project’s objective and core

functionalrequirements.

3.

Misunderstanding

ofrequirements

CollectiveProject

Planning

Since thewhole teamwill be part

of the planning activity, the

chances of misunderstanding a

requirementwillbereduced.

Asynchronous

Information

Transfer

In case of any misunderstanding,

the team members can

communicate with each other

usingasynchronoustools.

Synchronous

Communication

For a real-time response to any

misunderstanding, the team

members can use synchronous

methodsforcommunication.

4.

Vague

requirements

VisitOnshore-

Offshore

To clarify vague requirements,

onshore team members should

visit offshore team members and

vice versa to discuss the

requirements in order to avoid

defects.

5.

Changesinthe

requirements

GlobalScrumBoard

Any change in the requirements,

will be updated on the global

Page 195: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

195

scrumboard,whichisaccessibleby

allteammembersinreal-time.

6.

Inconsistencies

CentralCode

Repository

To avoid any inconsistency

between the work done and the

userstories,alltheteammembers

use a central code repository,

which is accessible by the whole

team.Allthecodeiscommitted in

thatrepository,enablingthewhole

teamtoseewhatworkisdoneand

whatisremaining.

7.

Bidirectional

traceabilityof

requirements

CentralCode

Repository

With the help of a central code

repository, we can map each

requirementwithitscode,allowing

traceabilityofalltherequirements

being developed at different

locations.

GlobalScrumBoard

Status of all requirements being

developedcanberecordedusinga

globalscrumboard,whichhelpsin

maintaining traceability of

requirements.

8.

Managing

requirements

LocalSprint

Planning

Each site can manage their

requirements and daily meetings

usinglocalsprintplanning.

Page 196: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

196

6.6MappingDistributedAgilePatternsontheRequirementsEngineering

Lifecycle

Inthissectionwemapthedistributedagilepatternsontothetraditionalrequirements

engineering lifecycle, to show how these patterns facilitate the requirements

engineeringprocess.AsshowninFigure6.5thefourkeyfeaturesofthisprocessareas

following:

• Feasibility Study: In this process, we decide whether or not the proposed

system is worthwhile. By writing down the Project Charter document in the

beginningoftheproject,wecanachievethis.AsstatedintheProjectCharter

we define the aim, objectives and core functional requirements of the

proposedsystem.

• Requirements Elicitation and Analysis: The purpose of this process is to

identify theapplicationdomain; the services itwill provideandwhat are the

limitations. Three distributed agile patterns are applied in these phases.

Collaborative project planning helps the team to find out what the

requirements of the application to be developed. Local sprint planning helps

teammembersintheirrespectivelocationstodiscussindetailtheuserstories

allocated to them and determine the constrains associated with them.

CollaborativePlanningPoker,allowstheteammemberstodiscusstheservices

that the system will provide and estimate how much effort is required to

developthem.

• Requirements Specification:Oncetherequirementshavebeen identified,we

document them in the SRS document. As in agile software development,

requirementsaredocumentedusinguserstories, indistributedagilesoftware

development; we use a Global Scrum Board, where all the story cards are

placed.Henceanychangeormodificationintherequirementswillbeupdated

ontheGlobalScrumBoard,whichisaccessiblebyalltheteaminreal-time.

Page 197: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

197

• Requirements Validation: In this process, the requirements are validated, by

reviewing them to make sure that the identified requirements are in

accordancewithwhat the clientwants. Four distributed agile patternsmake

sure that the correct requirements are identified. Central Code Repository

helps the client verify that the code being developed is according to

requirements. Asynchronous Information Transfer provides a platform to the

teammembersandtheclientstocommunicateandcoordinatetheprogressof

thesystembeingdevelopedandincaseofanyconfusion,theteamcaneither

use asynchronous or synchronous tools for communication, according to the

communicationstandardsdefinedusingSynchronousCommunicationPattern.

Forfurtherclarificationofrequirements,distributedagilepatternssuggestthat

bothonshoreandoffshoreteammembersshouldvisiteachother.

InFigure6.5wehavepresentedhowourdistributedagilepatternsmapontothefour

phases of traditional requirement engineering in order to provide an overview to

practitioners on which distributed agile pattern they can use while collecting

requirements for their offshore projects. For example in order to perfome the

requirementselicitationandanalysisphaseintherequirementengineeringprocessof

anoffshoreproject,thepractitionercanusecollaborativeprojectplanning,localsprint

planningandcollaborativeplanningpokerpatterns

Figure6.5.MappingDistributedAgilePatternsonTraditionalRequirements

EngineeringProcess.

Page 198: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

198

6.7ChapterSummary

Thischapterpresentedacasestudytoshowhowthedistributedagilepatternscanbeusedin

offshoresoftwaredevelopment.Thefocusofthiscasestudywasontherequirementphaseof

the software development lifecycle so the chapter starts by giving an overview on the

requirementengineeringprocess.Thenweprovidedacomparisonbetweentherequirement

process in traditional software development vs. agilemethodology. Several approaches to

improve the requirementprocess in agilewere alsodiscussed in this chapter. Basedon the

offshore challenges identified in chapter 2we discussed how the distributed agile patterns

cataloguecanbeusedtoovercomethem.Lastlywemappedthedistributedagilepatternson

therequirementengineeringlifecycle.

The next chapter concludes the thesis, discussing the main achievements of the

research and proposing a set of recommendations for improvements in future

research.

Page 199: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

199

Chapter7 ConclusionsandFutureWork

7.1Introduction

This research has studied the factors that effect software development in offshore

environment. Itaimedto identifyandaddressthefactorsthataffecttheadoptionof

agilepracticesinoffshoresoftwaredevelopment.Inordertoachievetheresearchaim

andobjectives, toanswer the researchquestionsand tomaximize thequalityof the

casestudyfindingtherewasaneedtochoosethemostappropriateresearchapproach

and strategy for the researcher to follow in collecting and analysing the data. The

selection of an appropriate methodology for this research came by following a

literaturereviewbasedontheresearchtopic,settingtheaimandobjectivesandafter

considerationofliteratureonresearchmethodologies.

Based on the nature of this research, the phenomenological research paradigm and

the use of both qualitative and quantitative philosophy were reasoned to be as

discussed in Section 3.3, the perfect means to undertake the research due to its

subjectivityandinordertogainin-depthunderstandingandtoidentifythefactorsthat

affect theadoptionofagilepractices inoffshoresoftwaredevelopment.Asadopting

agilepractices inoffshoresoftwaredevelopment isnota straightforwardprocess. In

this research we have conducted a systematic literature review and semi-structure

interview to identify agile practices that are being repeatedly used in offshore

developmenttosolverecurringproblems.Asaresult,weidentified15distributedagile

patterns,whichwerepresentedinSection4.5.Tovalidatethepatternscataloguewe

used a reflection workshop and for evaluation we compared our solution to other

existing solutions present in literature to overcome offshore challenges, which we

havepresentedinChapter5.

Inordertohelppractitionersunderstandhowthedistributedagilepatternscatalogue

canbeused at anydevelopmentphasewepresented a case study inChapter 6, on

Page 200: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

200

how the catalogue can be used in the requirement phase of scrum based software

development.

7.2MeetingtheAimandObjectivesandAnsweringtheResearchQuestions

Themain researchquestionwasansweredbyachieving theaimof this study,which

was to address the issues between the onshore and offshore teams that are

developing software at offshore locations and to develop a solution by identifying

repeatingsolutions from literatureand interviewingprofessionals.Thisaimhasbeen

achievedbyaddressingtheresearchobjectivesasfollows:

The first objective was to review the relevant literature on offshore software

development.The literature includedstudies focusingonwhyorganisationschoseto

movestheirprojectstooffshorelocations,whataredifferenttypesofglobalsoftware

developmentbusinessmodels,whataretheadvantagesandlimitationsofchoosingto

develop software at different locations, how did organisation overcome offshore

softwaredevelopmentchallenges.

Thesecondobjectivewastoidentifykeychallengesthatoccurwhileoffshoresoftware

development and if any recurring agile practices are being used to overcome an

offshore challenges. We achieved this by conducted a SLR and semi-structured

interviewsaswewantedtoidentifypatterns.

Based on the data collected and analysis, we identified agile practices recurrently

being used to solve offshore software development challenges. Based on observed

recurringpracticeswedesignedourdistributedagilepatternscatalogue,whichisthe

thirdobjectiveofourresearch.

The fourth objective was to validate and evaluate the distributed agile patterns

catalogue, whichwe achieved by conducting reflectionworkshop and based on the

feedback we revised our patterns catalogue and for evaluation we compared our

Page 201: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

201

patterns catalogue with other solutions such as using ontology-based multi-agent

approach, experiments for offshore projects designed by Larman et at. (2010), the

detail is presented in Section 5.3. The last objective was to write this thesis and

presentitintheviva.

7.3RecommendationforFutureWork

Futureworkhasbeenplannedforthisresearch,whichincludeswaysonhowwecan

improve and extend the research presented in this study. The following

recommendationsarisefromthepresentstudyforfutureacademicsandprofessional

researchthatwanttoworkinoffshoresoftwaredevelopmentandagilemethodology:

- Researchers could investigate and identify the factors that effect the

developmentofsoftwareindomesticoutsourcing,sharedservicesandinternal

offshoring as in this research we have only focused on identifying the

challengesinoffshoreoutsourcingbusinessmodel.

- Onemajordirection for futureworkwouldbe toapply this catalogue for the

developmentofanoffshoresoftwareprojectthatwanttoadoptagilepractices

andstudytheimpactofeachpatternondifferentdevelopmentstages.

- Designadecisionmakingtooltohelppractitionersenterthechallengetheyare

facing or what process they want to apply and get a list of recommended

distributedpatternsthatcouldbeusedtoovercomeit.Thepurposeofthetool

wouldbetoprovideeasetopractitioners,asgoingthroughallfifteenpatterns

canbetimeconsuming.

- Furtherresearch isneeded into identifyinghowdevelopmentofthecodecan

beimprovedandidentifiesthatisdesignasetofrulestobefollowedonhow

frequentthedevelopersneedtocommittheircodeandidentifypatternsfrom

Page 202: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

202

howpractitionersaredevelopingtheircodeinordertoprovideaguidelineon

howtomanageandwritequalitycodeinoffshoresoftwaredevelopment.

- Researcherscancompareotherdevelopment lifecyclessuchasad-hoc, linear,

evolutionary,iterativeandincrementalapproachesasdefinedinAppendixB,to

identifypatternsforoffshoresoftwaredevelopmentandevaluatethemagainst

the distributed agile patterns catalogue to determine if they produce better

resultsornot.

- Finally researchers can explore designing solutions other then patterns and

evaluate their solutions with distributed agile patterns catalogue and

determineiftheirsolutionspresentbetterresultsthenourcatalogue.

7.4LimitationoftheStudy

AccordingtoYin(2003)everyresearchstudyislimitedbytheconstraintsplacedupon

theresearchandtheresearchenvironment,andthisresearchisnoexception.Inthis

researchwehavemadeeveryefforttoovercometheselimitationtoensurethatthis

studycouldbedeliveredsmoothly,butitisnotpossibletocontrolallthefactorsthat

werelikelytoaffecttheoutcomes.

Thelimitationsofthisresearchasarefollowing:

- Somecasesidentifiedinliterature,justmentionednamesofpracticesanddid

not provide details of how they are to be implemented or what the results

wereaftertheyimplementedanadaptedagilepractice.

- Another limitation was that researchers had identified offshore software

development challenges but had not considered the complexity add by

adoptingagilepractices,whichlimitedourdatafromliteratureandwehadto

Page 203: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

203

reply on interviews to verify agile practices actually used in offshore

development.

- Afinallimitationwasthataswealsocollecteddatafrominterviews,thehuman

factor can not be ignored, that is since the organisation chose to remain

anonymous,somefactswerenotallowedtobemadepublicsuchaswhatwas

thenatureoftheprojectsbeingoffshored,howcriticalthedatabeingshared

to offshore locations was and what legal arrangements they had with the

offshore developers regarding sharing of information for the purpose of

research.

7.5ChapterSummary

This chapter has presented an overall conclusion for the thesis. The aim of the

research, the objectives, and the techniques that were used by the researcher to

achieve the study objectives were addressed; and in final conclusion, the chapter

outlinedpotentialfuturedirections,whichcouldbeadoptedasfurtherresearchwork.

Page 204: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

204

References:

Abrahamsson,Pekka,JuhaniWarsta,MikkoT.Siponen,andJussiRonkainen(2003)."Newdirections

on agile methods: a comparative analysis." In Software Engineering, 2003. Proceedings. 25th

InternationalConferenceon,pp.244-254.IEEE.

Agerfalk, Par J., and Brian Fitzgerald (2008). "Outsourcing to an unknown workforce: Exploring

opensourcingasaglobalsourcingstrategy."MISquarterly32,no.2,385.

Alexander, Christopher (1977). A pattern language: towns, buildings, construction. Oxford

UniversityPress,1977.

Alnuem, Mohammed Abdullah, Arshad Ahmad, and Hashim Khan (2012). "Requirements

Understanding: A Challenge in Global Software Development, Industrial Surveys in Kingdom of

SaudiArabia."In2012IEEE36thAnnualComputerSoftwareandApplicationsConference,pp.297-

306.IEEE,2012.

Alzoubi, Yehia Ibrahim, Asif Qumer Gill, and Ahmed Al-Ani (2016). "Empirical studies of

geographically distributed agile development communication challenges: A systematic

review."Information&Management53,no.1(2016):22-37

Al-Zaidi, Areej, and Rizwan Qureshi (2017). "Global software development geographical distance

communicationchallenges."Int.ArabJ.Inf.Technol.14,no.2(2017):215-222.

AnthonyByrd.T,K.L.C.,RobertW.Zmud,(1992).ASynthesisofResearchonRequirementsAnalysis

andKnowledgeAcquisitionTechniques.MISQuarterly,1992.Vol.16(No.1):p.pp.117-138

Armour,PhillipG(2007)."Agile…andoffshore."CommunicationsoftheACM50,no.1(2007):13-

16.

Aron,Ravi,andJitendraV.Singh(2005)."Gettingoffshoringright."Harvardbusinessreview83,no.

12,135.

Aronsson,Cecilia.(2007)”Krigetomtalangerna”,VeckanAffärer,nr8,p44.

Avritzer, Alberto, Francois Bronsard, and GilbertoMatos (2010). "Improving Global Development

UsingAgile."InAgilityAcrossTimeandSpace,pp.133-148.SpringerBerlinHeidelberg,2010.

Page 205: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

205

Avritzer,Alberto,WilliamHasling,andDanielPaulish(2007)."Process investigationsfortheglobal

studio project version 3.0." In Global Software Engineering, 2007. ICGSE 2007. Second IEEE

InternationalConferenceon,pp.247-251.IEEE,2007.

Babu,Mohan (2005).Offshoring IT services: a framework formanagingoutsourcedprojects. Tata

McGraw-HillEducation.

Beck,Kent,MikeBeedle,ArieVanBennekum,AlistairCockburn,WardCunningham,MartinFowler,

JamesGrenningetal.(2001)."Manifestoforagilesoftwaredevelopment”.

Beecham, Sarah, John Noll, and Ita Richardson (2014). "Using Agile Practices to Solve Global

SoftwareDevelopmentProblems--ACaseStudy." In2014 IEEE InternationalConferenceonGlobal

SoftwareEngineeeringWorkshops,pp.5-10.IEEE,2014.

Berczuk, Steve. "Back to basics: The role of agile principles in successwith an distributed scrum

team."InAgileConference(AGILE),2007,pp.382-388.IEEE,2007.

Berenbach,B. (2006). Impactoforganizational structureondistributed requirementsengineering

processes: lessons learned. InProceedingsof the2006 internationalworkshoponGlobalsoftware

developmentforthepractitioner(GSD'06).ACM,NewYork,NY,USA,15-19.

Beulen, Erik, Paul Van Fenema, and Wendy Currie (2005). "From Application Outsourcing to

Infrastructure Management:: Extending the Offshore Outsourcing Service Portfolio."European

ManagementJournal23,no.2,133-144.

Bhat, J.M., Gupta, M., Murthy, S.N. (2006). Overcoming Requirements Engineering Challenges:

LessonsfromOffshoreOutsourcing.IEEESoftw.23,5(September2006),38-44.

Bricout,V.,Heliot,D.,Cretoiu,A.,Yang,Y.,Simien,T.,andHvatum,L.,(2005).Patternsformanaging

distributedproductdevelopmentteams.Tech.rep.,SchlumbergerOilfieldServices.

Bird,C.,Nagappan,N.,Devanbu,P.,Gall,H.,andMurphy,B.(2009).Doesdistributeddevelopment

affectsoftwarequality?AnempiricalcasestudyofWindowsVista.InProceedingsofthe31st

InternationalConferenceonSoftwareEngineering(ICSE'09).IEEEComputerSociety,Washington,

DC,USA,518-528.

Page 206: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

206

Braithwaite,Keith,andTimJoyce(2005)."XPexpanded:Distributedextremeprogramming."

InExtremeprogrammingandagileprocessesinsoftwareengineering,pp.180-188.SpringerBerlin

Heidelberg.

Bryman,Alan(2012).Socialresearchmethods(5thed.).Oxford:OxfordUniversityPress.

Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M., Sommerlad, P., & Stal, M.

(1996).Pattern-orientedsoftwarearchitecture,volume1:Asystemofpatterns.

Bosch, J., and Bosch-Sijtsema, P. (2010). From integration to composition: On the impact of

softwareproductlines,globaldevelopmentandecosystems.J.Syst.Softw.83,1(January2010),67-

76

Boon,S.,andHolmes, J. (1991).Thedynamicsof interpersonal trust:Resolvinguncertainty in the

face of risk.In R. Hinde and J. Groebel (Eds.). Cooperation and Prosocial Behavior. Cambridge

UniversityPress,Cambridge,UK.190–211.

Bose, Indranil (2008). "Lessons learned from distributed agile software projects: A case-based

analysis."CommunicationsoftheAssociationforInformationSystems23,no.1(2008):34.

Brown, W.J., Malveau, R.C., McCormick, H.W.S., Mowbray, T.J. (1988): AntiPatterns: Refactoring

Software,Architectures,andProjectsinCrisis.J.Wiley,1998.

Čavrak, I., Orlić, M., and Crnković, I. (2012). Collaboration patterns in distributed software

developmentprojects.InProceedingsofthe34thInternationalConferenceonSoftwareEngineering

(ICSE'12).IEEEPress,Piscataway,NJ,USA,1235-1244

Camacho,C.,Marczak,S.,andConte,T.(2013).OntheIdentificationofBestPracticesforImproving

the Efficiency of Testing Activities in Distributed Software Projects: Preliminary Findings from an

Empirical Study. InProceedingsof the2013 IEEE8th InternationalConferenceonGlobal Software

EngineeringWorkshops(ICGSEW'13).IEEEComputerSociety,Washington,DC,USA,1-4.

Carmel,Erran(1999).Globalsoftwareteams:collaboratingacrossbordersandtimezones.Prentice

HallPTR.

Carmel, Erran, and Ritu Agarwal (2001). "Tactical approaches for alleviating distance in global

softwaredevelopment."Software,IEEE18.2,22-29.

Page 207: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

207

Carmel,Erran,andPaulTjia(2005.).Offshoringinformationtechnology:sourcingandoutsourcingto

aglobalworkforc.CambridgeUniversityPress.

Cataldo, M., Bass, M., Herbsleb, J.D., Bass, L. (2007). On Coordination Mechanisms in Global

Software Development. In Proceedings of the International Conference on Global Software

Engineering(ICGSE'07).IEEEComputerSociety,Washington,DC,USA,71-80.

Clark, Herbert H., and Susan E. Brennan (1991). "Grounding in communication." Perspectives on

sociallysharedcognition13,no.1991(1991):127-149.

Clerc, V. (2008). Towards architectural knowledge management practices for global software

development.InProceedingsofthe3rdinternationalworkshoponSharingandreusingarchitectural

knowledge(SHARK'08).ACM,NewYork,NY,USA,23-28.

Conchúir,EoinÓ.,Pär J.Ågerfalk,HelenaH.Olsson,andBrianFitzgerald (2009). "Global software

development:wherearethebenefits?."CommunicationsoftheACM52,no.8.127-131.

Conchúir,E.,Holmström,H.,Ågerfalk,P.J.andFitzgerald,B.(2006).ExploringtheAssumedBenefits

of Global Software Development. In Proceedings of the IEEE international conference on Global

SoftwareEngineering(ICGSE'06).IEEEComputerSociety,Washington,DC,USA,159-168.

Cordeiro, Lucas, Cassiano Becker, and Raimundo Barreto (2007). "Applying Scrum and

OrganizationalPatternstoMulti-siteSoftwareDevelopment."(2007):46-67.

Cottmeyer, Mike (2008). "The good and bad of Agile offshore development." In Agile, 2008.

AGILE'08.Conference,pp.362-367.IEEE,2008.

Cristal,Mauricio,DanielWildt, andRafael Prikladnicki (2008). "Usageof Scrumpracticeswithin a

globalcompany."InGlobalSoftwareEngineering,2008.ICGSE2008.IEEEInternationalConference

on,pp.222-226.IEEE,2008.

Damian, Daniela, and Deependra Moitra (2006). "Guest Editors' Introduction: Global Software

Development:HowFarHaveWeCome?."Software,IEEE23,no.5,17-19.

Damian, Daniela E., and Didar Zowghi (2003). "RE challenges inmulti-site software development

organisations."Requirementsengineering8,no.3(2003):149-160.

Danait, Ajay (2005). "Agile offshore techniques-a case study." In Agile Conference, 2005.

Page 208: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

208

Proceedings,pp.214-217.IEEE,2005.

Daneva,Maya, Egbert VanDer Veen, ChintanAmrit, SmitaGhaisas, Klaas Sikkel, Ramesh Kumar,

NiravAjmeri,UdayRamteerthkar,andRoelWieringa. (2013). "Agile requirementsprioritization in

large-scale outsourced systemprojects: An empirical study." Journal of systemsand software 86,

no.5(2013):1333-1353.

Darke, Peta (1997). G.G.S., User viewpoint modelling: understanding and representing user

viewpointsduringrequirementsdefinition. InformationSystemsJournal,1997.Volume7(Issue3):

p.pages213-219.

Das,TarunK.,andBing-ShengTeng (1998). "Between trustandcontrol:developingconfidence in

partnercooperationinalliances."AcademyofManagementreview23,no.3,491-512.

Davenport, Thomas, H., and Prusak, Laurence, (1998). Working knowledge. Boston: Harvard

BusinessSchoolPress.

Davis, A.M (1989). Software Requirements: Analysis and Specification. 1989: Prentice Hall. 352

pages.

Denny, Nathan, Shivram Mani, Ravi Sheshu Nadella, Manish Swaminathan, and Jamie Samdal

(2008). "Hybrid offshoring: Composite personae and evolving collaboration technologies."

InformationResourcesManagementJournal(IRMJ)21,no.1(2008):89-104.

Dingsøyr,Torgeir, SridharNerur,VenuGopalBalijepally, andNilsBredeMoe (2012). "Adecadeof

agile methodologies: Towards explaining agile software development."Journal of Systems and

Software85,no.6,1213-1221.

Dourish, Paul, and Victoria Bellotti. (1992). Awareness and coordination in shared

workspaces.Proceedings of the 1992 ACM conference on Computer-supported cooperative work.

ACM.

Drummond, B., and John Francis Unson (2008). "Yahoo! Distributed Agile: Notes from theworld

over."InAgile,2008.AGILE'08.Conference,pp.315-321.IEEE,2008.

Dybå, Tore, and Torgeir Dingsøyr (2008). "Empirical studies of agile software development: A

systematicreview."Informationandsoftwaretechnology50,no.9,833-859.

Page 209: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

209

Easterby-Smith, M., Thorpe R. and Lowe A. (2004) Management Research: An Introduction,2nd

Edition.SAGEPublicationsLtd.London.

Easterby-Smith,Mark, Richard Thorpe, and Paul R. Jackson (2012).Management research. Sage,

2012.

Ebert, Christof (2011).Global software and IT: A guide to distributed development, projects, and

outsourcing.Wiley-IEEEComputerSocietyPress

Elssamadisy,Amr,andDavidWest(2006)."Adoptingagilepractices:anincipientpatternlanguage."

InProceedingsofthe2006conferenceonPatternlanguagesofprograms,p.1.ACM,2006.

Flick, Uwe. (2011). Introducing research methodology: A beginner's guide to doing a research

project.London:Sage.

Fowler, Martin (1997). Analysis patterns: reusable object models. Addison-Wesley Professional,

1997.

Fowler, Martin. Daily Standup Patterns. Available at:

http://martinfowler.com/articles/itsNotJustStandingUp.html

Fowler,Martin(2005).TheNewMethodology.2005.<http://www.martinfowler.com>.

Galen,Robert(2009)SCRUMProductOwnership–BalancingValuefromtheInsideOutRGCGLLC

2009.ISBN:978-0-578-01912-3

Gamma, Erich, Richard Helm, Ralph Johnson, and John Vlissides. Design patterns: elements of

reusableobject-orientedsoftware.PearsonEducation,1997.

Ghafoor,Fawad,IbrarAliShah,andNasirRashid(2017)."IssuesinAdoptingAgileMethodologiesin

GlobalandLocalSoftwareDevelopment:ASystematicLiteratureReviewProtocolwithPreliminary

Results."InternationalJournalofComputerApplications160,no.7.

Garner, C. Alan (2004). Offshoring in the service sector: Economic impact and policy

issues.EconomicReview-FederalReserveBankofKansasCity89,5-38.

GlobalWagesComparisonfromhttp://www.paywizard.co.uk/main/pay/global-wage-comparison

Page 210: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

210

Goddard, W. & Melville, S. (2004). Research Methodology: An Introduction, (2nd ed.) Oxford:

BlackwellPublishing.

Grechanik,M.,Jones,J.A.,Orso,A.,andvanderHoek,A.(2010).Bridginggapsbetweendevelopers

andtestersinglobally-distributedsoftwaredevelopment.InProceedingsoftheFSE/SDPworkshop

onFutureofsoftwareengineeringresearch(FoSER'10).ACM,NewYork,NY,USA,149-154.

Gupta,Amar(2007)."Expandingthe24-hourworkplace."TheWallStreetJournal:15-16.

Gupta,Amar(2009)."Derivingmutualbenefitsfromoffshoreoutsourcing."Communicationsofthe

ACM52,no.6:122-126.

Gutwin, Carl, Saul Greenberg, and Mark Roseman (1996). "Workspace awareness in real-time

distributedgroupware:Framework,widgets,andevaluation."PeopleandComputers.281-298.

Hayes ,L.G (2003). “Everything you know about Offshore Outsourcing is Wrong”, Datamation

Magazine,Feb28,2003.

HendrikC.Jahn,AlexandraGazendamandAndréSchlieker(2011)Accenture:Thehigh-performance

insurer of the future, Accenture. [Available at:

http://nstore.accenture.com/Geneva/HP_Insurer_of_the_Future_report.pdf]

Herbsleb,JamesD.,AudrisMockus,ThomasA.Finholt,andRebeccaE.Grinter(2001)."Anempirical

study of global software development: distance and speed." In Proceedings of the 23rd

internationalconferenceonsoftwareengineering,pp.81-90.IEEEComputerSociety,2001.

Herbsleb, J.D. (2007).GlobalSoftwareEngineering:TheFutureofSocio-technicalCoordination. In

Future of Software Engineering (2007). IEEE Computer Society, Washington, DC, USA, 188-198.

DOI=http://dx.doi.org/10.1109/FOSE.2007.11.

Herbsleb, J.D. Paulish, D.J. and Bass, M. (2005). Global software development at siemens:

experience from nine projects. In Proceedings of the 27th international conference on Software

engineering(ICSE'05).ACM,NewYork,NY,USA,524-533.

Hitt, Michael A., R. Duane Ireland, and Robert E. Hoskisson (2002).Strategic Management:

CompetitivenessandGlobalization.South-WesternCollegePub.,Canada.

Page 211: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

211

Hofner, Gerd, and V. S. Mani (2007). "TAPER: A generic framework for establishing an offshore

developmentcenter."InGlobalSoftwareEngineering,2007.ICGSE2007.SecondIEEEInternational

Conference,162-172.

Hofstede,Geert(1980).Culture'sconsequences.BeverlyHills,CA:Sage,1980.

Hofstede,Geert(1997)Cultureandorganizations--Softwareofthemind:McGraw-Hill,1997.

Holmström,Helena,BrianFitzgerald,PärJ.Ågerfalk,andEoinÓ.Conchúir."Agilepracticesreduce

distanceinglobalsoftwaredevelopment."InformationSystemsManagement23,no.3(2006):7-18.

Holmstrom,H.,Conchúir,E.Ó.,Agerfalk, J.,&Fitzgerald,B. (2006).Global softwaredevelopment

challenges:Acasestudyontemporal,geographicalandsocio-culturaldistance.InGlobalSoftware

Engineering,2006.ICGSE'06.InternationalConference),3-11.

Hossain,Emam,MuhammadAliBabar,andHye-youngPaik(2009)."Usingscruminglobalsoftware

development: a systematic literature review." InGlobal Software Engineering, 2009. ICGSE 2009.

FourthIEEEInternationalConferenceon,pp.175-184.Ieee,2009.

Humphrey,WattsS(1989).ManagingtheSoftwareProcess.Addison-WesleyProfessional.

Hussey,Jill,andRogerHusse(1997)y."Businessresearch."Hampshire:Palgrave(1997).

Hvatum, Lise B., and Rebecca Wirfs-Brock (2015). "Patterns to build the magic backlog." In

Proceedingsofthe20thEuropeanConferenceonPatternLanguagesofPrograms,p.12.ACM,2015.

Jaakkola, H., Heimbürger, A., and Linna, P. (2010). Knowledge-oriented software engineering

processinamulti-culturalcontext.SoftwareQualityControl18,2(June,2010).299-319.

Jacobs,D.,RequirementsEngineeringsoThingsDon'tGetUgly,inCompaniontotheproceedingsof

the29th InternationalConferenceonSoftwareEngineering.2007, IEEEComputerSociety.p.159-

160.

Jahns,Christopher,EviHartmann,andLydiaBals(2006)."Offshoring:Dimensionsanddiffusionofa

newbusinessconcept."JournalofPurchasingandSupplyManagement12.4,218-231.

Page 212: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

212

Jan,SyedRoohullah,FaheemDad,NoumanAmin,AbdulHameed,andSyedSaadAliShah(2016).

"Issues in Global Software Development (Communication, Coordination and Trust) A Critical

Review."training6,no.7(2016):8.

Jankowicz,A.Devi(2005).Businessresearchprojects.CengageLearningEMEA,2005.

Javdani Gandomani, Taghi, Hazura Zulzalil, Abdul Azim Abdul Ghani, Abu Bakar Md Sultan, and

KhaironiYatimShairf (2014). "Exploring facilitatorsof transitionandadoptiontoagilemethods:a

groundedtheorystudy."JournalofSoftware9,no.7(2014):1666-1678.

Javidan,Mansour,GünterK.Stahl,FelixBrodbeck,andCelestePMWilderom(2005)."Cross-border

transfer of knowledge: Cultural lessons from Project GLOBE."The Academy of Management

Executive19,no.2,59-76.

Jensen,B.andZilmer,A.(2003).Cross-continentdevelopmentusingScrumandXP.Proceedingsof

XP.SpringerBerlin,,pp.146-153

Kanawattanachai,Prasert,andYoungjinYoo(2002)."Dynamicnatureoftrustinvirtualteams."The

JournalofStrategicInformationSystems11,no.3,187-213.

Kamaruddin,NinaKamarina,NoorHabibahArshad,andAzlinahMohamed(2012)."Chaosissueson

communication in Agile Global Software Development." In Business Engineering and Industrial

ApplicationsColloquium(BEIAC),2012IEEE,pp.394-398.IEEE,2012.

Kausar, Maryam and Adil Al-Yasiri (2015). “Distributed Agile Patterns for Offshore Software

Development”12thInternationalJointConferenceonComputerScienceandSoftwareEngineering

(JCSSE),IEEE2015

Kausar, Maryam and Adil Al-Yasiri (2016). Distributed Agile Patterns. [Available at:

http://stp872.edu.csesalford.com/distributedagilepatterns.html]

Kedia, Ben L. and Lahiri, Somnath, (2007), International outsourcing of services: A partnership

model.Memphis:JournalofInternationalManagement,13,22–37

Kerth, Norm (2001). "Project Retrospectives: A Handbook for Reviews."Dorset House Publishing

(2001).

Page 213: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

213

Khan, Huma Hayat, Mohd Naz’ri binMahrin, and Suriayati bt Chuprat. "Factors generating risks

during requirement engineering process in global software development environment."

InternationalJournalofDigitalInformationandWirelessCommunications(IJDIWC)4,no.1(2014):

63-78.

Kircher, M., Jain, P., Corsaro, A. and Levine, D. (2001). Distributed Extreme Programming.

Proceedings of the International Conference on eXtreme Programming and Flexible Processes in

SoftwareEngineering,Sardinia,Italy,May20-23,2001.

Kitchenham, B.& Charters, S. (2007), Guidelines for performing Systematic Literature Reviews in

SoftwareEngineering,EBSE2007-001,KeeleUniversityandDurhamUniversityJointReport.

Kluckhohn,FlorenceR.,andFredL.Strodtbeck(1961)."Variationsinvalueorientations."(1961).

Kobayashi-Hillary, M. (2005). Outsourcing to India: The offshore advantage. Springer Science &

BusinessMedia.

Koehne, B., Shih, P.C., and Olson, J.S. (2012). Remote and alone: coping with being the remote

member on the team. In Proceedings of the ACM 2012 conference on Computer Supported

CooperativeWork(CSCW'12).ACM,NewYork,NY,USA,1257-1266.

Kommeren, R., and Parviainen, P. (2007). Philips experiences in global distributed software

development. Empir. Softw. Eng. 12, 6 (December, 2007), 647-660.

DOI=http://dx.doi.org/10.1007/s10664-007-9047-3.

Kontio, Jyrki, Magnus Hoglund, Jan Ryden, and Pekka Abrahamsson (2004). "Managing

commitments and risks: challenges in distributed agile development." InSoftware Engineering,

2004.ICSE2004.Proceedings.26thInternationalConferenceon,pp.732-733.IEEE

Korkala,Mikko,Minna Pikkarainen, and Kieran Conboy (2010). "Combining agile and traditional:

Customer communication indistributedenvironment." InAgilityAcrossTimeandSpace, pp.201-

216.SpringerBerlinHeidelberg,2010.

Kotlarsky,Julia,andIlanOshri(2005)."Socialties,knowledgesharingandsuccessfulcollaborationin

globallydistributedsystemdevelopmentprojects."EuropeanJournalofInformationSystems14,no.

1,37-48.

Page 214: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

214

Krippendorff,Klaus.(2004).Contentanalysis:Anintroductiontoitsmethodology,ThousandOaks,

CA:SagePublications.

Kroll,Josiane,AlanR.Santos,RafaelPrikladnicki,EstevãoRicardoHess,RafaelA.Glanzner,Afonso

Sales, Jorge Luis Nicolas Audy, and Paulo Henrique Lemelle Fernandes (2012). "Follow-the-Sun

Software Development: A Controlled Experiment to Evaluate the Benefits of Adaptive and

PrescriptiveApproaches."InSEKE,pp.551-556.2012.

Kussmaul,Clifton,RogerJack,andBarrySponsler(2004)."Outsourcingandoffshoringwithagility:A

case study." In Extreme Programming and Agile Methods-XP/Agile Universe 2004, pp. 147-154.

SpringerBerlinHeidelberg,2004.

Lander,MariaCristina,RussellL.Purvis,GordonE.McCray,andWilliamLeigh(2004).Trust-building

mechanisms utilized in outsourced IS development projects: a case study.Information &

Management41,no.4.509-528.

Lanubile, Filippo, Fabio Calefato, and Christof Ebert (2013). Group Awareness in Global Software

Engineering.IEEESoftware.18-23.

Larman,Craig(2004).AgileandIterativeDevelopment:AManager'sGuide.Addison-Wesley.p.27.

ISBN978-0-13-111155-4

Larman, Craig (2010). Practices for Scaling Lean and Agile Development: Large. Addison-Wesley

Professional,2010.

Layman,L.,Williams,L.,Damian,D.and Bures,H. (2006.) Essential communication practices for

extreme programming in a glob- al software development team. Information and Software

Technology,vol.48,no.9,pp.781-794

Lee, SangM., and Suzanne J. Peterson (2001) . "Culture, entrepreneurial orientation, and global

competitiveness."Journalofworldbusiness35,no.4(2001):401-416.

Lescher, Christian (2010). "Patterns for global development: how to build one global team?."

Proceedingsofthe15thEuropeanConferenceonPatternLanguagesofPrograms.ACM,2010.

Liskin, O., Herrmann, C., Knauss, E., Kurpick, T., Rumpe, B., and Schneider, K. (2012). Supporting

AcceptanceTestinginDistributedSoftwareProjectswithIntegratedFeedbackSystems:Experiences

and Requirements. In Proceedings of the 2012 IEEE Seventh International Conference on Global

Page 215: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

215

SoftwareEngineering(ICGSE'12).IEEEComputerSociety,Washington,DC,USA,84-93.

MacGregor,Eve,YvonneHsieh,andPhilippeKruchten(2005)."Culturalpatternsinsoftwareprocess

mishaps: incidents inglobalprojects." InACMSIGSOFTSoftwareEngineeringNotes,vol.30,no.4,

pp.1-5.ACM,2005.

Malik,Fareesa,andHammadMajeed(2010)."EffectofDevelopmentStrategiesandProjectTypes

onOffshoreSoftwareDevelopmentusingAgileParadigm–AStudy." In2010AgileConference,pp.

67-74.IEEE,2010.

Massol,Vincent(2004),Technicaltalkon“AgileOffshoreMethods”TheServerSide.com,Jan6,2004

Maruping,LikoebeM(2010)."ImplementingExtremeProgramminginDistributedSoftwareProject

Teams: Strategies and Challenges." In Agility Across Time and Space, pp. 11-30. Springer Berlin

Heidelberg,2010.

Massol,Vincent(2004)."“CaseStudy:DistributedAgileDevelopment."TheServerSide.com(2004).

Matloff,Norman(2005)."Offshoring:Whatcangowrong?."ITprofessional7,no.4,39-45.

May,Tim(2011).Socialresearch.McGraw-HillEducation(UK),2011.

Modi, Sunila, Pamela Abbott, and Steve Counsell (2013). "Negotiating common ground in

distributedagiledevelopment:Acasestudyperspective." InGlobalSoftwareEngineering (ICGSE),

2013IEEE8thInternationalConferenceon,pp.80-89.IEEE,2013.

Morgan, Robert M., and Shelby D. Hunt (1994). "The commitment-trust theory of relationship

marketing."thejournalofmarketing,20-38.

Mullick,N.,Bass,M.,Houda,Z.,Paulish,P.,andCataldo,M.(2006).SiemensGlobalStudioProject:

Experiences Adopting an Integrated GSD Infrastructure. In Proceedings of the IEEE international

conference on Global Software Engineering (ICGSE '06). IEEE Computer Society,Washington, DC,

USA,203-212.

Newman,Isadore.(1998).Qualitative-quantitativeresearchmethodology:Exploringtheinteractive

continuum.Carbondale:SouthernIllinoisUniversityPress.

Page 216: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

216

Niazi, M., El-Attar, M., Usma, M., and Ikram, N. (2012). GlobReq: A framework for improving

requirements engineering in global software development projects: Preliminary results. In

proceedings of the 16th International Conference on Evaluation & Assessment in Software

Engineering(EASE2012).(May14-15,2012)166-170.

Nisar, Muhammad F., and Tahir Hameed (2004). "Agile methods handling offshore software

developmentissues."InMultitopicConference,2004.ProceedingsofINMIC2004.8thInternational,

pp.417-422.IEEE.

Noll, J., Richardson, I., & Beecham, S. (2014). Patternizing GSD Research: Maintainable Decision

SupportforGlobalSoftwareDevelopment.

OECD (2004).OECD information technologyoutlook:Organisation foreconomic co-operationand

development.RetrievedJanuary2009,fromhttp://www.oecd.org/dataoecd/22/18/37620123.pdf.

Oshri, Ilan, Julia Kotlarsky, and Leslie P. Willcocks.The Handbook of Global Outsourcing and

Offshoring3rdEdition.Springer,2015.

Ovaska, P., Rossi, M. and Marttiin, P. (2003). Architecture as a coordination tool in multi-site

softwaredevelopment.Softw.Process:Improve.Pract.8(2003)233–247.

Ozawa,H.,&Zhang,L.(2013).AdaptingAgileMethodologytoOvercomeSocialDifferencesin

ProjectMembers.InAgileConference(AGILE),2013(pp.82-87).IEEE.

Paasivaara,Maria,andCasperLassenius(2003)."Collaborationpracticesinglobalinter-

organizationalsoftwaredevelopmentprojects."SoftwareProcess:ImprovementandPractice8,no.

4(2003):183-199.

Paasivaara,Maria, Sandra Durasiewicz, and Casper Lassenius (2009). "Using scrum in distributed

agile development: A multiple case study." In Global Software Engineering, 2009. ICGSE 2009.

FourthIEEEInternationalConferenceon,pp.195-204.IEEE,2009.

Pakdeetrakulwong, Udsanee, Pornpit Wongthongtham, and Naveed Khan (2015). "An Ontology-

Based Multi-Agent System to Support Requirements Traceability in Multi-Site Software

Development Environment." In Proceedings of the ASWEC 2015 24th Australasian Software

EngineeringConference,pp.96-100.ACM,2015.

Page 217: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

217

Patel,Chetankumar,andMuthuRamachandran(2008)."SoBA:AToolSupportforStoryCardBased

AgileSoftwareDevelopment."InSETP,pp.17-23.2008.

Pehmöller,Anneke,FrankSalger,andStefanWagner(2010)."Patternsfortestinginglobalsoftware

development." In Proceedings of the 13th International Conference on Quality Engineering in

SoftwareTechnology.2010.

Picot,Arnold,RalfReichwald,andRolfT.Wigand.(2003)."DiegrenzenloseUnternehmung.".

Pilatti, Leonardo, and Jorge Luis Nicolas Audy (2006). "Global Software Development Offshore

InsourcingOrganizations Characteristics: Lessons Learned from a Case Study." InGlobal Software

Engineering,2006.ICGSE'06.InternationalConference,249-250.

Prikladnicki, Rafael, Jorge Luis Nicolas Audy, Daniela Damian, and Toacy Cavalcante de Oliveira

(2007). "Distributed Software Development: Practices and challenges in different business

strategiesofoffshoringandonshoring."InGlobalSoftwareEngineering,2007.ICGSE2007.Second

IEEEInternationalConference,262-274.

Prikladnicki,Rafael,andJorgeLuisNicolasAudy(2012)."ManagingGlobalSoftwareEngineering:A

Comparative Analysis of Offshore Outsourcing and the Internal Offshoring of Software

Development."InformationSystemsManagement29,no.3:216-232.

Prikladnicki, Rafael, Sabrina Marczak, Erran Carmel, and Christof Ebert (2012). "Technologies to

SupportCollaborationacrossTimeZones."Software,IEEE29,no.3,10-13.

Poole,CharlesJ(2004)."Distributedproductdevelopmentusingextremeprogramming."InExtreme

ProgrammingandAgile Processes in Software Engineering, pp. 60-67. SpringerBerlinHeidelberg,

2004.

Qumer,Asif,BrianHenderson-sellers,andTomMcbride(2007)."Agileadoptionandimprovement

model."(2007).

Qumer,Asif,andBrianHenderson-Sellers(2008)."Anevaluationofthedegreeofagilityinsixagile

methodsanditsapplicabilityformethodengineering."Informationandsoftwaretechnology50,no.

4(2008):280-295.

Qumer,Asif,andBrianHenderson-Sellers(2008)."Aframeworktosupporttheevaluation,adoption

andimprovementofagilemethodsinpractice."JournalofSystemsandSoftware81,no.11(2008):

Page 218: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

218

1899-1919.

Radlo, Mariusz-Jan (2016). "Offshoring and Outsourcing in Economic Theories." InOffshoring,

OutsourcingandProductionFragmentation,pp.41-97.PalgraveMacmillan,London,2016.

Radoff, Sandy (2006). “Improved Cross-Cultural Communication Increases Global Sourcing

Productivity”.UnitedStates:Accenture

Ramesh,Balasubramaniam,LanCao,KannanMohan,andPengXu(2006)."Candistributedsoftware

developmentbeagile?."CommunicationsoftheACM49,no.10(2006):41-46.

Räty, Petteri, Benjamin Behm, Kim-Karol Dikert,Maria Paasivaara, Casper Lassenius, and Daniela

Damian(2013)."CommunicationPracticesinaDistributedScrumProject."CoRR(2013).

Ring, P., and Van de Ven, A (2004). Developmental processes of cooperative interorganizational

relationships.Acad.Mgt.Rev.19,1.90–118.

Robertson, S. (1996). Requirements Patterns Via Events/Use Cases. InProceedings Pattern

LanguagesofProgramming.

Robinson,Marcia,andRaviKalakota (2004).Offshoreoutsourcing:Businessmodels,ROIandbest

practices.MivarPress.

Robson,C(2002).Realworldresearch:Aresourceforsocialscientistandpractitioners(2ndEdition,

BlackwellPublishers,Oxford.

Rousseau,DeniseM.,SimB.Sitkin,RonaldS.Burt,andColinCamerer(1998)."Notsodifferentafter

all:Across-disciplineviewoftrust."Academyofmanagementreview23,no.3,393-404.

Sabherwal,Rajiv(1999)."TheroleoftrustinoutsourcedISdevelopmentprojects.Communications

oftheACM42.2.80-86.

Sadagopan,S(2002),IndianITCompanies–DoyouknowWipro?,TimesofIndia,May13,2002

Sahay, Sundeep, Brian Nicholson, and Shenai Krishna (2003). Global IT outsourcing: software

developmentacrossborders.CambridgeUniversityPress.

Page 219: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

219

Salger,Frank,JochenEnglert,andGregorEngels(2010)."TowardsSpecificationPatternsforGlobal

Software Development Projects-Experiences from the Industry." In Quality of Information and

Communications Technology (QUATIC), 2010 Seventh International Conference on the, pp. 73-78.

IEEE,2010.

Saunders,M.,PLewis(2007)-Researchmethodsforbusinessstudents,2007

Sarker,Suprateek,andSundeepSahay(2004).Implicationsofspaceandtimefordistributedwork:

an interpretive study of US–Norwegian systems development teams. European Journal of

InformationSystems13.1.3-20.

Sengupta, B., Chandra, S., and Sinha, V. (2006). A research agenda for distributed software

development.InProceedingsofthe28thinternationalconferenceonSoftwareengineering(2006).

ACM,NewYork,NY,USA,731-740.DOI=http://doi.acm.org/10.1145/1134285.1134402.

Shah,Hina,NancyJ.Nersessian,Mary JeanHarrold,andWendyNewstetter (2012)."Studyingthe

influence of culture in global software engineering: thinking in terms of cultural models." In

Proceedings of the 4th international conference on Intercultural Collaboration, pp. 77-86. ACM,

2012.

Simons,Matt(2002)."Internationallyagile."InformIT.

Smite, Darja, and Claes Wohlin (2011). "A whisper of evidence in global software engineering."

Software,IEEE28.4,15-18.

Šmite, Darja, Nils Brede Moe, and Pär J. Ågerfalk (2010). "Fundamentals of Agile Distributed

SoftwareDevelopment."InAgilityAcrossTimeandSpace,pp.3-7.SpringerBerlinHeidelberg.

Smits, H. and Pshigoda, G (2007). Implementing scrum in a distributed software development

organization.ProceedingsofAGILE2007,pp.371-375.

Summers,Mark(2008)."InsightsintoanAgileadventurewithoffshorepartners."InAgile,2008.

AGILE'08.Conference,pp.333-338.IEEE,2008.

Sureshchandra, Kalpana, and Jagadish Shrinivasavadhani (2008). "Adopting agile in distributed

development."InGlobalSoftwareEngineering,2008.ICGSE2008.IEEEInternationalConferenceon,

pp.217-221.IEEE,2008.

Sutherland,Jeff,AntonViktorov,JackBlount,andNikolaiPuntikov(2007)."Distributedscrum:Agile

projectmanagementwithoutsourceddevelopmentteams."InSystemSciences,2007.HICSS2007.

Page 220: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

220

40thAnnualHawaiiInternationalConferenceon,pp.274a-274a.IEEE,2007.

Stack,Martin,andRicardDowning(2005)."Another lookatoffshoring:Which jobsareatriskand

why?."BusinessHorizons48,no.6,513-523.

Star,SusanLeigh,andJamesR.Griesemer(1989)."Institutionalecology,translations'andboundary

objects:AmateursandprofessionalsinBerkeley'sMuseumofVertebrateZoology,1907-39."Social

studiesofscience19,no.3(1989):387-420.

Taylor,PhilipS.,DesGreer,PaulSage,GerryColeman,KevinMcDaid,andFrankKeenan(2006)."Do

agile GSD experience reports help the practitioner?." In Proceedings of the 2006 international

workshoponGlobalsoftwaredevelopmentforthepractitioner,pp.87-93.ACM.

Tervonen, I.,Haapalahti, A.,Harjumaa, L., Simila, J. (2013).Outsourcing Software Testing:ACase

Study in the Oulu Area. In Proceedings of the 2013 13th International Conference on Quality

Software(QSIC'13).IEEEComputerSociety,Washington,DC,USA,65-74.

Tervonen,I.,Mustonen,T.(2009).OffshoringTestAutomation:ObservationsandLessonsLearned.

InProceedings of the 2009 Fourth IEEE International Conference on Global Software Engineering

(ICGSE'09).IEEEComputerSociety,Washington,DC,USA,226-235.

Therrien,Elaine(2008)."OvercomingtheChallengesofBuildingaDistributedAgileOrganization."In

AGILE,pp.368-372.2008.

Trompenaars, Fons, and Charles Hampden-Turner (2004). Managing people across cultures.

Chichester:Capstone,2004.

Tylor, Edward Burnett (1871).Primitive culture: researches into the development of mythology,

philosophy,religion,art,andcustom.Vol.2.J.Murray,1871.

Välimäki, Antti, and Jukka Kääriäinen (2008). "Patterns for Distributed Scrum—A Case Study."

EnterpriseinteroperabilityIII.SpringerLondon,2008.85-97.

Välimäki,Antti,JukkaKääriäinen,andKaiKoskimies(2009)."GlobalSoftwareDevelopmentPatterns

forProjectManagement."InEuropeanConferenceonSoftwareProcessImprovement,pp.137-148.

SpringerBerlinHeidelberg,2009.

Page 221: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

221

vanHeesch,Uwe(2015)."Collaborationpatternsforoffshoresoftwaredevelopment."Proceedings

ofthe20thEuropeanConferenceonPatternLanguagesofPrograms.ACM,2015

VanZoest,Anna(2004).OffshoringpracticesintheUK–WherearetheLimits?.InstituteforPublic

PolicyResearch..

Vashistha,Atul,andAvinashVashistha(2005).Theoffshorenation:theriseofservicesglobalization.

NewYork:TataMcGraw-HillPublishingCompanyLimited.

Vax, Michael, Stephen Michaud (2008). "Distributed Agile: Growing a Practice Together,"AGILE

Conference,pp.310-314,Agile2008.

von Campenhausen, C. (2005). "Offshoring rules–Auslagern von unterstützenden

Funktionen."ZeitschriftfürBetriebswirtschaft75,no.1,5-13.

Wiegers,K.(2007).ProcessImpact.2007.<http://www.processimpact.com>.

Wildt, Daniel, and Rafael Prikladnicki (2010). "Transitioning from Distributed and Traditional to

DistributedandAgile:AnExperienceReport."InAgilityAcrossTimeandSpace,pp.31-46.Springer

BerlinHeidelberg,2010.

Wipro(2012).Availableat:http://www.wipro.com/newsroom/Wipro-Project-for-BT-Recognized-as-

the-Offshoring-Project-of-the-Year-by-UKs-National-Outsourcing-Association

Yap, Monica (2005). "Follow the sun: distributed extreme programming development." In Agile

Conference,2005.Proceedings,pp.218-224.IEEE,2005.

Yeo,AlvinW(2001)."Global-softwaredevelopmentlifecycle:Anexploratorystudy."InProceedings

oftheSIGCHIconferenceonHumanfactorsincomputingsystems,pp.104-111.ACM

Yu, Liguo, Zhong Guan, and Srini Ramaswamy (2016). "The effect of time zone difference on

asynchronouscommunicationsinglobalsoftwaredevelopment."InternationalJournalofComputer

ApplicationsinTechnology53,no.3(2016):213-225.

Yin, R. K. (2003) Case Study Research Design and Methods, Thousand Oaks, 3rd Edition, Sage

Publications,Inc.

Yu,Xiaodan,andStaciePetter(2014)."Understandingagilesoftwaredevelopmentpracticesusing

Page 222: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

222

sharedmentalmodelstheory."InformationandSoftwareTechnology56,no.8(2014):911-921.

Zahedi, Mansooreh,Mojtaba Shahin, andMuhammad Ali Babar (2016). "A systematic review of

knowledgesharingchallengesandpracticesinglobalsoftwaredevelopment."InternationalJournal

ofInformationManagement36,no.6(2016):995-1019.

Zave, Pamela (1997). "Classification of research efforts in requirements engineering." ACM

ComputingSurveys(CSUR)29,no.4(1997):315-321.

Page 223: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

223

AppendixA:SelectedStudiesforOffshoreChallenges

SelectedStudiesforidentifyingthechallengesinoffshoresoftwaredevelopment:

[E1]. Avritzer,Alberto,andAdailtonLima."Anempiricalapproachfortheassessmentofschedulingriskina largegloballydistributed industrialsoftwareproject." InGlobalSoftwareEngineering,2009.ICGSE2009.FourthIEEEInternationalConferenceon,pp.341-346.IEEE,2009.

[E2]. Bannerman,PaulL.,EmamHossain,andRossJeffery(2012)."Scrumpracticemitigationofglobal

software development coordination challenges: a distinctive advantage?." In System Science(HICSS),201245thHawaiiInternationalConferenceon,pp.5309-5318.IEEE.

[E3]. Battin,RobertD.,RonCrocker,JoeKreidler,andK.Subramanian(2001)."Leveragingresourcesin

globalsoftwaredevelopment."Software,IEEE18,no.2(2001):70-77.[E4]. Boden,Alexander,BernhardNett,andVolkerWulf(2007)."Coordinationpractices indistributed

softwaredevelopmentof small enterprises." InGlobal Software Engineering, 2007. ICGSE2007.SecondIEEEInternationalConferenceon,pp.235-246.IEEE.

[E5]. Boon,S.,andHolmes,J.(1991).Thedynamicsofinterpersonaltrust:Resolvinguncertaintyinthe

face of risk.In R. Hinde and J. Groebel (Eds.). Cooperation and Prosocial Behavior. CambridgeUniversityPress,Cambridge,UK.190–211.

[E6]. Bosch, Jan, and Petra Bosch-Sijtsema (2010). "Coordination between global agile teams: From

processtoarchitecture."InAgilityAcrossTimeandSpace,pp.217-233.SpringerBerlinHeidelberg.[E7]. Carmel, Erran (1999).Global software teams: collaborating across borders and time zones.

PrenticeHallPTR.

[E8]. Carmel, Erran, and Ritu Agarwal (2001). "Tactical approaches for alleviating distance in global

softwaredevelopment."Software,IEEE18,no.2:22-29.

[E9]. Cataldo, Marcelo, Patrick A. Wagstrom, James D. Herbsleb, and Kathleen M. Carley (2006)."Identification of coordination requirements: implications for the Design of collaboration andawarenesstools."InProceedingsofthe200620thanniversaryconferenceonComputersupportedcooperativework,pp.353-362.ACM.

[E10]. Cataldo,Marcelo,CharlesShelton,YongjoonChoi,Yun-YinHuang,VyteshRamesh,DarpanSaini,

and Liang-Yun Wang (2009). "Camel: A tool for collaborative distributed software design." InGlobalSoftwareEngineering,2009. ICGSE2009.FourthIEEEInternationalConferenceon,pp.83-92.IEEE.

[E11]. Cusick,James,andAlpanaPrasad(2006)."Apracticalmanagementandengineeringapproachto

offshorecollaboration."Software,IEEE23,no.5:20-29.

[E12]. Damian, Daniela E., and Didar Zowghi (2003). "An insight into the interplay between culture,conflictanddistanceingloballydistributedrequirementsnegotiations."InSystemSciences,2003.Proceedingsofthe36thAnnualHawaiiInternationalConferenceon,pp.10-pp.IEEE.

[E13]. Das,TarunK.,andBing-ShengTeng(1998)."Betweentrustandcontrol:developingconfidencein

partnercooperationinalliances."AcademyofManagementreview23,no.3,491-512.[E14]. Davenport, Thomas, H., and Prusak, Laurence, (1998). Working knowledge. Boston: Harvard

BusinessSchoolPress.

Page 224: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

224

[E15]. Desouza, Kevin C., Yukika Awazu, and Peter Baloh (2006). "Managing knowledge in globalsoftwaredevelopmentefforts:Issuesandpractices."IEEEsoftware23,no.5:30

[E16]. Dorairaj,Siva,JamesNoble,andPetraMalik(2011)."EffectivecommunicationindistributedAgilesoftware development teams." In Agile Processes in Software Engineering and ExtremeProgramming,pp.102-116.SpringerBerlinHeidelberg.

[E17]. Dourish, Paul, and Victoria Bellotti. (1992). Awareness and coordination in shared

workspaces.Proceedingsofthe1992ACMconferenceonComputer-supportedcooperativework.ACM.

[E18]. Ebert,Christof (2011).Globalsoftwareand IT:Aguidetodistributeddevelopment,projects,andoutsourcing.Wiley-IEEEComputerSocietyPress

[E19]. Evaristo, J. Roberto, Richard Scudder, Kevin C. Desouza, andOsam Sato (2004). "A dimensional

analysis of geographically distributed project teams: a case study." Journal of Engineering andtechnologyManagement21,no.3:175-189.

[E20]. Gotel,Olly,VidyaKulkarni,DesPhal,MoniphalSay,ChristelleScharff,andThanwadeeSunetnanta

(2009). "Evolving an Infrastructure for Engineering, Communication, Project Management andSocialization toFacilitateStudentGlobal SoftwareDevelopmentProjects." InProc.of the IndianSoftwareEngineeringConference(ISEC2009),Pune,India.

[E21]. Green, R., T. Mazzuchi, and S. Sarkani (2010). "Communication and quality in distributed agile

development:anempiricalcasestudy."ProceedinginWorldAcademyofScience,EngineeringandTechnology61:322-328.

[E22]. Grundy, John, John Hosking, and Rick Mugridge (1998). "Coordinating distributed software

development projects with integrated process modelling and enactment environments." Inwetice,p.39.IEEE.

[E23]. Gutwin, Carl, Saul Greenberg, and Mark Roseman (1996). "Workspace awareness in real-time

distributedgroupware:Framework,widgets,andevaluation."PeopleandComputers.281-298.[E24]. Herbsleb,JamesD.,DanielJ.Paulish,andMatthewBass(2005)."Globalsoftwaredevelopmentat

siemens:experiencefromnineprojects." InSoftwareEngineering,2005. ICSE2005.Proceedings.27thInternationalConference,524-533.

[E25]. Herbsleb, James D (2007). "Global software engineering: The future of socio-technical

coordination."In2007FutureofSoftwareEngineering,pp.188-198.IEEEComputerSociety.[E26]. Hofner,Gerd, andV. S.Mani (2007). "TAPER:A generic framework for establishing an offshore

development center." InGlobal Software Engineering, 2007. ICGSE 2007. Second IEEEInternationalConference,162-172.

[E27]. Hofstede, Geert, Michael Harris Bond, and Chung-leung Luk (1993). "Individual perceptions of

organizationalcultures:Amethodologicaltreatiseonlevelsofanalysis."OrganizationStudies14,no.4:483-503.

[E28]. Holmström,Helena,BrianFitzgerald,PärJ.Ågerfalk,andEoinÓ.Conchúir.(2006):"Agilepractices

reducedistanceinglobalsoftwaredevelopment."InformationSystemsManagement23,no.37-18.

Page 225: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

225

[E29]. Hsieh, Yvonne (2006). "Culture and shared understanding in distributed requirementsengineering." InGlobal Software Engineering, 2006. ICGSE'06. International Conference on, pp.101-108.IEEE.

[E30]. Humphrey,WattsS(1989).ManagingtheSoftwareProcess.Addison-WesleyProfessional.

[E31]. Iacovou, Charalambos L., and Robbie Nakatsu (2008). "A risk profile of offshore-outsourceddevelopmentprojects."CommunicationsoftheACM51,no.6:89-94.

[E32]. Javidan, Mansour, Günter K. Stahl, Felix Brodbeck, and Celeste PM Wilderom (2005). "Cross-

bordertransferofknowledge:CulturallessonsfromProjectGLOBE."TheAcademyofManagementExecutive19,no.2,59-76.

[E33]. Kanawattanachai, Prasert, and Youngjin Yoo (2002). "Dynamic nature of trust in virtual

teams."TheJournalofStrategicInformationSystems11,no.3,187-213.[E34]. Kedia, Ben L. and Lahiri, Somnath, (2007), International outsourcing of services: A partnership

model.Memphis:JournalofInternationalManagement,13,22–37[E35]. Kobayashi-Hillary,Mark.(2005).OutsourcingtoIndia:theoffshoreadvantage.ISBN3-540-23943-

XSpringer-VerlagBerlinHeidelbergNewYork.[E36]. Korkala, Mikko, and Pekka Abrahamsson (2007). "Communication in distributed agile

development: A case study." In Software Engineering and Advanced Applications, 2007. 33rdEUROMICROConferenceon,pp.203-210.IEEE.

[E37]. Korkala, Mikko, and Frank Maurer (2014). "Waste identification as the means for improving

communication in globally distributed agile software development." Journal of Systems andSoftware95:122-140.

[E38]. Lander, Maria Cristina, Russell L. Purvis, Gordon E. McCray, and William Leigh (2004). Trust-

buildingmechanismsutilizedinoutsourcedISdevelopmentprojects:acasestudy.Information&Management41,no.4.509-528.

[E39]. Lanubile, Filippo, Daniela Damian, and Heather L. Oppenheimer (2003). "Global software

development: technical, organizational, and social challenges." ACM SIGSOFT SoftwareEngineeringNotes28,no.6:2-2.

[E40]. Lanubile,Filippo,FabioCalefato,andChristofEbert(2013).GroupAwareness inGlobalSoftware

Engineering.IEEESoftware.18-23.[E41]. Layman, Lucas, Laurie Williams, Daniela Damian, and Hynek Bures (2006). "Essential

communication practices for Extreme Programming in a global software development team."Informationandsoftwaretechnology48,no.9:781-794.

[E42]. Lee,Seiyoung,andHwan-SeungYong(2010)."Distributedagile:projectmanagement inaglobal

environment."EmpiricalSoftwareEngineering15,no.2:204-217.[E43]. Maruping, Likoebe M (2010). "Implementing Extreme Programming in Distributed Software

ProjectTeams:StrategiesandChallenges." InAgilityAcrossTimeandSpace,pp.11-30.SpringerBerlinHeidelberg.

[E44]. Matloff,Norman(2005)."Offshoring:Whatcangowrong?."ITprofessional7,no.4,39-45.[E45]. Morgan, RobertM., and Shelby D. Hunt (1994). "The commitment-trust theory of relationship

marketing."thejournalofmarketing,20-38.

Page 226: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

226

[E46]. Paasivaara,Maria,SandraDurasiewicz,andCasperLassenius (2009)."Usingscrum indistributed

agile development: A multiple case study." InGlobal Software Engineering, 2009. ICGSE 2009.FourthIEEEInternationalConferenceon,pp.195-204.IEEE.

[E47]. Paasivaara,Maria, Casper Lassenius, Daniela Damian, Petteri Raty, and Adrian Schroter (2013).

"Teaching students global software engineering skills using distributed scrum." In SoftwareEngineering(ICSE),201335thInternationalConferenceon,pp.1128-1137.IEEE.

[E48]. Pilatti, Leonardo, and Jorge Luis Nicolas Audy (2006). "Global Software Development Offshore

InsourcingOrganizationsCharacteristics:LessonsLearnedfromaCaseStudy."InGlobalSoftwareEngineering,2006.ICGSE'06.InternationalConference,249-250.

[E49]. Prikladnicki,Rafael,andJorgeLuisNicolasAudy(2012)."ManagingGlobalSoftwareEngineering:A

Comparative Analysis of Offshore Outsourcing and the Internal Offshoring of SoftwareDevelopment."InformationSystemsManagement29,no.3:216-232.

[E50]. Qumer Gill, Asif, and Deborah Bunker (2013). "Towards the development of a cloud-based

communicationtechnologiesassessmenttool:Ananalysisofpractitioners'perspectives."VINE43,no.1:57-77.

[E51]. Radoff, Sandy (2006). “Improved Cross-Cultural Communication Increases Global Sourcing

Productivity”.UnitedStates:Accenture

[E52]. Ralyté, Jolita, Xavier Lamielle,NicolasArni-Bloch, andMichel Léonard (2008). "A framework forsupportingmanagementindistributedinformationsystemsdevelopment."InResearchChallengesinInformationScience,2008.RCIS2008.SecondInternationalConferenceon,pp.381-392.IEEE.

[E53]. Ramasubbu, Narayan, Mayuram S. Krishnan, and Prasad Kompalli (2005). "Leveraging global

resources:Aprocessmaturityframeworkformanagingdistributeddevelopment."Software,IEEE22,no.3:80-86.

[E54]. Ring,P., andVandeVen,A (2004).Developmentalprocessesof cooperative interorganizational

relationships.Acad.Mgt.Rev.19,1.90–118.[E55]. Robarts, JaneM (2008). "Practical considerations for distributed agile projects." InAgile, 2008.

AGILE'08.Conference,pp.327-332.IEEE.[E56]. Rousseau,DeniseM., SimB. Sitkin,Ronald S.Burt, andColinCamerer (1998). "Not sodifferent

afterall:Across-disciplineviewoftrust."Academyofmanagementreview23,no.3,393-404.[E57]. Sabherwal, Rajiv (1999). "The role of trust in outsourced IS development projects.

CommunicationsoftheACM42.2.80-86.

[E58]. Sahay, Sundeep, Brian Nicholson, and Shenai Krishna (2003). Global IT outsourcing: softwaredevelopmentacrossborders.CambridgeUniversityPress.

[E59]. Sarker,Suprateek,andSundeepSahay(2004).Implicationsofspaceandtimefordistributedwork:

an interpretive study of US–Norwegian systems development teams. European Journal ofInformationSystems13.1.3-20.

[E60]. Sindhgatta, Renuka, Bikram Sengupta, and Subhajit Datta (2011). "Coping with distance: an

empiricalstudyofcommunicationonthejazzplatform."InProceedingsoftheACMinternationalconference companion on Object oriented programming systems languages and applicationscompanion,pp.155-162.ACM.

Page 227: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

227

[E61]. Taweel, Adel, Brendan Delaney, Theodoros N. Arvanitis, and Lei Zhao (2009). "Communication,knowledge and co-ordination management in globally distributed software development:Informedbyascientificsoftwareengineeringcasestudy." InGlobalSoftwareEngineering,2009.ICGSE2009.FourthIEEEInternationalConferenceon,pp.370-375.IEEE.

[E62]. Taxén,Lars(2006)."Anintegrationcentricapproachforthecoordinationofdistributedsoftware

developmentprojects."Informationandsoftwaretechnology48,no.9:767-780.

[E63]. Välimäki,Antti,and JukkaKääriäinen (2008). "Patterns forDistributedScrum—ACaseStudy." InEnterpriseinteroperabilityIII,pp.85-97.SpringerLondon.

[E64]. Vallon,Raoul,StefanStrobl,MarioBernhart,andThomasGrechenig (2013). Inter-organizational

Co-development with Scrum: Experiences and Lessons Learned from a Distributed CorporateDevelopmentEnvironment.SpringerBerlinHeidelberg.

[E65]. Yadav,Vanita,MonicaAdya,DhruvNath,andVaradharajanSridhar(2007)."Investigatingan'Agile-

Rigid'ApproachinGloballyDistributedRequirementsAnalysis."PACIS2007Proceedings:12.

[E66]. Yeo, Alvin W. "Global-software development lifecycle: An exploratory study. (2001)." InProceedingsoftheSIGCHIconferenceonHumanfactorsincomputingsystems,pp.104-111.ACM.

[E67]. Zieris,Franz,andStephanSalinger(2013)."Doingscrumratherthanbeingagile:acasestudyon

actualnearshoringpractices."InGlobalSoftwareEngineering(ICGSE),2013IEEE8thInternationalConferenceon,pp.144-153.IEEE.

Page 228: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

228

AppendixB:OverviewofExistingSoftwareDevelopmentApproachesNo. SoftwareDevelopment

ApproachPhasesExecutionintheSoftwareDevelopment

Approach1. Ad-Hoc In this approach a developer writes code without

any formal software requirement specificationdocument.There isnodesignphase; thedeveloperdirectlygoestocodingphaseandfollowsabuildandfixapproach.

2. Linear This the traditional approach, in which the phasesare executed linearly. That is when one phase iscomplete,onlythencanthedevelopermovetothenext phase. For example, the team needs to firstcomplete thedesignphasebefore they cango intodevelopment phase and once a phase has beencompletedthedevelopmentteamcannotgobacktoit.

3. Evolutionary In evolutionary approach, the development teamcanmoveacrossanalysis,designandcodingphases,thus providing the developers the freedom to goback todesignphaseandcorrect adesignmistake.However the teamhas to stick to theobjectivesoftheprojectandcannotchangethem.

4. IterativeandIncremental Iterativeandincrementalapproachallowstheteamtorepeataphase,asmanytimestheyneedtoandallows them to move back and forth betweendifferentphasesbasedontheteams’requirement.

Page 229: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

229

AppendixC:OverviewofBeechametal.(2014)GSDSolution

Page 230: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

230

AppendixD:SampleQuestionsforSemi-StructuredInterviewsThedurationoftheinterviewis30-45minutes.Wehavedividedtheinterviewinto3section based on the type of questions. Section 1 consists of shorts question thatrequire direct answers. Section 2 consists of questions regarding the methodologyused for offshore project and section 3 consists of questions that require detailanswers,astheywilldeterminetheresultsfortheresearch.Section1:OrganisationInthissectionwewillbeaskingquestionsregardingtheorganisationinordertohaveageneraloverviewoftheexperienceoftheorganisationinoffshoringprojectsandagilemethodology.Asthisinformationwillhelpusunderstandwhetherorganisationswithdifferent experiences with agile and offshoring projects face similar problems withcommunicationandcoordinationissueamongtheonshoreandoffshoreteamsornot.

1. Whatisthenameandagegroupofthecompany?2. Whatistheorganisation’sexperiencewithagile?3. Howmanyyearshavetheydoneoffshoring?4. Howhastheirexperiencebeenwithoffshoring?5. Howmanyprojectshavetheydoneonoffshorelocations?

Section2:Methodology

In this sectionwe start by asking the followingquestion in order to get informationabout what methodology the organisation uses for developing offshore projects todetermineiftheyuseagilemethodologyornot.

1. What software development methodology does your organisation use foroffshoreprojects?

Based on their reply of the above question we will ask further questions s tounderstandhowtheorganisationusesagileandwhethertheyfaceanyissueswithit:

• Haveyouusedagilemethodologyforanyoffshoreproject?• Due to the difference in time do you feel you have to wait a lot for

feedback/work from theoffshore team?Does itmake itdifficult to completetheprojectontime?

• Howdoesyourorganisationmanagetimedifferentbetweentheteams?• Does the offshore and onshore teams use the same development

methodology?• Do you feel you have to repeat yourself a lotwhile communicatingwith the

offshoreteam?Doesthisslowdownthedevelopmentprocess?

Page 231: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

231

Section3:ResearchInthissection,weaskdetaildescriptionofthefollowingquestionstounderstandiftheorganisation is facing or has faced communication and coordination issues whiledevelopingsoftwareoffshoreandiftheymanagedtoovercomeitornotandiftheyhavefacedanyotherchallengewhiledevelopingoffshoreprojects:

1. Howefficient is thecurrentmethodology inhandling thecommunicationandcoordinationofworkbetweentheonshoreandoffshoreteam.

2. Haveyoufacedanydifficultinthecurrentmethodology?Ifyeswhereyouabletosolvetheissue?

3. Inthecurrentmethodologydoyouthinkthere isneedforsomemodificationthatwouldhelpimprovetheoffshoringprojects?

Page 232: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

232

AppendixE:ConsentFormandDataProcessingStatementBelowistheconsentanddataprocessingstatementform,theorganisationsweinterviewedsigned.

Interview consent and data processing statement Name: Maryam Kausar, email: [email protected]

If you consent to being interviewed and to any data gathered being processed asoutlined below, please print and sign your name, and date the form, in the spacesprovided.ProjectFacts:

• This project - ‘Agile and Beyond Agile Software Development Techniques forApplicationinOffshoreDevelopment”isbeingconductedbyaresearchteamattheUniversityofSalford.

• Alldatawillbetreatedaspersonalunderthe1998DataProtectionAct,andwill

bestoredsecurely.

• Interviewswillberecordedandtranscribedbytheresearchteam.

• A copy of your interview transcript will be provided, free of charge, uponrequest.

• Data collected may be processed manually and with the aid of computer

software.

• IhavetherighttowithdrawfromtheresearchatanystageintheresearchConsents:

• With respect to information resulting from the study being used in futurepublicationand/orreportsoutsidetheresearchteam,Iconsenttothefollowing:

Mynamemaybeidentified □YES □NOMywordsmaybequoted □YES □NO

• I am willing to cooperate in the future if a need for further information is

required □YES □NO

Page 233: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

233

• I/myemployerconsenttoourinterviewsbeingrecordedbyrecordingdevices. □YES □NO

Pleaseprintyourname: ........................................................................Organisation: ........................................................................Signature: .................................................... Date:....................................................

Page 234: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

234

AppendixF:UnrevisedDistributedAgilePatternCatalogueInthissectionwehavepresentedtheunreviseddistributedagilepatternsbeforetheywerevalidated.Asmostofthepatternswerenotchangedwehaveonlypresentedtheonesthatwerechangedafterthevalidationprocess.a)ManagementPatternsInthissectionwehavedescribedthedetailofeachmanagementpattern.1.ScrumofScrumPatternIn agile methodology, Scrum is an iterative and incremental project managementapproachthatprovidesasimpleframeworkthat“inspectandadapt”(Hossain,Babar,andPaik,2009).Weobservedthatinoffshoreprojectstheonshoreandoffshoreteampractices separate scrums in order to develop the project. Based on this observedpracticewehavedesignedthefollowingpatterndetails:PatternName

ScrumofScrumPatternIntent

To apply scrum, sub-teams are formed based on location. Each team has itsownscrum.Scrumofscrummeetingsarearrangedtodiscusstheprogressoftheproject,whichisattendedbykeypeople.

AlsoKnownAsScrummeetingorMetaScrum

CategoryManagement category as this pattern helps the onshore and offshore teammanage their separate scrums and keep each other updated of the projectprogress.

MotivationConsiderateamthatisdividedintosub-teamsbasedonlocationandtheyareworkingondifferenttasksofaproject.Itisdifficulttohavebothonshoreandoffshore teamworkon thesamescrumas theybothareworkingondifferenttime zones so in order to work on the same project, both teams work onseparatescrums.To coordinatework both teams arrange a scrum of scrummeeting,which isattendedbykeypeoplefrombothteamstoupdateeachotheroftheprogressoftheproject.

ApplicabilityUseScrumofScrumwhen:

• Teamisdistributedoverdifferenttimezones.• Theoverlappingworkinghoursbetweentheonshoreandoffshoreteam

isless.Participants

• Distributedonshoreandoffshoreagileteam.• ScrumMastersofagilesub-teamsandProductowner.

Page 235: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

235

Collaboration• Keymembers fromonshoreandoffshore teamsdecide time forScrumof

Scrummeeting.Consequences

TheScrumofScrumpatternhasthefollowingbenefitsandliabilities:1. It prevents the onshore and offshore team from wasting time on

collaboratingtaskswitheachotherthroughonlinetoolsasboththeteamsareworkingontheirownscrumsotheydon’thavetowaitforeachothertocompletetasks.

2. It provides control to both onshore and offshore team to work on theirscrum,whichavoidstheoffshoreteamfromhavingtoadjustworkinghoursbasedononshoreteamsavailability.

3. ItallowskeypeoplesuchasScrumMastersandProductowners’todiscusstheprogressof theprojectwithouthaving thewhole teampresentwhichkeepsthemeetingtimeboxed.

4. Its limitation is that due tominimum collaboration between the onshoreandoffshoreteam,bothsub-teamsdon’tfeeltheyareoneteam.

5. SinceonlykeypeopleattendtheScrumofScrummeeting,itlimitsface-to-face interaction of both onshore and offshore team, which affects trustbuildingbetweenbothteams.

KnownusesWhenCheckFreedecidedtomovetheirworktoanIndianoffshoreconsultingfirmtheyusedScrumofScrumtogatherandreviewtheoverallteamstatisticsandprogressoftheproject(Cottmeyer,2008).Similarly,multiplecasestudiesdone on organisations using Scrum for distributed teams also used ScrumofScrumtocoordinatetheirworkwithoffshoreteam(Hossain,Babar,andPaik,2009;Paasivaara,Durasiewicz,andLassenius,2009).SiemensalsousedScrumof Scrum for two large distributed projects inwhich the development teamswerelocatedinUSA,EuropeandIndia.IntheirScrumofScrummeetingstheycovered technical and managerial issues that occurred in multiple teams(Avritzeretal.,2010)

RelatedPatternsScrumofScrumpattern isoftenusedwithLocalSprintPlanningPattern (andAsynchronousRetrospectivemeetingPatternastheonshoreandoffshoreteammembers are working on different story cards and at the end have theirseparateretrospectivemeetingstodiscussthesprint

2.LocalStandupMeetingAgilemethodologyfocusesonconductingadailystandupmeeting.WeobservedthatinoffshoreprojectstheonshoreandoffshoreteamconducttheirownseparatedailystandupmeetingsanduseonlinetoolssuchasWiki’stosharemeetingminuteswitheachother.Basedon thisobservedpracticewehavedesigned the followingpatterndetails:PatternName

LocalStandupMeetingPattern

Page 236: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

236

IntentTodiscussdailyupdatesonworkdone,eachlocalteamwillconducttheirownstandupmeetings.

AlsoKnownAsDailyScrummeetingordailymeeting

Category

Management category as this pattern helps the team members of bothonshoreandoffshoreteammanagetheirdailyactivitiesandupdateeachotherwiththeworkdone.

MotivationConsider a team that is divided into sub-teams that are located on differenttimezones.Tohaveacollaborativedailystandupmeetingisdifficultandtimeconsumingastheoffshoreteameitherhastocomeearlytoworkorstaylatetoattend themeeting. To avoid this, the onshore and offshore team conductsseparatelocalstandupmeetingsinwhichtheyanswerthefollowingquestions:

o Whatdidyoudoyesterday?o Whatareyougoingtodotoday?o Whatisgettinginyourway?

AfterconductinglocalstandupmeetingsbothonshoreandoffshoreteamsharetheirmeetingminutesviaonlinetoolssuchasWiki’stokeepboththeteamsuptowiththeprogressoftheproject.

ApplicabilityUselocalstandupmeetingwhen:

• Teamisdistributedoverdifferenttimezones.• Theoverlappingworkinghoursbetweentheonshoreandoffshoreteam

isless.Participants

• Distributedonshoreandoffshoreagileteam.Collaboration

• Both onshore and offshore team sharemeetingminuteswith each otherusingonlinetools.

ConsequencesThelocalstandupmeetingspatternhasthefollowingbenefitsandliabilities:1. It prevents the offshore team from waiting for the onshore team’s

availabilitytoconductthedailystandupmeeting.2. It allowsbothonshore andoffshore team flexibility to conduct their own

standupmeetingatwhichevertimetheywant.3. Itlimitstheonshoreandoffshoreteamfromreal-timecommunicationand

bothteamheavilyrelyonthemeetingminutessoanymistakecanleadtomisunderstandingintheprogressoftheproject.

KnownusesOrganisations such as PulpCo (Paasivaara, Durasiewicz, and Lassenius, 2009)and Wipro Technologies (Sureshchandra et al., 2008) use local standupmeetingsforcommunicatingtheprogressoftheprojectwithteammembers.

Page 237: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

237

RelatedPatternsDailyStandupmeetingpattern isoftenusedwithGlobalScrumBoardPatternas once the onshore and offshore team members have conducted theirmeetingstheysharethemeetingminutesonasharedtoolsothatbothcanseetheprojectprogress.

3.LocalSprintPlanningMeetingPatternInagile,ascrumconsistsofmanysprints.Thedurationofasprintvariesfrom2weeksto4weeksdependingonthesizeoftheproject.Atthestartofeverysprinttheteamhas a sprint-planningmeeting inwhich the team defines the goal of the sprint andprepare the sprint backlog. When the team is divided and is working on differentmodules of the project it has been observed that the onshore teammembers andoffshoreteammembersconducttheirownseparatesprintplanningmeetings.Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:PatternName

LocalSprintPlanningMeetingPatternIntent

EachteamwillhavetheirownsprintplanningmeetingsAlsoKnownAs SprintPlanningMeetingorIterationMeetingCategory

Managementcategoryasthispatternhelpstheonshoreandoffshoreteamtowork on their separate module and conduct independent scrum and sprintplanningmeetings.

MotivationWhen a project is distributed to a team that is divided over different timezones,andareworkingondifferentmodulesoftheprojectandareconductingtheirownScrum. As theonshoreandoffshore teamconducts their separateScrum, they also conduct separate sprint planning meetings to decide whatthey will develop during a sprint. Both teams prepare their sprint backlogs,whicharesharedusingonlinetools.

ApplicabilityUseLocalSprintPlanningMeetingpatternwhen:

• Team is distributed over different time zones and is working ondifferentmodules/subsystemoftheproject.

Participants• Distributedonshoreandoffshoreagileteam.

Collaboration• Theonshoreteamandoffshoreteamsharesprintbacklogwitheachother

toshowtheworktheywillbedoingoverthenextsprint.Consequences

TheLocalSprintPlanningMeetingpatternhasthefollowingbenefitsandliabilities:1. Itallowsbothteamstoworkindependentlywithouthavingtowaitforthe

onshoreteamtobeavailabletoconductthemeeting.

Page 238: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

238

2. It provides control to both onshore and offshore team to work on theirseparate scrum and conduct their own sprint planning meeting, whichavoids the offshore team from having to adjust working hours based ononshoreteamsavailability.

3. Bothteamscansharetheirsprintbacklogwitheachother,whichprovidesvisibilityoftheprojectprogress.

4. Asboththeteamsareworkingindependentlyitcancausetheteamstofeelas they are not part of one team and create an effect that they are twoseparateteams.

KnownusesWhenCheckFreedecidedtomovetheirworktoanIndianoffshoreconsultingfirm they used local sprint planning meetings to plan their sprint activities(Cottmeyer,2008).

RelatedPatternsLocalSprintPlanningPatterns inoftenusedwithScrumofScrumPatternandGlobalScrumboardPatternasthemeetingsminutesoftheplanningmeetingaresharedwithbothonshoreandoffshoreteammembers.

4LocalPairProgrammingPatternIn agile, pair programming consists of two programmers that share a singleworkstation that is they share one screen, keyboard and mouse. The programmerusingthekeyboardisusuallycalledthe"driver",theother,iscalled“navigator”asheisactivitygivinghis remarksonthecodeandhelpingthedriver towrite thecode.Theprogrammers are expected to switch roles after every few minutes. It has beenobservedthatwhentheteamisdividedondifferentlocations,theteammembersthatare co-located form pairs as it is difficult to form pairs with other locations teammembers due to the time difference. Based on this observed practice we havedesignedthefollowingpatterndetails:PatternName

LocalPairProgrammingIntent

Makepairprogrammingteamsfromthesamelocation.AlsoKnownAs PairProgrammingorPairedProgrammingCategory

Management categoryas thispatternhelps the local teammembers to formpairsandworkontheirstorycard.

MotivationWhenateamisdistributedoverdifferent locationsbasedontimezones, it isdifficult to form pairs between them due to the time difference in workinghours.Soeachteamformspairsbasedontheirlocationastheyareco-locatedandcanworktogether.PairProgramminghelpsimprovethequalityofcodeasinsteadofonepersonwritingthecodetheotherpersonischeckingthecode.

ApplicabilityUseLocalPairProgrammingpatternwhen:

Page 239: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

239

• Team is distributedover different time zones and isworking on differentmodules/subsystemoftheproject

Participants• Distributedonshoreandoffshoreagileteamandworkingondifferentstory

cards.Collaboration

• The onshore team and offshore teammembers share a keyboardwith afellowteammemberfromtheirrespectivelocation.

ConsequencesTheLocalPairProgrammingpatternhasthefollowingbenefits:

1. The offshore team members don’t have to wait for the availability ofonshoreteammemberstostartwork.

2. Someorganisations feel it’s awasteof having two resourcingworkingonthesamething.

KnownusesInacasestudyconductedbyMaruping(2010)onanorganisationthathaditsdevelopmentcentersinIndia,U.SWestCoast,U.SMid-WestandU.SEastCoastshowedthatpairswheremadeonthebasesofphysicallocations.

RelatedPatternsSinceinLocalPairprogrammingweareselectingteammembersfromthesamelocation,weoftenuseitwithLocalSprintPlanningMeeting.

5AsynchronousRetrospectivemeetingsPatternInagile,whenateamisusingScrumattheendofeverysprintafterthesprintreviewmeeting, a retrospectivemeeting is conducted which is attended by only the teammembersandthescrummaster. Inthismeetingtheteamdiscussesallthegoodandbadthingsthathappenedduringthesprintandhowtheycanimprovetheirwork.Theyalsodiscussthefeedbackgivenbytheclient.Ithasbeenobservedthatwhentheteamisdividedondifferenttimezones,teamsconducttheirownretrospectivemeeting,asdue to the timedifference it isdifficult tohaveacollective retrospectivemeetingattheendofeachsprint(Kamaruddin,2012).Onceboththeonshoreandoffshoreteamshave conducted their retrospective meeting they share the meetings minutes witheachotherusingonlinetools.Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:PatternName

AsynchronousRetrospectivemeetingsIntent

Teams conduct separate retrospectivemeetings based on location and sharethe key information via online tools. The Scrum Masters discuss possibleimprovementswiththeteambasedonthefeedbackfromtheclient.

AlsoKnownAs RetrospectivemeetingsorIterationRetrospectiveCategory

Management category as this pattern helps the onshore and offshore teammembers to review their sprint and discuss their performance. The Scrum

Page 240: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

240

Master advises the team on how they can improve their performance anddiscussesthefeedbackoftheclient.

MotivationWhenateam isdividedondifferent timezonesandareworkingondifferentmodules/subsystemsofaprojectandconductingtheirownindependentScrumandsprintsitisdifficulttohaveacollectiveretrospectivemeeting.Theonshoreandoffshoreteammembersconducttheirseparateretrospectivemeetingstodiscusswhatwentgoodandbadinthesprintandhowtheycanimprovetheirwork in the next sprint. The Scrummaster attends thesemeetings and givesfeedbackontheperformanceontheteamanddiscussestheremarksgiveninthesprintreviewmeetingbytheclient.Oncebothteamshaveconductedtheirretrospectivemeetingstheysharethemeetingminuteswitheachotherusinganonlinetool.

ApplicabilityUseAsynchronousRetrospectivemeetingswhen:

• Team is distributed over different time zones and is working ondifferentmodules/subsystemoftheproject.

Participants• Distributedonshoreandoffshoreagileteammembers.• ScrumMaster

Collaboration• Theonshore teamandoffshore teammemberssharemeetingminutesat

theendoftheirretrospectivemeetings.Consequences

TheAsynchronousRetrospectivemeetingspatternhas the followingbenefitsandliabilities:

1. It allows onshore and offshore team members to conduct retrospectivemeetingindependentlyofeachother’savailability.

2. It helps team members discuss their independent problems and doesn’tmakebothonshoreandoffshoreteamtobepresentforthemeeting.

3. Sinceonshoreandoffshoreteammembersconductseparateretrospectivemeetingstheydon’tunderstandeachother’sproblems.

KnownusesElasticPath,aVancouver,BritishColumbia-basedcompanydecidedtooffshoretheirworktoLuxsoft,anoutsourcingpartnerusedasynchronousretrospectivesessionstodiscussthesprintprogressandwellaswhatimprovementstheycanmake. Once all locations had conducted their retrospective meetings, theypostedcommentsandresultsonSharePoint,whichwerethenviewedbyScrumMasterandtechnicalleadfortheirremarks(Vax,2008).

RelatedPatternsWe often used Scrum of Scrum Pattern with Asynchronous Retrospectivemeeting Pattern. It is also often used with Local Sprint Planning Pattern(explainedin8.3)asinordertoreviewtheprogressofasprintandtheteamweuseretrospectivemeeting.Afterallthedistributedteamshaveconductedtheirretrospectivemeetings they share themeetingminutes with each for whichtheyuseGlobalScrumBoardPattern.

Page 241: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

241

b)CommunicationPatternsInthissectionwehavedescribedthedetailofeachcommunicationpattern.1.GlobalScrumBoardPatternAgile has many artefacts such as product backlog, sprint backlog, storyboard, taskboard, team velocity and burndown charts which help the team in managing theproject.Ithasbeenobservedthatwhentheteamisdividedtodifferentlocationstheymaintainaonlinerecordofalltheseartefactssothattheycansharethemwitheachother using online tools such asWiki’s, Rally and Jira (Danait, 2005; Beruzuk, 2007;Cottmeyer, 2008). Based on this observed practice we have designed the followingpatterndetails:PatternName

GlobalScrumBoardPatternIntent

An online-shared Scrum board, will be used by, both onshore and offshoreteam to view theproduct backlog, storyboard, task board, burndown chartsandotheragileartefactsusingonlinetools.

AlsoKnownAs ScrumBoardorAgileStoryBoardCategory

Communicationcategoryasthispatternhelpstheonshoreandoffshoreteamcommunicatewitheachotherusinganonline tool tovieweachother’sworkandunderstandtheprogressoftheoverallproject.

MotivationWhen a project is distributed to a team that is divided over different timezones,andareworkingondifferentmodulesoftheproject,tosharetheirworktheyuseanonline tool todisplayagileartefacts.Basedon theworkdonebyboth teams it is easier to see the progress of the project and it helpsunderstandifthereisaproblemwithateamornot.

ApplicabilityUseGlobalScrumBoardpatternwhen:

• Teamisdistributedoverdifferenttimezones.Participants

• Distributedonshoreandoffshoreagileteam.Collaboration

• Theonshoreteamandoffshoreteamshareagileartifactswitheachothertoshowtheirprogress.

ConsequencesTheGlobalScrumboardpatternhasthefollowingbenefits:1. It allows the onshore and offshore teams to understand the progress of the

project.2. Itincreasesthevisualizationoftheworkdonebyeachteam.

Page 242: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

242

KnownusesFAST,asearchcompanywithheadquarters inNorwaywhilebuildingasearchapplicationon topof theircoresearchplatformexperimentedwithcoupleofonlinetoolstokeepbothteamsupdatedwiththeprogressoftheproject.Theytired XPlanner and Jira and settled for Jira, which is a web-based tool thatallowed the remote team members to view the backlog and update taskswhenevertheywanted(Berzuk,2007).SimilarlyinastudydonebyCristaletal.(2008)onanorganisationthathasdevelopmentcentersacrossNorthAmerica,SouthAmericaandAsiaconcludedwith that theuseofaglobal scrumboardcan help improve the productivity of global agile teams. Similarly companieslikeValtech (Danait,2005),Telco (Rameshetal., 2006),BNPParibas (Massol,2004),AginityLLC(Armour,2007)andSirsiDynix(Sutherlandetal.2007)usedonlinetoolstoshareagileartefactswiththeiroffshoreteammembers.

RelatedPatternsGlobalScrumboardpatternisoftenusedwithCentralCodeRepositoryPatternastheteamsharesalltheagileartefactsandcodeusinganonlinetool.

2.CentralCodeRepositoryPatternInagile,whenateamisusingScrumandXP,theteammembersaredividedinpairsoftwoandareworkingondifferenttasksduringasprint.Whenataskiscompletedtheteammemberscommittheircodetoasharerepositoryforcontinuousintegrationofthecode. It isobservedthatevenwhentheteammembersaregeographicallyapartthey still use a share code repositorywhere they commit their code so that all theteammembers can see the code as well as determine the progress of the project.Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:PatternName

CentralCodeRepositoryIntent

Thewholeteamwillmaintainacentralcoderepositorysothatbothteamcanseeeachother’scodeandseetheprogressoftheworkdone.

AlsoKnownAs SourceCodeRepositoryorGlobalBuildRepositoryCategory

Communicationcategoryasthispatternhelpstheonshoreandoffshoreteammembers to write code and share it on a central code repository where allteammemberscanseethecodeandedititifrequired.

MotivationWhenateam isdividedondifferent timezonesandareworkingondifferentmodules/subsystemsof aproject theyuse a central code repository to sharetheirworkwithallteammembers.TheycanuseonlinetoolssuchasGitHubforcommitting their codeandmaintainversionsof theproject (Räty,2013).Thishelps the whole team to see the code and provides visibility of the projectprogress.

ApplicabilityUseCentralCodeRepositorywhen:

Page 243: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

243

• Team is distributed over different time zones and is working ondifferentmodules/subsystemoftheproject.

Participants• Distributedonshoreandoffshoreagileteammembers.

Collaboration• The onshore team and offshore teammembers share a keyboardwith a

fellow team member from their respective location and once they havefinishedatasktheycommittheircodetoacentralcoderepository.

ConsequencesTheCentralCodeRepositorypatternhasthefollowingbenefits:

1. Itallowsonshoreandoffshoreteammemberstovieweachother’scode.2. Ithelpsindeterminingtheprogressoftheproject.3. As all the team is committing to a central repository, if a team commits

codewitherrorsitcanaffectthewholebuildoftheproject.Knownuses

WDSGlobalisaleadingglobalproviderofknowledge-basedservicestomobileoperators, manufacturers and application and sales channels. In 2004 theycombinedtheirdevelopments,whichwere located inUK,USAandSingapore.They shared their codeona central code repository tominimizeduplicationsandreducecostofmaintenance(Yap,2005).ManycompaniesusecentralcoderepositoryfortheirdistributedprojectssuchasExtolInternational(Kussmauletal., 2004), Valtech (Danait, 2005),Manco (Ramesh et al., 2006), Aginity LLC(Armour,2007),SirsiDynix(Sutherlandetal.,2007),CEInformant(Bose,2008)andABCBank(Modietal.,2013).

RelatedPatternsCentralCodeRepositorypatternisoftenusedwithGlobalScrumBoardPattern.

3.AsynchronousInformationTransferPatternAgile emphases on close face-to-face communication between the team membersrather than detailed documentation. When a team is distributed on different timezones it has been observed that the teams adopted asynchronous tools for sharinginformationwitheachothersuchasemails,wikis,SharePoint.Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:PatternName

AsynchronousInformationTransferIntent

Duetothetimedifferencebetweentheonshoreandoffshoreteamuseonlinetoolstoexchangeinformationwitheachother.Eachteamshouldresponsetoquerieswithin12hours.

AlsoKnownAs InformationTransferorKnowledgeSharingCategory

Communicationcategoryasthispatternhelpstheonshoreandoffshoreteammemberstoanswereachother’squerieswithin12hours.

Page 244: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

244

MotivationWhenateamisdividedondifferenttimezonestheymayhavequeriesaboutworkbutduetothetimedifferencetheycannotgetadirectreplyatthattimeso theyuseemails to communicatequeries,whichare thenansweredwithin12hoursmax.Organisationshave set standards for response time inorder toavoiddelaysinwork(Vax,2008).

ApplicabilityUseAsynchronousInformationTransferwhen:

• Teamisdistributedoverdifferenttimezones.Participants

• Distributedonshoreandoffshoreagileteammembers.Collaboration

• Theonshoreteamandoffshoreteammembersshare informationandaskqueriesusingasynchronoustools.

ConsequencesTheAsynchronousInformationTransferpatternhasthefollowingbenefits:

1. It allows onshore and offshore team members to exchange informationwhen synchronous communication cannot be conducted due to workinghourstimedifference.

2. Ithelpsteammembersfromwaitingforonshoreteammemberavailabilitytoaskaquery.

3. If the team members don’t respond timely it can cause delays in theproject.

KnownusesVTT Technical Research Centre of Finland and National University of Irelandconducted a research on two organisations that were developing a systemtogether.Oneorganisationwasacustomerorganisation inU.Sand theotherorganisationwasadevelopmentorganisationlocatedinIreland.Basedontheirfindingsthecompaniesusedasynchronoustoolsforcommunication.TheyusedwikisforstoringdocumentsandmeetingminutesandusedEmailsfordecisionsand queries (Korkala, 2010). Similarly Valtech used Twiki for asynchronouscommunication(Danait,2005).

RelatedPatternsAsynchronous Information Transfer pattern is often used with Global ScrumBoardandSynchronousCommunicationPattern.

4.SynchronousCommunicationPatternAgile emphases on close face-to-face communication between the team membersrather than detailed documentation. When a team is distributed on different timezones it has been observed that the teams adopted asynchronous tools for sharinginformationwitheachothersuchasemails,wikis,SharePoint.Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:PatternName

SynchronousCommunicationPattern

Page 245: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

245

IntentIn order to discuss issues the teams uses synchronous tools for voice, videoconferencing,documentsharing,applicationsharingetc.

AlsoKnownAs SynchronousKnowledgeTransferCategory

Communicationcategoryasthispatternhelpstheonshoreandoffshoreteammemberstoanswereachother’squerieswithin12hours.

MotivationWhenateamisdividedondifferenttimezonestheymayhavequeriesaboutworkbutduetothetimedifferencetheycannotgetadirectreplyatthattimeso theyuseemails to communicatequeries,whichare thenansweredwithin12hoursmax.Organisationshave set standards for response time inorder toavoiddelaysinwork(Vax,2008).

ApplicabilityUseSynchronousCommunicationPatternwhen:

• Teamisdistributedoverdifferenttimezones.Participants

• Distributedonshoreandoffshoreagileteammembers.Collaboration

• Theonshoreteamandoffshoreteammembersshare informationandaskqueriesusingasynchronoustools.

ConsequencesTheSynchronousCommunicationpatternhasthefollowingbenefits:

1. Itallowsonshoreandoffshoreteammemberstoexchangeinformationwhensynchronouscommunicationcannotbeconductedduetoworkinghourstimedifference.

2. It helps team members from waiting for onshore team memberavailabilitytoaskaquery.

3. If the teammembers don’t respond timely it can cause delays in theproject.

KnownusesCampusSoft is a UK based company that used synchronous communicationwhentheymovedtoAgilewiththeiroffshoresuppliers inIndiaandRomania.TheyusedvideoconferencingfacilitiesforplanningsessionsandlatershiftedtoWebExsessionsandGoToMeetingsothattheycouldsharedesktopswiththeremoteteammembers.FordailyScrummeetingstheypreferredtouseSkypecallandmadeeveryonewearheadsetstomakethemeetingeasier.Forsprintreviewmeetingstheyusedsharingdesktoptoolsaswellasconferencephonessothatmembersfrombothendcouldtalkwitheachother(Summers,2008).

RelatedPatternsSynchronousCommunicationpatternisoftenusedwithGlobalScrumBoardandAsynchronousInformationTransferPattern

c)CollaborationPatternsInthissectionwehavedescribedthedetailofeachcollaborationpattern.

Page 246: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

246

1.CollaborativePlanningPokerPatternAnagile teamplaysplanningpoker toputpointsestimationoneachstorycard.Theproductowneralsotakespartinthisactivity.Hetellstheteamtheintentandvalueofa story card baseduponwhich the development teamassigns an estimation on thecard.Basedon thepointsassigned the teammemberswhoassigned the lowestandhighestestimationwill justify their reasons.The teamwillhaveabriefdiscussiononeachstoryandassignanestimationuponwhichthewholeteamagreeson.It has been observed that even when the team is distributed the planning pokeractivityisconductedwhenbothteamsareco-locatedfortheprojectplanningactivity.Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:PatternName

CollaborativePlanningPokerPatternIntent

OnlyKeypeoplewillholdthisactivityfromonshoreandoffshoreteam.AlsoKnownAs PlanningPokerorScrumPokerCategory

Collaborativecategoryasthispatternhelpstheonshoreandoffshoreteamtodiscussthedurationofastorycard.

MotivationWhen a project is distributed to a team that is divided over different timezones,itisimportantthatalltheteammembersagreeonthetimedurationofa feature before they start developing the project. This helps estimate theduration of the project completion as well as it provides visibility of projectprogress. For this purpose the onshore and offshore team members playplanningpokerinordertocollectivelyagreeontheestimationofastorycard.Oncetheestimationisdecidedtheywriteitdownandapprovedbytheproductowner/client andmove on to the next story card, till all the story cards areestimated.

ApplicabilityUsePlanningPokerpatternwhen:

• Team is distributed over different time zones andwill beworking ondifferentstorycardsinasprint.

Participants• Distributedonshoreandoffshoreagileteam.• Productowner/Client.

Collaboration• Theclientapprovestheestimationmadebytheteammembers.

ConsequencesThePlanningPokerpatternhasthefollowingbenefits:

1. It allows the onshore and offshore teams to agree on a story cardestimation,whichhelpstheteamestablishtheirteamvelocity.

2. Itprovidestheproductowner/clientwithestimationofprojectcompletion

Page 247: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

247

3. Ifallteammembersdon’tagreeonestimationonastorycarditcanleadtoalongdiscussion,resultingtheplanningpokertoprolong.

KnownusesUShardware has development centers across North America, South Americaand Asia. When transitioning to distributed agile environment they usedplanningpokeractivity forestimationof their story cards (Wildt, Prikladnicki,2010).

RelatedPatternsPlanning Poker Pattern is often used with Collective Project Planning as itsbetter to conduct this pattern when the whole team is co-located. TheestimatedstorycardsarethensharedontheGlobalScrumboardsothatwholeteamcanviewthemduringtheproject.

2.Follow-the-sunPatternWhenaagileteamisdistributedoverdifferenttimezones ithasbeenobservedthatcompaniescutdownoncostbyincreasingdevelopmenttimebyadopting“followthesun”workflowwhichmeans itallows24hoursdevelopmentduetothedifference intimezonesallowingacompany’semployeestododevelopment24hrsaday(Carmel,Agarwal2001;Yap,2005;Kroll,etal.,2012 ).Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:PatternName

Follow-the-sunPatternIntent

Onshoreandoffshoreteamswillwork9a.m-5p.maccordingtotheirowntimezones.

AlsoKnownAs24hoursdevelopmentPatterns

CategoryCollaboration category as this pattern helps the onshore and offshore teammanagetheirworkandhandofftheirworktotheotherteambeforetheyleavefromwork.

MotivationConsider a team that is divided into sub-teams that are located on differenttime zones. To adjust the working hours of the offshore team for both theonshoreandoffshoreteamworktogetherisdifficultastheoffshoreteamhasto come in the evening and stay till earlymorning. Thismakes the offshoreteam feel they are less important in comparison to the onshore team and itaffectstheemployees’sociallife.In order to avoid that, the onshore and offshore team “follow-the-sun”approach.Forexampleanemployeeworksfrom9a.m.to5p.m.intheUSA.At5 p.m. she hands over the incomplete task to a colleague in Australia whoworksfrom9a.m.to5p.m.basedonhistimezone.At5p.m.accordingtohiscountry,hetransferstheupdatedtasktoacolleagueinPolandwhoworkson

Page 248: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

248

theupdatedtaskforthenexteight-hoursandthenforwardsittohiscolleagueintheUSA(Gupta,2009).

WhiletheemployeeintheUSAhadleftworktwoofhercolleaguesworkedonher task aswhen shewill come to theoffice nextmorning a lot of theworkwouldhavebeendone.Thisworkscenariotakesadvantageofthegeographicaldistances as it allows people from different time zones to work round-the-clockinordertobuildsoftware(Gupta,2007).

Theworkdistributionamongtheteamcanbedoneintwoways.Firsteitherthe3teamsdistributedondifferentgeographicallocationsworkonthesametaskandeachteamkeepsupdatedthetaskasmentionedintheabovescenarioorsecondlyamostefficientway is thatwedivideddifferentaspectof thesameproblemamongtheteamforexample inFigure3wecanseehowaproblemhasbeendistributedamong3teams(Gupta,2009):

Figure7.3.1.Distributionofworkamong3distributedteams.

ApplicabilityUsefollow-the-sunpatternwhen:

• Teamisdistributedoverdifferenttimezones.• Theonshoreandoffshoreteamsareworkingondifferenttasks.

Participants• Distributedonshoreandoffshoreagileteam.

Collaboration• Bothonshoreandoffshoreteamhandovertheirworktoeachotheratthe

endofeveryworkingdayusingonlinetools.Consequences

Thefollow-the-sunpatternhasthefollowingbenefitsandliabilities:1. It allows continues development during different working shifts across

differenttimezones.2. Itallowsbothonshoreandoffshoreteamtoworkaccording to their time

zone without having to either come early to work or stay late till earlymorning.

3. It reduces the development life cycle or time-to-market (Denny, et al.,2008).

4. It limits theonshoreandoffshore team from real-timecommunicationastheoverlappingworkinghoursbetweendifferenttimezonescanbelessorzero.

Page 249: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

249

KnownusesYahoo! used follow-the-sun approach when they offshored their Yahoo!PodcastproductfromSunnyvale,CaliforniacampustoYahoo!Bangalore,IndiaCampus (Drummond, Unson, 2008). Similarly organisations like WDSGlobal(Yap,2005) and Wipro Technologies (Sureshchandra, et al.,2008) use follow-sun-approach.

RelatedPatternsFollow-the-sunPatternisoftenusedwithLocalStandupmeetingPatternandScrumofScrumPatternasbothonshoreandoffshoreteammembersareworkingseparately.

3.CollectiveProjectPlanningPatternAgilefocusesonindividualsandinteractionsoverprocessesandtools.Whileplanningfortheprojectthewholeteamispresent.Unlikethetraditionaldevelopmentwhereaprojectmanagerhandsaprojectplantotheteam.Inagilethewholeteamtakespartin the planning activity in order to determine when and how the project will bedeveloped.Ithasbeenobservedthateveniftheprojectisofadistributednatureitisbetter to co-locate the team onshore and offshore team for the project planningactivity. Based on this observed practice we have designed the following patterndetails:PatternName

CollectiveProjectPlanningPatternIntent

Both the onshore team and the offshore team will collectively work in theproject-planningphase.Oncebothteamhaveengagedintheprojectplanningactivity,theteamwillpreparetheprojectbacklog.

AlsoKnownAs ProjectPlanningorAgileProjectPlanningCategory

Coordinationcategoryasthispatternhelpstheonshoreandoffshoreteamtoworktogetherandcomeupwithaprojectplan.

MotivationConsider a team that is divided into sub-teams that are located on differenttimezonesandboththeteamscometoonelocationtodotheprojectplanningactivity.Inthebeginningofanydistributedproject,theoffshoreteamisinvitedtotheonshorelocationsothattheymayworktogetherandunderstandeachother’srequirements.Whiletheteamsareco-locatedtheyworkedonpreparingtheproductbacklogandtheyspendat leastoneortwosprintstogetherbeforetheoffshoreteamleavesandstartsworkingontheproject(Cottmeyer,2008;Therrien,2008).Thishelpstheonshoreteambymakingtheoffshoreteamunderstandtheirworkingstyleandworkstandard.

ApplicabilityUseCollectiveProjectPlanningpatternwhen:

Page 250: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

250

• Teamisdistributedoverdifferenttimezones.Participants

• Distributedonshoreandoffshoreagileteam.Collaboration

• Onshoreteamandoffshoreteamworktogethertomakeaproductbacklog.Consequences

TheCollectiveProjectPlanningpatternhasthefollowingbenefitsandliabilities:1. It allows the onshore and offshore teams to work together and understand

eachother.2. Onshoreteamworkswiththeoffshoreteamandmakesthemunderstandwhat

typeofworktheywant.3. Itaddsadditionalcostof travelandstayof theoffshoreteamat theonshore

location.Knownuses

FAST,asearchcompanywithheadquarters inNorwaywhilebuildingasearchapplicationontopoftheircoresearchplatformusedcollectiveprojectplanningto co-locate the team and make them work together in project planningactivities (Berczuk, 2007). Siemens also used collaborative planning for theirdistributedprojects(Avritzer,Paulish,2010;Avritzeret.al,2007)inwhichteammembersfrommultiplesitesgot involvedintheearlystagesoftheproject inordertocreateanopencommunicationchannelandhighleveloftrustamongthedistributedteammembers(Avritzeret.al,2010)

RelatedPatternsCollectiveProjectPlanningPatternisoftenusedwithProjectCharterPatternasitprovidesacentraldocument thatconsistsof thegoalandobjectivesof theprojectwrittenbytheclient.

4.Visitonshore-offshoreTeamPatternAsagileemphasesoncloseface-to-facecommunicationbetweentheteammembersithasbeenobserved thatwhen the team isdividedondifferent timezones, the teammemberstravelquarterlyorannuallytovisiteachother.Thisactivityhelpsbuildtrustamong the team members and helps them understand each other’s culturaldifferences (Ramesh, 2006; Therrien, 2008; Summers, 2008;Paasivaaraet al., 2014).Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:PatternName

Visitonshore-offshoreTeamPatternIntent

Bothonshoreandoffshoreteamsshouldquarterly/annualvisiteachotherinordertobuildtrust,exchangeculturalvaluesandimproveteamcoordination.

AlsoKnownAs Travelonshore-offshoreCategory

Collaboration category as this pattern helps the onshore and offshore teammemberstoco-locateandunderstandeachotherandbuildagoodrelationship,whichimprovesteamcoordination.

Page 251: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

251

MotivationWhena team isdividedondifferent timezones theydon’t feel that theyarebothpartofoneteamandtheydon’ttrusteachother.Theydon’tunderstandeachother’sculturalvaluesandworkethics.Inordertosolvetheseissuestheonshoreandoffshoreteamvisitseachothertodevelopthefeelingoftrustandunderstandeachother’s cultural andworkingvalues.During thesevisits theyattend training together as well as engage into informal activities to betterunderstandeachother. Thishelpsbuildabondbetween the teammembers,whichresultsingoodteamcoordination.

ApplicabilityUseVisitonshore-offshoreTeamwhen:

• Teamisdistributedoverdifferenttimezones.Participants

• Distributedonshoreandoffshoreagileteammembers.Collaboration

• Theonshoreteamandoffshoreteammembersvisiteachothertoimproveteamcoordination.

ConsequencesTheVisitonshore-offshoreTeampatternhasthefollowingbenefits:

1. Itallowsonshoreandoffshoreteammemberstoexchangeculturalvalueswitheachotherandworkethics.

2. Ithelpsteammembersto feel theyarepartofoneteam,whichdevelopstrustamongonshoreandoffshoreteammembers.

3. Thetravellingaddsadditionalcosttotheprojectbudget.Knownuses

EricssonisaSwedishmultinationalproviderofcommunicationstechnologyandservices.TobuildaXaaSplatformandasetofservicestheyusedagilesoftwaredevelopment methodologies. The development team was distributed over 5sites located in3countries.Fourof thesiteswere located inEuropeandonewaslocatedinAsia.Theyconductedworkshops,whichwereattendedbyteammembers from different locations. The purpose of these workshops was tocreateacommonvisionforthewholeorganisationbysettingcommonvaluesaswell also to improve the collaboration between the sites, thus build trust(Paasivaaraetal.2014).

RelatedPatternsVisit onshore-offshore Team pattern is often used with Collective ProjectPlanningPatternasplanningisbetterdonewhenthewholeteamisco-located.

d)VerificationPatternsInthissectionwehavedescribedthedetailofeachverificationpattern.1. ProjectCharterPattern

In project management, project charter is a statement that defines the scope,objectives and participants of a project. It is used to explain the roles andresponsibilities,outlineoftheprojectobjectivesandidentifymainstakeholders.Ithas

Page 252: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

252

beenobservedthatwhilestartingadistributedprojectusingagilemanyorganisationuseprojectcharter toclarify thegoalsandobjectivesof theproject tobothonshoreandoffshore team (Galen,2009).Basedon thisobservedpracticewehavedesignedthefollowingpatterndetails:PatternName

ProjectCharterPatternIntent

Beforestartingtheprojectplanningactivity,agileteamsuseprojectcharterinordertohaveacentraldocumentbetweentheonshoreandoffshoreteamthatdefinestheproject.

AlsoKnownAs ProjectDefinitionorProjectStatementCategory

Verification category as this pattern helps the onshore and offshore team tohave a central document clarifying the project goals and objectives,which iswrittenbytheproductowner/client.

MotivationWhen a project is distributed to a team that is divided over different timezones, a central document is written known as the project charter, whichclarifiestheonshoreandoffshoreteamthegoalsandobjectivesoftheproject.It also identifies the roles and responsibilities of the onshore and offshoreteam.Thepurposeofthisactivityistohaveadocumentthathelpstheteamintheproject-planningtask.

ApplicabilityUseProjectCharterpatternwhen:

• Teamisdistributedoverdifferenttimezones.Participants

• Distributedonshoreandoffshoreagileteam.• Client.

Collaboration• Theclientgivestheprojectchartertotheonshoreteamandoffshoreteam

toclarifythegoalsoftheproject.Consequences

TheProjectCharterpatternhasthefollowingbenefits:1. Itallowstheonshoreandoffshoreteamstounderstandtheproject.2. It is intendedtoclearlysetthestagefortheprojectbyaligningtheteamand

settingsgoalsandexpectations.Knownuses

IONATechnologiesusedProjectCharter fortheirdistributedprojects inorderto have a central document that clarifies the goals of the project to bothonshore and offshore teammembers (Poole, 2004). Similarly in a case studyconducted by Brown (2011) on Agile-at-Scale Delivery it was observed thatorganisationsuseprojectcharter.

RelatedPatternsProjectCharterpatternisoftenusedwithVisitonshore-offshoreTeampattern.

Page 253: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

253

2.OnshoreReviewMeetingPatternInagile,at theendofeachsprint,asprintreviewmeeting isheld inwhichtheteammeetswiththeclientsandshowsthemtheworktheyhavedonethroughademo.Inthismeetingtheclientgivesremarksabouttheworkandiftheyrequireanychangestheytelltheteam.Ithasbeenobservedthatwhentheteamisdistributedondifferentlocations,thentheteamthatisco-locatedwithclientconductsthereviewmeeting.Basedonthisobservedpracticewehavedesignedthefollowingpatterndetails:PatternName

OnshoreReviewMeetingIntent

The onshore team will present the demo as they are located where theclientis.

AlsoKnownAs SprintReviewMeetingCategory

Verification category as this pattern helps the client see the progress of theprojectaswellastheycansuggestearlychanges.

MotivationConsider a team that is divided into sub-teams that are located on differenttimezonesandoneoftheteamislocatedinthesamecountryastheclient.Inordertoshowtheprogressoftheprojectitismoreconvenientthattheteam,whichislocatedneartheclient,presentsthedemoinordertohaveaface-to-face meeting. Once the meeting has ended the onshore team briefs theoffshoreteamstheremarksoftheclient.

ApplicabilityUseOnshoreReviewMeetingpatternwhen:

• Teamisdistributedoverdifferenttimezones.• Theonshoreislocatedinthesamecountryastheclient.

Participants• Distributedonshoreandoffshoreagileteam.• Client

Collaboration• Onshore team presents demo to the client and discusses the meeting

minuteswiththeoffshore.Consequences

TheOnshoreReviewMeetingpatternhasthefollowingbenefitsandliabilities:1. It allows the client to meet the development team face-to-face and give

feedback.2. Itallowsbothonshoreandclientstodiscusswhatchangestheywantandhow

muchtimewillberequiredbasedonthemodification.3. It limits the offshore team from meeting the clients which can cause the

offshore team from discussing the changes and giving their remarks on theclientsfeedback.

Page 254: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

254

KnownusesWipro Technologies, a global service provider company used onshore reviewmeetings so that they could get quick feedback from the customer/businessuser, which was then shared with the remote team over mail and/orteleconference (Sureshchandra et al., 2008). Similarly when SirsiDynix, USAoutsourced their work to Starsoft, Ukraine they also used onshore reviewmeetingstoshowthedemooftheworkdone(Sutherlandetal.,2007)

RelatedPatternsOnshore Review Meeting pattern is often used with AsynchronousRetrospective Meetings Pattern because after the demo both onshore andoffshore team members conduct their separate retrospective meetings.

Page 255: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

255

Page 256: Distributed Agile Patterns: An Approach to Facilitate ...usir.salford.ac.uk/id/eprint/46308/1/Maryam Kausar.pdf · 3 2.6.3 effect of offshoring on agile adoption 77 2.7 a study on

256