SlideShare a Scribd company logo
1 of 47
Continuous Delivery
Software-Deployments ohne graue Haare


3. April 2012 – Corsin Decurtins
Some numbers…




          4
        deployments
                                    15
                                     deployments
          per year                     per day

  bank, insurance company,     social network, Web 2.0,
    government, transport    Google Mail, Flickr, Facebook
           authority
                                                      Netcetera | 2
Some numbers…

On the left
   Traditional application from something like a bank, an insurance company, a
   government agency, a transport authority … you name it.

On the right
   One of those new fancy social network, Web 2.0-ish application.
   Think Facebook, Google Mail, Flickr, …

Both are serious applications with serious business value.




                                                                             Netcetera | 3
Some numbers…

Both applications need a high up-time.
Deployments to the production environment are risky.
Both companies try to reduce the risk of deployments.

Two completely different approaches to do that:
   "Banks" try to reduce the risk and effort for deployments by reducing the number of
   deployments.
   The "social networking" site tries to reduce the risk of deployments by making
   much, much smaller deployments … but a lot of them.




                                                                              Netcetera | 4
Some numbers…

The questions now are:
a) Which organization is right?
b) Where in this range are you?
c) Where in this range should you be?

That's what I want to talk about today.
That and why moving toward the right side might be the better choice for the future.




                                                                               Netcetera | 5
Deployment

Installation of a software release on a target environment

Replacement of existing software releases
Data migration
System reconfiguration




                                                             Netcetera | 6
Deployment Complexity

Data migration
Multiple components
Synchronized deployments
Dependencies




                           Netcetera | 7
Deployment Risks

Server not starting          Tuning issues
Out of disk space            Deployment Time
Database migration failure   Wrong dependency version
Configuration typos          Missing tools or libraries
Communication failure        Missing certificates
Version mismatch             Wrong access rights
Bad Performance              …




                                                          Netcetera | 8
Cost of a Deployment

Complexity
Risks
Staffing
Time, On-Call Duty
Off-Hour Work
Down-Time
Stability




                       Netcetera | 9
Our goals (yours might be different)

Improve Quality
   Fewer errors, less (unexpected) down-time, less stress.

Standardization
   Different applications should deploy in a similar way.
   Makes it easier for the operations and the development teams.

Faster Deployments
   Less down-time, smaller need for off-hour deployments.




                                                                   Netcetera | 10
Software Delivery Pipeline

                    EIS / Metrics
                                       test-int           test-uat      prod



 check-in   build
                                       deploy              deploy       deploy
            unit testing


                                       integration        performance
                                       testing            testing

    dev                                                   user
                                                          acceptance
                                                                                 ops
                                                          security
                                                          review

                    SCM         Repo                                      CSO
                                                     qa
      dev                                                                    Netcetera | 11
Software Delivery Pipeline

The Software Delivery Pipeline is the combined set of processes, procedures and
tools that you use to bring code from the development environment into production.

Of course you would make the pipeline even wider by including requirements
engineering etc. but for the context of this talk, we will start with code.




                                                                              Netcetera | 12
Software Delivery Pipeline

Builds Propagate through the Pipeline
   Successful completion of a step triggers the next steps.

Errors interrupt the Pipeline
   In case of an error, the pipeline processing is interrupted.

Expensive steps are only done if the previous steps worked
   For example (manual) User Testing is only done on builds that passed the
   automated tests.

Some Pipeline steps might require manual triggering
  Deployment to uat or prod is probably still triggered manually
                                                                              Netcetera | 13
Software Delivery Pipeline

A few things that you should notice right here:

Everybody has a Software Delivery Pipeline.
   You might not have thought about it yet, it might be automated or manual, very
   simple or complex, but you have a pipeline.
   Whether you want it or not, whether you manage it or not.

Your pipeline might look differently.
   Depends on the project, the customer, the business domain, the degree of
   maturity, …



                                                                              Netcetera | 14
Software Delivery Pipeline

Coming back to our risk and cost analysis, we can identify some problem areas:
  Deployments are probably not tested
  Deployments are done manually

So again, the knee-jerk reaction would be to try to reduce the number of deployments.
   They are expensive, risky and mean a lot of stress for the development team, the
   customer and the operations people.

However, there are very similar issues on the left side of the diagram. We have some
risky and expensive things there too (building, unit testing, deploying, integration
testing, …). But the approach there is not too do it less frequently, but to automate it
and do it more often. The underlying principle that we see there is …

                                                                                 Netcetera | 15
If it hurts,
        do it often.


                       Netcetera | 16
Software Delivery Pipeline

                    EIS / Metrics
                                       test-int           test-uat      prod



 check-in   build
                                       deploy              deploy       deploy
            unit testing


                                       integration        performance
                                       testing            testing

    dev                                                   user
                                                          acceptance
                                                                                 ops
                                                          security
                                                          review

                    SCM         Repo                                      CSO
                                                     qa
      dev                                                                    Netcetera | 17
Continuous Integration

What people did on the left side was to automate the pipeline steps and run them
automatically and very frequently. Automation improves the quality by making the
steps reproducible, predictable, verifiable, repeatable, …

This is essentially known as Continuous Integration.

A lot of companies already do this. But the automation often ends after the run of the
integration tests and the creation of the build artifacts.

One way of looking at Continuous Delivery is to extend the principles from Continuous
Integration and bring them further down the pipeline to the right side.


                                                                                Netcetera | 18
Continuous Delivery

Automation of Software Delivery Pipeline
Automation of the Deployment
Automated Triggering (Continuous Execution)
Automated Testing / Verification




                                              Netcetera | 19
Continuous Delivery

Automation
   Automation of the delivery pipeline and the deployment process to the various
   environments. This includes deploying code, running database migrations,
   configuration, restarting, …
Automated Triggering (Continuous Execution)
   Deployments (and subsequent steps) are triggered automatically, usually by
   upstream pipeline steps.
Automated Testing / Verification
   Deployments are tested and verified by automated tests.




                                                                             Netcetera | 20
Automation of the Deployment Process



$ deploy <application> <version> <environment>
Deployment was successful



$ deploy <application> <version> <environment>
Deployment failed, rolled back to old version




                                                 Netcetera | 21
Anatomy of a Deployment

     Notify the running application that a deployment is happing
     Set up a maintenance page
     Stop the running application
     Install the new application version
     Run a database migration
     Start the new application version
     Reconfigure the entry server
     Switch off the maintenance page




                                                                   Netcetera | 22
Anatomy of a Deployment

