Sunteți pe pagina 1din 67

Scrum

Richard Michael Coo MSCS-3


Mountain Goat Software, LLC

Were losing the relay race


%!he1 2relay race a))roach to )roduct de(elo)ment1may conflict with the goals of ma3imum s)eed and fle3i4ility0 "nstead a holistic or 2rug4y a))roach5where a team tries to go the distance as a unit, )assing the 4all 4ac and forth5may 4etter ser(e todays com)etiti(e re6uirements0*

Hirota a !a euchi and " u#iro $ona a, %!he $ew $ew &roduct 'e(elo)ment Game*, Harvard Business Review, +anuary ,-./0

Mountain Goat Software, LLC

Scrum in ,<< words

7Scrum is an agile )rocess that allows us to

focus on deli(ering the highest 4usiness (alue in the shortest time0 7"t allows us to ra)idly and re)eatedly ins)ect actual wor ing software 8e(ery two wee s to one month90 7!he 4usiness sets the )riorities0 !eams selforgani:e to determine the 4est way to deli(er the highest )riority features0 7;(ery two wee s to a month anyone can see real wor ing software and decide to release it as is or continue to enhance it for another s)rint0
Mountain Goat Software, LLC

Scrum origins
7
+eff Sutherland 7 "nitial scrums at ;asel Cor) in ,--3 7 "'= and ><<? )eo)le doing Scrum 7 @en Schwa4er 7 A'M 7 Scrum )resented at BB&SLA -/ with Sutherland 7 Author of three 4oo s on Scrum 7 Mi e Ceedle 7 Scrum )atterns in &LB&'D 7 @en Schwa4er and Mi e Cohn 7 Co-founded Scrum Alliance in E<<E, initially within the Agile Alliance
Mountain Goat Software, LLC

Scrum has 4een used 4yF


Microsoft Hahoo Google ;lectronic Arts Loc heed Martin &hili)s Siemens $o ia "CM Ca)ital Bne CCC Motorola IS Ged0 Reser(e

7"ntuit 7$ielsen Media 7Girst American Real ;state 7CMC Software 7")switch 7+ohn 'eere 7Le3is $e3is 7Sa4re 7Salesforce0com 7!ime Warner 7!urner Croadcasting 7Cisco 7G;

Mountain Goat Software, LLC

Scrum has 4een used forF


7 7 7 7 7 7 7 7 7
Commercial software "n-house de(elo)ment Contract de(elo)ment Gi3ed-)rice )ro#ects Ginancial a))lications "SB -<<,-certified a))lications ;m4edded systems ED3J systems with --0---K u)time re6uirements the +oint Stri e Gighter

7Lideo game de(elo)ment 7G'A-a))ro(ed, life-critical


systems 7Satellite-control software 7We4sites 7Handheld software 7Mo4ile )hones 7$etwor switching a))lications 7"SL a))lications 7Some of the largest a))lications in use

Mountain Goat Software, LLC

Characteristics
7 Self-organi:ing teams 7 &roduct )rogresses in a series of month-long
%s)rints*

7 Re6uirements are ca)tured as items in a list of


%)roduct 4ac log*

7 $o s)ecific engineering )ractices )rescri4ed 7 Ises generati(e rules to create an agile


en(ironment for deli(ering )ro#ects

7 Bne of the %agile )rocesses*


Mountain Goat Software, LLC

!he Agile ManifestoMa statement of (alues


Individuals Individuals and and interactions interactions Working Working software software Customer Customer collaboration collaboration Responding Responding to to change change
o(er o(er o(er o(er

&rocess &rocess and and tools tools Com)rehensi(e Com)rehensi(e documentation documentation Contract Contract negotiation negotiation Gollowing Gollowing a a )lan )lan

That is, while there is value in the items on the right, we value the items on the left more.
Mountain Goat Software, LLC

SourceF www0agilemanifesto0org

!hree )illars of Scrum

Mountain Goat Software, LLC

&ro#ect noise le(el


Gar from Agreement

Re6uirements

Anarchy Com)le3
Co m )l ic

at e

Close to Agreement

Sim)le

