Upload
roberto-pozzi
View
2.240
Download
3
Tags:
Embed Size (px)
DESCRIPTION
This presentation is the result of several engagements with clients on the topic of software lifecycle management and continuous delivery. I acknowledge the contribution of Daniel Berg (Chief Architect, DevOps Tools & Strategy) for all the slides related to DevOps and IBM DevOps Strategy
Citation preview
© 2013 IBM Corporation
Enabling Continuous Delivery:the IBM solution
Roberto Pozzi
Rational Technical Sales & Solution
© 2013 IBM Corporation
AGENDA
� DevOps: contesto attuale e necessità
� DevOps: diversi path di adozione
� Software Lifecycle & Deployment Automation
2
© 2013 IBM Corporation3
Software delivery is critical to success
3
86%
of companies believe software delivery
is important or critical
25%
leverage software delivery effectively today
But only
Source: “The Software Edge: How effective software development drives competitive advantage,” IBM Institute of Business Value, March 2013
69%
outperform
those who don’’’’t
of those who
leverage software
delivery today
© 2013 IBM Corporation
Market shifts require a new approach to software delivery
Mobile
Cloud
Intelligent/ConnectedSystems
Social
Big DataInstrumented Products
Drive the need for agility
Technology Trends
Evolving Customer Expectations
Changing Business Environment
Multi-sourcing Supply Chain
4
© 2013 IBM Corporation
Challenges
Costly, error prone processes
Risk of instability
Slow deployments
Success requires the ability to manage the expanded lifecycle and software supply chain
Operations/ProductionDevelopment/TestCustomers Business Owners
5
© 2013 IBM Corporation
Embrace a DevOps ApproachAn enterprise capability for continuous software delivery that enables clients
to seize market opportunities and reduce time to customer feedback
DevOps Lifecycle
Continuous Innovation, Feedback and Improvements
Operations/ProductionDevelopment/TestCustomers Business Owners
6
© 2013 IBM Corporation
AGENDA
� DevOps: contesto attuale e necessità
� DevOps: diversi path di adozione
� Software Lifecycle & Deployment Automation
7
© 2013 IBM Corporation
DevOps Adoption Paths
DevOps Foundation
Open Lifecycle and Service Management Integration Platform
OSLC
Ec
os
ys
tem
Be
st P
rac
tices
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
DevOps Lifecycle
Continuous Innovation, Feedback and Improvements
Operations/ProductionDevelopment/TestCustomers Business Owners
8
© 2013 IBM Corporation
Develop
and Test
Collaborative Development
Link Systems of
Record to Systems
of Engagement
Bridge Mainframe
and Mobile Skills
Continuous Delivery
Open Lifecycle and Service Management Integration Platform
9
� IBM Rational solution for Collaborative Lifecycle Management
� IBM Rational Lifecycle Integration Adapters- CA Clarity and direct Rational Requirements Composer to HPQC synchronizer
� IBM Rational Developer Family including RAD and Worklight Studio
� IBM Enterprise COBOL for z/OS
© 2013 IBM Corporation
SOA / REST Third-party
Services
Mainframe
ApplicationsDatabases
Mobile Application
Server
Mainframe Test
Environment
Multiplatform Application Testing
Develop
and Test
Continuous Testing
Multichannel, multi-tiered
test execution
Virtualized services
remove test bottlenecks
Comprehensive test
automation solution
10
� IBM Rational Test Workbench
� IBM Rational Test Virtualization Server
� IBM Rational Performance Test Server
� IBM Rational Quality Manager
� IBM Rational Development and Test Environment for System z
© 2013 IBM Corporation
Release
and Deploy
Continuous Release and Deployment
IBM SmartCloud Orchestrator
11
� UrbanCode Deploy and Release
� IBM SmartCloud Orchestrator
© 2013 IBM Corporation
AGENDA
� DevOps: contesto attuale e necessità
� DevOps: diversi path di adozione
� Software Lifecycle & Deployment Automation
12
© 2013 IBM Corporation
DevOps Adoption Paths
DevOps Foundation
Open Lifecycle and Service Management Integration Platform
OSLC
Ec
os
ys
tem
Be
st P
rac
tices
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
DevOps Lifecycle
Continuous Innovation, Feedback and Improvements
Operations/ProductionDevelopment/TestCustomers Business Owners
13
© 2013 IBM Corporation
Patterns of challenges
Differences in dev and
ops environments cause
failures
Greater demand for faster
and more frequent
releases
Manual (tribal) processes
for release lack
repeatability/speed
Lack of feedback and quality
metric leads to missed
service level targets
Daily
Build
Release
Who did
this last
time?
DaveE
Dave’s
not here
manE
Dev
Prod
© 2013 IBM Corporation
Adoption approaches
Track and Plan activities
Version source and
configurations
Automate as many manual
processes as possible
Test user function
Audit and Monitor system and
customer satisfaction
Dashboard results in highly
visible and easy to read graphs
Application Artifacts
Application
Code
Application
Code
Instrumentation
and
Configuration
Instrumentation
and
Configuration
Runtime
Environment
Definition
Runtime
Environment
Definition
Dev Test
Ops
Version
Automate
Test
Track and
Plan
Audit and
Monitor
Dashboard
© 2013 IBM Corporation
Application Release Management
Cloud ProvisioningApplication Deployment Automation
Reference Architecture
Collaborative Lifecycle
Management
Continuous
Integration
• Track Activities
• Ticketing
• Version Management
• Artifacts traceability
• Real-time planning
• Coding
• Unit testing
• SW Quality check
• Automate build
• Track build content
Deployment
• Automate Deployment
• Track environment content
Quality Management
• Test planning
• Test environment provisioning
• Integration Test
• Test Virtualization
Line of
Business
Demand Mgmt &
Analisi
Release Management
• Plan
• Organize
• Track
© 2013 IBM Corporation17
Application Release Management
Cloud ProvisioningApplication Deployment Automation
Reference Architecture
Rational Team Concert
Rational Application Developer
Rational Developer for Z
Rational BuildForge
IBM Urbancode Deploy
Rational Quality Manager
Rational Test Workbench
Rational Test Virtualization Server
Line of
Business
IBM Urbancode Release
Rational Focal Point
Rational Requirements Composer
© 2013 IBM Corporation
DevOps Adoption PathsDevelopment and Test
DevOps Foundation
Open Lifecycle and Service Management Integration Platform
OSLC
Ec
os
ys
tem
Be
st P
rac
tices
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
DevOps Lifecycle
Continuous Innovation, Feedback and Improvements
Operations/ProductionDevelopment/TestCustomers Business Owners
18
© 2013 IBM Corporation19
Application Release Management
Cloud ProvisioningApplication Deployment Automation
Reference ArchitectureDevelop and Test
Rational Team Concert
Rational Application Developer
Rational Developer for Z
Rational BuildForge
Rational Quality Manager
Rational Test Workbench
Rational Test Virtualization Server
Line of
Business
© 2013 IBM Corporation
Rational Team Concert – Functional Overview
© 2013 IBM Corporation
Work items
21
Predefined, custom and personal
queries
Subscribe to work items you're interested in
Query results
Integrated discussion threads
Understands and persists work item’s
relationship to SCM and build
artifacts
© 2013 IBM Corporation22 The Value of Continuous Integration
Continuous Integration Concepts
Build System
Commited level
Temp level
Commited level
Temp level
Head level
Build output
Build ouput
Build output
(a) Maintain a code repository
Source Code Repository
(d) Automate the
build
Automated test
Automated test
Automated test
Team
(b) Everyone commits
every day
(c) Every commit (mainline too)
should be built
(e) Keep the build fast
• (g) Make it easy to get the
latest deliverables
• (h) Everyone can see the
results of the latest build
(j) Test in a clone of the
production environment
(i) Automate
deployment
Production like Systems
(k) Make your Build
self testing
© 2013 IBM Corporation
Continuous Integration Concepts
Build System
Commited level
Temp level
Commited level
Temp level
Head level
Build output
Build ouput
Build output
(a) Maintain a code repository
Source Code Repository
(d) Automate the
build
Automated test
Automated test
Automated test
(b) Everyone commits
every day
(c) Every commit (mainline too)
should be built
(e) Keep the build fast
• (g) Make it easy to get the
latest deliverables
• (h) Everyone can see the
results of the latest build
(j) Test in a clone of the
production environment
(i) Automate
deployment
Production like Systems
(k) Make your Build
self testing
23 The Value of Continuous Integration
Team
© 2013 IBM Corporation
Advanced source code management
Easily suspend and resume work
Reproduce the exact workspace of any build
Work in parallel without making branch copies
© 2013 IBM Corporation25
Team of Team Stream
Team Streams
Developer Streams
Work in different promotion levels imposing quality gates
© 2013 IBM Corporation
�Find anti-patterns
and lame code
�Over 200 Java rules
with quick fixes
�Highly extensible
RAD uniquely helps withE Static Analysis
© 2013 IBM Corporation
–Find bad code or test suite gaps
–Use coverage statistics to manage
risk, quality, and investment
–Dynamically reset coverage
statistics at WAS launch
–Integration with Rational Team
Concert:
• prevent checking in of code
with missing or poor results
• open work items directly from
undesirable coverage results
RAD
RTC client
RAD
RTC client
Coverage results on
the latest build are
sketchy. I’ll open a
bug, and may
enable check-in
advisor.
Oooh – A bug! I’ll
import the results,
study them in the
Java editor, and
resolve the issue.
Team Lead
Continuous
builds
Developer
Check-in
advisor
RAD uniquely helps withE Code Coverage Analysis
© 2013 IBM Corporation
Automating Quality checks
28
RTC allows to control software quality by imposing and automating quality checks, as an
example:
– Require JUnit Test execution before releasing in a “Committed Level” Stream
– Prohibit release in a “Committed Level” Stream if Test Code Coverage is under a certain
level
© 2013 IBM Corporation29 The Value of Continuous Integration
Continuous Integration Concepts
Build System
Commited level
Temp level
Commited level
Temp level
Head level
Build output
Build ouput
Build output
(a) Maintain a code repository
Source Code Repository
(d) Automate the
build
Automated test
Automated test
Automated test
Team
(b) Everyone commits
every day
(c) Every commit (mainline too)
should be built
(e) Keep the build fast
• (g) Make it easy to get the
latest deliverables
• (h) Everyone can see the
results of the latest build
(j) Test in a clone of the
production environment
(i) Automate
deployment
Production like Systems
(k) Make your Build
self testing(f) Make your Build
self testing
© 2013 IBM Corporation
© 2008 IBM Corporation© 2008 IBM Corporation
Builds – Extensible Continuous IntegrationRun personal builds
to check your changes before sharing them with
the team
Create build servers Identify work items and change sets that went into the build
Historical view of the build queue with status
Even reconstruct a work space from a
failed build!
© 2013 IBM Corporation
DevOps Adoption PathsRelease and Deploy
DevOps Foundation
Open Lifecycle and Service Management Integration Platform
OSLC
Ec
os
ys
tem
Be
st P
rac
tices
Monitor and Optimize
Plan and Measure Develop and Test Release and Deploy
DevOps Lifecycle
Continuous Innovation, Feedback and Improvements
Operations/ProductionDevelopment/TestCustomers Business Owners
31
© 2013 IBM Corporation32
Application Release Management
Cloud ProvisioningApplication Deployment Automation
Reference ArchitectureRelease and Deploy
Rational BuildForge
IBM Urbancode Deploy
Line of
Business
IBM Urbancode Release
© 2013 IBM Corporation
IBM Urbancode Deploy
Automating deployment of applications across dev, test, and production environments
33
IBM UrbanCode DeployApplicationDeploymentAutomation
© 2013 IBM Corporation
Application – Component Model
Components
– Tiers or services
Environments
– Target servers
– Servers have roles
– Environment Specific Configuration
Processes
– Coordinates Component processes
34
© 2013 IBM Corporation
IBM Urbancode Deploy configuration settings
35
© 2013 IBM Corporation
IBM Urbancode Deploy process designer
36
© 2013 IBM Corporation
Snapshots – A Version of the App
Creating a Snapshot
Component Versions
1
1
2
2
3
3
321Web
Mid. Code
DB
Snapshot
3
2
1
Mid. Config 1 2 3 3
Snapshot Deployment
ENVSnapshot
3
2
1
WEB HOST
MID HOST
DB HOST
2
1
1
3
2
X
3 3 1
Contents of environments that pass tests
• contain deployable version and configuration
Deployments are based on deltas
They help with:
� Automation, Audit, and Visibility
37
© 2013 IBM Corporation
IBM Urbancode Deploy environment inventory
38
� Manage application components and
versions
� Manage environment configuration from
dev/test through production38
� Compliance: audit trails quality gates
� Easy to use process designer
� Inventory: what is where
© 2013 IBM Corporation
Application Lifecycle Management Integrations For Continuous Delivery and end-to-end release planning
With Rational Build Forge
39
IBM UrbanCode DeployRational Build Forge
Source
config type
Why This Matters
Combine build and release
automation with application
deployment automation
How? Automatically
publish built artifacts to
IBM UrbanCode Deploy
Key Benefits
End-to-end delivery process
How? Leverages both
tools in the way they
were designed to
operate.
IBM UrbanCodeDeploy v6.0
© 2013 IBM Corporation
Integration Scenario
© 2013 IBM Corporation
IBM Urbancode Deploy works in heterogeneous environments
Deployment Sources
Build servers
Source control tools
Maven repositories
IBM Integrations
RTC / ClearCase / Synergy
WebSphere Application Server
MQ
Message Broker
Other Java Platforms
WebLogic, Tomcat, Jboss, etc
Quality & Change Management
QualityCenter
Remedy
ServiceNow
Microsoft Platform
IIS
SharePoint & Biztalk
Infrastructure
Public / Private Cloud
Load Balancers
DataBases
41
© 2013 IBM Corporation42 4242
© Copyright IBM Corporation 2012. All rights reserved. The information contained in these materials is provided for informational purposes only, and is provided AS IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, these materials. Nothing contained in these materials is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. References in these materials to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in these materials may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. IBM, the IBM logo, Rational, the Rational logo, Telelogic, the Telelogic logo, and other IBM products and services are trademarks of the International Business Machines Corporation, in the United States, other countries or both. Other company, product, or service names may be trademarks or service marks of others.
Thank You
Merci
Grazie
Gracias
Obrigado
Danke
Japanese
English
French
Russian
German Italian
Spanish
Brazilian / Portuguese
Arabic
Traditional Chinese
Simplified Chinese
Hindi
Tamil
Thai
Korean
TakTakDanish
TackTackSwedish
AčiūAčiūLithuanian