Consists of multiple consecutive steps
Steps are reusable for different deployments
Steps are reusable for different applications
Might vary from version to version
Might depend on the version that is currently installed




                                                          Netcetera | 23
Anatomy of a Deployment Step

     Verify the pre-conditions

     Do something

     Validate the post-conditions




                                    Netcetera | 24
Pre-Conditions

Encoding of the assumptions of a deployment step.
Used to verify that the deployment step could actually work.
Make sure we do not attempt a deployment step, if the assumptions are not met.




                                                                            Netcetera | 25
Verification

Verification that a deployment step worked.
Verification that a deployment step had the desired effect.
Makes sure that we detect problems as early as possible in the deployment process.




                                                                            Netcetera | 26
Error Handling and Rollbacks

Ability to roll back at any time
Detecting errors
Automated Rollbacks
Manual Rollbacks




                                   Netcetera | 27
Error Handling and Rollbacks

Ability to roll back at any time
 Back up the preexisting state of the system
 Try to make the deployment non-destructive

Detecting errors
 Deployment process has to be able to detect errors

Automated Rollbacks
 Very desirable
 But also very complex
 Has to be tested (continuously)

                                                      Netcetera | 28
Manual Rollback

It's just a workaround, but often a viable option
Probability of failing deployments is relatively small
   We are testing the deployment continuously after all.
Automated deployment process provides operations people with the necessary tools
and artifacts to roll back easily
   Backups
   Non-destructive deployments




                                                                          Netcetera | 29
Data Migration

Data migration is a tricky thing
   Slow
   Complex
   Error-prone
   Stop-the-World

Automation and continuous testing helps
More frequent and therefore smaller deployments help




                                                       Netcetera | 30
Data Migration Patterns

On-the-fly migration
Read-Only availability
Storage Layer abstraction
NoSQL storage layer




                            Netcetera | 31
Data Migration Patterns

On-the-fly migration
   Application can deal with multiple versions of the database
   Data migration is done on-the-fly (batch job or touch-and-go)
Read-Only availability
   Database is read-only as long as the migration is on-going
Storage Layer abstraction
   Encapsulation of the storage layer
NoSQL storage layer
   Less stringent requirements on schema compliance




                                                                   Netcetera | 32
Deployment Testing

Deployments are tested continuously
Continuous Testing environment
  Continuously, triggered automatically
Pre-Production environment
  Regularly, triggered manually
"Same" configuration as the production environment
"Same" state as the production environment




                                                     Netcetera | 33
Software Delivery Pipeline

                    EIS / Metrics
                                       test-int           test-uat      prod



 check-in   build
                                       deploy              deploy       deploy
            unit testing


                                       integration        performance
                                       testing            testing

    dev                                                   user
                                                          acceptance
                                                                                 ops
                                                          security
                                                          review

                    SCM         Repo                                      CSO
                                                     qa
      dev                                                                    Netcetera | 34
How do we get there?

It's a process
   Continuous delivery is not a binary thing.
   Continuous improvement of the maturity.




                                                Netcetera | 35
Forcing Teams

Just force the teams to do continuous delivery
Let them figure out how to do it

Bad idea!




                                                 Netcetera | 36
Better Way

Provide Teams with Tools and Support
   Make it easy to implement continuous delivery

Iterate
    Do not try to solve everything in the first go
    Iterate and implement small steps
    Follow the pipeline down-stream




                                                     Netcetera | 37
Standardization

Good way of leveraging common requirements
Provide building blocks for the implementation
   Common deployment steps
   Architecture, design and implementation patterns
   Best practices and guidelines
Make it easy for teams to follow the standards
Make it possible (but not too easy) to extend the standards




                                                              Netcetera | 38
Software Delivery Pipeline

                    EIS / Metrics
                                       test-int           test-uat      prod



 check-in   build
                                       deploy              deploy       deploy
            unit testing


                                       integration        performance
                                       testing            testing

    dev                                                   user
                                                          acceptance
                                                                                 ops
                                                          security
                                                          review

                    SCM         Repo                                      CSO
                                                     qa
      dev                                                                    Netcetera | 39
Abstractions for Runtime Environment

Common abstractions for deployment steps
Allow to abstract different runtime environments
OS versions and application server versions
Virtualization, Private Cloud, Public Cloud




                                                   Netcetera | 40
Added Values for Deployments

Collect data about deployments
Verify compliance with SLAs
Access Control for deployments
Notify stakeholders on success/failure of a deployment
Configure monitoring system for deployments




                                                         Netcetera | 41
Continuous Delivery and Agile Methodologies



Agile                                 Waterfall
Perfect match                         Not really a match, but valuable anyway

Automation and automated tests        Continuous Testing of Deployments
Continuous testing and verification   Automation of very complex processes
Short release and deployment cycles   Delivery of hot-fixes etc.
Short feedback loop




                                                                       Netcetera | 42
Continuous Delivery

Software Delivery Pipeline Automation    Reduction of Deployment Risks
Continuation of Continuous Integration   Quality Improvement
Continuous…                              Faster Deployments
 … Builds, Integration, Testing          Down-Time minimalization
 … Deployment, Migration                 Shorter time-to-production
Deployment Testing                       Less stressful deployments
Smaller and faster deployments           Potential for more frequent deployments




                                                                          Netcetera | 43
Continuous Delivery

                    EIS / Metrics
                                       test-int           test-uat      prod



 check-in   build
                                       deploy              deploy       deploy
            unit testing


                                       integration        performance
                                       testing            testing

    dev                                                   user
                                                          acceptance
                                                                                 ops
                                                          security
                                                          review

                    SCM         Repo                                      CSO
                                                     qa
      dev                                                                    Netcetera | 44
Further Reading

                  Continuous Delivery
                  Jez Humble, David Farley

                  Literally the book on "Continuous Delivery".




                                                                 Netcetera | 45
Further "Reading"

Continuous Delivery (Talk by Jez Humble, DevOps Day 2012)
http://www.infoq.com/presentations/Continuous-Delivery

Interview with Martin Fowler and Jez Humble on Continuous Delivery
http://www.infoq.com/interviews/jez-humble-martin-fowler-cd

Continuous Delivery (Blog by Jez Humble)
http://continuousdelivery.com/




                                                                     Netcetera | 46
Contact

          Corsin Decurtins
          corsin.decurtins@netcetera.com
          +41 44 247 70 70




                                           Netcetera | 47

More Related Content

What's hot

TDX19 - Untangle Your Org with Salesforce Developer Tools
TDX19 - Untangle Your Org with Salesforce Developer ToolsTDX19 - Untangle Your Org with Salesforce Developer Tools
TDX19 - Untangle Your Org with Salesforce Developer ToolsDoug Ayers
 
Salesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinarSalesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinarSalesforce Developers
 
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...Sam Garforth
 
Best Practices for Successful Deployment
Best Practices for Successful DeploymentBest Practices for Successful Deployment
Best Practices for Successful DeploymentSalesforce Developers
 
Automating Deployment Between Orgs Using Git & Continuous Integration
Automating Deployment Between Orgs Using Git & Continuous IntegrationAutomating Deployment Between Orgs Using Git & Continuous Integration
Automating Deployment Between Orgs Using Git & Continuous IntegrationSebastian Wagner
 
How Open Source Embiggens Salesforce.com
How Open Source Embiggens Salesforce.comHow Open Source Embiggens Salesforce.com
How Open Source Embiggens Salesforce.comSalesforce Engineering
 
Manage Development in Your Org with Salesforce Governance Framework
Manage Development in Your Org with Salesforce Governance FrameworkManage Development in Your Org with Salesforce Governance Framework
Manage Development in Your Org with Salesforce Governance FrameworkSalesforce Developers
 
Dependency Injection with the Force DI Framework
Dependency Injection with the Force DI FrameworkDependency Injection with the Force DI Framework
Dependency Injection with the Force DI FrameworkDoug Ayers
 
5 Essentials for Simplifiied Release Management and Continuous Delivery
5 Essentials for Simplifiied Release Management and Continuous Delivery5 Essentials for Simplifiied Release Management and Continuous Delivery
5 Essentials for Simplifiied Release Management and Continuous DeliverySalesforce Developers
 
Scaling Continuous Integration for Puppet
Scaling Continuous Integration for PuppetScaling Continuous Integration for Puppet
Scaling Continuous Integration for PuppetSalesforce Engineering
 
Managing Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureManaging Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureAlexander Sutherland
 
From Sandbox To Production: An Introduction to Salesforce Release Management
From Sandbox To Production: An Introduction to Salesforce Release ManagementFrom Sandbox To Production: An Introduction to Salesforce Release Management
From Sandbox To Production: An Introduction to Salesforce Release ManagementSalesforce Developers
 
Salesforce.com Sandbox management
Salesforce.com Sandbox management Salesforce.com Sandbox management
Salesforce.com Sandbox management Ali Akbar
 
Salesforce Release Management - Best Practices and Tools for Deployment
Salesforce Release Management - Best Practices and Tools for DeploymentSalesforce Release Management - Best Practices and Tools for Deployment
Salesforce Release Management - Best Practices and Tools for DeploymentSalesforce Developers
 
Salesforce – Proven Platform Development with DevOps & Agile
Salesforce – Proven Platform Development with DevOps & AgileSalesforce – Proven Platform Development with DevOps & Agile
Salesforce – Proven Platform Development with DevOps & AgileSai Jithesh ☁️
 
How to Setup Continuous Integration With Git, Jenkins, and Force.com
How to Setup Continuous Integration With Git, Jenkins, and Force.comHow to Setup Continuous Integration With Git, Jenkins, and Force.com
How to Setup Continuous Integration With Git, Jenkins, and Force.comSalesforce Developers
 
Self-Service Secure Test and Release Pipelines
Self-Service Secure Test and Release PipelinesSelf-Service Secure Test and Release Pipelines
Self-Service Secure Test and Release PipelinesSalesforce Engineering
 
Crossbrowser Testing at Salesforce Analytics
Crossbrowser Testing at Salesforce AnalyticsCrossbrowser Testing at Salesforce Analytics
Crossbrowser Testing at Salesforce AnalyticsSalesforce Engineering
 
The Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development LifecycleThe Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development LifecycleJoshua Hoskins
 
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...Salesforce Developers
 

What's hot (20)

TDX19 - Untangle Your Org with Salesforce Developer Tools
TDX19 - Untangle Your Org with Salesforce Developer ToolsTDX19 - Untangle Your Org with Salesforce Developer Tools
TDX19 - Untangle Your Org with Salesforce Developer Tools
 
Salesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinarSalesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinar
 
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
Salesforce Application Lifecycle Management presented to EA Forum by Sam Garf...
 
Best Practices for Successful Deployment
Best Practices for Successful DeploymentBest Practices for Successful Deployment
Best Practices for Successful Deployment
 
Automating Deployment Between Orgs Using Git & Continuous Integration
Automating Deployment Between Orgs Using Git & Continuous IntegrationAutomating Deployment Between Orgs Using Git & Continuous Integration
Automating Deployment Between Orgs Using Git & Continuous Integration
 
How Open Source Embiggens Salesforce.com
How Open Source Embiggens Salesforce.comHow Open Source Embiggens Salesforce.com
How Open Source Embiggens Salesforce.com
 
Manage Development in Your Org with Salesforce Governance Framework
Manage Development in Your Org with Salesforce Governance FrameworkManage Development in Your Org with Salesforce Governance Framework
Manage Development in Your Org with Salesforce Governance Framework
 
Dependency Injection with the Force DI Framework
Dependency Injection with the Force DI FrameworkDependency Injection with the Force DI Framework
Dependency Injection with the Force DI Framework
 
5 Essentials for Simplifiied Release Management and Continuous Delivery
5 Essentials for Simplifiied Release Management and Continuous Delivery5 Essentials for Simplifiied Release Management and Continuous Delivery
5 Essentials for Simplifiied Release Management and Continuous Delivery
 
Scaling Continuous Integration for Puppet
Scaling Continuous Integration for PuppetScaling Continuous Integration for Puppet
Scaling Continuous Integration for Puppet
 
Managing Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureManaging Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox Architecture
 
From Sandbox To Production: An Introduction to Salesforce Release Management
From Sandbox To Production: An Introduction to Salesforce Release ManagementFrom Sandbox To Production: An Introduction to Salesforce Release Management
From Sandbox To Production: An Introduction to Salesforce Release Management
 
Salesforce.com Sandbox management
Salesforce.com Sandbox management Salesforce.com Sandbox management
Salesforce.com Sandbox management
 
Salesforce Release Management - Best Practices and Tools for Deployment
Salesforce Release Management - Best Practices and Tools for DeploymentSalesforce Release Management - Best Practices and Tools for Deployment
Salesforce Release Management - Best Practices and Tools for Deployment
 
Salesforce – Proven Platform Development with DevOps & Agile
Salesforce – Proven Platform Development with DevOps & AgileSalesforce – Proven Platform Development with DevOps & Agile
Salesforce – Proven Platform Development with DevOps & Agile
 
