You are on page 1of 7

ScrumandCMMI:AHighlevelassessmentofcompatibility

Abstract: This articles purpose is to assess the compatibility of Scrum with CMMI and also provide a base for understanding how Scrum can be implemented in organizations that are following a CMMI model. To an extent this is also a comparative study. Introductions to Scrum and CMMI are provided, followed by a discussion on the compatibility of 3 Scrum and CMMI, at an impleme ntation and an approach level . 0.INTRODUCTION
CMMIisaprocessframeworkwhichiswidelyadoptedbysoftwareandsystemsdevelopment companies,whileScumisoneofthemostimportantsoftwaredevelopmentmethodologieswhoseadoption isgrowingrapidly.CMMIisbasicallyaprocessimprovementframeworkwhichmandatesasetofprocesses for software development management. Scrum can be thought of as an iterative software project managementframeworkfordevelopmentactivities.CMMIhasawiderscopeanddifferentaimstothoseof Scrum. CMMI also covers productionsupport, maintenance, product implementation and application transitiontypeprojectsaswell.

SrinivasChillara1andPeteDeemer2

1.SCRUMOVERVIEW Scrum is an iterative, incremental framework for managing projects, including software developmentprojects. Scrumsapproachtocontrolsoftwaredevelopmentis empirical,sinceitis knowntobehighlycomplexwithmanyfactors,somehumandependant.Consequently,itisdifficult tomeasureorpredictthedevelopmenteffortandresults.Scrumstructuresworkiniterationscalled Sprints,whichareoffourweeksinlengthandtakeplaceoneaftertheotherforthedurationofa project.AtthebeginningofeachSprint,acrossfunctionalteamselectsitemsfromaprioritizedlist ofrequirementscalledtheProductBacklog;thislistiscreatedandmaintainedbytheProductOwner, whogathersinputsfromcustomersandothers,andthenranksthemaccordingtobusinessvalue.The teamselectsitemsstartingatthetopoftheProductBacklog(inotherwords,thehighestbusiness valueitems),andtheyonlyselectasmanyastheybelievestheycancompleteathighqualitybythe end of the Sprint. Scrumplaces a very strong emphasis on producing a potentially shippable incrementofproductattheendofeachSprint;inthecaseofsoftware,thismeanscodethathasbeen notonlywritten,butalsofullyintegrated,tested,documented,andanyotherstepsnecessarytoreach done.Oncetheteamhasmadeitscommitment,thereisnochangeduringtheSprint,eithertothe
1

Independentconsultant,CSM.Srinivashasover10yearsexperienceinsoftwaredevelopmentand management.HehasaB.TechfromIITKharagpur,IndiaandanMScfromUniversityofReading,UK. Hecanbereachedat;ceezone@yahoo.co.in 2 PrimaryconsultantatGoodagile,CST.Petehasover16yearsofexperience.Hehasbeenaproductdirector ofYahooBangaloreandcoleadthesuccessfullargescaleadoptionofScrumthere.Heisagraduateof HarvardUniversity.Hecanbereachedat:petedeemer@goodagile.com 3 InthisarticleweareonlyconsideringthestagedrepresentationoftheCMMImodelbecauseitissimpler. aswellfamiliartotheauthors.

