CDI_Discussion_06202..

advertisement
Continuous Delivery Implementation
Internal adoption and DevOps proceses and tools within enterprise projects
Robbie Minshall
IBM Software, Rational
June 20 2013
© 2013 IBM Corporation
Agenda
https://jazz.net/wiki/bin/view/Main/ContinuousDeliveryImplementationMeetings
Purpose:
Describe and discuss the scope, initial thoughts and working environment for Continuous
Delivery Implementation
Agenda:
5 min: [Frank] Welcome and why this is important
15 min: [Robbie] Project overview and strategy
25 min: [All] Discussion. Open for all to state a perspective, describe problems or opportunities
that they are excited about. 5 min limit per topic.
10 min: [Robbie] Next steps
2
© 2013 IBM Corporation
3
Legend:
*: Contractor
^: Co-op
~: Supplemental
Dibbe Edwards
Rational Development VP
RTP, USA
???
Bulid & Install Manager
RTP, USA
Frank Varone
Manager Continuous
Delivery Infrastructure
RTP, USA
Xue Ming Zuo (Eric)
Dev Mgr; Workload Patterns
(Beijing, China)
Martha DasSarma – Build Lead
keeping the clm builds running
India (PfMgr: Pradeep Balachandran)
Divya Vidyadharan – Build
Robbie Minshall – Chief Architect
Mary Yost – Project Manager
Kevin Williams – Cloud/pattern Architect
Brad Herrin – Pattern / Automation
Jennifer Liu – Pattern / Automation
John Gambino^ - Automation
UK (PfMgr: Paul Strachan)
Kenneth Thomson – Pattern / Automation
Canada (PfMgr: Rodolfo Napoles)
Tanya Wolff – Pattern / Automation
Maneesh Mehra - Pipeline Automation lead
Thomas Picoli - SSE / Pipeline Automation
Thomas Neal - Pipeline
Christophe Elk – JAZZ IHD
Extended Team Members:
Jason Vasilew – IWD/ SCP / TSAM
India (PfMgr: Krishna Kishore)
Sanket Jain – Build
Canada (PfMgr: Judy Keen)
Li Zhu – Build
Mexico (PfMgr: Guadalupe Torres)
Dainer Zavala Priego – Build
Chris Daly – Install Lead
Corinna Schultz – Install
Zhi Cheng Liu
Xiang Yue Gao
Xue Po Wang
Ting Hui TH LI
TBH 2 in July
TBH 3 to do next version work
Yi Ming W Wang^
Sheng Rong SR^
UK (PfMgr: Paul Strachan)
Mark Anderson – Install
Alan Forbes – Build
Extended Team Members:
Rajeev Sikka – Install
Allen Zhou – Install
Christopher Maguire - Build
Peter Steinfeld - Build Architect
Chad D Montgomery - new open source prototype (Maven based)
- new build tooling strategy …
Nathan Bak – Jazz Platform
Guadalupe Torres – non clm builds
© 2013 IBM Corporation
Market shifts are fundamentally changing the way businesses
approach software driven innovation
Macro Business Environment
Empowered Users
Consumerization of IT drives
the need for apps with high
quality customer experience
Increasing regulatory environments drive
the need to reduce risk
Multi-sourcing
Increasing outsourcing drive
the need for governance
Big Data
Cloud
Social
Mobile
Technology Trends
Intelligent/
Connected Systems
Mobile, social, big data, cloud,
intelligent/connected systems
drive the need for agility
1. Clients are trying to rapidly innovate and become agile with systems of engagement
At the same time need to evolve their systems of records and manage regulatory compliance,
reduce costs by outsourcing and provide world class customer experience
2. The above factors have resulted in shift in purchase dynamics
Developers influencing LOB buyers for entire delivery stack (cloud, mobile, middleware, tools)
4
© 2013 IBM Corporation
Organizations that effectively leverage software innovation
outperform their competitors... yet few are able to deliver it effectively
86
%
of companies believe software delivery
is important or critical
But only…
25
%
of those who
leverage software
delivery today
69
%
outperform
those who don’t
leverage software delivery effectively today
5
Source: “The Software Edge: How effective software development drives competitive advantage,” IBM Institute of Business Value, March 2013
© 2013 IBM Corporation
Why is this important
 This is really really hard
 Continuous Integration, Test and Delivery of Software within non trivial landscape
 CLM Relevance
– 4th Major release
– Significant Legacy
– Historically this is the point where products struggle to delivery incremental value and innovation
 Rational