SourceF Strategic Management and Organizational Dynamics 4y Ral)h Stacey in Agile Software Development with Scrum 4y @en Schwa4er and Mi e Ceedle0

Close to Certainty

Mountain Goat Software, LLC

Gar from Certainty

!echnology

Scrum

ED hours

S)rint goal Return Cancel Return Gift Cou)ons wra) Gift Cancel wra) &roduct 4ac log
Mountain Goat Software, LLC

S)rint E-D wee s

S)rint 4ac log Cou)ons

&otentially shi))a4le )roduct increment

&utting it all together

"mage a(aila4le at www0mountaingoatsoftware0comNscrum


Mountain Goat Software, LLC

S)rints
7 Scrum )ro#ects ma
of %s)rints* iterations e )rogress in a series

7 Analogous to ;3treme &rogramming 7 !y)ical duration is EMD wee


calendar month at most rhythm s or a

7 A constant duration leads to a 4etter 7 &roduct is designed, coded, and tested


during the s)rint
Mountain Goat Software, LLC

Se6uential (s0 o(erla))ing de(elo)ment


Re6uirements 'esign Code !est

Rather than doing all of one thing at a time000 000Scrum teams do a little of e(erything all the time

Mountain Goat Software, LLC

SourceF %!he $ew $ew &roduct 'e(elo)ment Game* 4y !a euchi and $ona a0 Harvard Business Review, +anuary ,-./0

$o changes during a s)rint


Change

7 &lan s)rint durations around how long


Mountain Goat Software, LLC

you can commit to ee)ing change out of the s)rint

Scrum framewor
Roles

7&roduct owner 7ScrumMaster 7!eam

Ceremonies

7S)rint )lanning 7S)rint re(iew 7S)rint retros)ecti(e 7'aily scrum meeting


Artifacts

7&roduct 4ac log 7S)rint 4ac log 7Curndown charts


Mountain Goat Software, LLC

Scrum framewor
Roles

7&roduct owner 7ScrumMaster 7!eam

Ceremonies

7S)rint )lanning 7S)rint re(iew 7S)rint retros)ecti(e 7'aily scrum meeting


Artifacts

7&roduct 4ac log 7S)rint 4ac log 7Curndown charts


Mountain Goat Software, LLC

&roduct owner
7 Loice of the customer 7 'efine the features of the )roduct 7 'ecide on release date and content 7 CeOres)onsi4le for the )rofita4ility of the )roduct
8RB"9

7 &rioriti:e features according to mar et (alue 7 Ad#ustOfeatures and )riority e(ery iteration, as
neededO

7 Acce)t or re#ect wor


Mountain Goat Software, LLC

results

!he ScrumMaster
7 Re)resents management to the )ro#ect 7 Res)onsi4le for enacting Scrum (alues and
)ractices

7 Remo(es im)ediments 7 ;nsure that the team is fully functional and


)roducti(e functions

7 ;na4le close coo)eration across all roles and 7 Shield the team from e3ternal interferences 7 Ser(ant leader and coach
Mountain Goat Software, LLC

!he team
7 !y)ically >-- )eo)le 7 Cross-functionalF
7 7 7
&rogrammers, testers, user e3)erience designers, etc0 May 4e e3ce)tions 8e0g0, data4ase administrator9 "deally, no titles 4ut rarely a )ossi4ility

7 Mem4ers should 4e full-time 7 !eams are self-organi:ing 7 Mem4ershi) should change only 4etween s)rints
Mountain Goat Software, LLC

Re6tPs as user stories

7 As a QroleR, " want to QfunctionalityR, so that "


can Q4enefitR
Mountain Goat Software, LLC

Mountain Goat Software, LLC

Scrum framewor
Roles

