devops-extending agile development disciplines to deployment … · 2017-06-16 · extending agile...

28
© 2009 IBM Corporation DevOps: Extending Agile Development Disciplines to Deployment

Upload: others

Post on 23-Jun-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

DevOps: Extending Agile Development Disciplines to Deployment

Page 2: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Please note© IBM Corporation 2012 The information contained in this presentation is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related

to, this presentation or any other materials. Nothing contained in this presentation 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 this presentation 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 this presentation 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. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth, savings or other results.

IBM, the IBM logo, Rational, Jazz, and Team Concert, are trademarks of 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.

Performance is based on measurements and projections using standard IBM benchmarks

in a controlled environment. The actual throughput or performance that any user will

experience will vary depending upon many factors, including considerations such as the

amount of multiprogramming in the user’s job stream, the I/O configuration, the storage

configuration, and the workload processed. Therefore, no assurance can be given that an

individual user will achieve results similar to those stated here.

Page 3: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Customers

Desire for fast

and continuous

innovation

Line of Business

Requirements

Dev & Test Teams

Code & Tests

Operations Team

Business Services

1st Gap

2nd Gap

Delivery Challenges

Today’s business and technical needs are pushing

traditional delivery approaches to the breaking point

“At some point, you take a step back, and you realize you have anawful lot of siloed systems that are limiting transparency across

strategic projects.”

- Development DirectorTemenos, Inc.

People

Process

Information

People

Process

Information

Page 4: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Addressed by...Addressed by...

Agile Dev

Customers

Desire for fast

and continuous

innovation

Line of Business

Requirements

Dev & Test Teams

Code & Tests

Operations Team

Business Services

1st Gap

2nd Gap

DevOps

Addressing Application Lifecycle Management gaps

Page 5: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Jazz provides open collaboration across the software and systems lifecycle

ARCHITECTUREOpen Services for Lifecycle

Collaboration

COMMUNITYTransparent collaboration and exchange of ideas

PRODUCTSIBM, third-party, and homegrown application lifecycle tools

Specifications for linked lifecycle data via

Open Services for Lifecycle Collaboration

(OSLC)

Integration services & protocols for

implementing common lifecycle patterns (“the

Jazz platform”)

Lifecycle tools that support the Jazz

architecture

Jazz.net – A place where stakeholders

collaborate

Enables visibility & influence into the

evolution of the Jazz architecture and

products

Integration services and protocols

Page 6: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

How does it work?

� Community Driven – @ open-services.net

� Specifications for numerous disciplines

• Such as, ALM, PLM and DevOps

• Defined by scenarios – solution oriented

� Inspired by Internet architecture

� A different approach to industry-wide proliferation

� Based on Linked Data

Open Services for Lifecycle CollaborationLifecycle integration inspired by the web

Inspired by the web Free to use and share Changing the industry

Open Services for Lifecycle Collaboration (OSLC)Working to standardize the way software lifecycle tools share data

Automation

Monitoring

Page 7: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

OSLC is expanding

7

Page 8: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Communities

� Transparent development

� Thought leadership

� Collaboration and support

Page 9: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Application Lifecycle Management offerings

RationalRequirements

Composer

RationalTeam Concert

RationalQuality

Manager

IBM Rational ALM SolutionsGet Up and Running QuicklyReduce the costs of inefficient,

multiplatform software development

with integrated ALM solutions!

• Optimize your team’s productivity through the 5 ALM Imperatives

• Maximize product value with In-Context Collaboration

• Accelerate time to delivery with Real-Time Planning

• Improve quality with Lifecycle Traceability

• Achieve predictability with Development Intelligence

• Reduce costs with Continuous Improvement

• Collaborate across teams and create deep integrations across the lifecycle

• Extend as your needs evolve with role-based licensing

• Unify your infrastructure and protect your current investments with a single, open, extensible platform

RationalRhapsody

Design Manager

Rational Software Architect

Design Manager

Collaborative Lifecycle Management

Collaborative Design Management

Architect

Analyst

Developer

Quality

Professional

Deployment

Engineer

Engineer

Page 10: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Application lifecycle Management adoption steps

• Silo-ed teams –no collaboration

• lack of and/or disjoint process

• Silo-ed teams –no collaboration

• lack of and/or disjoint process

Chaotic

Individual Focus

• Tools per discipline

• Best practices per discipline

• No cross-discipline integration

• Tools per discipline

• Best practices per discipline

• No cross-discipline integration

Repeatable

Discipline Focus

• Continuous

process

improvement

• Collaboration with

Business

Stakeholders and

Operations

• Connecting

Business Strategy

and Delivery

• DevOps lifecycle

traceability

• Continuous

Delivery

• Continuous

process

improvement

• Collaboration with

Business

Stakeholders and

Operations

• Connecting

Business Strategy

and Delivery

• DevOps lifecycle

traceability

• Continuous

Delivery

Optimized

Business Value Focus

• Development Intelligence

• SW dev. Lifecycle traceability

