SlideShare a Scribd company logo
1 of 83
Setting up a Deployment
Pipeline with TFS
José-Luis Soria
jlsoria@plainconcepts.com
@jlsoriat
Speaker Bio
                                                                 Chapter I
Once upon a time, there was a little kid whose name was José-Luis.
Nobody knows the actual reason, but he began to be interested in
computers in the mid ’80s when, after so much careful consideration by his
parents, he received an 8bit computer as a present, along with some other stuff
such as a bicycle and pajamas. That day he felt so happy with the bicycle, so frustrated with the
pajamas, and somewhat confused about how to properly deal with the computer. Soon he started to
write all kinds of small and useless programs, but surprisingly none of them have made their way to being mentioned in
the history of computer programming. Several years later he went to university, where he studied Computer Science and signed
up for the weirdest student associations. His strange inclination for Application Lifecycle Management began unexpectedly one
sunny spring day when, while playing a soccer match, he was hit hard on the head by the ball and lost consciousness. When he woke up in bed at
hospital after a couple of days, all the words that came out of his mouth were about arcane and obscure matters related to version control systems,
automated builds and similar kinds of esoteric no-brainers. From that moment on, his parents, close relatives and friends lost the small amount of hope they still had in
Jose’s ability to succeed in life and be a person of worth. This behavior has done nothing but get worse until the present day, when he travels around the world trying to
(shorter) Speaker Bio
•   ALM Team Leader at Plain Concepts
•   Professional Scrum Trainer for Scrum.org
•   From Madrid, Spain
•   Knows about Continuous Delivery with TFS ;-)
In This Session, You’ll Learn…
What a pipeline is    Potential benefits
Why bother            Success criteria
Who can use it        Warning signs
How to implement it
What is a pipeline?
Deployment Pipeline
                       AUTOMATED
            COMMIT                      MANUAL TESTING       RELEASE
                     ACCEPTANCE TEST


1.0.1.1

1.0.1.2

1.0.1.3

                        AUTOMATED                         NON-FUNCTIONAL
1.0.1.4               ACCEPTANCE TEST
                                         MANUAL TESTING
                                                             TESTING
Another example
Stages
                     AUTOMATED
          COMMIT                      MANUAL TESTING       RELEASE
                   ACCEPTANCE TEST


1.0.1.1

1.0.1.2

1.0.1.3

                      AUTOMATED                         NON-FUNCTIONAL
1.0.1.4             ACCEPTANCE TEST
                                       MANUAL TESTING
                                                           TESTING
The Cowboy Coder Pipeline
             COMMIT      RELEASE         FIGHT FIRES


   1.0.1.1

   1.0.1.2

   1.0.1.3

                        AUTOMATED
   1.0.1.4            ACCEPTANCE TEST
                                        MANUAL TESTING
The Bureaucratic Pipeline
                                            FILL        ASK BOSS      RESERVE                    SNEAK INT
                    ACCEPT.     MANUAL                                              BRIBE THE
          COMMIT                          OFFICIAL        FOR       DEPLOY TICKET                THE SERVE
                     TEST       TESTING                PERMISSION    AT IT DEPT.     ADMIN         ROOM
                                           FORM

1.0.1.1

1.0.1.2

1.0.1.3

                   AUTOMATED                 NON-         NON-         NON-            NON-         NON-
                                MANUAL
1.0.1.4            ACCEPTANCE
                                TESTING
                                          FUNCTIONAL   FUNCTIONAL   FUNCTIONAL      FUNCTIONAL   FUNCTIONA
                      TEST                  TESTING      TESTING      TESTING         TESTING      TESTING
Instances:
Changes, Builds or Versions
                     AUTOMATED
          COMMIT                      MANUAL TESTING       RELEASE
                   ACCEPTANCE TEST


1.0.1.1

1.0.1.2

1.0.1.3

                      AUTOMATED                         NON-FUNCTIONAL
1.0.1.4             ACCEPTANCE TEST
                                       MANUAL TESTING
                                                           TESTING
The Waterfall-ish Pipeline

                         AUTOMATED
              COMMIT                     MANUAL TESTING   RELEASE
                       ACCEPTANCE TEST


Spring 2008

 Fall 2009

Summer 2011
Propagating Changes
                     AUTOMATED
          COMMIT                     MANUAL TESTING   RELEASE
                   ACCEPTANCE TEST

1.0.1.1

1.0.1.2

1.0.1.3

1.0.1.4
Why bother to build
a pipeline?
No early feedback
A pipeline allows you to get feedback about changes as soon as
possible. Each instance of the pipeline provides feedback about
      that change, while work is started on other changes
No visibility in
 the process
     The pipeline mirrors your
process. All the aspects of the
 way you deliver are reflected
  in the pipeline. The status is
    clearly known at any time.