7&roduct owner 7ScrumMaster 7!eam


Ceremonies

7S)rint )lanning 7S)rint re(iew 7S)rint retros)ecti(e 7'aily scrum meeting


Artifacts

7&roduct 4ac log 7S)rint 4ac log 7Curndown charts


Mountain Goat Software, LLC

!eam !eam ca)acity ca)acity &roduct &roduct 4ac 4ac log log Cusiness Cusiness condition condition s s Current Current )roduct )roduct !echno!echnology logy

S)rint )lanning meeting


S)rint )rioriti:ation

7 Analy:e and e(aluate )roduct 7


4ac log Select s)rint goal

S)rint S)rint goal goal

S)rint )lanning

7 'ecide how to achie(e s)rint 7 7

goal 8design9 Create s)rint 4ac log 8tas s9 from )roduct 4ac log items 8user stories N features9 ;stimate s)rint 4ac log in hours

S)rint S)rint 4ac 4ac log log

Mountain Goat Software, LLC

S)rint )lanning
7 !eam selects items from the )roduct 4ac 7
they can commit to com)leting S)rint 4ac log is created log

7 7

!as s are identified and each is estimated 8,-,/ hours9 Colla4orati(ely, not done alone 4y the ScrumMaster

7 High-le(el design is considered


As As a a vacation vacation planner, planner, I I want want to to see see photos photos of of the the hotels, hotels, (so (so that that I I have have an an intial...) intial...)
Mountain Goat Software, LLC

Code the middle tier 8. hours9 Code the user interface 8D9 Write test fi3tures 8D9 Code the foo class 8/9 I)date )erformance tests 8D9

!he daily scrum


7 &arameters 7 $ot for )ro4lem sol(ing
7 7
Whole world is in(ited

7 7 7

'aily

,>-minutes Stand-u)

7 Hel)s a(oid other unnecessary meetings


Mountain Goat Software, LLC

Bnly team mem4ers, ScrumMaster, )roduct owner, can tal

;(eryone answers 3 6uestions


What did did you you do do yesterday? yesterday? What will you do today? today? Is anything in your way?

, E 3

7 !hese are not status for the ScrumMaster


7 !hey are commitments in front of )eers
Mountain Goat Software, LLC

!he s)rint re(iew


7 !eam )resents what it accom)lished
during the s)rint 7 !y)ically ta es the form of a demo of new features or underlying architecture 7 "nformal

7 Whole team )artici)ates 7 "n(ite the world 7 "ns)ect the product


Mountain Goat Software, LLC

7 E-hour )re) time rule 7 $o slides

S)rint retros)ecti(e
7 &eriodically ta
not wor ing 7 !y)ically ,>M3< minutes 7 'one after e(ery s)rint 7 Whole team )artici)ates e a loo at what is and is

7 ScrumMaster 7 &roduct owner 7 !eam 7 &ossi4ly customers and others

7 "ns)ect the process


Mountain Goat Software, LLC

Start N Sto) N Continue


7 Whole team gathers and discusses what
theyd li e toF

Start Start doing Sto) doing


This is just one of many ways to do a sprint retrospective.
Mountain Goat Software, LLC

Continue doing

Scrum framewor
Roles

7&roduct owner 7ScrumMaster 7!eam

Ceremonies

7S)rint )lanning 7S)rint re(iew 7S)rint retros)ecti(e 7'aily scrum meeting


Artifacts

7&roduct 4ac log 7S)rint 4ac log 7Curndown charts


Mountain Goat Software, LLC

&roduct 4ac log


7!he re6uirements 7A list of all desired wor
the )ro#ect 7"deally e3)ressed such that each item has (alue to the users or customers of the )roduct 7&rioriti:ed 4y the )roduct owner 7Re)rioriti:ed at the start of each s)rint on

!his !his is is the the )roduct )roduct 4ac 4ac log log
Mountain Goat Software, LLC