How to Setup Continuous Integration With Git, Jenkins, and Force.com
How to Setup Continuous Integration With Git, Jenkins, and Force.comHow to Setup Continuous Integration With Git, Jenkins, and Force.com
How to Setup Continuous Integration With Git, Jenkins, and Force.com
 
Self-Service Secure Test and Release Pipelines
Self-Service Secure Test and Release PipelinesSelf-Service Secure Test and Release Pipelines
Self-Service Secure Test and Release Pipelines
 
Crossbrowser Testing at Salesforce Analytics
Crossbrowser Testing at Salesforce AnalyticsCrossbrowser Testing at Salesforce Analytics
Crossbrowser Testing at Salesforce Analytics
 
The Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development LifecycleThe Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development Lifecycle
 
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...
Webinar: From Sandbox to Production: Demystifying Force.com Release Managemen...
 

Viewers also liked

La profesion docente_ante_los_desafios_del_presente_y_del_futuro_imbernon_f
La profesion docente_ante_los_desafios_del_presente_y_del_futuro_imbernon_fLa profesion docente_ante_los_desafios_del_presente_y_del_futuro_imbernon_f
La profesion docente_ante_los_desafios_del_presente_y_del_futuro_imbernon_faleeeexa
 
psychology
psychologypsychology
psychologymrsbella
 
Making Procurement Law Work For You
Making Procurement Law Work For YouMaking Procurement Law Work For You
Making Procurement Law Work For YouSWF
 
InKnowVision February 2014 Case Study - Anderson FWGA
InKnowVision February 2014 Case Study - Anderson FWGAInKnowVision February 2014 Case Study - Anderson FWGA
InKnowVision February 2014 Case Study - Anderson FWGAInKnowVision
 
InKnowVision December 2013 Case Study - Watson FWGA
InKnowVision December 2013 Case Study - Watson FWGAInKnowVision December 2013 Case Study - Watson FWGA
InKnowVision December 2013 Case Study - Watson FWGAInKnowVision
 
Tone excel cucuk sate
Tone excel cucuk sateTone excel cucuk sate
Tone excel cucuk satetoneexcel1m
 
How to sell your company
How to sell your company How to sell your company
How to sell your company Netcetera
 
Digital transformation of card payments - About SwissWallet
Digital transformation of card payments - About SwissWallet Digital transformation of card payments - About SwissWallet
Digital transformation of card payments - About SwissWallet Netcetera
 
@Correos tema 1 (el grupo correos ii)-septbre octubre
@Correos tema 1 (el grupo correos ii)-septbre octubre@Correos tema 1 (el grupo correos ii)-septbre octubre
@Correos tema 1 (el grupo correos ii)-septbre octubreAmador Dominguez Esquivel
 
Web only rx16-adv_tues_330_1_elliott_2brunson_3willis_4dean
Web only rx16-adv_tues_330_1_elliott_2brunson_3willis_4deanWeb only rx16-adv_tues_330_1_elliott_2brunson_3willis_4dean
Web only rx16-adv_tues_330_1_elliott_2brunson_3willis_4deanOPUNITE
 
Søgeordsanalyser 2015
Søgeordsanalyser 2015Søgeordsanalyser 2015
Søgeordsanalyser 2015Ib Potter
 
Html google elsker
Html google elskerHtml google elsker
Html google elskerIb Potter
 
Content Marketing
Content MarketingContent Marketing
Content MarketingIb Potter
 
Salesforce Agile Transformation - Agile 2007 Conference
Salesforce Agile Transformation - Agile 2007 ConferenceSalesforce Agile Transformation - Agile 2007 Conference
Salesforce Agile Transformation - Agile 2007 ConferenceSteve Greene
 
Rx16 adv wed_1230_1_thau_2gorman
Rx16 adv wed_1230_1_thau_2gormanRx16 adv wed_1230_1_thau_2gorman
Rx16 adv wed_1230_1_thau_2gormanOPUNITE
 
Estudio de Medios de Comunicación Online 2016
Estudio de Medios de Comunicación Online 2016 Estudio de Medios de Comunicación Online 2016
Estudio de Medios de Comunicación Online 2016 IAB Spain
 

Viewers also liked (17)

La profesion docente_ante_los_desafios_del_presente_y_del_futuro_imbernon_f
La profesion docente_ante_los_desafios_del_presente_y_del_futuro_imbernon_fLa profesion docente_ante_los_desafios_del_presente_y_del_futuro_imbernon_f
La profesion docente_ante_los_desafios_del_presente_y_del_futuro_imbernon_f
 
psychology
psychologypsychology
psychology
 
Making Procurement Law Work For You
Making Procurement Law Work For YouMaking Procurement Law Work For You
Making Procurement Law Work For You
 
InKnowVision February 2014 Case Study - Anderson FWGA
InKnowVision February 2014 Case Study - Anderson FWGAInKnowVision February 2014 Case Study - Anderson FWGA
InKnowVision February 2014 Case Study - Anderson FWGA
 
InKnowVision December 2013 Case Study - Watson FWGA
InKnowVision December 2013 Case Study - Watson FWGAInKnowVision December 2013 Case Study - Watson FWGA
InKnowVision December 2013 Case Study - Watson FWGA
 
vinoth CV
vinoth CVvinoth CV
vinoth CV
 
Tone excel cucuk sate
Tone excel cucuk sateTone excel cucuk sate
Tone excel cucuk sate
 
How to sell your company
How to sell your company How to sell your company
How to sell your company
 
Digital transformation of card payments - About SwissWallet
Digital transformation of card payments - About SwissWallet Digital transformation of card payments - About SwissWallet
Digital transformation of card payments - About SwissWallet
 
@Correos tema 1 (el grupo correos ii)-septbre octubre
@Correos tema 1 (el grupo correos ii)-septbre octubre@Correos tema 1 (el grupo correos ii)-septbre octubre
@Correos tema 1 (el grupo correos ii)-septbre octubre
 
Web only rx16-adv_tues_330_1_elliott_2brunson_3willis_4dean
Web only rx16-adv_tues_330_1_elliott_2brunson_3willis_4deanWeb only rx16-adv_tues_330_1_elliott_2brunson_3willis_4dean
Web only rx16-adv_tues_330_1_elliott_2brunson_3willis_4dean
 
Søgeordsanalyser 2015
Søgeordsanalyser 2015Søgeordsanalyser 2015
Søgeordsanalyser 2015
 
Html google elsker
Html google elskerHtml google elsker
Html google elsker
 
Content Marketing
Content MarketingContent Marketing
Content Marketing
 
