38
Waltzing with Waltzing with Branches Branches Chris Oldwood Chris Oldwood ACCU Conference 2016 ACCU Conference 2016 @chrisoldwood | @chrisoldwood | [email protected] [email protected]

Waltzing with Branches [ACCU]

Embed Size (px)

Citation preview

Page 1: Waltzing with Branches [ACCU]

Waltzing with BranchesWaltzing with Branches

Chris OldwoodChris OldwoodACCU Conference 2016ACCU Conference 2016

@chrisoldwood | @chrisoldwood | [email protected]@cix.co.uk

Page 2: Waltzing with Branches [ACCU]

Cargo Cult Software Cargo Cult Software EngineeringEngineering

““They go through the motions of looking They go through the motions of looking like effective organizations that are like effective organizations that are stylistically similar. But without any real stylistically similar. But without any real understanding of why the practices work understanding of why the practices work […]” […]”

-- -- Steve McConnellSteve McConnell

Page 3: Waltzing with Branches [ACCU]

Another cult is born…Another cult is born…

https://twitter.com/jezhumble/status/400071665482088448

Page 4: Waltzing with Branches [ACCU]

Read the small print!Read the small print!

https://twitter.com/jezhumble/status/400071665482088448

Page 5: Waltzing with Branches [ACCU]

Waltzing with BearsWaltzing with Bears

Page 6: Waltzing with Branches [ACCU]

<<<<<<<<<<<<<<<<<<<<<<<<Knox in box.Knox in box.Fox in socks.Fox in socks.Knox on foxKnox on foxin socks in box.in socks in box.========================Socks on KnoxSocks on Knoxand Knox in box.and Knox in box.Fox in socksFox in sockson box on Knox.on box on Knox.>>>>>>>>>>>>>>>>>>>>>>>>

Page 7: Waltzing with Branches [ACCU]

“RISK MANAGEMENT IS PROJECT MANAGEMENT FOR ADULTS”

Page 8: Waltzing with Branches [ACCU]

““The business of believing only what you The business of believing only what you have the right to believe is called have the right to believe is called risk risk managementmanagement.” .”

-- -- Waltzing with BearsWaltzing with Bears

Page 9: Waltzing with Branches [ACCU]

““Risk management is the process of Risk management is the process of thinking out corrective actions before a thinking out corrective actions before a problem occurs, while it’s still an problem occurs, while it’s still an abstraction.” abstraction.”

-- -- Waltzing with BearsWaltzing with Bears

Page 10: Waltzing with Branches [ACCU]

Risk: Loss of ProductivityRisk: Loss of Productivity

https://commons.wikimedia.org/wiki/File:Mengniu-production-line.jpg

Page 11: Waltzing with Branches [ACCU]

Risk: Loss of ConfidenceRisk: Loss of Confidence

http://melvillegroup.com/wp-content/uploads/2013/08/fear-man-biting-nails.jpg

Page 12: Waltzing with Branches [ACCU]

Risk Management Risk Management StrategiesStrategies

Avoid itAvoid it Contain itContain it Mitigate itMitigate it Evade itEvade it

Page 13: Waltzing with Branches [ACCU]

BranchingBranching

http://banyantreemassage.com/.../assets/images/the_banyan_tree_by_isacg-d42dm53.9851934_std.jpg

Page 14: Waltzing with Branches [ACCU]

MergingMerging

https://static-secure.guim.co.uk/sys-images/.../2014/10/17/1413553453352/Clapham-Junction-in-south-014.jpg

Page 15: Waltzing with Branches [ACCU]

Integration/Development Integration/Development BranchBranch

1 2 3 4 5

Page 16: Waltzing with Branches [ACCU]

Release BranchRelease Branch

3 4 5 6 7

A B

Stable

Volatile

Page 17: Waltzing with Branches [ACCU]

Branching From a LabelBranching From a Label

3 4 5 6 7

A B

v1 X Y

v1.1

Page 18: Waltzing with Branches [ACCU]

Cherry PickingCherry Picking

3 4 5 6 7

A CB

Page 19: Waltzing with Branches [ACCU]

Feature/Task/Private BranchFeature/Task/Private Branch

3 4 5 6 7

A B C

More Stable

More Volatile

Page 20: Waltzing with Branches [ACCU]

ShelvingShelving

1 2 4 5 6

3

Page 21: Waltzing with Branches [ACCU]

Integration PainsIntegration Pains

3 4 5 6 7

X Y Z

A B

Page 22: Waltzing with Branches [ACCU]

No BranchNo Branch

1a 2 1b 3 1c

Page 23: Waltzing with Branches [ACCU]

Gatekeeper WorkflowsGatekeeper Workflows

3 4 5 6 7

X Y

BAlice

Bob

C

GK

Z

D

Page 24: Waltzing with Branches [ACCU]

ForkingForking

http://3.bp.blogspot.com/-ilala7_XSts/VXCchjYhv4I/.../wXYU7lmhWrs/s1600/fork%2Bin%2Bthe%2Broad.jpg

Page 25: Waltzing with Branches [ACCU]

Branching is a technique for Branching is a technique for managing risk, but…managing risk, but…

Page 26: Waltzing with Branches [ACCU]

Branching is Branching is not the onlynot the only technique for managing technique for managing

risk.risk.

Page 27: Waltzing with Branches [ACCU]

ApproachApproach

Always Be Ready To ShipAlways Be Ready To Ship

Page 28: Waltzing with Branches [ACCU]

Small Units of ChangeSmall Units of Change

https://upload.wikimedia.org/wikipedia/.../1280px-A_Sunday_on_La_Grande_Jatte,_Georges_Seurat,_1884.png

Page 29: Waltzing with Branches [ACCU]

AutomationAutomation

http://trendingchannel.com/wp-content/uploads/2013/01/China-car-production.jpg

Page 30: Waltzing with Branches [ACCU]

Continuous Integration is a Continuous Integration is a mindset, not a tool.mindset, not a tool.

Page 31: Waltzing with Branches [ACCU]

TestsTests

https://twitter.com/whatpaulsaid/statuses/596693825432776704

Page 32: Waltzing with Branches [ACCU]

RefactoringRefactoring

http://factmontster.com/wp-content/uploads/2015/03/interesting-facts-about-brazil-favelas.jpg

Page 33: Waltzing with Branches [ACCU]

Pair/Mob ProgrammingPair/Mob Programming

https://i.ytimg.com/vi/VDYsipu7KZQ/maxresdefault.jpg

Page 34: Waltzing with Branches [ACCU]

MonitoringMonitoring

https://i.ytimg.com/vi/ZKpFFD7aX3c/maxresdefault.jpg

Page 35: Waltzing with Branches [ACCU]

Literature (Old & New)Literature (Old & New)

Page 36: Waltzing with Branches [ACCU]

Branching Branching cancan be used to be used to manage manage somesome risks, but risks, but

there are more productive there are more productive ways.ways.

Page 37: Waltzing with Branches [ACCU]

Questions?Questions?

Page 38: Waltzing with Branches [ACCU]

Blog:Blog:http://chrisoldwood.blogspot.comhttp://chrisoldwood.blogspot.com

@chrisoldwood | @chrisoldwood | [email protected]@cix.co.uk

Articles:Articles:http://www.chrisoldwood.com/http://www.chrisoldwood.com/

articles.htmarticles.htm