Paralyze development while
          releasing
Work on new features, or any kind of change, can be started on
a new instance of the pipeline, while releasing is done for older
                changes in existing instances.
Long and unpredictable
    release cycles
It is always clear what steps are taken to release,
         and how long they last on average.
Lack of
traceability
about the origin
of problems
For each issue, you can
always investigate the
change that originated
the instance of the
pipeline where the issue
appears.
Stressful, problematic and
       long deployments
    Stress-free deployments
Deployments are automated and done frequently, so they nno
     longer represent a problem. Practice makes perfect.
Who else can benefit from a pipeline?
Fast-changing
businesses,
needing to
shorten
release cycles
People working in silos
Teams facing an intolerable
     amount of bugs
Anyone willing to improve!
How to implement a pipeline
Is TFS well suited to setting up
    a Deployment Pipeline?
Practices already covered
Build, test, code analysis
Default build template
Prepare artifacts for later stages
Web Deploy          Custom workflows



Database projects   Scripting in general
                         .bat, PowerShell…
Practices already covered
Run automated tests,
  smoke-test deployments
Write automated tests: MSTest, CodedUI,
           NUnit, xUnit, etc.
     Have the builds run these tests
Automate deployments,
 always deploy the same way
Use custom workflow activities or deployment
  scripts: Web Deploy, bat, PowerShell, etc.
   Use the same automations all the time,
      with environments as parameters
Self-service deployments
 Set up builds that trigger the automated
               deployment.
Use the Build-Deploy-Test workflow in Lab
Management, deactivate the Build and Test
             parts if needed.
Environment provision & management,
     prepare to back out changes
 Use Lab Management to provision and manage
                 environments.
Use environment snapshots to back out changes.
For standard environments, automate backup and
                    restore
Practices not covered or
  needing clarification
Build only once
    Rebuilding from source at each step can introduce
      unexpected changes that could lead to issues.

    Use the Lab build template for stages other that the
                       Commit Stage.
If you can’t use Lab, set up a simple build template only for
                  deployment and testing.
Propagate changes through
    the pipeline instantly
Modify build definitions so they trigger the next step in the
           pipeline automatically, when needed.
      You can use a custom workflow activity for this.
For example, the QueueBuild activity from the Community
             Extensions http://bit.ly/14vEEg3.
If any part of the pipeline
        fails, stop the line
For automated steps, only trigger them if the previous one
                 has been successful.
View pipeline status
                 Write a custom dashboard.