Salesforce Agile Transformation - Agile 2007 Conference
Salesforce Agile Transformation - Agile 2007 ConferenceSalesforce Agile Transformation - Agile 2007 Conference
Salesforce Agile Transformation - Agile 2007 Conference
 
Rx16 adv wed_1230_1_thau_2gorman
Rx16 adv wed_1230_1_thau_2gormanRx16 adv wed_1230_1_thau_2gorman
Rx16 adv wed_1230_1_thau_2gorman
 
Estudio de Medios de Comunicación Online 2016
Estudio de Medios de Comunicación Online 2016 Estudio de Medios de Comunicación Online 2016
Estudio de Medios de Comunicación Online 2016
 

Similar to Continuous Delivery (Internet-Briefing 2012-04-03)

Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous DeliveryNetcetera
 
SDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with AgileSDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with AgileAbdel Moneim Emad
 
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...XebiaLabs
 
Dev ops and safety critical systems
Dev ops and safety critical systemsDev ops and safety critical systems
Dev ops and safety critical systemsLen Bass
 
DevOps for Mainframe for IBM Pulse Conference
DevOps for Mainframe for IBM Pulse ConferenceDevOps for Mainframe for IBM Pulse Conference
DevOps for Mainframe for IBM Pulse ConferenceRosalind Radcliffe
 
Our Journey To Continuous Delivery
Our Journey To Continuous DeliveryOur Journey To Continuous Delivery
Our Journey To Continuous DeliveryRobert Mircea
 
Chef for DevOps - an Introduction
Chef for DevOps - an IntroductionChef for DevOps - an Introduction
Chef for DevOps - an IntroductionSanjeev Sharma
 
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENTROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENTIndium Software
 
Unit Testing Essay
Unit Testing EssayUnit Testing Essay
Unit Testing EssayDani Cox
 
Monitoring microservice applications: An SRE’s perspective
Monitoring microservice applications: An SRE’s perspectiveMonitoring microservice applications: An SRE’s perspective
Monitoring microservice applications: An SRE’s perspectiveDevOpsProdigy
 
Encontrando la Aguja en el Rendimiento de Aplicaciones
Encontrando la Aguja en el Rendimiento de AplicacionesEncontrando la Aguja en el Rendimiento de Aplicaciones
Encontrando la Aguja en el Rendimiento de AplicacionesSoftware Guru
 
Performance Test Slideshow Recent
Performance Test Slideshow RecentPerformance Test Slideshow Recent
Performance Test Slideshow RecentFuture Simmons
 
Performance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TPerformance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TFuture Simmons
 
Ci tips and_tricks_linards_liepins
Ci tips and_tricks_linards_liepinsCi tips and_tricks_linards_liepins
Ci tips and_tricks_linards_liepinsLinards Liep
 
Enforcing Quality with DevOps Pipeline Gates
Enforcing Quality with DevOps Pipeline GatesEnforcing Quality with DevOps Pipeline Gates
Enforcing Quality with DevOps Pipeline GatesMichael King
 

Similar to Continuous Delivery (Internet-Briefing 2012-04-03) (20)

Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
SDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with AgileSDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with Agile
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
XebiaLabs, CloudBees, Puppet Labs Webinar Slides - IT Automation for the Mode...
 
Dev ops and safety critical systems
Dev ops and safety critical systemsDev ops and safety critical systems
Dev ops and safety critical systems
 
Continuous integration with Jenkins
Continuous integration with JenkinsContinuous integration with Jenkins
Continuous integration with Jenkins
 
DevOps for Mainframe for IBM Pulse Conference
DevOps for Mainframe for IBM Pulse ConferenceDevOps for Mainframe for IBM Pulse Conference
DevOps for Mainframe for IBM Pulse Conference
 
Our Journey To Continuous Delivery
Our Journey To Continuous DeliveryOur Journey To Continuous Delivery
Our Journey To Continuous Delivery
 
Chef for DevOps - an Introduction
Chef for DevOps - an IntroductionChef for DevOps - an Introduction
Chef for DevOps - an Introduction
 
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENTROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
 
Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model Continuous Integration & the Release Maturity Model
Continuous Integration & the Release Maturity Model
 
DevOps explained
DevOps explainedDevOps explained
DevOps explained
 
Unit Testing Essay
Unit Testing EssayUnit Testing Essay
Unit Testing Essay
 
Monitoring microservice applications: An SRE’s perspective
Monitoring microservice applications: An SRE’s perspectiveMonitoring microservice applications: An SRE’s perspective
Monitoring microservice applications: An SRE’s perspective
 
Encontrando la Aguja en el Rendimiento de Aplicaciones
Encontrando la Aguja en el Rendimiento de AplicacionesEncontrando la Aguja en el Rendimiento de Aplicaciones
Encontrando la Aguja en el Rendimiento de Aplicaciones
 
Performance Test Slideshow Recent
Performance Test Slideshow RecentPerformance Test Slideshow Recent
Performance Test Slideshow Recent
 
Performance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N TPerformance Test Slideshow R E C E N T
Performance Test Slideshow R E C E N T
 
Ci tips and_tricks_linards_liepins
Ci tips and_tricks_linards_liepinsCi tips and_tricks_linards_liepins
Ci tips and_tricks_linards_liepins
 
Enforcing Quality with DevOps Pipeline Gates
Enforcing Quality with DevOps Pipeline GatesEnforcing Quality with DevOps Pipeline Gates
Enforcing Quality with DevOps Pipeline Gates
 
Neev QA Offering
Neev QA OfferingNeev QA Offering
Neev QA Offering
 

More from Netcetera

Payment trend scouting - Kurt Schmid, Netcetera
Payment trend scouting - Kurt Schmid, NetceteraPayment trend scouting - Kurt Schmid, Netcetera
Payment trend scouting - Kurt Schmid, NetceteraNetcetera
 
Boost your approved transaction volume - Ana Vuksanovikj Vaneska, Netcetera
Boost your approved transaction volume - Ana Vuksanovikj Vaneska, NetceteraBoost your approved transaction volume - Ana Vuksanovikj Vaneska, Netcetera
Boost your approved transaction volume - Ana Vuksanovikj Vaneska, NetceteraNetcetera
 
Increase conversion, convenience and security in e-commerce checkouts - Silke...
Increase conversion, convenience and security in e-commerce checkouts - Silke...Increase conversion, convenience and security in e-commerce checkouts - Silke...
Increase conversion, convenience and security in e-commerce checkouts - Silke...Netcetera
 
