Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
CONTINUOUS DELIVERYPRINCIPLES, PRACTICES, EXPERIENCES, AND CHALLENGES
How many of you have heard ofContinuous Delivery?
WHO AM I?Director of Payments Engineering at IPC15 years experience in software engineeringQuick Service Restaurant, Defense/Intelligence, Health, and TourismAgile and Sequential development methodsWashington DC, London, Amsterdam, and Miami
THE PLANPresent a rapid yet comprehensive overview of continuous deliveryShare war stories about our own continuous delivery adoption experience
CD = Continuous Delivery
WHEN YOU DON’T DELIVER FREQUENTLYProblems are discovered only late into the integrationDeployment becomes a lengthy and painful experience, followed by weeks of bug-fixing and firefightingLong delays before knowing the effectiveness of the product
CONTINUOUS DELIVERY GOALSMake project progress always obvious and tangibleSupport early discovery and gradual incremental development of productsReduce the gap between customers, business, and IT
WHAT IS CONTINUOUS DELIVERY?Discipline where you build software in such a way that the software can be released to production at any timeSet of principles, collaboration practices and engineering techniques, skills and toolsAffects entire lifecycle:conception, development, testing, deployment,operations and support, and enhancements
PRINCIPLESCreate a repeatable, reliable way to release softwareContinuously improveEverybody owns the delivery process
COLLABORATION PRACTICESDevelopers and Operations collaborate closely for the release, support, and operationsProduct Development, Marketing, and Sales cooperate with IT in defining the minimum viable product (MVP)IT helps Product Development and Marketing to monitor the product in production
TECHNICAL PRACTICES OF CDTest-driven developmentContinuous integrationFeature togglesAutomated deploymentAutomated InfrastructureDeployments with no downtimeMicro servicesMonitoring of application data
DEPLOYMENT PIPELINEFirst-class concept of any CD implementationModels your process for getting software from version control into the hands of your usersImplements each stage that every change to your software will go throughVisualizes in real time the status of the product development
IPC’S VP3 DEPLOYMENT PIPELINE
IPC’S VP3 DEPLOYMENT PIPELINE
IPC’S VP3 DEPLOYMENT PIPELINE
IPC’S VP3 DEPLOYMENT PIPELINE
IPC’S VP3 DEPLOYMENT PIPELINE
BENEFITS IPC IS SEEINGIncreased throughput of new features while stabilizing production systemsClosed the gap between the Market, the Business, and ITProvided many opportunities for improvement and excellenceReduced risk and wasteIncreased quality, resilience,responsiveness, and innovation
CHALLENGES IPC IS OVERCOMINGInternal factors
Information silosSpecialized functional teamsHigh levels of confidentialityFear of failureResistance to change
CHALLENGES IPC IS OVERCOMINGExternal factors
Compliance with external regulationsDependency on external resourcingDependency on external collaboratorsLegacy technology
CONTINUOUS DELIVERY RETROSPECTIVEWhat is the value of CD to the needs and opportunities of our organization?How is the current implementation of CD effective to meet our goals?What are the next most-beneficial improvements?
RESOURCESThe Phoenix Project: A Novel About IT, DevOps, and Helping Your Business Win, Gene Kim, Kevin Behr, and George Spafford (2013)Continuous Delivery, Jez Humble and David Farley: Addison-Wesley (2010)Continuous Integration: Improving Software Quality and Reducing Risk, Paul Duvall: Addison-Wesley Professional (2007)"A Conversation with Werner Vogels" ACM Queue, 4(4), (2006, May)
Q & A
Make it happen!Thank you!
Daniel Silva | [email protected]@danielsweb | http://medium.com/@danielsweb