deliverable(anynewrequestshavetowaituntilthenextSprint),ortothelengthoftheSprint(which endsonthepredetermineddate,whetherornottheworkhasbeencompleted).DuringtheSprint, theteammanagesitselftocompletewhatitcommittedto;aspartofthis,theteamgathersdailyfor 15minutesattheDailyScrumMeeting,toupdateeachotheronprogress,surfaceimpediments,and updateScrumartifactssuchastheSprintBacklog(thetasksthatcomprisethedeliverable),andthe SprintBurndownChart(agraphofthehoursremainingtocompletethedeliverable).Attheendof theSprint,theteamholdsaSprintReview,wheretheydemonstratewhattheyhavebuilt,togenerate feedbackwhichtheProductOwnercanincorporateintotheProductBacklogforlaterSprints.The team also holdsa Sprint Retrospective, wheretheyreviewtheirwayofworking,andagree on changestoimprovetheireffectiveness. EachSprintisselfcontained;beforethestartofthenext Sprint, the Product Owner can make whatever changes he/she likes to the remaining Product Backlog,adding,removingorreprioritizingitemsatwill.Onecriticalnewroleforateamssuccess withScrumis:the ScrumMaster. TheScrumMasterisnottheteamsmanager;instead,he/she protectstheteamfromoutsideinterferenceordisruption,servestheteambyhelpinggetimpediments removed.He/shealsofacilitatesteaminteractions,astheteamandorganizationiscoachedintheuse ofScrum. ManypeoplemistakenlyperceiveAgilemethodstobelooseorsloppy;however,whenpracticed as intended, Scrum is very strict and disciplined, with a great emphasis on transparency, commitment,accountability,quality,andcontinuousimprovement.Scrumisusedmostlybyproduct developmentcompanies. 2.CMMIOVERVIEW CMMIisaprocessimprovementframeworkforsoftwaresystemsdevelopmentcompanies.As JudyBamberger(akeyauthoroftheCMM)says[TheessenceoftheCMM]TheCMMwasnt intended to be all things to all people to cover all possible aspects of software and system development.Itwasintendedtoprovideasetofguidelinesformanagingsoftwaredevelopment projectsandmakingimprovementsovertime.Thisframeworkismostlyatamanagementlevel andseldomaddressescoreengineeringissuesindepth.ThemotivationforadoptionofCMMIis intendedtobringaboutahighersoftwaredevelopmentmaturityoftheorganization,whichinturn resultsinsmoother,moreefficientlowerdefectdeliveries. CMMIconsistsofanumberof"PracticeAreas"(PA),whicharegroupedintofourmaturity levelsthatorganizationsshouldgothroughbeforehavingaprocessimprovementsysteminplace. Thematuritylevelsare: 1.Initial(adhoc,heroic)(noPA) 2.Managed(projectmanagement,processdiscipline) 3.Defined(institutionalized)

4.QuantitativelyManaged(quantified) 5.Optimized(processimprovement) Onewaycompaniesaresupposedtousethemodelisfirsttoassesstheirmaturitylevelandthen formaspecificplantogettothenextlevel.TheSEIhasdefinedarigorousprocessassessment method to appraise how well an organization satisfies thegoals associated with each level. Skippinglevelsisnotallowed.
Maturity Level 2 DegreeofScrum compliance(andhow) High(PB,RB,SB) High(PB,RB,SBandDaily scrums) High(SPM) Notapplicable NotAddressed Medium(SPM,SB, burndownchart) High(SRM) High(SprintsandSRM) Medium(SPM,SRM) NotAddressed Medium(frequentSRM) High(donecriteriaand

Name

RequirementsManagement

ProjectMonitoringandControl

2 2 2

ProjectPlanning SupplierAgreementManagement ConfigurationManagement

MeasurementandAnalysis

2 3 3 3 3 3

ProcessandProductQualityAssurance ProductIntegration RequirementsDevelopment TechnicalSolution Validation Verification

SRM) 3 3 3 OrganizationalProcessDefinition OrganizationalProcessFocus OrganizationalTraining Low(Scrumprocessitself) Low(Scrumprocessitself) Notaddressed High(SRM,Scrumof ScrumsandPB) Notapplicable High(DailyScrum,Scrum ofScrum) Medium(Iterativeapproach limitsrisk) Notaddresses Medium(ScrumofScrums) Notaddressed Low(Estimationduring SRMandburndownchart) Notapplicable High(dailyScrumsand Retrospectives)

IntegratedProjectManagement

IntegratedSupplierManagement

IntegratedTeaming

RiskManagement

3 3 4

DecisionAnalysisandResolution OrganizationalEnvironmentforIntegration OrganizationalProcessPerformance

QuantitativeProjectManagement

OrganizationalInnovationandDeployment

CausalAnalysisandResolution

Table1:CMMIPAlevelsandextenttowhichScrumsatisfiesthese NA:NotApplicable,becausethisisusuallynotofinterest.

MostorganizationswhichfollowCMMIareservicecompanies;relativelymuchfewer productdevelopmentcompaniesadoptCMMIformallyorotherwise. Manyorganizationsalso obtainaCMMI(level3andabove)certification4sincethisopensdoorstothetendersfloatedby many large US corporations for their IT/IS projects. Vendor parties which dont have such a certificationarenotevenshortlisted.