3-D Secure 2.0 - Stephan Rüdisüli, Netcetera & Patrick Juffern, INFORM
3-D Secure 2.0 - Stephan Rüdisüli, Netcetera & Patrick Juffern, INFORM3-D Secure 2.0 - Stephan Rüdisüli, Netcetera & Patrick Juffern, INFORM
3-D Secure 2.0 - Stephan Rüdisüli, Netcetera & Patrick Juffern, INFORMNetcetera
 
Digital Payment in 2020 - Kurt Schmid, Netcetera
Digital Payment in 2020 - Kurt Schmid, NetceteraDigital Payment in 2020 - Kurt Schmid, Netcetera
Digital Payment in 2020 - Kurt Schmid, NetceteraNetcetera
 
AI First. Erfolgsfaktoren für künstliche Intelligenz im Unternehmen
AI First. Erfolgsfaktoren für künstliche Intelligenz im UnternehmenAI First. Erfolgsfaktoren für künstliche Intelligenz im Unternehmen
AI First. Erfolgsfaktoren für künstliche Intelligenz im UnternehmenNetcetera
 
Augmenting Maintenance
Augmenting MaintenanceAugmenting Maintenance
Augmenting MaintenanceNetcetera
 
Front-end up front
Front-end up frontFront-end up front
Front-end up frontNetcetera
 
The future of Prototpying
The future of PrototpyingThe future of Prototpying
The future of PrototpyingNetcetera
 
EMV Secure Remote Commerce (SRC)
EMV Secure Remote Commerce (SRC)EMV Secure Remote Commerce (SRC)
EMV Secure Remote Commerce (SRC)Netcetera
 
Online shopping technology in the fast lane?
Online shopping technology in the fast lane?Online shopping technology in the fast lane?
Online shopping technology in the fast lane?Netcetera
 
Merchant tokenization and EMV® Secure Remote Commerce
Merchant tokenization and EMV® Secure Remote CommerceMerchant tokenization and EMV® Secure Remote Commerce
Merchant tokenization and EMV® Secure Remote CommerceNetcetera
 
Seamless 3-D Secure e-commerce experience
Seamless 3-D Secure e-commerce experienceSeamless 3-D Secure e-commerce experience
Seamless 3-D Secure e-commerce experienceNetcetera
 
Augmenting Health Care
Augmenting Health CareAugmenting Health Care
Augmenting Health CareNetcetera
 
Driving transactional growth with 3-D Secure
Driving transactional growth with 3-D SecureDriving transactional growth with 3-D Secure
Driving transactional growth with 3-D SecureNetcetera
 
Digital Payment Quo Vadis
Digital Payment Quo VadisDigital Payment Quo Vadis
Digital Payment Quo VadisNetcetera
 
EMV® Secure Remote Commerce
EMV® Secure Remote CommerceEMV® Secure Remote Commerce
EMV® Secure Remote CommerceNetcetera
 
Context: The missing ingredient in multilingual software translation
Context: The missing ingredient in multilingual software translationContext: The missing ingredient in multilingual software translation
Context: The missing ingredient in multilingual software translationNetcetera
 
Digital Payments - Netcetera Innovation Summit 2018
Digital Payments - Netcetera Innovation Summit 2018Digital Payments - Netcetera Innovation Summit 2018
Digital Payments - Netcetera Innovation Summit 2018Netcetera
 
"Whats up and new at Netcetera?" - Netcetera Innovation Summit 2018
"Whats up and new at Netcetera?" - Netcetera Innovation Summit 2018"Whats up and new at Netcetera?" - Netcetera Innovation Summit 2018
"Whats up and new at Netcetera?" - Netcetera Innovation Summit 2018Netcetera
 

More from Netcetera (20)

Payment trend scouting - Kurt Schmid, Netcetera
Payment trend scouting - Kurt Schmid, NetceteraPayment trend scouting - Kurt Schmid, Netcetera
Payment trend scouting - Kurt Schmid, Netcetera
 
Boost your approved transaction volume - Ana Vuksanovikj Vaneska, Netcetera
Boost your approved transaction volume - Ana Vuksanovikj Vaneska, NetceteraBoost your approved transaction volume - Ana Vuksanovikj Vaneska, Netcetera
Boost your approved transaction volume - Ana Vuksanovikj Vaneska, Netcetera
 
Increase conversion, convenience and security in e-commerce checkouts - Silke...
Increase conversion, convenience and security in e-commerce checkouts - Silke...Increase conversion, convenience and security in e-commerce checkouts - Silke...
Increase conversion, convenience and security in e-commerce checkouts - Silke...
 
3-D Secure 2.0 - Stephan Rüdisüli, Netcetera & Patrick Juffern, INFORM
3-D Secure 2.0 - Stephan Rüdisüli, Netcetera & Patrick Juffern, INFORM3-D Secure 2.0 - Stephan Rüdisüli, Netcetera & Patrick Juffern, INFORM
3-D Secure 2.0 - Stephan Rüdisüli, Netcetera & Patrick Juffern, INFORM
 
Digital Payment in 2020 - Kurt Schmid, Netcetera
Digital Payment in 2020 - Kurt Schmid, NetceteraDigital Payment in 2020 - Kurt Schmid, Netcetera
Digital Payment in 2020 - Kurt Schmid, Netcetera
 
AI First. Erfolgsfaktoren für künstliche Intelligenz im Unternehmen
AI First. Erfolgsfaktoren für künstliche Intelligenz im UnternehmenAI First. Erfolgsfaktoren für künstliche Intelligenz im Unternehmen
AI First. Erfolgsfaktoren für künstliche Intelligenz im Unternehmen
 
Augmenting Maintenance
Augmenting MaintenanceAugmenting Maintenance
Augmenting Maintenance
 
Front-end up front
Front-end up frontFront-end up front
Front-end up front
 
The future of Prototpying
The future of PrototpyingThe future of Prototpying
The future of Prototpying
 
EMV Secure Remote Commerce (SRC)
EMV Secure Remote Commerce (SRC)EMV Secure Remote Commerce (SRC)
EMV Secure Remote Commerce (SRC)
 
Online shopping technology in the fast lane?
Online shopping technology in the fast lane?Online shopping technology in the fast lane?
Online shopping technology in the fast lane?
 
Merchant tokenization and EMV® Secure Remote Commerce
Merchant tokenization and EMV® Secure Remote CommerceMerchant tokenization and EMV® Secure Remote Commerce
Merchant tokenization and EMV® Secure Remote Commerce
 
Seamless 3-D Secure e-commerce experience
Seamless 3-D Secure e-commerce experienceSeamless 3-D Secure e-commerce experience
Seamless 3-D Secure e-commerce experience
 
Augmenting Health Care
Augmenting Health CareAugmenting Health Care
Augmenting Health Care
 
