Sunteți pe pagina 1din 25

A True Story of Why

QA Loves DevOps

Greg Hodgkinson
Director, Lifecycle Tools and
Methodology

CONNECT WITH US:


IT: Customized to Your Advantage Public | Copyright © 2014 Prolifics
Hello! Introductions
Me: Greg Hodgkinson

• Director for Lifecycle Tools


and Methodology
• Optimize project delivery:
Best combination of
earlier, better, cheaper,
more.
• CBD, Agile, SOA, DevOps

Public | Copyright © 2014 Prolifics


CONNECT WITH US: 2
Hello! Introductions
My Company: Prolifics

• Global Technology
Solutions Provider
• IT: Customized to Your
Advantage
• Technology Solutions:
• Business Process Management • Enterprise Content
• Enterprise Security Management
• Infrastructure Optimization • Managed Services
• Digital Experiences • Quality Assurance and Testing
• SOA and Integration • Information Management and
• Decision Management Analytics
• Managed Services

Public | Copyright © 2014 Prolifics


CONNECT WITH US: 3
Why is Continuous Delivery Important?
Your team’s success is based on
a single thing:

Their ability to deliver new


features
•at a pace
•and with a quality
that keeps up with the needs of the
business.

Why is it important?
•Marketplace differentiation
•Successful business operation
•Generating new revenues

Continuous Delivery has a hugely


positive business impact!

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 4
Continuous Delivery - How? = DevOps!
DevOps has emerged as the way to achieve goals of Continuous Delivery.

It does so by:
• Removing the barriers between Dev and Ops teams,
• Shortening lead times, and
• Improving quality feedback loops.

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 5
DevOps Makes QA Departments Happy!
QA is an integral part of the workflow!

DevTestOps

QA

QA has profound ties to DevOps:


• QA is the first consumer and also cares about the lead time.
• The Wall of Confusion is as big an issue to QA (What is ready? Where is it?)

• QA is a fundamental part of the feedback loop.

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 6
Our Case Study – How DevOps Keeps
Taylor Swift Happy

?!
DevOps

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 7
Background: How Musicians Make Their
Money

Album Sales Concerts Merchandising Airplays*


*But only for songwriters!

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 8
Introducing Broadcast Music Inc. (BMI)

Broadcast Music Inc.


Airplays
Royalties

BMI detects “airplays” of music, and charges and distributes the royalties due to the songwriters.

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 9
Challenge: Fast Changing Marketplace

 Pace of change in Vibrant


marketplace means… music
marketplace
 Increased need for
innovation meaning…
 Increased pace of delivery
for IT IT
Innovation

Call to action:
 Set up the platforms,
processes and tools to Software
allow them to keep pace delivery

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 10
Success: BMI Transformation
Over the last 4 years, the program has fundamentally
changed BMI’s ability to innovate!

Three pillars:
New Approaches New Runtime Platforms New Development Tools
IBM BPM Focal Point
SOA IBM WebSphere Portal
IBM ODM DOORS NG

BPM WebSphere DataPower


Rational Software Arch.
IBM Integration Bus
Test WebSphere ESB
Rational Team Concert
Agile Automation IBM CastIron
IBM DataStage Rational Quality Mgr.
DevOps Oracle
IBM WSRR IBM UrbanCode Deploy

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 11
Removing Constraints Reduces Lead
Times
In order to reduce lead-time, identified and targeted key bottlenecks in
end-to-end process.

Agile Test Automation

DevOps

Planning Requirements Collaboration Integration Provisioning Deployment Testing


Bottleneck Bottleneck Bottleneck Bottleneck Bottleneck Bottleneck Bottleneck

BPM
SOA

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 12
BMI Pain: Planning, Requirements
and Collaboration Bottleneck

The Situation The Effect

• Heavy-weight requirements •World has changed by the time


documents solution is in use
•Hard to apply lessons learnt
• Lengthy waterfall project during project
lifecycles
•Poor visibility of progress
• Project management by
static .mpp plan •Project communications
embedded in emails
• Silo teams and email •Teams don’t collaborate well
communications

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 13
BMI Pain: Integration and
Deployment Bottleneck

The Situation The Effect

•Causes integration issues as