3.ISSCRUMCOMPATIBLEWITHCMMI? Yesandno.SinceCMMImandatescertainPAs,butnothowthesePAsshouldbesatisfied; ScrumpracticescananddomeetmanyofthesePAs(seetable1).Soatanimplementationlevel ScrumandCMMIaremostlycompatible,andfollowingScrumproperlywillmeetamajorityof CMMIPAs.AgoodexpositionofthemappingofScrumpracticestoCMMIprojectmanagement PAsisprovidedin[Marcaletal] HoweverCMMIismainlyintendedtobeaprocessimprovementframeworkwhileScrumisa lightweightframeworkforhelpingaprojectgroupfocuseffortsoftheteamtowardsachieving projectgoals. MoreovertherearetwounderlyingassumptionsofCMMIwhicharerejectedbyScrum. 1) Softwaredevelopmentprocessesare(orcanbe)defined(level3islabeled: Defined). 2) Agoodsetofprocessesistheprimarymeanstodeliversoftwareefficiently. Scrumfavoursanapproachwherethesoftwaredevelopmentprocessistakentobeempirical. FurtherScrumbelievesthatpeople,theirskillsandhowtheyareharnessedarethemostimportant factorsforthesuccessofasoftwaredevelopmenteffort.Duetothesedifferencesinapproach,the spiritthatCMMIfostersisconsiderablydifferentfromthatofScrum. CommentsonhowScrumsatisfiesPAsatdifferentlevelsfollow: Atlevel2:ScrumtakescareofmostPAsviavariouslevelsofbacklogs(whicharefeaturelists), sprintplanningmeetings,dailyscrum,burndownchartandsprintreviewmeeting. Since Scrum does not mandate engineering approach, it does not comment on configuration management,hencethisPAisnotaddressed. Atlevel35:ThisiscriticalCMMIlevelwithanumberofPAs,manyofwhicharemetby Scrum.SRM,dailyScrum,regularupdatingofsprintbacklogandscrumofscrumsforlarger projectteamssatisfythesePAs.ScrumdoesnotcommentontechnicalsolutionoronDecision analysisandresolution(DAR).TheotherPAswhichScrumdoesnotaddresssatisfactorilyare
4

InrealitythereisnothinglikeaCMMIcertificatehandedoutbySEI.

Itissaidthatanorganizationmustatleastachievelevel4toreapthebenefitsofCMMI;thisisbecause processimprovementdoesntkickin,unlessonestartsimplementinglevel4.Onecanfindmanyorganizations atlevel3andsomeatlevel5.Fewcompaniesreachlevel4andstopthereforlong,forthesehaveamotivation toprogressonwardstolevel5.

todowithorganizationalstandardization.Onreflectionthisisonlynaturalsincetheaimof Scrumistomanageagivenprojecttodeliverworkingsoftware,andthatofCMMIisthehave anorganizationalprojectexecutioncapabilityinplace. Atlevel4:ScrumfaresbadlyfromaCMMIperspective.Scrumdoesnotstressaquantitative approach(i.e.metricsbased)toprojectmanagement.Theburndownchartprovidesavelocity metricwhichpartlyaddressesthis;howeverthisisnotintendedtobeoforganizationwide scope. HoweverScrumpracticesdontforbidcollectionandanalysisofmetrics,unlessthey turnouttobeimpedimentstotheteamswork. Atlevel5:ScrumhasanimportantpracticeofSprintRetrospectiveswhichisakeymannerin which inspect and adapt is done. Implemented effectively this is very useful process monitoringandcontrolmethodwhichlargelymeetsthecausalanalysisandresolutionPA. 4.CONCLUSION Overall the main CMMI PAs which Scrum does not cover, are to do with organizational standardization,whichisaCMMIaim,notaScrumconcern.Scrumpracticesareassuchcompatible withCMMIframework.ScrumpracticescanthereforeformalargepartoftheCMMIimplementation. HoweverafaithfulimplementationwhichmaintainsthespiritofScumisfraughtwithdifficulties. TherearetwoveryimportantdifferencesintheunderlyingassumptionsofScrumcomparedtoCMMI: 1.Softwaredevelopmentisempirical2.Peoplearemoreimportantthanprocesses. ToadoptScrumwellinaCMMIorganization,someonewithagoodunderstandingofbothCMMI andScrummustbeavailabletoguidetheteamandtheorganization.Giventherightcircumstances, particularlyuppermanagementsupport,withsuchguidanceitispossibletoimplementScumwell withinaCMMIorganization;essentiallythiswouldmeanimplementingCMMIviaScrumforthe developmentprojectsorasubset,andthenfillingthegapssuchthatthespiritofScrumisntdisturbed.

REFERENCES [1]CraigLarmanandVictorBasili.,2003IEEEcomputer, IterativeandIncrementalDevelopment:abriefhistory [2]MikeCohenandDorisFord.,2003IEEEcomputer,Introducing anAgileprocesstoanorganization [3]AnaSofiaMarcal,BrunodeFreitas,FelipeSoaresand ArnaldoBelchoir,MappingCMMIprojectmanagementprocessareasto SCRUMpractices(internet)

You might also like