Driving transactional growth with 3-D Secure
Driving transactional growth with 3-D SecureDriving transactional growth with 3-D Secure
Driving transactional growth with 3-D Secure
 
Digital Payment Quo Vadis
Digital Payment Quo VadisDigital Payment Quo Vadis
Digital Payment Quo Vadis
 
EMV® Secure Remote Commerce
EMV® Secure Remote CommerceEMV® Secure Remote Commerce
EMV® Secure Remote Commerce
 
Context: The missing ingredient in multilingual software translation
Context: The missing ingredient in multilingual software translationContext: The missing ingredient in multilingual software translation
Context: The missing ingredient in multilingual software translation
 
Digital Payments - Netcetera Innovation Summit 2018
Digital Payments - Netcetera Innovation Summit 2018Digital Payments - Netcetera Innovation Summit 2018
Digital Payments - Netcetera Innovation Summit 2018
 
"Whats up and new at Netcetera?" - Netcetera Innovation Summit 2018
"Whats up and new at Netcetera?" - Netcetera Innovation Summit 2018"Whats up and new at Netcetera?" - Netcetera Innovation Summit 2018
"Whats up and new at Netcetera?" - Netcetera Innovation Summit 2018
 

Recently uploaded

Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...Aggregage
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Will Schroeder
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URLRuncy Oommen
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.YounusS2
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UbiTrack UK
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6DianaGray10
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfJamie (Taka) Wang
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Adtran
 

Recently uploaded (20)

Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
The Data Metaverse: Unpacking the Roles, Use Cases, and Tech Trends in Data a...
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
 
Designing A Time bound resource download URL
Designing A Time bound resource download URLDesigning A Time bound resource download URL
Designing A Time bound resource download URL
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 
Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.Basic Building Blocks of Internet of Things.
Basic Building Blocks of Internet of Things.
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
UWB Technology for Enhanced Indoor and Outdoor Positioning in Physiological M...
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™Meet the new FSP 3000 M-Flex800™
Meet the new FSP 3000 M-Flex800™
 