• Developers are components may be incompatible
independently deploying •Hard to recreate a deployment
code to environments •No audit
•Distraction for developers – waste
of time!
•Delays to get a new release

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 14
BMI Pain: Provisioning
Bottleneck

The Situation The Effect

•Long (“loooonnngg”) lead


• Requests to times for new environments
infrastructure team to •Slow to respond to required
manually provision changes
environments •Hard to reliably move
infrastructure changes
through pipeline of
environments

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 15
BMI Pain: Testing Bottleneck

The Situation The Effect

• Small testing team • Poor test coverage


available to test a large • Often have to rush
amount of functionality through tests
• Testing windows always • Productivity not what it
seem to get compressed should be (at no fault of
testers)

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 16
Agile: Iterative Development with Scrum
Intent: Focus on delivering working code in small,
iterative cycles, continuously prioritized by the
business, using light-weight but “tight” requirements
contracts.
How?
Capture requirements in user stories
(with acceptance criteria), delivered
by cross-functional teams in sprints,
working with close product owner
involvement.

Why? (for QA)


1.Requirements are more testable – Story Name
better for QA to test against.
2.Testers more effective embedded
alongside development activities.
3.Testers better able to provide
feedback that influences future
direction.

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 17
DevOps: Automated Build, Continuous
Integration
Intent: Do a “clean build” of code whenever a
developer delivers changes related to that code.

How?
Centralized source control with
scheduled, automated builds.

Why? (for QA) deliver build


1.Weeds out issues that otherwise changes notifications
prevent testers from getting a new
release e.g. missing compilation
dependencies.
2.Testers always have a new “good”
release to call on when they are ready.
3.Having a build repository allows you to
easily rollback to previous builds if
testers realize the current build has fatal
flaws.

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 18
DevOps: Automated Deploy, Continuous
Deployment
Intent: Testers automatically get new releases
deployed for them, provided they pass quality
gates.
How?
Nightly automated deploys from
release snapshots, controlled by
quality gates.

Why? (for QA) green light build


1.Remove human delays – automation
doesn’t get distracted so testers get
changes sooner. deploy
2.Testers get fixes more quickly if they
can raise defects earlier.
3.Weeds out deployment issues that
otherwise prevent testers from getting a
new release e.g. missing runtime
dependencies.

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 19
DevOps: Automated Provisioning,
Continuous Provisioning
Intent: Have push-button automated test
environment provisioning, based on infrastructure
“gold standards”.
How?
Use full-stack environment
provisioning solution to author and
provision environments.

Why? (for QA)


1. More testing environments Provision

available as infrastructure is
shared better.
2. Drastic reduction in delays on
getting a new test environment.
3. Better turnaround on designing
and testing out a new
environment.

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 20
DevOps: Automated Tests, Continuous
Quality
Intent: Automatically regression test every
deployment before the testers get hands-on.

How?
Deliver automated test packs to
source control alongside code, and
automatically execute after successful
automated build and deploy cycles.

Why? (for QA) TEST


Environment
1. Allows testers to focus on higher
value testing, immediately.
2. Increases test coverage by testers
therefore improving quality.
3. Hugely increases value and
importance of automated tests
created by testers.

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 21
Summary: Free-Flow Innovation

Provision

deploy

Continuous Automated Continuous Continuous


Integration Provisioning Deployment Quality
Agile

BPM DevOps

SOA Test Automation

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 22
Summary: Tools to Support Innovation

deploy

UrbanCode
Rational Team Concert UCD with Deploy Testing
Patterns Tools
Continuous Automated Continuous Continuous
Agile Integration Provisioning Deployment Quality

BPM DevOps

SOA Test Automation

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 23
Ergo: Happy BMI, Happy Taylor!

Broadcast Music Inc.

Went from tens of deploys a month to


hundreds (with potential to spare).

1 Build Engineer achieves the workload of 6-8 people!


Frees up between 8,000 and 12,000 hours a year!

Thank you for listening.


Any questions or comments to share?

Public | Copyright © 2015 Prolifics


CONNECT WITH US: 24
Contact US

greg.hodgkinson@prolifics.com

+1 646 435 2470

www.prolifics.com

 Public | Copyright © 2015 Prolifics


CONNECT WITH US: 25

S-ar putea să vă placă și