• Cross teams collaboration

• Process Enactment

• Governance & Compliance

• Continuous Integration

• Development Intelligence

• SW dev. Lifecycle traceability

• Cross teams collaboration

• Process Enactment

• Governance & Compliance

• Continuous Integration

Measured

Dev Org. Focus

• Real time planning

• Team collaboration

• Process support (Agile, Iterative, Waterfall, Hybrid)

• Continuous Build & Test

• Real time planning

• Team collaboration

• Process support (Agile, Iterative, Waterfall, Hybrid)

• Continuous Build & Test

Defined

Project Focus

Page 11: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

With only Agile Development improvements…

Agile Dev

CI builds are piling up

Functional Testing

Functional Testing

Acceptance Testing

Acceptance Testing

ProductionProductionOperator

Setup

(weeks)

Install

Test and Ops teams have increased pressures to keep up

with increased loads but continue to use waterfall

approaches and traditional tools.

Page 12: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

DevOps: The time is now

Four key drivers are making DevOps a 2012 imperative for all organizations.

DevOpsDevOps

BusinessAgility

BusinessAgility

CloudComputing

CloudComputing

Operational

Discipline

Operational

Discipline

Agile

Development

Agile

Development

Page 13: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

�Collaborate across disciplines

�Develop and test against a

production-like system

�Deploy frequently

�Continuously validate operational

quality characteristics

DevOps Principles & Values

People

Process

Information

People

Process

Information

Page 14: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

DevOpsPrinciples

& Values

Scenarios& Solutions

Integration Architecture

Tools

Change Management

Change Management

AutomationAutomation ProvisioningProvisioning

Team ConcertTeam

Concert

Clear QuestClear Quest

Continuous IntegrationContinuous Integration

Hudson/Jenkins

Hudson/Jenkins

Rational Automation Framework

Chef/Puppet

Rational Automation Framework

Chef/Puppet…

Collaborative Design and Construction

Collaborative Design and Construction

Collaborative Problem Resolution

Collaborative Problem Resolution

Continuous DeliveryContinuous Delivery

Page 15: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Agile development and deliveryContinuous Integration extends to Continuous Delivery

Continuous Feedback

AgileDev

Design

Prioritize

Build

Test

DevOpsTest

Monitor

Publish

Deploy

Page 16: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Collaborative Lifecycle

Management

Delivery Pipeline

Delivery Pipeline

OSLC

Configuration

Automation

Configuration

Automation

OSLC

Continuous

Integration

Continuous

Integration

OSLC

Quality Management

Quality Management

OSLC

Provisioning Automation

Provisioning Automation

OSLC

Cloud

Pull configurations

Track

work

Trigger

deployment Deploy

service

Track

quality

Track

work

Trigger

Delivery

Update

configuration

s

Pull

changes

Continuous Delivery

Change Management

Change Management

OSLC

OSLC

Requirement

Management

Requirement

Management

Trigger

tests

Service

Simulation &

Testing

Service

Simulation &

Testing

OSLC

Configure

endpoints

Start stubs

Application Monitoring

Application Monitoring

OSLC

Monitor

application

Configure

agents

Link defect

Track

incident

Incident Management

Incident Management

OSLC

Deployment

Design

Deployment

Design

OSLC

Generate automation

Page 17: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Installation Instructions

RedHat Linux

Apache Web Server

Python

1. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod temporincididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrudexercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

2. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nullapariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt

mollit anim id est laborum.

1. Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium

doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo

inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo.

2. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit autfugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi

nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet,

consectetur,

3. adipisci velit, sed quia non numquam eius modi tempora incidunt ut laboreet dolore magnam aliquam quaerat voluptatem.

1. Ut enim ad minima veniam, quis nostrum exercitationem ullam corporis

suscipit laboriosam, nisi ut aliquid ex ea commodi consequatur?

2. Quis autem vel eum iure reprehenderit qui in ea voluptate velit esse quam

nihil molestiae consequatur,

3. vel illum qui dolorem eum fugiat quo voluptas nulla pariatur?

Page 18: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Infrastructureas Code

SCM

#!/usr/bin/env ruby

class DevopsDeployer

def initialize(build_url, build_id)

@log = Logger.new(LOG_FILE)

@log.level = LOG_LEVEL

@iaas_gateway = IaasGateway.new(HsltProvider.new(),

LOG_FILE, LOG_LEVEL)

@server_instance = nil

rtc_build_system_provider = RtcBuildSystemProvider.new(

RTC_REPOSITORY_URL, RTC_USER_ID, RTC_PASSWORD_FILE)

@build = rtc_build_system_provider.resolve_build(

build_url, ENV['buildResultUUID'], build_id)

@build_system_gateway = BuildSystemGateway.new(

rtc_build_system_provider, LOG_FILE, LOG_LEVEL)

end

def add_build_stamp

template_file = WEB_APP_ROOT +

"/app/templates/pages/page.html"