An easy option is to use OData for TFS (http://bit.ly/UDbiID).
                                 AUTOMATED
                      COMMIT                      MANUAL TESTING       RELEASE
                               ACCEPTANCE TEST


            1.0.1.1

            1.0.1.2

            1.0.1.3

                                  AUTOMATED                         NON-FUNCTIONAL
            1.0.1.4             ACCEPTANCE TEST
                                                   MANUAL TESTING
                                                                       TESTING
Further improvements

• Version builds: Versioning workflow activity from
  Community TFS Build Extensions (http://bit.ly/14vEEg3)
• Build in parallel: parallel workflow activity, Parallel
  Template (http://bit.ly/VvSD4k)
Further improvements:
            Version Builds
• Versioning workflow activity from Community TFS Build
  Extensions (http://tfsbuildextensions.codeplex.com/)
Lab Management is going to
save you a lot of work. Use it!
Demo!
Potential benefits
Transparent and predictable
      delivery process
                         AUTOMATED
           COMMIT                         MANUAL TESTING       RELEASE
                       ACCEPTANCE TEST


1.0.1.1

1.0.1.2

1.0.1.3

                          AUTOMATED                         NON-FUNCTIONAL
1.0.1.4                 ACCEPTANCE TEST
                                           MANUAL TESTING
                                                               TESTING



 The pipeline reflects at any moment the way software is
        delivered, and the status of that process.
Less defects in production
No reds ever reach the Release column. No regressions.

                         AUTOMATED
            COMMIT                        MANUAL TESTING       RELEASE
                       ACCEPTANCE TEST


1.0.1.1

1.0.1.2

1.0.1.3

                          AUTOMATED                         NON-FUNCTIONAL
1.0.1.4                 ACCEPTANCE TEST
                                           MANUAL TESTING
                                                               TESTING
Flexibility to cope with
                  changes
                          AUTOMATED
             COMMIT                        MANUAL TESTING       RELEASE
                        ACCEPTANCE TEST


1.0.1.1

1.0.1.2

1.0.1.3

                           AUTOMATED                         NON-FUNCTIONAL
1.0.1.4                  ACCEPTANCE TEST
                                            MANUAL TESTING
                                                                TESTING




  Changes can be addressed in one or more new instances of the
                pipeline. Everything is already set up and ready.
Useful and actionable
                       feedback
                                     AUTOMATED
                     COMMIT                           MANUAL TESTING       RELEASE
                                   ACCEPTANCE TEST


       1.0.1.1

       1.0.1.2

       1.0.1.3

                                      AUTOMATED                         NON-FUNCTIONAL
       1.0.1.4                      ACCEPTANCE TEST
                                                       MANUAL TESTING
                                                                           TESTING




Feedback is obtained multiple times, for every change (instance) that gets into the
   pipeline. There is more information, it arrives earlier and it’s more focused.
Shorter time to deploy and
              release
                                 AUTOMATED
                 COMMIT                           MANUAL TESTING       RELEASE
                               ACCEPTANCE TEST


   1.0.1.1

   1.0.1.2

   1.0.1.3

                                  AUTOMATED                         NON-FUNCTIONAL
   1.0.1.4                      ACCEPTANCE TEST
                                                   MANUAL TESTING
                                                                       TESTING



Deployment is done automatically across most of the stages. Release is done
  frequently, for each change, so it’s a predictable and optimized process.
Empowered teams
Success criteria
Shorter Cycle Time




Kanban board and Cumulative Flow Diagram: http://bit.ly/10Zomxd
         Interpreting a CFD: http://slidesha.re/cQjhmu
Greater automated test
              coverage




Using code coverage: http://bit.ly/WtZGW7
Coverage reports: http://bit.ly/XIFtLZ
Build summary report: http://bit.ly/Wu0ryd
Larger MTBF




Check also Reporting on Work Items: http://bit.ly/VDng44 http://bit.ly/X1BACX
Improved Velocity




 Using the velocity report: http://bit.ly/YvWLCi
Impact on the code churn
and frequency of check-ins




   Code churn reports: http://bit.ly/XIFtLZ http://bit.ly/b9oFiS
          Build summary report: http://bit.ly/Wu0ryd
Impact on build cadence




    Build summary report: http://bit.ly/Wu0ryd
Warning signs
Rebuilding from source
and using environment-
   specific binaries
Using the lab template helps to avoid rebuilding.
 Use the same binaries through all the stages.
Builds (steps) that take
a great amount of time
Broken builds or failed steps
not being addressed quickly
Manual
deployments
Automate deployments!!!

Do

Don’t
Configuration and other
    items not being versioned
Put everything under version control.
Use config transforms http://bit.ly/WwetSU.
For non-web projects use slowcheetah http://bit.ly/VqOLhz.
Issues with branching
• Keep your branching model as simple as
  possible.

• Use Branch by Abstraction while
  developing http://bit.ly/X7RMRp.

• Use Feature Toggles for deploying
  http://bit.ly/VqPSO7.
Poorly managed dependencies
                            NuGet can help!

Use NuGet package restore
http://bit.ly/Wf9CX2.

If you want more control, consider
setting up your own NuGet feed
http://bit.ly/WwqVlu.
Lack of rollback procedures
     Use Lab Management snapshots if available.
     Automate backups and rollback procedures.
Continuous
 Delivery
     =
     ≠
Continuous
Deployment
Big ball of mud
A BIG BALL OF MUD is haphazardly
structured, sprawling, sloppy, duct-tape
and bailing wire, spaghetti code jungle.
http://www.laputan.org/mud/mud.html


You CAN Continuously Deploy
spaghetti to a BIG BALL OF
MUD. That’s not Continuous
Delivery.
Continuous Deployment is only a part of
         the whole picture!
                     Continuous Delivery
                 Automate environment                       Smoke-test
                      provision                            deployments
      Propagate
   changes through
                             Continuous          Self-service
             …and much more!!!
     the pipeline            Deployment         deployments
                                                                  View pipeline
                                                                     status
                  Test           Build only
               Automation          once           Stop the line
                     Deploy the same
                      way to every      Have a rollback
                      environment         procedure
Summary
• A Continuous Delivery pipeline can address many typical
  problems with the software development process.
• Visual Studio + TFS, with some customization, are
  suitable for setting up a pipeline (better with Lab
  Management).
• When properly implemented, it can bring many benefits.
• You have to watch out for some common warning signs.
Plain Concepts
Image credits
http://www.flickr.com/photos/danielpanev/3299995912/
http://www.flickr.com/photos/jdlasica/424927934/
http://www.flickr.com/photos/afterfate/459042219/
http://www.flickr.com/photos/huangjiahui/3179858408/
http://en.wikipedia.org/wiki/File:Pipeline,_4_stage.svg
http://www.flickr.com/photos/ninonatividad/8112215283/
http://www.flickr.com/photos/crabbylioncardsandmore/4980927493/
http://www.flickr.com/photos/seattlemunicipalarchives/3360591350/
http://www.flickr.com/photos/selva/20600897/
http://www.flickr.com/photos/willowherb/3319973581/
http://www.flickr.com/photos/tommy-ironic/3437613067/
http://www.flickr.com/photos/seattlemunicipalarchives/7165372144/
http://commons.wikimedia.org/wiki/File:Gusher_Okemah_OK_1922.jpg
http://www.flickr.com/photos/perspective/6222453924/in/photostream/
http://commons.wikimedia.org/wiki/File:Mirrool_Silos.jpg
http://commons.wikimedia.org/wiki/File:Large_Milkweed_Bug_Oncopeltus_fasciatus_Bugs_2400px.jpg
http://www.flickr.com/photos/avi_abrams/421717471/sizes/o/
http://www.celoriu.com/2012/10/25/sociedad-ocio-y-cultura/las-copas-de-la-seleccion-llegan-a-llanes/
http://www.nypost.com/p/news/local/jersey_field_of_oabCIiTLOJ1QzPFltXiniO
http://www.flickr.com/photos/nzrico/4591154338/
http://www.flickr.com/photos/leva/215368257/
http://www.signgenerator.org/books/dummies/
http://www.cinismoilustrado.com/2012/12/iconos-que-te-joden-el-dia.html
Thanks! Any questions?
jlsoria@plainconcepts.com
@jlsoriat
http://geeks.ms/blogs/jlsoria
Get these slides: http://slidesha.re/11fljAc
ALM Summit 3 - Setting up a Continuous Delivery Deployment Pipeline with TFS

More Related Content

What's hot

Continuous delivery @åf consult
Continuous delivery @åf consultContinuous delivery @åf consult
Continuous delivery @åf consultTomas Riha
 
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...manssandstrom
 
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and SubversionBeyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and SubversionProduct Marketing Services
 
Continuous Integration using Cruise Control
Continuous Integration using Cruise ControlContinuous Integration using Cruise Control
Continuous Integration using Cruise Controlelliando dias
 
02 - Build and Deployment Management
02 - Build and Deployment Management02 - Build and Deployment Management
02 - Build and Deployment ManagementSergii Shmarkatiuk
 
Continuous delivery continuous integration 0.3
Continuous delivery continuous integration 0.3Continuous delivery continuous integration 0.3
Continuous delivery continuous integration 0.3Alex Tregubov
 

What's hot (8)

Continuous delivery @åf consult
Continuous delivery @åf consultContinuous delivery @åf consult
Continuous delivery @åf consult
 
Crp
CrpCrp
Crp
 
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
 
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and SubversionBeyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
 
Continuous Integration using Cruise Control
Continuous Integration using Cruise ControlContinuous Integration using Cruise Control
Continuous Integration using Cruise Control
 
02 - Build and Deployment Management
02 - Build and Deployment Management02 - Build and Deployment Management
02 - Build and Deployment Management
 
Continuous delivery continuous integration 0.3
Continuous delivery continuous integration 0.3Continuous delivery continuous integration 0.3
Continuous delivery continuous integration 0.3
 
03 - Continuous Integration
03 - Continuous Integration03 - Continuous Integration
03 - Continuous Integration
 

Viewers also liked

TFS Release Management Deep Dive
TFS Release Management Deep DiveTFS Release Management Deep Dive
TFS Release Management Deep DiveNico Orschel
 
CI/CD using TFS Release Manager
CI/CD using TFS Release ManagerCI/CD using TFS Release Manager
CI/CD using TFS Release ManagerNurulazrad Murad
 
Lap Around Visual Studio 2010 Ultimate And TFS 2010
Lap Around Visual Studio 2010 Ultimate And TFS 2010Lap Around Visual Studio 2010 Ultimate And TFS 2010
Lap Around Visual Studio 2010 Ultimate And TFS 2010Ed Blankenship
 
Release management with TFS 2013
Release management with TFS 2013Release management with TFS 2013
Release management with TFS 2013Davide Benvegnù
 
Team Foundation Server Demo
Team Foundation Server DemoTeam Foundation Server Demo
Team Foundation Server Demophase2int
 
Introducing Release Management for Team Foundation Server 2013
Introducing Release Management for Team Foundation Server 2013Introducing Release Management for Team Foundation Server 2013
Introducing Release Management for Team Foundation Server 2013Microsoft Visual Studio
 
RightScale Webinar: Continuous Integration and Delivery in the Cloud - How Ri...
RightScale Webinar: Continuous Integration and Delivery in the Cloud - How Ri...RightScale Webinar: Continuous Integration and Delivery in the Cloud - How Ri...
RightScale Webinar: Continuous Integration and Delivery in the Cloud - How Ri...RightScale
 

Viewers also liked (9)

TFS Release Management Deep Dive
TFS Release Management Deep DiveTFS Release Management Deep Dive
TFS Release Management Deep Dive
 
CI/CD using TFS Release Manager
CI/CD using TFS Release ManagerCI/CD using TFS Release Manager
CI/CD using TFS Release Manager
 
Windows Azure Mobile Services - Connecting Cross Platform Devices
Windows Azure Mobile Services - Connecting Cross Platform DevicesWindows Azure Mobile Services - Connecting Cross Platform Devices
Windows Azure Mobile Services - Connecting Cross Platform Devices
 
TFS 2010 Overview
TFS 2010 OverviewTFS 2010 Overview
TFS 2010 Overview
 
Lap Around Visual Studio 2010 Ultimate And TFS 2010
Lap Around Visual Studio 2010 Ultimate And TFS 2010Lap Around Visual Studio 2010 Ultimate And TFS 2010
Lap Around Visual Studio 2010 Ultimate And TFS 2010
 
Release management with TFS 2013
Release management with TFS 2013Release management with TFS 2013
Release management with TFS 2013
 
Team Foundation Server Demo
Team Foundation Server DemoTeam Foundation Server Demo
Team Foundation Server Demo
 
Introducing Release Management for Team Foundation Server 2013
Introducing Release Management for Team Foundation Server 2013Introducing Release Management for Team Foundation Server 2013
Introducing Release Management for Team Foundation Server 2013
 
RightScale Webinar: Continuous Integration and Delivery in the Cloud - How Ri...
RightScale Webinar: Continuous Integration and Delivery in the Cloud - How Ri...RightScale Webinar: Continuous Integration and Delivery in the Cloud - How Ri...
RightScale Webinar: Continuous Integration and Delivery in the Cloud - How Ri...
 

Similar to ALM Summit 3 - Setting up a Continuous Delivery Deployment Pipeline with TFS

Planning & building scalable test infrastructure
Planning  & building scalable test infrastructurePlanning  & building scalable test infrastructure
Planning & building scalable test infrastructureVijayan Reddy
 
Testing in an Open Source Middleware Platform Space The WSO2 Way.
Testing in an Open Source Middleware Platform Space  The WSO2 Way.Testing in an Open Source Middleware Platform Space  The WSO2 Way.
Testing in an Open Source Middleware Platform Space The WSO2 Way.WSO2
 
Improving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester TrainingImproving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester TrainingAnna Russo
 
Test Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh DahalTest Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh DahalQA or the Highway
 
Qtp Training Deepti 1 Of 4187
Qtp Training Deepti 1 Of 4187Qtp Training Deepti 1 Of 4187
Qtp Training Deepti 1 Of 4187Azhar Satti
 
Enabling Agile Testing Through Continuous Integration Agile2009
Enabling Agile Testing Through Continuous Integration Agile2009Enabling Agile Testing Through Continuous Integration Agile2009
Enabling Agile Testing Through Continuous Integration Agile2009sstolberg
 
Creating testing tools to support development
Creating testing tools to support developmentCreating testing tools to support development
Creating testing tools to support developmentChema del Barco
 
Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsDominik Dary
 
The Key to DevOps? Testing Early in the Pipeline
The Key to DevOps? Testing Early in the PipelineThe Key to DevOps? Testing Early in the Pipeline
The Key to DevOps? Testing Early in the PipelineDevOps.com
 
2V_presentation
2V_presentation2V_presentation
2V_presentationnrvikhyath
 
2 v presentation_new
2 v presentation_new2 v presentation_new
2 v presentation_newnrvikhyath
 
Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsMichael Palotas
 
Continuous delivery @wcap 5-09-2013
Continuous delivery   @wcap 5-09-2013Continuous delivery   @wcap 5-09-2013
Continuous delivery @wcap 5-09-2013David Funaro
 
Linuxtag 2012 - continuous delivery - dream to reality
Linuxtag 2012  - continuous delivery - dream to realityLinuxtag 2012  - continuous delivery - dream to reality
Linuxtag 2012 - continuous delivery - dream to realityClément Escoffier
 
Let's make this test suite run faster - Paris JUG 2011
Let's make this test suite run faster - Paris JUG 2011Let's make this test suite run faster - Paris JUG 2011
Let's make this test suite run faster - Paris JUG 2011David Gageot
 
Atagg 2015 Test automation and effective continuous integration
Atagg 2015 Test automation and effective continuous integrationAtagg 2015 Test automation and effective continuous integration
Atagg 2015 Test automation and effective continuous integrationAgile Testing Alliance
 

Similar to ALM Summit 3 - Setting up a Continuous Delivery Deployment Pipeline with TFS (20)

Planning & building scalable test infrastructure
Planning  & building scalable test infrastructurePlanning  & building scalable test infrastructure
Planning & building scalable test infrastructure
 
Testing in an Open Source Middleware Platform Space The WSO2 Way.
Testing in an Open Source Middleware Platform Space  The WSO2 Way.Testing in an Open Source Middleware Platform Space  The WSO2 Way.
Testing in an Open Source Middleware Platform Space The WSO2 Way.
 
QAorHighway2016
QAorHighway2016QAorHighway2016
QAorHighway2016
 
Improving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester TrainingImproving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester Training
 
Test Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh DahalTest Automation Architecture That Works by Bhupesh Dahal
Test Automation Architecture That Works by Bhupesh Dahal
 
Unit Testing
Unit TestingUnit Testing
Unit Testing
 
Qtp Training Deepti 1 Of 4187
Qtp Training Deepti 1 Of 4187Qtp Training Deepti 1 Of 4187
Qtp Training Deepti 1 Of 4187
 
Enabling Agile Testing Through Continuous Integration Agile2009
Enabling Agile Testing Through Continuous Integration Agile2009Enabling Agile Testing Through Continuous Integration Agile2009
Enabling Agile Testing Through Continuous Integration Agile2009
 
Creating testing tools to support development
Creating testing tools to support developmentCreating testing tools to support development
Creating testing tools to support development
 
Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile Projects
 
The Key to DevOps? Testing Early in the Pipeline
The Key to DevOps? Testing Early in the PipelineThe Key to DevOps? Testing Early in the Pipeline
The Key to DevOps? Testing Early in the Pipeline
 
2V_presentation
2V_presentation2V_presentation
2V_presentation
 
2 v presentation_new
2 v presentation_new2 v presentation_new
2 v presentation_new
 
Implementing Test Automation in Agile Projects
Implementing Test Automation in Agile ProjectsImplementing Test Automation in Agile Projects
Implementing Test Automation in Agile Projects
 
Continuous delivery @wcap 5-09-2013
Continuous delivery   @wcap 5-09-2013Continuous delivery   @wcap 5-09-2013
Continuous delivery @wcap 5-09-2013
 
Linuxtag 2012 - continuous delivery - dream to reality
Linuxtag 2012  - continuous delivery - dream to realityLinuxtag 2012  - continuous delivery - dream to reality
Linuxtag 2012 - continuous delivery - dream to reality
 
Let's make this test suite run faster - Paris JUG 2011
Let's make this test suite run faster - Paris JUG 2011Let's make this test suite run faster - Paris JUG 2011
Let's make this test suite run faster - Paris JUG 2011
 
Verification strategies
Verification strategiesVerification strategies
Verification strategies
 
Atagg 2015 Test automation and effective continuous integration
Atagg 2015 Test automation and effective continuous integrationAtagg 2015 Test automation and effective continuous integration
Atagg 2015 Test automation and effective continuous integration
 
Load Runner
Load RunnerLoad Runner
Load Runner
 

More from Jose Luis Soria

Project Portfolio Management with Kanban in an international company
Project Portfolio Management with Kanban in an international companyProject Portfolio Management with Kanban in an international company
Project Portfolio Management with Kanban in an international companyJose Luis Soria
 
Lean Kanban at Ria - Lean Kanban Southern Europe 2015
Lean Kanban at Ria - Lean Kanban Southern Europe 2015Lean Kanban at Ria - Lean Kanban Southern Europe 2015
Lean Kanban at Ria - Lean Kanban Southern Europe 2015Jose Luis Soria
 
Things to do with the time you’ll save thanks to VSO
Things to do with the time you’ll save thanks to VSO Things to do with the time you’ll save thanks to VSO
Things to do with the time you’ll save thanks to VSO Jose Luis Soria
 
Jose Luis Soria - Codemotion 2014 - Designing a release pipeline
Jose Luis Soria - Codemotion 2014 - Designing a release pipelineJose Luis Soria - Codemotion 2014 - Designing a release pipeline
Jose Luis Soria - Codemotion 2014 - Designing a release pipelineJose Luis Soria
 
Jose Luis Soria - XP2014 - Designing a Release Pipeline
Jose Luis Soria - XP2014 - Designing a Release PipelineJose Luis Soria - XP2014 - Designing a Release Pipeline
Jose Luis Soria - XP2014 - Designing a Release PipelineJose Luis Soria
 
Jose Luis Soria - Microsoft Plataforma Empresarial 2014 - ALM como factor dif...
Jose Luis Soria - Microsoft Plataforma Empresarial 2014 - ALM como factor dif...Jose Luis Soria - Microsoft Plataforma Empresarial 2014 - ALM como factor dif...
Jose Luis Soria - Microsoft Plataforma Empresarial 2014 - ALM como factor dif...Jose Luis Soria
 
Alm Forum 2014 - Jose Luis Soria - Patterns and anti-patterns for (Continuous...
Alm Forum 2014 - Jose Luis Soria - Patterns and anti-patterns for (Continuous...Alm Forum 2014 - Jose Luis Soria - Patterns and anti-patterns for (Continuous...
Alm Forum 2014 - Jose Luis Soria - Patterns and anti-patterns for (Continuous...Jose Luis Soria
 
Proyectos ágiles con Team Foundation Server - COITT
Proyectos ágiles con Team Foundation Server - COITTProyectos ágiles con Team Foundation Server - COITT
Proyectos ágiles con Team Foundation Server - COITTJose Luis Soria
 
ALM Tour 2013 - Responderá mi aplicación en el mundo real?
ALM Tour 2013 - Responderá mi aplicación en el mundo real?ALM Tour 2013 - Responderá mi aplicación en el mundo real?
ALM Tour 2013 - Responderá mi aplicación en el mundo real?Jose Luis Soria
 
ALM Tour 2013 - Proyectos bajo control - asegurando la entrega de valor
ALM Tour 2013 - Proyectos bajo control - asegurando la entrega de valorALM Tour 2013 - Proyectos bajo control - asegurando la entrega de valor
ALM Tour 2013 - Proyectos bajo control - asegurando la entrega de valorJose Luis Soria
 
ALM Tour 2013 - Entregar a tiempo y sin errores
ALM Tour 2013 - Entregar a tiempo y sin erroresALM Tour 2013 - Entregar a tiempo y sin errores
ALM Tour 2013 - Entregar a tiempo y sin erroresJose Luis Soria
 
Bcn devcon jose luis soria - patterns & antipatterns for delivery
Bcn devcon   jose luis soria - patterns & antipatterns for deliveryBcn devcon   jose luis soria - patterns & antipatterns for delivery
Bcn devcon jose luis soria - patterns & antipatterns for deliveryJose Luis Soria
 
Real World Agile Roadshow 2013 - Planificación y Arquitectura Ágil
Real World Agile Roadshow 2013 - Planificación y Arquitectura ÁgilReal World Agile Roadshow 2013 - Planificación y Arquitectura Ágil
Real World Agile Roadshow 2013 - Planificación y Arquitectura ÁgilJose Luis Soria
 
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis Soria
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis SoriaRoadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis Soria
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis SoriaJose Luis Soria
 
Jose Luis Soria - Visual Studio Tour Plain Concepts - DevOps
Jose Luis Soria - Visual Studio Tour Plain Concepts - DevOpsJose Luis Soria - Visual Studio Tour Plain Concepts - DevOps
Jose Luis Soria - Visual Studio Tour Plain Concepts - DevOpsJose Luis Soria
 
Visual Studio Tour Plain Concepts - ALM para Windows 8
Visual Studio Tour Plain Concepts - ALM para Windows 8Visual Studio Tour Plain Concepts - ALM para Windows 8
Visual Studio Tour Plain Concepts - ALM para Windows 8Jose Luis Soria
 
Jose Luis Soria - CAS2012 - Cargo cult Agile training & coaching
Jose Luis Soria - CAS2012 - Cargo cult Agile training & coachingJose Luis Soria - CAS2012 - Cargo cult Agile training & coaching
Jose Luis Soria - CAS2012 - Cargo cult Agile training & coachingJose Luis Soria
 
Cargo Cult Agile training & coaching
Cargo Cult Agile training & coachingCargo Cult Agile training & coaching
Cargo Cult Agile training & coachingJose Luis Soria
 
Agile Database Development - SDC2012
Agile Database Development - SDC2012Agile Database Development - SDC2012
Agile Database Development - SDC2012Jose Luis Soria
 
Destino la Nube 2012 - ALM para Azure
Destino la Nube 2012 - ALM para AzureDestino la Nube 2012 - ALM para Azure
Destino la Nube 2012 - ALM para AzureJose Luis Soria
 

More from Jose Luis Soria (20)

Project Portfolio Management with Kanban in an international company
Project Portfolio Management with Kanban in an international companyProject Portfolio Management with Kanban in an international company
Project Portfolio Management with Kanban in an international company
 
Lean Kanban at Ria - Lean Kanban Southern Europe 2015
Lean Kanban at Ria - Lean Kanban Southern Europe 2015Lean Kanban at Ria - Lean Kanban Southern Europe 2015
Lean Kanban at Ria - Lean Kanban Southern Europe 2015
 
Things to do with the time you’ll save thanks to VSO
Things to do with the time you’ll save thanks to VSO Things to do with the time you’ll save thanks to VSO
Things to do with the time you’ll save thanks to VSO
 
Jose Luis Soria - Codemotion 2014 - Designing a release pipeline
Jose Luis Soria - Codemotion 2014 - Designing a release pipelineJose Luis Soria - Codemotion 2014 - Designing a release pipeline
Jose Luis Soria - Codemotion 2014 - Designing a release pipeline
 
Jose Luis Soria - XP2014 - Designing a Release Pipeline
Jose Luis Soria - XP2014 - Designing a Release PipelineJose Luis Soria - XP2014 - Designing a Release Pipeline
Jose Luis Soria - XP2014 - Designing a Release Pipeline
 
Jose Luis Soria - Microsoft Plataforma Empresarial 2014 - ALM como factor dif...
Jose Luis Soria - Microsoft Plataforma Empresarial 2014 - ALM como factor dif...Jose Luis Soria - Microsoft Plataforma Empresarial 2014 - ALM como factor dif...
Jose Luis Soria - Microsoft Plataforma Empresarial 2014 - ALM como factor dif...
 
Alm Forum 2014 - Jose Luis Soria - Patterns and anti-patterns for (Continuous...
Alm Forum 2014 - Jose Luis Soria - Patterns and anti-patterns for (Continuous...Alm Forum 2014 - Jose Luis Soria - Patterns and anti-patterns for (Continuous...
Alm Forum 2014 - Jose Luis Soria - Patterns and anti-patterns for (Continuous...
 
Proyectos ágiles con Team Foundation Server - COITT
Proyectos ágiles con Team Foundation Server - COITTProyectos ágiles con Team Foundation Server - COITT
Proyectos ágiles con Team Foundation Server - COITT
 
ALM Tour 2013 - Responderá mi aplicación en el mundo real?
ALM Tour 2013 - Responderá mi aplicación en el mundo real?ALM Tour 2013 - Responderá mi aplicación en el mundo real?
ALM Tour 2013 - Responderá mi aplicación en el mundo real?
 
ALM Tour 2013 - Proyectos bajo control - asegurando la entrega de valor
ALM Tour 2013 - Proyectos bajo control - asegurando la entrega de valorALM Tour 2013 - Proyectos bajo control - asegurando la entrega de valor
ALM Tour 2013 - Proyectos bajo control - asegurando la entrega de valor
 
ALM Tour 2013 - Entregar a tiempo y sin errores
ALM Tour 2013 - Entregar a tiempo y sin erroresALM Tour 2013 - Entregar a tiempo y sin errores
ALM Tour 2013 - Entregar a tiempo y sin errores
 
Bcn devcon jose luis soria - patterns & antipatterns for delivery
Bcn devcon   jose luis soria - patterns & antipatterns for deliveryBcn devcon   jose luis soria - patterns & antipatterns for delivery
Bcn devcon jose luis soria - patterns & antipatterns for delivery
 
Real World Agile Roadshow 2013 - Planificación y Arquitectura Ágil
Real World Agile Roadshow 2013 - Planificación y Arquitectura ÁgilReal World Agile Roadshow 2013 - Planificación y Arquitectura Ágil
Real World Agile Roadshow 2013 - Planificación y Arquitectura Ágil
 
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis Soria
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis SoriaRoadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis Soria
Roadshow ALM Calidad 2013 - Infraestructura de pruebas - Jose Luis Soria
 
Jose Luis Soria - Visual Studio Tour Plain Concepts - DevOps
Jose Luis Soria - Visual Studio Tour Plain Concepts - DevOpsJose Luis Soria - Visual Studio Tour Plain Concepts - DevOps
Jose Luis Soria - Visual Studio Tour Plain Concepts - DevOps
 
Visual Studio Tour Plain Concepts - ALM para Windows 8
Visual Studio Tour Plain Concepts - ALM para Windows 8Visual Studio Tour Plain Concepts - ALM para Windows 8
Visual Studio Tour Plain Concepts - ALM para Windows 8
 
Jose Luis Soria - CAS2012 - Cargo cult Agile training & coaching
Jose Luis Soria - CAS2012 - Cargo cult Agile training & coachingJose Luis Soria - CAS2012 - Cargo cult Agile training & coaching
Jose Luis Soria - CAS2012 - Cargo cult Agile training & coaching
 
Cargo Cult Agile training & coaching
Cargo Cult Agile training & coachingCargo Cult Agile training & coaching
Cargo Cult Agile training & coaching
 
Agile Database Development - SDC2012
Agile Database Development - SDC2012Agile Database Development - SDC2012
Agile Database Development - SDC2012
 
Destino la Nube 2012 - ALM para Azure
Destino la Nube 2012 - ALM para AzureDestino la Nube 2012 - ALM para Azure
Destino la Nube 2012 - ALM para Azure
 

Recently uploaded

Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 

Recently uploaded (20)

Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 

ALM Summit 3 - Setting up a Continuous Delivery Deployment Pipeline with TFS