IBM Continuous Delivery with
UrbanCode Deploy & UrbanCode Release
Agenda
Introductions
DevOps Overview
Introducing UrbanCode
UrbanCode Deploy
UrbanCode Release
IBM Integrations
IBM DevOps
Enterprise capability for continuous software delivery that enables clients to seize
market opportunities and reduce time to customer feedback
Continuous
Business Planning
Accelerate
software delivery
faster time to value
Plan
& Measure
Continuous
Monitoring
Balance speed, cost,
quality and risk
increased capacity to
innovate
Reduce time to customer
feedback
improved customer
experience
Monitor
& Optimize
Continuous
Customer
Feedback and
Optimization
Continuous
innovation,
feedback and
improvements
Collaborative
Development
Develop
& Test
Release
& Deploy
Continuous Release
and Deployment
Continuous
Testing
Enabling a DevOps approach
Enterprise capability for continuous software delivery that enables the
business to seize market opportunities and reduce time to customer feedback
DevOps Lifecycle
Customers
Business Owners
Development/Test
Operations/Production
Plan and Measure
Develop and Test
Release and Deploy
Monitor and Optimize
DevOps Foundation
Open Lifecycle and Service Management Integration Platform
OSLC
Best Practices
Ecosystem
Continuous Innovation, Feedback and Improvements
Continuous Delivery Adoption Maturity
Common Source Control
Automated Builds (Build Definitions)
Continuous Integration (CI)
Automated Delivery
Continuous Delivery to Test (CD)
Continuous Delivery to Production-like
Systems (Infrastructure as Code)
Continuous Delivery thru Prod
Agile Initiative: Heatmap based roadmap
DevOps Maturity Model
Agile
Agile
Initiative
Initiative
Quality
Improvement
Level of importance:
Continuous
Delivery
Market
Experimentation
Critical
Important
Mobile
Transformation
Nice to Have
SW-Defined
Environments
Not Necessary
Plan /
Measure
Develop /
Test
Release /
Deploy
Monitor /
Optimize
Strategy
Code
Deployment
Monitoring
Requirements
Test
Provisioning
Customer
Feedback
Dashboards/
Analytics
Change
Management
Legacy
Systems
DevOps and Cloud adoption
Automating for faster delivery with DevOps and cloud
UC Deploy
Traditional
On-Premises
Infrastructure
as a Service
Applications
Applications
Data
UC Deploy
Mid Config
Man/Auto
Data
Platform
as a Service
JazzHub
(SaaS)
Applications
Data
Mid Config
Mid Config
Middleware
Middleware
O/S
O/S
O/S
Virtualization
Virtualization
Virtualization
Servers
Servers
Storage
Storage
Networking
Networking
Middleware
Man/Auto
Manual
PureApplication
System
SmartCloud
Orchestrator
SoftLayer
Codename:
BlueMix
Servers
Storage
Networking
Customization; higher costs; slower time to value
Standardization; lower costs; faster time to value
Investing in Release Automation …
Introducing UrbanCode
Enabling clients to more rapidly deliver mobile, cloud, big data and traditional applications with high
quality and low risk
Drive down cost
Remove manual effort and wasted resource time
with push button deployment processes
IBM UrbanCode Deploy automates the deployment of applications,
databases and configurations into development, test and production
environments, helping to drive down cost, speed time to market with
reduced risk.
Speed time to market
Reduce risk
IBM UrbanCode Release is an intelligent collaboration release
management solution that replaces error-prone manual spreadsheets
and streamlines release activities for application and infrastructure
changes.
Robust configuration management, coordinated
release processes, audits, and traceability
https://www.ibmdw.net/urbancode/
Simple, graphical process designer, with built-in
actions to quickly create deployment automation
Continuous Delivery Pipeline
IBM DevOps Solution
IBM’s DevOps solution is built on an open standards based platform and a set of
services which enable clients to leverage open source and third party tools
Rational Focal Point
Rational Requirements Composer
Line of
Busine
ss
Rational Team Concert
11
IBM UrbanCode
Release
IBM UrbanCode
Deploy
Jenkins
SmartCloud Orchestrator
IBM Pure Application System
Rational Build Forge
Rational Asset Manager
Rational Quality Manager
Rational Test Workbench
Rational Test Virtualization Server
Rational Development and Test
Environment for System z
InforSphere Optim Test Data Mgmt
SmartCloud Application
Performance Management
IBM UrbanCode Release
IBM UrbanCode Deploy
UrbanCode solutions deliver business results
International Investment Firm
Online Retailer
Driving Down Costs
Speeding Time-to-Market
Release process required considerable effort
and delayed by manually-introduced errors
Significant delays getting application
changes to production
Solution: Automated release process
Solution: Scaled up continuous deployment
Results: Cost avoidance of over $2.3M/year,
reduced release time from 2-3 days to
1-2 hours and virtually eliminated test team
“down-time”
Results: Deployment time reduced by
over 95% with easy scale and deploying
to over 250 servers within 2 months
of implementation
Higher Education
SaaS Software Provider
Speeding Time-to-Market
Reducing Risk
Agile development teams constrained by
slow deployment to dev and test environments
Difficulty managing multiple customer
configurations and versions of software
deployed across servers
Solution: Accelerate deployment by enabling
development teams to self deploy with
automation
Results: Deployment cut from hours to
minutes, to a greater number of servers, with
fewer resources
Solution: Automate managing configuration
and version deployment
Results: Execute customer specific releases,
reduced deployment outages by over 90%
IBM Release and Deploy Value Proposition
UrbanCode compliments IBM DevOps solution enabling clients to more rapidly deliver software
IBM DevOps solution helps clients:
Reduce errors: Automated software release and
deployment
Improve productivity: Push-button deployments for
developer and operations
Application Blueprint
Faster time-to-market: Automated release and
deployment with built-in best practices provides
Compliance and auditability: Enforced Security and
traceability
Versioned
Artifacts
UrbanCode Deploy orchestrates and automates the
deployment of applications, middleware configuration,
and database changes into development, test and
production environments, accelerating time to market,
driving down cost while reducing risk.
UrbanCode Release transforms error-prone and
chaotic release planning into streamlined release
events, replacing spreadsheets with a collaborative
solution that eliminates breakdowns in communication
enabling more frequent releases at lower risk.
Artifacts
Development
Release
Artifacts
QA
Release
Artifacts
Product
Release
Execute Against
Execute Against
Execute Against
Development
Environment
QA
Environment
Production
Environment
IBM UrbanCode Deploy
Application Deployment Automation
Deployment of Applications across Environments
Manage application components
and versions
Compliance: audit trails quality gates
Easy to use visual process designer
Manage environment configuration
Inventory: what is where
from dev/test through production
IBM UrbanCode Deploy
Application – Component Model
Components
– Tiers or services
Environments
– Target servers
– Servers have roles
– Environment Specific Configuration
Processes
– Coordinates Component processes
IBM UrbanCode Deploy
UrbanCode Deploy process designer
Versioned Processes
Navigation
View
Drag and Drop
Interface
Extensible pallet
of Available
Actions
IBM UrbanCode Deploy
Snapshots – A Version of the App
Snapshot Deployment
Creating a Snapshot
Component Versions
Snapshot
Web
1
2
3
3
Mid. Code
1
2
3
2
ENV
Snapshot
3
3
2
2
2
1
WEB HOST
MID HOST
Mid. Config
1
2
3
3
3
3
1
DB
1
2
3
1
1
X
1
• Contents of environments that pass tests
• contain deployables and config
• Deployments are based on deltas
• They help with:
Automation, Audit, and Visibility
DB HOST
IBM UrbanCode Deploy – Plug-ins
•
•
•
59 plug-ins from15 different vendors and open source organizations
Broad range of plugins supported:
• Application servers
• Databases
• Messaging platforms
• Test automation
• Issue tracking systems
• Operating system services
• Cloud platforms
• Issue tracking
• Even more…
Plug-ins can be downloaded for free from
https://www.ibmdw.net/urbancode/plugins/
Recent UrbanCode Release Improvements
v6.0 and v6.0.1
Rational Team Concert
Integration
– Change Management
– OSCL Integration
– Mapping
– RTC Delegated UI Dialogs
– Release Progression
Release Impact Analyses
Pipeline View
Federated Deployment
Dashboard
IBM UrbanCode Release
Release planning and orchestration
Qualify with one question:
Do you have large monthly or quarterly releases that take hours/days and
require dozens or that hundreds of people to get on a call?
UrbanCode Release delivers
Plan the release day
Execute the release
Communicate what’s going on
Allocate environments to
releases
Tie release back to
development
IBM UrbanCode Release
Visualizing your Release Trains
IBM UrbanCode Release
IBM UrbanCode Deploy
Automation & Management
uDeploy
uRelease
Application Release Automation
Automate deployments
Visual process designer
Plug-in actions for application containers, web servers,
network devices, database deployment, etc.
Model environments & deployment targets
Release Management
Enforce quality gates for environments
Orchestrate changes across multiple applications
Manage infrastructure in addition to application changes
Real-time status for long production releases
Track the allocation of environments to releases
Build
UrbanCode uBuild
Rational Build Forge
Jenkins/Hudson
Other generic integrations via udclient or API
Reliable management of middleware configuration across
environments
Middleware
Administrator
-orApplication
Developer
Deployment
Automation
Developer
2 - Plugin
Artifact Library
3 - Import
4 - Assemble
6 – Define
Deployment
Process
5 - Publish
EAR
7 - Deploy
WAS
Configuration
Template
7 - Deploy
Exemplar
WAS Cell
7 - Deploy
WAR
Cluster
template
DB
Application
Application Deployment Automation
WAS Configuration Template Creation
Dev
QA
Prod
Application Environments
Improve Delivery Lifecycle with Software Defined
Environments
Build Automation
SCM
Pull
changes
Publish build
IBM PureApplication System
SmartCloud Orchestrator
Execute application
deployment and
manage settings
across environments
Environments
Provision platform
DEV
DEV
DEV
DEV
QA
PROD
Patch/update
Platform Config Management
IBM Endpoint
Manager
Deploy early and
often to ensure
higher quality and
faster releases
using repeatable,
reliable, and
managed
automation
DevOps: Continuous
Combining Testing
continuous testing with
Deployment automation and service virtualization for reducing time to
market and improving quality
Test Environments
IBM UrbanCode
Deploy
integrated with
IBM Rational Test
Virtualization
Server
Deploy what is ready,
virtualize the rest
IBM Rational
Test Workbench
Continuously test in
production-like env.
SHUNRA Network
n
Virtualization
Test using real world
network conditions
virtual components
Databases
Dev
Internal
Messages
QA
Third-party
Services
Simultaneously
test across
multiple test
stages
Dynamic Infrastructure
RAF short-term convergence
Middleware
Administrator
-orApplication
Developer
Deployment
Automation
Developer
2 - Plugin
CodeStation
3 - Import
6 – Define
Deployment
Process
4 - Assemble
5 - Deploy
• App 1
• App 2
• EAR
• DB Scripts
• WAS Cell Cfg
•…
7 - Deploy
Applications
7 - Deploy
WAS
Configuration
Template
7 - Deploy
Exemplar
WAS Cell
• EAR
• WAR
• DB Scripts
• WAS Cell Cfg
• WAS Cluster Cfg
•…
• Dev Cell • QA Cell
• Cluster1
• Cluster2
•…
Resources
WAS Configuration Template Creation
43
Dev QA
Prod 1 – Auto Discover
Application Environments
• Prod Cell
• Cluster1
• Cluster2
•…
• Cluster1
• Cluster2
•…
www.ibm.com/software/rational
44
Demo