Upload
others
View
6
Download
1
Embed Size (px)
Citation preview
© 2014 Cisco and/or its affiliates. All rights reserved. 1
Achieving Fast IT With Continuous Delivery
Nicholas Pace Chief IT Architect Cisco Systems
10.22.2014
© 2014 Cisco and/or its affiliates. All rights reserved. 2
© 2014 Cisco and/or its affiliates. All rights reserved.
TECHNOLOGY
Fast IT is…
• Adaptability to changing business needs
• Informed decision making
• Measurable results
• Leveraging people, process, and technology to
increase productivity – Continuous Delivery.
Image: http://pixabay.com/en/cheetah-running-speed-animal-fast-48433/ (Public Domain)
© 2014 Cisco and/or its affiliates. All rights reserved.
Continuous Delivery and DevOps in IT
• Continuous Delivery is s-s-s-Scary!
Because change is scary
Because the unknown is scary
Image: http://ruina.deviantart.com/art/All-Hallows-Eve-Greetings-334838487 (Licensed Under Creative Commons)
© 2014 Cisco and/or its affiliates. All rights reserved.
Continuous Delivery and DevOps in IT
• Continuous Delivery is s-s-s-Scary!
Because change is scary
Because the unknown is scary
• If it’s painful, do it more often!
• Develop IT capabilities like software
Decompose the problem space
• Treat infrastructure as code
Automate almost everything
• Remember Conway’s Law
Architectures reflect organizational
structure.
Image: http://commons.wikimedia.org/wiki/File:Agile-vs-iterative-flow.jpg (Licensed Under Creative Commons)
© 2014 Cisco and/or its affiliates. All rights reserved. 6
CONTINUOUS DELIVERY BLUEPRINT
SOURCE CONTROL
DISTRIBUTED
CENTRALIZED
• GIT/STASH • MERCURIAL
• SVN • CLEARCASE • PERFORCE
IDE • ECLIPSE • NETBEANS • VISUAL STUDIO
ALM • RALLY • JIRA
REPORTING • SONARQUBE
• ARTIFACTORY • NEXUS
CONTINUOUS INTEGRATION STATIC ANALYSIS
• COVERITY • PMD • FINDBUGS • JTEST
TEST AUTOMATION
UNIT • JUNIT • TESTNG • NUNIT
INTEGRATION • SELENIUM • SPOCK/GEB
UAT • SELENIUM • JMETER • LOADRUNNER
CODE COVERAGE • CLOVER • EMMA
BUILD TOOLS
MANAGED
UNMANAGED
• JENKINS • BAMBOO • TEAMCITY • CRUISECONTROL
SUPPORT LEGEND • ENGIT SUPPORTED • ENGIT PLANNED • COMMON ALTERNATIVE
CODE REVIEW • GERRIT • CRUICIBLE
SEARCH
• PATTERN INSIGHT
• FISHEYE • ANT • MAKE
• ELECTRIC CLOUD
• GRADLE • MAVEN CI SERVER
ARTIFACT REPO
DEFECT TRACKING • RALLY • JIRA
REQUIREMENTS
TA
SK
S
EXECUTION
CO
DE
FE
ED
BA
CK
RELEASE
DEFECTS
DE
FE
CT
S
CO
DE
CODE
TE
ST
RE
SU
LT
S FE
ED
BA
CK
RE
SU
LT
S
INSTRUMENTATION
PUBLISHED ARTIFACTS
4B
4A
3
2 1
5
6
7
8
11
12
9
10
13
DEPENDENCIES
© 2014 Cisco and/or its affiliates. All rights reserved.
Challenges for a Large Enterprise
• Cultural Change
Employ an educational campaign
Inspire by example
Remove the training wheels (Don’t be afraid to fail & fail early)
• Technology Transformation
The problem of choice – simplify it
Fighting the decisions of the past
Not a silver bullet
• Position Yourself for Success
Continuous delivery is a journey
Leverage your strengths & acknowledge your
weaknesses
Be pragmatic - SMART.
Image: https://www.flickr.com/photos/lwr/8340655861/ (Licensed Under Creative Commons)
© 2014 Cisco and/or its affiliates. All rights reserved.
Achieving Mindshare
• Think pervasively
Management and individual contributors
• Eye on the prize
Beware of scope creep
Demonstrate benefit
• Socialize
Success and failure.
Image: https://www.flickr.com/photos/timailius/2295695164/ (Licensed Under Creative Commons)
© 2014 Cisco and/or its affiliates. All rights reserved.
Dealing With Legacy
• IT assets are not a fine wine
• Mind your technical debt
• Agility means rework more often,
but less rework overall
• Get vendors on board
• Get customers on board
• Last resort: Isolate and confine the
problem areas.
Image: https://www.flickr.com/photos/iras_azy/3797142470/ (Licensed Under Creative Commons)
© 2014 Cisco and/or its affiliates. All rights reserved.
Being Pragmatic
• Take one step at a time
• Your adoption strategy should exercise the same
principles you intend to embrace
• Test the waters
• Develop your own blueprint (or use others’)
• Get your bearing using a maturity matrix…
Image: http://pixabay.com/en/steps-stairs-up-staircase-stairway-388914/ (Public Domain)
© 2014 Cisco and/or its affiliates. All rights reserved.
Meshing Operations and Continuous Delivery
• Build cross-functional teams
And sidestep Conway’s Law
• Artifacts become the handoff
Create a pipeline of work
Employ build promotion
• Goal: Every build is deployable
No last-minute tweaks before release
• Deploying COTS? No problem!
Skip code compilation
Include everything else.
Image: http://blog.octo.com/en/continuous-delivery-how-do-we-deliver-in-3-clicks-to-7000-machines/
© 2014 Cisco and/or its affiliates. All rights reserved.
Considerations for Successful CD Adoption
• Organizational Structure
Cross-functional teams improve communication
• Software Architecture
Dependency Injection
Microservices
Feature toggles
• Infrastructure Capabilities
Virtualization, SDN, Cloud
• Development Platforms
Pick tools for productivity, not just coolness
• Gamification to increase productivity
Work environment fun = good
Work itself fun = better
• COTS Applications
CD is not just for software development. Image: http://commons.wikimedia.org/wiki/File:Chess-king.JPG (Licensed Under Creative Commons)
© 2014 Cisco and/or its affiliates. All rights reserved. 15
© 2014 Cisco and/or its affiliates. All rights reserved.
Cisco Services Technology Group
• Embracing Continuous Delivery to develop
custom solutions for customers
• Project Falcon: Multi-year improvement effort
since FY14
• Training and certification program
• 1000+ members trained
• $4.1M FY14 savings in productivity
enhancements
• $8.1M FY14 return on investment.
© 2014 Cisco and/or its affiliates. All rights reserved.
Cisco Meraki: “Make a Wish” Feature Request
• Cloud infrastructure
• Automated deployment
• Work area status displays
• < 30 min to deploy change.
See also: https://meraki.cisco.com/blog/2014/07/make-a-wish-2-0/
© 2014 Cisco and/or its affiliates. All rights reserved.
Corporate IT
• IT Delivery Transformation
Accelerator
• Holistic technology, process,
and culture change
• Jenkins CI central aspect
• Graduated certification program.
Questions?
Thank you.