– Customers recognize that innovation is essential to their business and that software is the important part
of that (first time that it has ranked top of the list)
– Customers are looking for ways to increase speed of software innovation, the developer is king
– Rational should be as well positioned in this space. We are not.
6
© 2013 IBM Corporation
Executive Perspective
Rational Continuous Delivery adoption
2008
2010
2012 – 2013
Total Improvement
Project Initiation
30 days
10 days
2 days
28 days
Groomed Backlog
90 days
45 days
On-going
89 days
Overall TTD
120 days
55 days
3 days
117 days
Iteration Length
6 weeks
4 weeks
4 weeks
4 weeks
6
8
3
N/A
36 hours
12 hours
8 hours
400 %
N/A
18 hours
< 1hour
17 hours
Iteration Test Time
5 days
2 days
4 hours
4 days
Total Deployment Time
2 days
8 hours
2 hours
2 days
Overall TTP
9 days
3 days
15 hours
8 days
12 Months
12 Months
3 Months
9 Months
Lifecycle Measurements
Number of Iterations
Composite Build Time
BVT Availability
Time Between Releases
Consume and
Drive
Processes and
Culture
External
Deliverables
Measure and
Optimize Value
DevOps Transformation Project
Drive
adoption
© 2013 IBM Corporation
Continuous Delivery Example Maturity Model
Industry norm
Level 1
Level 2
Target attainment
Continuous
Business Planning
Collaborative
Development
Continuous
Testing
Continuous
Release and
Deployment
Continuous
Monitoring
8
8
Level 4
Level 5
• Real-time dashboard of
business value
attainment
• Integration of business
and customer metrics
• Full implementation of
lean principles
• Real-time integration
entire lifecycle spanning
from business objectives
to customer sentiments
• Business objectives
documented in silo
• Business objectives
linked to development
work items
• Ability to objectively trade
off requirements
• Visibility to development
status
• Ad-hoc build scripts
• Siloed developers
• Bare-bone SCM (e.g.
non-atomic commits)
• Nightly builds
• Usage of methodologies
(Agile, Scrum…)
• Basic SCM (basic
tagging, merging)
• Build on commit
• Publish to asset
repository
• Real-time work item
planning
• Build verification tests on
production-like
environments
• Advanced SCM (efficient
personal branch/merge)
• Lifecycle traceability
• Development intelligence
• Continuous process
improvement
• Use quality management
tools
• Continuous integration
testing w/service
virtualization
• Static code analysis
• Security testing
• Coverage analysis
• Risk-based testing
• Fully automatic
acceptance tests
• Ad-hoc deployment
scripts
• Self-service deploy to
test environments
• Mostly standardized
deployments
• Self-service deployment
to test and production
environments
• Fully standardardized
deployments
• Quality-gated automatic
promotions
• Deployment of all
application artifacts (e.g.
database updates)
• Coordinated SOA/multitier deployments
• Continuous deployment
to production
• Reactive performance
resolution (e.g. outage
alerts)
• Performance
instrumentation and
monitoring
• Real-time performance
dashboards
• Automated performance
tests as part of quality
gates
• Continuous performance
optimization
• Automatic crash reporting
• User session recording
and reporting
• In-app customer
feedback
• Log analysis
• Measuring customer
experience KPIs
• A/B, Split and
Multivariate testing
• Advanced business
impact analysis
• Big-data analysis
• Voice of the customer
investigation
• Self-evolving application
based on A/B testing
• Some test automation
Will be updated!!!!!
Continuous
Customer
Feedback and
Optimization
Level 3
© 2013 IBM Corporation
Back to the future: WAS Adoption of WCA
Background
Background and Challenges
Shorten time delivery time via Agile Processes
Provide meaningful dev & test environments
Increase Hardware Utilization
Decrease system admin costs
WCA Solution
Construct Private Cloud leveraging WCA
Seed Cloud with 6% of Infrastructure
Adopt and scale to 50% over 4 years
Realized Results
Realized Benefits
Deployment reduced from 3+ hours to 20 minutes
Hardware Utilization increased from 6% to 60%
User Deployment failures down from 50% to 5%
Complete Performance Environment as Patterns
Increased system admin efficiency 16 fold
Realized Results 1Q 2009 – 2Q2010
355 K in Labor efficiency gains
160 K in Infrastructure savings
Enabled Results due to Process Changes
2.1 million Labor efficiency gains
780 K / year downstream regression test savings
Projected Results
Projected CloudBurst Adoption Rate :
2010 = 6%,2011=20%,2012=40%,2013/14=50%
Benefit Summary:
Setup = 24K
Training = 36K
5 year return on investment = 10.4 Million
© 2013 IBM Corporation
Interact
Back to the future
WebSphere deploys private cloud driving Agile Adoption and
gain efficiencies throughout delivery
Client Pains
 Enable rapid access to complete testing
topologies to improve quality and
decrease costs
 Drive down costs and increase utilization
of infrastructure
Real Results
 1,700 K in direct savings, 2.1 Million/year in enabled efficiency.
 Reduced topology install time from 3 Hours to 20 Minutes.
Increased hardware utilization by 54% . Increased System Admin
efficiency by 1600% compared with bare metal.
© 2013 IBM Corporation
Back to the future: Recipes for success and lessons
 Improve developer experience and functional stability
 Realize internal efficiencies
 Adopt and drive IBM DevOps technologies
 Produce a functioning DevOps Reference Implementation
 Contribute to IBM thought leadership