&roduct 4ac log


7!he re6uirements 7A list of all desired wor
the )ro#ect 7"deally e3)ressed such that each item has (alue to the users or customers of the )roduct 7&rioriti:ed 4y the )roduct owner 7Re)rioriti:ed at the start of each s)rint on

!his !his is is the the )roduct )roduct 4ac 4ac log log
Mountain Goat Software, LLC

A sam)le )roduct 4ac log


Cac log item
Allow a guest to ma e a reser(ation As a guest, " want to cancel a reser(ation0 As a guest, " want to change the dates of a reser(ation0 As a hotel em)loyee, " can run Re(&AR re)orts 8re(enue-)er-a(aila4le-room9 "m)ro(e e3ce)tion handling

;stimate
3 > 3 . . 3< ><

000 000
Mountain Goat Software, LLC

A sam)le )roduct 4ac log

Mountain Goat Software, LLC

;stimating effort
7Planning poker, also
called Scrum poker, is a consensus-4ased techni6ue for estimating, mostly used to estimate effort or relati(e si:e of user stories in software de(elo)ment0 7!he reason to use &lanning )o er is to a(oid the influence of the other )artici)ants0 "f a num4er is s)o en, it can sound li e a suggestion and influence the other )artici)antsP si:ing0
Mountain Goat Software, LLC

;stimating effort
7A ty)ical dec
has cards showing the Gi4onacci se6uence including a :eroF <, ,, E, 3, >, ., ,3, E,, 3D, >>, .-S other dec s use similar )rogressions0 Gi4onacci se6uence is to reflect the inherent uncertainty in estimating larger items0 are also acce)ta4le0

7!he reason for using the 7Standard )laying cards


Mountain Goat Software, LLC

&lanning )o er

Mountain Goat Software, LLC

&lanning )o er

Mountain Goat Software, LLC

&lanning )o er

Mountain Goat Software, LLC

&lanning )o er

Mountain Goat Software, LLC

!he s)rint goal


7 A short statement of what the wor
focused on during the s)rint
Life Sciences 'ata4ase A))lication
Su))ort features necessary for )o)ulation genetics studies0

will 4e

Ma e the a))lication run on STL Ser(er in addition to Bracle0 Ginancial ser(ices Su))ort more technical indicators than com)any ACC with real-time, streaming data0
Mountain Goat Software, LLC

Managing the s)rint 4ac log


7 "ndi(iduals sign u) for wor
7
Wor is ne(er assigned

of their own choosing

7 ;stimated wor remaining is u)dated daily 7 Any team mem4er can add, delete or change the
s)rint 4ac log

7 Wor for the s)rint emerges 7 "f wor is unclear, define a s)rint 4ac 7 I)date wor

log item with a larger amount of time and 4rea it down later remaining as more 4ecomes nown

Mountain Goat Software, LLC

A s)rint 4ac log


!as !as s s
Code the user interface Code the middle tier !est the middle tier Write online hel) Write the foo class Add error logging

Mon Mon !ues !ues Wed Wed !hur !hur Gri Gri
. ,/ . ,E . . . . . D . D ,E ,/ . ,< ,/ D ,, .

Mountain Goat Software, LLC

A s)rint 4ac log

Mountain Goat Software, LLC

A s)rint 4urndown chart

Hours
Mountain Goat Software, LLC

!as !as s s
Code the user interface Code the middle tier !est the middle tier Write online hel)

Mon Mon !ues !ues Wed Wed !hur !hur Gri Gri
. ,/ . ,E D ,E ,/ . ,< ,/ J ,,

>< D< Hours 3< E< ,< < Mon !ue Wed !hu Gri

Mountain Goat Software, LLC

"s this your 4urndownU

Mountain Goat Software, LLC

"s this your 4urndownU

Mountain Goat Software, LLC

"s this your 4urndownU

Mountain Goat Software, LLC

"s this your 4urndownU

