Upload
chris-oldwood
View
56
Download
0
Embed Size (px)
Citation preview
Waltzing with BranchesWaltzing with Branches
Chris OldwoodChris OldwoodACCU Conference 2016ACCU Conference 2016
@chrisoldwood | @chrisoldwood | [email protected]@cix.co.uk
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
Another cult is born…Another cult is born…
https://twitter.com/jezhumble/status/400071665482088448
Read the small print!Read the small print!
https://twitter.com/jezhumble/status/400071665482088448
Waltzing with BearsWaltzing with Bears
<<<<<<<<<<<<<<<<<<<<<<<<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.>>>>>>>>>>>>>>>>>>>>>>>>
“RISK MANAGEMENT IS PROJECT MANAGEMENT FOR ADULTS”
““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
““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
Risk: Loss of ProductivityRisk: Loss of Productivity
https://commons.wikimedia.org/wiki/File:Mengniu-production-line.jpg
Risk: Loss of ConfidenceRisk: Loss of Confidence
http://melvillegroup.com/wp-content/uploads/2013/08/fear-man-biting-nails.jpg
Risk Management Risk Management StrategiesStrategies
Avoid itAvoid it Contain itContain it Mitigate itMitigate it Evade itEvade it
BranchingBranching
http://banyantreemassage.com/.../assets/images/the_banyan_tree_by_isacg-d42dm53.9851934_std.jpg
MergingMerging
https://static-secure.guim.co.uk/sys-images/.../2014/10/17/1413553453352/Clapham-Junction-in-south-014.jpg
Integration/Development Integration/Development BranchBranch
1 2 3 4 5
Release BranchRelease Branch
3 4 5 6 7
A B
Stable
Volatile
Branching From a LabelBranching From a Label
3 4 5 6 7
A B
v1 X Y
v1.1
Cherry PickingCherry Picking
3 4 5 6 7
A CB
Feature/Task/Private BranchFeature/Task/Private Branch
3 4 5 6 7
A B C
More Stable
More Volatile
ShelvingShelving
1 2 4 5 6
3
Integration PainsIntegration Pains
3 4 5 6 7
X Y Z
A B
No BranchNo Branch
1a 2 1b 3 1c
Gatekeeper WorkflowsGatekeeper Workflows
3 4 5 6 7
X Y
BAlice
Bob
C
GK
Z
D
ForkingForking
http://3.bp.blogspot.com/-ilala7_XSts/VXCchjYhv4I/.../wXYU7lmhWrs/s1600/fork%2Bin%2Bthe%2Broad.jpg
Branching is a technique for Branching is a technique for managing risk, but…managing risk, but…
Branching is Branching is not the onlynot the only technique for managing technique for managing
risk.risk.
ApproachApproach
Always Be Ready To ShipAlways Be Ready To Ship
Small Units of ChangeSmall Units of Change
https://upload.wikimedia.org/wikipedia/.../1280px-A_Sunday_on_La_Grande_Jatte,_Georges_Seurat,_1884.png
AutomationAutomation
http://trendingchannel.com/wp-content/uploads/2013/01/China-car-production.jpg
Continuous Integration is a Continuous Integration is a mindset, not a tool.mindset, not a tool.
TestsTests
https://twitter.com/whatpaulsaid/statuses/596693825432776704
RefactoringRefactoring
http://factmontster.com/wp-content/uploads/2015/03/interesting-facts-about-brazil-favelas.jpg
Pair/Mob ProgrammingPair/Mob Programming
https://i.ytimg.com/vi/VDYsipu7KZQ/maxresdefault.jpg
MonitoringMonitoring
https://i.ytimg.com/vi/ZKpFFD7aX3c/maxresdefault.jpg
Literature (Old & New)Literature (Old & New)
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.
Questions?Questions?
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