Continuous Delivery (Internet-Briefing 2012-04-03)

  • 1. Continuous Delivery Software-Deployments ohne graue Haare 3. April 2012 – Corsin Decurtins
  • 2. Some numbers… 4 deployments 15 deployments per year per day bank, insurance company, social network, Web 2.0, government, transport Google Mail, Flickr, Facebook authority Netcetera | 2
  • 3. Some numbers… On the left Traditional application from something like a bank, an insurance company, a government agency, a transport authority … you name it. On the right One of those new fancy social network, Web 2.0-ish application. Think Facebook, Google Mail, Flickr, … Both are serious applications with serious business value. Netcetera | 3
  • 4. Some numbers… Both applications need a high up-time. Deployments to the production environment are risky. Both companies try to reduce the risk of deployments. Two completely different approaches to do that: "Banks" try to reduce the risk and effort for deployments by reducing the number of deployments. The "social networking" site tries to reduce the risk of deployments by making much, much smaller deployments … but a lot of them. Netcetera | 4
  • 5. Some numbers… The questions now are: a) Which organization is right? b) Where in this range are you? c) Where in this range should you be? That's what I want to talk about today. That and why moving toward the right side might be the better choice for the future. Netcetera | 5
  • 6. Deployment Installation of a software release on a target environment Replacement of existing software releases Data migration System reconfiguration Netcetera | 6
  • 7. Deployment Complexity Data migration Multiple components Synchronized deployments Dependencies Netcetera | 7
  • 8. Deployment Risks Server not starting Tuning issues Out of disk space Deployment Time Database migration failure Wrong dependency version Configuration typos Missing tools or libraries Communication failure Missing certificates Version mismatch Wrong access rights Bad Performance … Netcetera | 8
  • 9. Cost of a Deployment Complexity Risks Staffing Time, On-Call Duty Off-Hour Work Down-Time Stability Netcetera | 9
  • 10. Our goals (yours might be different) Improve Quality Fewer errors, less (unexpected) down-time, less stress. Standardization Different applications should deploy in a similar way. Makes it easier for the operations and the development teams. Faster Deployments Less down-time, smaller need for off-hour deployments. Netcetera | 10
  • 11. Software Delivery Pipeline EIS / Metrics test-int test-uat prod check-in build deploy deploy deploy unit testing integration performance testing testing dev user acceptance ops security review SCM Repo CSO qa dev Netcetera | 11
  • 12. Software Delivery Pipeline The Software Delivery Pipeline is the combined set of processes, procedures and tools that you use to bring code from the development environment into production. Of course you would make the pipeline even wider by including requirements engineering etc. but for the context of this talk, we will start with code. Netcetera | 12
  • 13. Software Delivery Pipeline Builds Propagate through the Pipeline Successful completion of a step triggers the next steps. Errors interrupt the Pipeline In case of an error, the pipeline processing is interrupted. Expensive steps are only done if the previous steps worked For example (manual) User Testing is only done on builds that passed the automated tests. Some Pipeline steps might require manual triggering Deployment to uat or prod is probably still triggered manually Netcetera | 13
  • 14. Software Delivery Pipeline A few things that you should notice right here: Everybody has a Software Delivery Pipeline. You might not have thought about it yet, it might be automated or manual, very simple or complex, but you have a pipeline. Whether you want it or not, whether you manage it or not. Your pipeline might look differently. Depends on the project, the customer, the business domain, the degree of maturity, … Netcetera | 14
  • 15. Software Delivery Pipeline Coming back to our risk and cost analysis, we can identify some problem areas: Deployments are probably not tested Deployments are done manually So again, the knee-jerk reaction would be to try to reduce the number of deployments. They are expensive, risky and mean a lot of stress for the development team, the customer and the operations people. However, there are very similar issues on the left side of the diagram. We have some risky and expensive things there too (building, unit testing, deploying, integration testing, …). But the approach there is not too do it less frequently, but to automate it and do it more often. The underlying principle that we see there is … Netcetera | 15
  • 16. If it hurts, do it often. Netcetera | 16
  • 17. Software Delivery Pipeline EIS / Metrics test-int test-uat prod check-in build deploy deploy deploy unit testing integration performance testing testing dev user acceptance ops security review SCM Repo CSO qa dev Netcetera | 17
  • 18. Continuous Integration What people did on the left side was to automate the pipeline steps and run them automatically and very frequently. Automation improves the quality by making the steps reproducible, predictable, verifiable, repeatable, … This is essentially known as Continuous Integration. A lot of companies already do this. But the automation often ends after the run of the integration tests and the creation of the build artifacts. One way of looking at Continuous Delivery is to extend the principles from Continuous Integration and bring them further down the pipeline to the right side. Netcetera | 18
  • 19. Continuous Delivery Automation of Software Delivery Pipeline Automation of the Deployment Automated Triggering (Continuous Execution) Automated Testing / Verification Netcetera | 19
  • 20. Continuous Delivery Automation Automation of the delivery pipeline and the deployment process to the various environments. This includes deploying code, running database migrations, configuration, restarting, … Automated Triggering (Continuous Execution) Deployments (and subsequent steps) are triggered automatically, usually by upstream pipeline steps. Automated Testing / Verification Deployments are tested and verified by automated tests. Netcetera | 20
  • 21. Automation of the Deployment Process $ deploy <application> <version> <environment> Deployment was successful $ deploy <application> <version> <environment> Deployment failed, rolled back to old version Netcetera | 21
  • 22. Anatomy of a Deployment Notify the running application that a deployment is happing Set up a maintenance page Stop the running application Install the new application version Run a database migration Start the new application version Reconfigure the entry server Switch off the maintenance page Netcetera | 22
  • 23. Anatomy of a Deployment Consists of multiple consecutive steps Steps are reusable for different deployments Steps are reusable for different applications Might vary from version to version Might depend on the version that is currently installed Netcetera | 23
  • 24. Anatomy of a Deployment Step Verify the pre-conditions Do something Validate the post-conditions Netcetera | 24
  • 25. Pre-Conditions Encoding of the assumptions of a deployment step. Used to verify that the deployment step could actually work. Make sure we do not attempt a deployment step, if the assumptions are not met. Netcetera | 25
  • 26. Verification Verification that a deployment step worked. Verification that a deployment step had the desired effect. Makes sure that we detect problems as early as possible in the deployment process. Netcetera | 26
  • 27. Error Handling and Rollbacks Ability to roll back at any time Detecting errors Automated Rollbacks Manual Rollbacks Netcetera | 27
  • 28. Error Handling and Rollbacks Ability to roll back at any time Back up the preexisting state of the system Try to make the deployment non-destructive Detecting errors Deployment process has to be able to detect errors Automated Rollbacks Very desirable But also very complex Has to be tested (continuously) Netcetera | 28
  • 29. Manual Rollback It's just a workaround, but often a viable option Probability of failing deployments is relatively small We are testing the deployment continuously after all. Automated deployment process provides operations people with the necessary tools and artifacts to roll back easily Backups Non-destructive deployments Netcetera | 29
  • 30. Data Migration Data migration is a tricky thing Slow Complex Error-prone Stop-the-World Automation and continuous testing helps More frequent and therefore smaller deployments help Netcetera | 30
  • 31. Data Migration Patterns On-the-fly migration Read-Only availability Storage Layer abstraction NoSQL storage layer Netcetera | 31
  • 32. Data Migration Patterns On-the-fly migration Application can deal with multiple versions of the database Data migration is done on-the-fly (batch job or touch-and-go) Read-Only availability Database is read-only as long as the migration is on-going Storage Layer abstraction Encapsulation of the storage layer NoSQL storage layer Less stringent requirements on schema compliance Netcetera | 32
  • 33. Deployment Testing Deployments are tested continuously Continuous Testing environment Continuously, triggered automatically Pre-Production environment Regularly, triggered manually "Same" configuration as the production environment "Same" state as the production environment Netcetera | 33
  • 34. Software Delivery Pipeline EIS / Metrics test-int test-uat prod check-in build deploy deploy deploy unit testing integration performance testing testing dev user acceptance ops security review SCM Repo CSO qa dev Netcetera | 34
  • 35. How do we get there? It's a process Continuous delivery is not a binary thing. Continuous improvement of the maturity. Netcetera | 35
  • 36. Forcing Teams Just force the teams to do continuous delivery Let them figure out how to do it Bad idea! Netcetera | 36
  • 37. Better Way Provide Teams with Tools and Support Make it easy to implement continuous delivery Iterate Do not try to solve everything in the first go Iterate and implement small steps Follow the pipeline down-stream Netcetera | 37
  • 38. Standardization Good way of leveraging common requirements Provide building blocks for the implementation Common deployment steps Architecture, design and implementation patterns Best practices and guidelines Make it easy for teams to follow the standards Make it possible (but not too easy) to extend the standards Netcetera | 38
  • 39. Software Delivery Pipeline EIS / Metrics test-int test-uat prod check-in build deploy deploy deploy unit testing integration performance testing testing dev user acceptance ops security review SCM Repo CSO qa dev Netcetera | 39
  • 40. Abstractions for Runtime Environment Common abstractions for deployment steps Allow to abstract different runtime environments OS versions and application server versions Virtualization, Private Cloud, Public Cloud Netcetera | 40
  • 41. Added Values for Deployments Collect data about deployments Verify compliance with SLAs Access Control for deployments Notify stakeholders on success/failure of a deployment Configure monitoring system for deployments Netcetera | 41
  • 42. Continuous Delivery and Agile Methodologies Agile Waterfall Perfect match Not really a match, but valuable anyway Automation and automated tests Continuous Testing of Deployments Continuous testing and verification Automation of very complex processes Short release and deployment cycles Delivery of hot-fixes etc. Short feedback loop Netcetera | 42
  • 43. Continuous Delivery Software Delivery Pipeline Automation Reduction of Deployment Risks Continuation of Continuous Integration Quality Improvement Continuous… Faster Deployments … Builds, Integration, Testing Down-Time minimalization … Deployment, Migration Shorter time-to-production Deployment Testing Less stressful deployments Smaller and faster deployments Potential for more frequent deployments Netcetera | 43
  • 44. Continuous Delivery EIS / Metrics test-int test-uat prod check-in build deploy deploy deploy unit testing integration performance testing testing dev user acceptance ops security review SCM Repo CSO qa dev Netcetera | 44
  • 45. Further Reading Continuous Delivery Jez Humble, David Farley Literally the book on "Continuous Delivery". Netcetera | 45
  • 46. Further "Reading" Continuous Delivery (Talk by Jez Humble, DevOps Day 2012) http://www.infoq.com/presentations/Continuous-Delivery Interview with Martin Fowler and Jez Humble on Continuous Delivery http://www.infoq.com/interviews/jez-humble-martin-fowler-cd Continuous Delivery (Blog by Jez Humble) http://continuousdelivery.com/ Netcetera | 46
  • 47. Contact Corsin Decurtins corsin.decurtins@netcetera.com +41 44 247 70 70 Netcetera | 47