© 2013 IBM Corporation
Desired Customer Perspective for Transformation Effort
To be honest we either never quite bought in, or were never successful with Agile Development. Frankly, while our development teams
may have been agile that did not really translate as we had hoped into faster application delivery. We really struggled with how to engage
our operations team and to meet the speed requirements for social and mobile applications. There was always this tension between the
development of those next generation applications and how that related to our traditional systems. Once you introduce public and private
cloud technologies into the equation we were lost and were looking for a model based on real results. I was sick of hearing the words Agile,
DevOps and Cloud, help me know how to realize some results.
The Rational DevOps Transformation project helped us make sense of this mess and I loved the transparency. Think of it as a DevOps
Reference Architecture, Adoption Path, Business Value Assessment and Deployable solution that not only tells the story of IBMs
transformation but provided a blueprint for ours.
It was first brought to our attention by our Executives who pretty much wanted to duplicate the results. We were skeptical but their transition
story was transparent and helped us understand a set of best practices and lessons.
One of the key takeaways was that we needed to invest in this transition. Ultimately there was of course exciting new technologies to adopt
but also changes in our organization and lines of business were necessary. The business value assessments created a model that
helped us with these adoption challenges.
From a technology standpoint we were able to pilot DevOps solution very quickly because we were able to take what IBM used internally
and deploy it quickly in order to demonstrate the value we were looking for.
From there it was a matter of integrating the functioning solution with out existing systems and creating a strategy for realizing value in our
Systems of Record as well as our emerging applications.
If you are looking for validation that DevOps is achievable based upon real results in a non trivial environment then check out the DevOps
Transformation Project and IBM DevOps technologies.
© 2013 IBM Corporation
~ 1 week
Developer Interaction
Production
Deployable Solution on Private Cloud
Draft Pipeline
Smarter Pipes Service
Manual Tests
Release
Dashboards
Production like
Development
uBuild
Jazz.net
Production
Production like
System Test
App Scan
Unit Test
Integration Test
Repository
Rational
Collaborative
Application
Lifecycle
Management
Function Test
Performance
Test
Integration Test
JazzHub
Production
Usability
Consume and
Drive
Processes and
Culture
External
Deliverables
Measure and
Optimize Value
Drive
adoption
DevOps Transformation Project
© 2013 IBM Corporation
Project Structure
14
© 2013 IBM Corporation
Emerging timeline
15
© 2013 IBM Corporation
Ways of working
 T skills
– Deep technical knowledge
– Broad awareness and contribution
 Deliver
– 90% of what YOU do should have a known customer or developer deliverable when you start
 Collaborate
– Engage the organization
 Win
– We will be measured by the developer experience
16
© 2013 IBM Corporation
Discussion
5 minute topics
Open for all to state a perspective, describe problems or
opportunities that they are excited about. 5 min limit per topic.
No Whining
17
© 2013 IBM Corporation
Discussion Point: Smart Pipes
 Problem: static test pipe of increasing complexity/value is too slow for continuous integration
 Constantly quantify the value of a test case in terms of it's reliability, it's history of finding
defects, the variety of systems that it finds defects in, and whether or not it is related to
change sets. For various build/integration purposes have a defined regression window.
Within that window dynamically organize the pipeline in the most optimal way to ensure the
driver is stable, to find regressions as quickly as possible and to begin expensive or time
consuming tests cases such as long runs earlier enough to matter.
 Said another way run the best tests to ensure stability, don't run stuff that never matters, run
the most relevant tests, run stuff concurrently not linearly, start valuable long running tests as
soon as stability is determined. Do all of this within a relevant execution window and provide
data and an assurance metric throughout the process.
 A smarter pipeline would become an important part of a best of breed Application Release
System that is necessary to differentiate IBM from open source ALM and emerging devOps
solutions.
 Question: With what | Who | When
Consume and
Drive
Processes and
Culture
External
Deliverables
Measure and
Optimize Value
Drive
adoption
DevOps Transformation Project
18
© 2013 IBM Corporation
Discussion Point: Delivery mechanisms to Production
 Jazz.net
 JazzHub
 Internal adopters (Hursley, and Rational)
 Workload Patterns
 DevOps developerWorks portal
 Traditional Deploy Repositories
Consume and
Drive
Processes and
Culture
External
Deliverables
Measure and
Optimize Value
Drive
adoption
DevOps Transformation Project
19
© 2013 IBM Corporation
Discussion Point: Applying service
 How should upgrades and service be applied in JazzHub and Jazz.net environments?
– Swim-lanes / Hold Cold
– Patch
– Rolling upgrades
 How are the same mechanisms used within the our delivery pipeline
 Do all new project requests get placed on latest available (JazzHub)
 How many topology deployments at a time (JazzHub)
Consume and
Drive
Processes and
Culture
External
Deliverables
Measure and
Optimize Value
Drive
adoption
DevOps Transformation Project
20
© 2013 IBM Corporation
Next Steps
What are the next steps
21
© 2013 IBM Corporation
Next Steps
 June – July (Learning, evaluation and communicating a perspective)
 Form mini projects with dedicated resources
 Create some initial horizontal teams
 Merge various efforts and understand what is not going to be done
 Establish baseline business value assessments
22
© 2013 IBM Corporation
Download