@log.info "Adding build ID stamp #{@build.id} to \

#{template_file}"

# Read in the file's contents as a string, replace

# the build_id, then overwrite the original contents

# of the file

text = File.read(template_file)

new_text = text.gsub(/\{\{ build_id \}\}/,

"<a href=\"#{@build.uri}\">#{@build.id}</a>")

File.open(template_file, "w") { |file|

file.puts new_text

}

end

# ...

Page 19: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

SCM

Delivery Pipeline

Build,

Package,

& Unit TestDeploy

Source Artifacts

LibraryDeployable Artifacts

Acceptance Test

& Report

EnvironmentRunning System

Using the same tools and methodologies to

manage and deliver software and deployment

configuration changes.

Using the same tools and methodologies to

manage and deliver software and deployment

configuration changes.

Page 20: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Quality Managers

IT ManagersDevelopers

Continuous Delivery

IBM SmartCloud Continuous DeliveryExtending Agile disciplines through delivery

Targeted Entry

•Development team extending Agile into rapid workload deployment in the cloud

•Operation teams delivering scalable, continuous delivery services to the development organization

Client Value

• Reduce risk, improve quality; manage change from development to deployment

• Improve efficiency, accelerate delivery; automated handover between processes

• Optimize resources; workload pattern composition delivery

Rational Collaborative Lifecycle Management

Page 21: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Continuous Delivery of application changes

Rational Team Concert (server)

Rational Team Concert (server)

Rational Automation Framework

Rational Automation Framework

Provision

pattern with

build

Provision system

from pattern with

build

Get packages

Apply

configurations

to system

Store

changes

Virtual System

Trigger build

Cloud Provisioning System

Cloud Provisioning System

Rational Team Concert (Client)

Rational Team Concert (Client)

Post results to build

Jazz Build Engine(s)Jazz Build Engine(s)

Put configuration version

Execute

tests

Developer

Rational Asset

Manager (Deployables Library)

Rational Asset

Manager (Deployables Library)

Publish

packages

Load changes and build

Op Engineer

Notify

results

Page 22: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Self-hosting CLM using Continuous Delivery

22

DeliverDeliver

Collaborative Lifecycle Management

RationalRequirements

Composer

RationalTeam Concert

RationalQuality

Manager

Monitoring

Security

Scaling

Failover

Load Balancing

Lifecycle Management

Increased Frequency

Cloud

Page 23: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

End-to-End Lifecycle Optimization

People

Process

Information

People

Process

Information

Open Services for Lifecycle Collaboration

Lifecycle integration inspired by the web

Follow us on the Enterprise DevOps and Jazz Team Blogs

Continuous Feedback

AgileDev

Design

Prioritize

Build

Test

DevOps

Monitor

Publish

Deploy

Page 24: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

www.ibm.com/software/rational

Page 25: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Daily iPod Touch giveaway

� Complete your session surveys online each day at a conference kiosk or on your

Innovate 2012 Portal!

� Each day that you complete all of that day’s session surveys, your name will be entered

to win the daily IPOD touch!

� On Wednesday be sure to complete your full conference evaluation to receive your

free conference t-shirt!

Page 26: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Acknowledgements and disclaimers

© Copyright IBM Corporation 2012. All rights reserved.

– U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.

IBM, the IBM logo, ibm.com, Rational, the Rational logo, Telelogic, the Telelogic logo, Green Hat, the Green Hat logo, and other IBM products and

services are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If

these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols

indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered

or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at

www.ibm.com/legal/copytrade.shtml

If you have mentioned trademarks that are not from IBM, please update and add the following lines:

[Insert any special third-party trademark names/attributions here]

Other company, product, or service names may be trademarks or service marks of others.

Availability: References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries

in which IBM operates.

The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for

informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant.

While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it 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, this

presentation or any other materials. Nothing contained in this presentation 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.

All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have

achieved. Actual environmental costs and performance characteristics may vary by customer. Nothing contained in these materials is intended to,

nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.

Page 27: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

© 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.

www.ibm.com/software/rational

Page 28: DevOps-Extending Agile Development Disciplines to Deployment … · 2017-06-16 · Extending Agile disciplines through delivery Targeted Entry •Development team extending Agile

© 2009 IBM Corporation

Companies Considering Agile Need Help

Sources: NIST, Planning Report 02-3. The Economic Impacts of Inadequate Infrastructure for Software Testing, May 2002; aThe Times of India, IT sector to get 12% average salary hike in 2011, TOI Tech & Agencies, Mar 8, 2011

26%Estimated number of organizations who use agile methodologies ONLY in development

78%Percentage of the organization who feel they can’t keep up with an agile development team

Water-Scrum-Fall

42%The percentage of agile project that are successful

10%The number of projects that can actually prove why they were successful

Low Success Rates

77%Of all companies that report they need to monitor and measure mixed environments

75%The total percentage of companies citing geographic distribution, regulatory compliance or management support as a key inhibitor

Increased Inhibitors

2

8