Mountain Goat Software, LLC

"s this your 4urndownU

Mountain Goat Software, LLC

"s this your 4urndownU

Mountain Goat Software, LLC

"s this your 4urndownU

Mountain Goat Software, LLC

"s this your 4urndownU

Mountain Goat Software, LLC

"s this your 4urndownU

Mountain Goat Software, LLC

"s this your 4urndownU

Mountain Goat Software, LLC

Scrum Coard

Mountain Goat Software, LLC

Mountain Goat Software, LLC

Scala4ility
7 !y)ical indi(idual team is J V E )eo)le 7 Gactors in scaling
7 Scala4ility comes from teams of teams 7 !y)e of a))lication 7 !eam si:e 7 !eam dis)ersion 7 &ro#ect duration
)erson )ro#ects

7 Scrum has 4een used on multi)le ><<?


Mountain Goat Software, LLC

Scaling through the Scrum of scrums

Mountain Goat Software, LLC

Scrum of scrums of scrums

Mountain Goat Software, LLC

Where to go ne3t
7 www0mountaingoatsoftware0comNscrum 7 www0scrumalliance0org 7 www0controlchaos0com 7 scrumde(elo)mentWyahoogrou)s0com

Mountain Goat Software, LLC

A Scrum reading list


7 7 7 7 7 7 7 7 7
Agile and terative Development! A Manager"s #uide 4y Craig Larman Agile $stimating and %lanning 4y Mi e Cohn Agile %ro&ect Management with Scrum 4y @en Schwa4er Agile Retrospectives 4y ;sther 'er4y and 'iana Larsen Agile Software Development $cosystems 4y +im Highsmith Agile Software Development with Scrum 4y @en Schwa4er and Mi e Ceedle Scrum and 'he $nterprise 4y @en Schwa4er (ser Stories Applied for Agile Software Development 4y Mi e Cohn Lots of wee ly articles at www0scrumalliance0org

Mountain Goat Software, LLC

References
7 7 7 7 7 7
Head Girst Software 'e(elo)ment 4y 'an &ilone and Russ Miles 8BPReilly E<<J9 Scrum Hand4oo 4y +eff Sutherland 8Scrum !raining "nstitute &ress E<,<9 htt)FNNwww0scrumdes 0comNis-it-your-4urn-down-chartN htt)FNNwww03)day0netNhtmlN=)dayE<<JNSCRIMKE<Coard KE<withKE<comments0+&G htt)FNNwww0agilemodeling0comNartifactsNuserStory0htmX"n itial"nformal htt)FNNwww06ualitystreet0frNw)contentNu)loadsNE<,,N<3Nuserstoryin(est0#)g

Mountain Goat Software, LLC

Co)yright notice
7 7
Hou are freeF

7 7 7

to ShareYto co)y, distri4ute and transmit the wor to Remi3Yto ada)t the wor Attri4ution0 Hou must attri4ute the wor in the manner s)ecified 4y the author or licensor 84ut not in any way that suggests that they endorse you or your use of the wor 90

Inder the following conditions

7 7

$othing in this license im)airs or restricts the authors moral rights0 Gor more information see htt)FNNcreati(ecommons0orgNlicensesN4yN30<N

Mountain Goat Software, LLC

Contact information
&resentation &resentation 4yF 4yF Mi Mi e e Cohn Cohn mi mi eWmountaingoatsoftware0com eWmountaingoatsoftware0com www0mountaingoatsoftware0com www0mountaingoatsoftware0com 8JE<9 8JE<9 .-<-/,,< .-<-/,,<
Hou can remo(e this 8or any slide9 4ut you must credit the source somewhere in your d )resentation0 Ise the logo an com)any name 8as at 4ottom left, for e3am)le9 or include a slide somewhere saying that )ortions 8or all9 of your )resentation are from this source0 !han s0
Mountain Goat Software, LLC

S-ar putea să vă placă și