21
World ® ’1 6 Case Study: Leveraging CA Service Virtualization to Accelerate Continuous Integration in Development Jeff De Meyer - Software Engineer - American Family Insurance DO5T04S DEVOPS

Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

Embed Size (px)

Citation preview

Page 1: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

World®’16

CaseStudy:LeveragingCAServiceVirtualizationtoAccelerateContinuousIntegrationinDevelopment

JeffDeMeyer- SoftwareEngineer- AmericanFamilyInsurance

DO5T04S

DEVOPS

Page 2: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

2 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

©2016CA.Allrightsreserved.Alltrademarksreferencedhereinbelongtotheirrespectivecompanies.

Thecontentprovidedinthis CAWorld2016presentationisintendedforinformationalpurposesonlyanddoesnotformanytypeofwarranty. The informationprovidedbyaCApartnerand/orCAcustomerhasnotbeenreviewedforaccuracybyCA.

ForInformationalPurposesOnlyTermsofthisPresentation

Page 3: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

3 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

Abstract

JeffDeMeyer(SoftwareEngineer)discusseshowleveragingServiceVirtualizationinUnitTestingacceleratescontinuousintegrationindevelopment.

Virtualservicesaregenerallymoreeffectivewhenputinthehandsoftalenteddevelopers.Leveragingvirtualservices,inlieuoflivesystems,duringcontinuousintegrationunittestinghasproventoreducetestingcycletimesfrom6+hourstounder1hour.Thisallowsformoretestingcyclestobeexecuted,alongwithnewcodebeingcheckedinearlierandmoreoften,duringasprint.Theresultsaremoretesting,defectsbeingfoundearlier,morerapiddevelopment,andbetterapplicationqualitybeingproducedindevelopmenttiers.

JeffDeMeyerAmericanFamilyInsuranceSoftwareEngineer

Page 4: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

4 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

Agenda

RELEASEEARLY,RELEASEOFTEN

RESEARCHTOFINDOUTWHEREITHURTSANDWHATCANBEDONE

Q&A

IMPLEMENTAPLANTOALLEVIATETHEPAIN

EXECUTETHEPLANSANDREAPYOURROI

OTHERAREASTHATHAVEBENEFITFROMSERVICEVIRTUALIZATION

1

2

3

4

5

6

Page 5: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

5 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

Almostallofushaveheardaboutthisbefore…

WhatisthetruecostoffindingabugearlyintheSDLCversuslater?Almostallofushaveseenapresentationthatchroniclesthisverysimpletruthaboutbugs.Findingthemearlierisbetter(andexponentiallycheapertofix)!

Yethowcanwetestmorecode,earlier,whenwearegivenlessandlesstimetodevelopandtestourcode?

Page 6: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

6 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

ReleaseEarly,ReleaseOften

Page 7: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

7 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

TypicalSDLCReleaseofCode

Codegetscheckedintothedevregion’srepositoryanddeployedtothedevtier.

Thenextdeploymentofcodetothedevtiercannottakeplaceuntilthecurrentdeploymentfinishesupitsunittests.

Unittestsarerun.

Ifunittestspass,usuallyasmoketestisrunandthenthepackageispromotedtotheintegrationtier.

Youcanonlyreleaseasearlyandasoftenasthespeedatwhichyourunittestsarerun.

Page 8: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

8 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

ResearchtoFindoutWhereitHurtsandWhatCanBeDone

Page 9: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

9 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

ResultsofMeetingwithDevelopers

Developersidentifythatasingleunittestcycletakesmorethan6hourstocompleteinitscurrentstate.

Developersidentifythatrunningtheunittestsserially,inconjunctionwiththousandsofwebservicecallsbeingmadepercycle,addssignificanttimetothelengthofthecycle.

Developersareconcernedthatastheyaddafewthousandmoreunittests,thatunittestingwillsignificantlyimpedetheirabilitytoreleasecodeatthepaceneededtomeetdeliverables.

Page 10: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

10 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

ImpactofWebServiceCallsonCycle

Therearemorethan25webservicesbeingcalledduringunittests.

Averageresponsetimeofwebservicecallsisabout2seconds.Thereareover3,000unittestsmakinganaverageof5webservicecallspertests.Thatis15,000webservicecallspercycle.

Totaltimespentonwebservicecallsis30,000secondsOR8.3Hours!

Page 11: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

11 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

ImplementaPlantoAlleviatethePain

Page 12: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

12 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

ProposedPlan

Virtualizeallofthewebservicesand

set thethinktimeto“0”,makingtheaverageresponse time less

than50ms.

Runtheunittestsinparallelinstead

ofserially.

Developer(s)would beassignedtothecreation/maintenanceoftheservices.

1 2 3

Page 13: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

13 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

ExecutethePlanandReapYourROI

Page 14: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

14 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

ExecutethePlan

Developerspent100hoursbuilding27virtualservices(about2– 4hoursforeachservice)

Unittestscompletedinunderanhour(about50minutes).

Developerrantheunittestsinparallelagainstthedevenvironmentbackedbyvirtualservices.

Page 15: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

15 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

ReapYourServiceVirtualizationROI

Investment=100hrsSavings=7hrs percycleROI=14.2cycles(or,15cycles)

Giventhattheincreasewentfromonecycleadaytofivecyclesaday,yourROIissatisfiedin4days!

Ifyoursprintlengthis2weeks(or10days),yougofrom10codereleasespersprintto50codereleasespersprint.Thatisa400%increaseintheamountofcodereleasesinasprint.Thisequatestofindingbugssoonerandfixingthemearlierintheprojectversuslater,whichequalslessexpensivefixes.

Page 16: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

16 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

OtherAreasThatBenefitFromServiceVirtualization

Page 17: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

17 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

PlacesThatBenefitFromServiceVirtualization

OurmobiledevelopmentteamhastakenadvantageofusingServiceVirtualizationforvirtualizingAPIsusingSwaggerDocs,beforetheAPIsareevenavailable.

Ourtrainingenvironmentsarebackedbyvirtualservicestoreducethecostandmaintenanceoftrainingenvironments

1

2

Wehaveusedservicevirtualizationtocreatevirtual‘utilities’usedforcreatingvirtualservice,assigningtrainingIDs,andaddinguserstoJIRA.

3

Page 18: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

18 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

RecommendedSessions

SESSION# TITLE DATE/TIME

DO5T17S NationwideBuildingSociety'sCATDMSuccessStory 11/17/2016at01:45pm

DO5T22SINGDeliversUnprecedentedGlobalContinuousDeliveryasaService 11/17/2016at03:00pm

DO5T19SGMFinancialBuildsaSustainable,Holistic,ContinuousDeliveryPractice 11/17/2016at04:30pm

Page 19: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

19 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

MustSeeDemos

ModernizeAppDeliveryIntegratedCDTheater5- DOV501P

DeliverTestDataFasterCATestDataManagerTheater5- DOV511P

DeliverBetterAppsCAServiceVirtualizationTheater5- DOV507P

OrchestrateYourReleaseCAReleaseAutomationTheater5- DOV513P

Page 20: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

20 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

Stayconnectedatcommunities.ca.com

Thankyou.

Page 21: Case Study: American Family Insurance Leverages CA Service Virtualization to Accelerate Continuous Integration in Development

21 ©2016CA.ALLRIGHTSRESERVED.@CAWORLD#CAWORLD

DevOps– ContinuousDelivery

FormoreinformationonDevOps– ContinuousDelivery,pleasevisit:http://cainc.to/PiTFpu