With an ever-increasing array of tools and technologies claiming to 'enable DevOps', how do we know which tools to try or to choose? In-house, open source, or commercial? Ruby or shell? Dedicated or plugins? It transpires that highly collaborative practices such as DevOps and Continuous Delivery require new ways of assessing tools and technologies in order to avoid creating new silos. Matthew Skelton shares his recent experience of helping many different organisations to evaluate and select tools to facilitate DevOps; the recommendations may surprise you.
Software Project Health Check: Best Practices and Techniques for Your Product...
How to choose tools for DevOps and Continuous Delivery - DevOps Cardiff
1. How to choose tools for DevOps and Continuous Delivery
Matthew Skelton, Skelton Thatcher Consulting
DevOps Cardiff meetupgroup, 5thNovember 2014, Cardiff, Wales
#devopscardiff
3. Matthew Skelton
•15 years building & operating software systems
•Cybernetics + Neuroscience
•control engineering
•psychology
•‘network’ interactions
@matthewpskelton
7. Common themes
•Online since ~1999
•Successful in their sector
•Large, central core database(s)
•Non-aligned goals
•Need to adopt DevOps and Continuous Delivery
8. Common needs
•Technology selection ticklists
•Team interactions
•Collaboration opportunities
•Tools as catalysts
9.
10. Continuous Delivery
•A scientific approach to changing software systems (Dave Farley)
•Regular, rapid, repeatable, reliable changes
13. DevOps
“Highly effective, daily collaboration between software developers and IT operations people to produce relevant, working systems” *
*also QA/Testing, IT Service Desk, Programme Management, Commercial, Marketing, etc.
28. What we did
•Built a walking skeleton pipeline
•Modelled security roles and stages
•Included manual steps (at first)
•Walked people through steps
•Finally: opened firewall so everyone could see the UI
29. Results
•Security: happy
•Service team: relieved (& happy)
•Developers: won over (& happy)
•Business: surprised (& happy)
34. Collaboration & tool choice
Value collaboration as a key criterion
Orthogonal to main purpose (?)
“How does [the use of] this tool help people to collaborate?”
48. Mel Conway, 1968
“organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations”
http://www.melconway.com/Home/Conways_Law.html
54. Conway & Tool Choice
See the organisation as a system
Separate tools for separate teams
Shared tools for collaborative teams
http://bit.ly/DevOpsTopologies
55. Conway’s Law
•Allan Kelly -@allankellynet
•https://vimeo.com/channels/londoncd
56.
57. How to choose tools for DevOps
Value collaboration aspects
Avoid a learning mountain: evolve tooling
Avoid Production-only tools
Consider Conway’s Law
(this list is incomplete!)
58. Further reading
Build Quality In
buildqualityin.com
70% of royalties donated to Code Club
Discount for @DevOpsCardiffpeople: http://leanpub.com/buildqualityin/ c/DevOpsCardiff2014
Contributors include:
-James Betteley
-Marc Cluet
-Anna Shipman
-John Clapham