Closing the Agile Loop Continuous Integration, Continuous Information. Darryl Bowler Senior Systems Architect CollabNet

Similar documents
A Day in the Life of a Migrated ClearCase User. A Sneak Preview

CollabNet. Agile ALM for in the Cloud Industry Trends and Case Studies. Bill Portelli Chief Executive Officer. Agile ALM for Distributed Development

The Business Case for ALM Transformation ALM

Closing the Agile Loop: Continuous Feedback. Darryl Bowler, CollabNet, Sr. Systems Architect Brian Dawson, CollabNet, Sr.Technical Consultant

Conclusion.

Mit Werkzeugen den DevOps Konflikt auflösen

WHITE PAPER. Getting started with Continuous Integration in software development. Amruta Kumbhar, Madhavi Shailaja & Ravi Shankar Anupindi

What is Continuous Integration. And how do I get there

Datasheet. CollabNet TeamForge Version Control

THE DEVOPS MATURITY CURVE. Justin Vaughan-Brown CA Technologies

Five DevOps CM Practices

How Cisco IT Developed a Self-Service Model for Build and Deploy

Introduction to Agile and Scrum

SAFe and Sound - Implementing Agile at Scale with HP December 11, 2014

Automation Testing and the DevOps Pipeline presented by Randy Spiess (Jan 18)

Application Lifecycle Management (ALM) Octane

DevOps: Start-up Speed, Enterprise Scale

Agile Quality Strategy with HP Agile Manager August 26, 2015

Enabling digitization at the pace of business. Achieve connected DevOps tool chain through Release Orchestration

Solution Brief. Enterprise Git Adoption with CollabNet TeamForge

"Charting the Course... Application Lifecycle Management Using Visual Studio 2010 (Agile) Course Summary

UForge AppCenter 3.8. Introduction March Copyright 2018 FUJITSU LIMITED

CM MatchPoint Agile. Christoph Heinrich, CM First Plex Track A / Session 17

DATASHEET COLLABNET TEAMFORGE SCM COLLABNET TEAMFORGE SCM

CollabNet Trends, Challenges, and Success with Agile ALM

DevOps Guide: How to Use APM to Enhance Performance Testing

DevOps: Start-up Speed, Enterprise Scale

Zero to Federated at the Speed of Jenkins. A Case Study of Success in DevOps

Get to CMMI ML3 Using Agile Development Processes for Large Projects. Catherine Clark, Business Solutions Architect

DevOps architecture overview

l e a n Faulty Assumptions software development How Lean Software Development Reduces Risk

Agile for High Assurance: Lessons learned

IBM Rational Team Concert Feature Overview

10 Steps to Mainframe Agile Development. Mark Schettenhelm, Sr. Product Manager September 28, 2017

Get to CMMI ML3 Using Agile Development Processes for Large Projects. Catherine Clark, Business Solutions Architect

Microsoft FastTrack For Azure Service Level Description

Fast Start Business Analytics with Power BI

Oracle Continuous Delivery Pipeline

Avoid the Hype and Find Real Value in Devops and PaaS ABDUL KHALIQ GAFFAR

RELEASING HIGH-QUALITY APPLICATIONS AND INFRASTRUCTURE FASTER WHITE PAPER OCTOBER 2017

Analyze, Design, and Develop Applications

Build a Future-Ready Enterprise With NTT DATA Modernization Services

Moderator: Robert Wunderlich - Oracle. September 22, Copyright 2016, Oracle and/or its affiliates. All rights reserved.

3. NEED FOR ACDT 5. PROCESS FLOW 4. ACDT SOLUTION

Introducing the Next Generation of ALM March 22, Copyright 2016 Vivit Worldwide

Cisco ONE Enterprise Cloud Suite Automates Infrastructure, Cloud, and Application Lifecycles

Developer Cloud Service. Transform Your Development Experience

Achieving Balance: The New Pivotal Points of Software Development

Agenda. ClearQuest 8.0 What s New. Positioning Integrations Collaboration Administration New Features Deprecations Q&A

Adopting DevOps at Enterprise Scale

DevOps: Accelerating Application Delivery. DevOps on IBM i: Barriers, Techniques, and Benefits to the Business

MICROSOFT EXAM QUESTIONS & ANSWERS

White paper. Alan Radding, Technology Consultant

Agile Development Doesn t Have to Mean Fragile Enterprise Processes

AGILE TEST MANAGEMENT WITH VISUAL STUDIO

Quality Application Development with ALM Octane November 21, 2017

A Guide to Branching and Merging Patterns

RELEASE HIGHLIGHTS INTRODUCING COLLABNET TEAMFORGE 16.7

IBM Rational Systems Developer, Version 7.0

Achieving Healthcare Interoperability in the Cloud with WebSphere ESB

Copyright 2014, Oracle and/or its affiliates. All rights reserved. 2

InfoPath Retirement What You Need to Know

Portfolio Management In An Agile World

THE DEVOPS JOURNEY: FROM WATERFALL TO CONTINUOUS DELIVERY

Application Lifecycle Management for SAP Powered by IBM Rational

Release Management with Continuous Delivery: A Case Study

approach to successful project

SOCCI - Towards a Common Software Engineering Environment for Science Operations

Transform Application Performance Testing for a More Agile Enterprise

A 7 step strategy for successful DevOps in the Evolving Enterprise

Building Cloud Apps using Agile Methodology & Tools

Oracle Cloud Blueprint and Roadmap Service. 1 Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Dynamics 365 for Finance & Operations

CORE ELEMENTS OF CONTINUOUS TESTING

Legacy System Modernization Using Open Source Tools and Agile. Adam D Angelo

Middleware Modernization: lay the foundation to your digital success

Dell EMC Consulting Ingo Strutz

SOA Governance is For Life, Not Just a Strategy

SAP s Quality & Testing Platform Complete Solution of Products and Professional Services

InfoSphere Warehousing 9.5

<Insert Picture Here> Latest on Oracle Application Change Management Pack for Oracle E- Business Suite

ROLE OF isafe/imobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT

VERACODE EBOOK 5 FIVE PRINCIPLES FOR. Securing DevOps

<Insert Picture Here> Oracle Software Configuration Manager Delivering Configuration Management As A Service

Leveraging the benefits of the cloud with transparency and control

SYSTEM MODERNIZATION BEST PRACTICES

WHITE PAPER. Development Testing for Agile Enterprises Helping Teams Maximize Velocity

Session 11E Adopting Agile Ground Software Development. Supannika Mobasser The Aerospace Corporation

Agile Engineering. for Managers. Introducing agile engineering principles for non-coders

Executive Summary WHO SHOULD READ THIS PAPER?

Demand & Requirements Management Software Development QA & Test Management IT Operations & DevOps Change Management Agile, SAFe, Waterfall Support

Case Study: How to Eliminate Flaws of Waterfall and Agile Development Processes Using a Hybrid Model

PHP in the enterprise How Zend helps modernize application development to bring projects to market faster

Collaboration at Scale: Distributed Team Release Planning. 11-Jan-2017

Agile at Scale -Beyond SAFe. John B Hudson, B.Sc., PMP, ACP, CSM, SPC

CHANGE IMAGINED. CHANGE DELIVERED

<Insert Picture Here> E-Business Suite Konfigurationsmanagement leicht gemacht mit dem Application Change Management Pack

Application Migration to the Cloud C L O U D A N A L Y T I C S D I G I T A L S E C U R I T Y

Harnessing the power of agile development

Software is not an art, it s business Digital Industrial Revolution. Björn Gullberg, CA Technologies

Transcription:

Closing the Agile Loop Continuous Integration, Continuous Information Darryl Bowler Senior Systems Architect CollabNet

Agenda How we got here Continuous Integration, Defined Poor Practices (Common Anti-Patterns) Best Practices Tools & Technologies Customer Case Study agenda 2 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Better Manage Project Through Automation, Integration Scope (features) Quality Quality Resources (budget) Schedule (time) Projects are constrained by the Time-Cost-Quality Continuum Fixed boundaries that are interdependent Increased scope with fixed resources impacts scheduled or quality Need to find new methods to maximize the productivity of our limited resources (people) 3 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Software Delivery = Top Inhibitor to Application Success Through 2015, 80% of IT organizations will be unable to implement releases of services that provide critical business functionality in a predictable and sustainable manner to meet the needs of the business, thus negatively impacting the overall entity. Source: Gartner, 1/2011 Are You Ready to Improve Release Velocity? George Spafford, Ronni J. Colville 4 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Software Delivery Learning from Manufacturing Pressure for lower cost & faster time to market, leading to Mass production (Ford, 1926) Lean Production (Toyota, 1990 s) Just-In-Time Smart Automation Software development / production learned from manufacturing Commodity Production (Packaged Apps, 1990 s) Lean and Agile Methods (Agile Manifesto, 2001) 5 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Eliminating Waste is #1 Principle for Lean Management Waste defined: Anything that does not add value to the customer. (Read: Anything the customer is unwilling to pay for.) Eliminating Waste is #1 principle for lean management Lean Value Stream Mapping (a common lead diagnostic tool) helps to identify, eliminate waste 1. Map software development, from concept to cash 2. Measure elapse time versus value added time 3. Optimize by creating a future state 6 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Value Stream Example: Concept to Release (Typical Scenario) Business owner has a new idea 5 minutes elapsed time 5 minutes valued added Business owner and product owner agree on new feature 30 minutes elapsed time 30 minutes valued added SCRUM team agree it can go into the next sprint 1 day elapsed time 30 minutes valued added Integration (merging) of new software 1 day elapsed time QA Test Team 2 days elapsed time 1 hour valued added Team creates new feature 2 days elapsed time 2 days valued added Staging at UAT 0.5 days elapsed time Retrospective and Review 2 hours elapsed time 2 hours valued added From conception to release candidate 6.5 days elapsed time 2.5 days valued added 4 days of potential waste 7 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Continuous Integration (CI) Cuts Waste from SW Delivery Continuous Integration Minimizes (or even eliminates) risk Real time notification of defects and poor quality, upon code change Drives automation and production of deployable of software Aligns with end of sprint review / retrospective Helps promote a cohesive team ( team performance) Is the summation of good software development practices Above all fosters TRANSPARENCY and CONFIDENCE 8 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

The Continuous Integration Workflow Release Monitor The Circle of Continuous Integration Testing Checkout Build 9 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Common Anti-Pattern #1 (Anti-Pattern: Ineffective and/or Counterproductive Practices) Parallel Active Infrequent Build Deferred Integration Equates to PAIN Dev Dev Dev Dev Integrate Dev Solution: Practice frequent integration Use a CI server to build main line 10 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Common Anti-Pattern #2 (Anti-Pattern: Ineffective and/or Counterproductive Practices) Does Your Value Stream Reveal Long Test Cycles? Lack automated testing Long phases of QA and manual testing Impacts delivery? Becomes an after thought? Use a testing framework at the outset and automate Unit Testing Functional Testing Code Quality CI is not silver bullet, must incorporate with other practices Test Driven Development Extreme Programming 11 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Common Anti-Pattern #3 (Anti-Pattern: Ineffective and/or Counterproductive Practices) The Dependency Maze Code built on a developers workstation Breaks when rolled out to production! Tracing Code and the Binary Running in Production Tracing Who and What Broke? A commit that cause previous functionality to fail (regression) Use Continuous Integration! 12 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

10 Best Practices for CI 1. Manage Source Code, Using a Version Control Product 2. Also version: test scripts, config files, 3. Enable Triggering of Builds From the Command Line Standardize on a build script / tool Maven, ANT, NANT 4. Commit Frequently (at least once a day), as Developer 5. Integrate Frequently; Build the mainline on the integration server 6. Enable Fast Builds (Typically <10 minute) Large builds be broken into multiple jobs and executed in parallel 7. Test Using a Replica of Production 8. Use a Central Binary Repository 9. Make it easy to obtain build and test results Especially Failures 10 10. Automate Deployment 13 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Diagram: Continuous Integration Requirements Mgmnt Architectural Analysis Eclipse Desktop Visual Studio Desktop Change Mgmnt Dynamic Test Unit Test Scrum Project Agile Management Code Analysis Security Analysis Build Engines Load Test Functional Test Service Mgmnt PLAN CODE BUILD TEST RELEASE (SCM) Tracker Hudson Analytics Cost Server Metrics Application Stack Test Harness Server Size Cloud Build Cloud Continuous Integration Test Cloud CollabNet Lab Management Test Cloud Stage Cloud Production Cloud Profile Manager Development Operations 14 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Diagram: Continuous Integration Database Feedback Mechanism Notification Event Developer Developer Committed Changes Poll Build Script Compile source code Integrate database Run tests Run inspections Deploy software Subversion Version Control Repository CI Server Integration Build Machine Developer Database Scripts Drop/create database or table Insert test data Apply procedures/ triggers

Value Stream Example: Concept to Release (Good Scenario) Business owner has a new idea 5 minutes elapsed time 5 minutes valued added Business owner and product owner agree on new feature 30 minutes elapsed time 30 minutes valued added SCRUM team agree it can go into the next sprint 1 day elapsed time 30 minutes valued added Integration (merging) of new software 2 hours elapsed time QA Test Team 0.5 days elapsed time 1 hour valued added Continuous Integration Server Team creates new feature 2 days elapsed time 2 days valued added Staging at UAT 1 hour elapsed time Retrospective and Review 2 hours elapsed time 2 hours valued added From conception to release candidate 4 days elapsed time 2.5 days valued added 2 days of potential waste SAVED 2 days per feature! 16 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Financial Justification Scenario: Small to Medium Enterprise 5 development teams 20 Sprints per team each year, i.e. 100 sprints total Average 5 features per sprint, i.e. 500 new feature per year Savings through CI 2 days per feature Total savings: 1000 days, $320,000 per year (avg. developer @ $40 per hour, i.e. $320 per day) Or a productivity increase of 3 persons a year. 17 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Common Pitfalls Lesson Learned CI can be a difficult journey Testing and Quality must spearhead the practice Migrating legacy code Migrating legacy SCM Practices Reliant on automation Personal Accountability Awareness and Education However, the rewards outweigh the disadvantages. 18 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Hudson / Jenkins Extensible continuous integration server Open Source and Free Incredibly Easy to Install and Use 70+% Market Share CI Build Server Sonatype Survey 400 Freely Available Plug-in and Integrations DISTRIBUTED and SCALABLE! Master / Slave

CollabNet and Build and Test Integration CollabNet TeamForge is the hub of development activities from code to build 20 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Why Re-Invent the Wheel? Integrated Build and Testing Plug-ins Dashboard and Visualization of Build and Test Results Integration and Plug-in Available for Majority Test Frameworks and Build Tools xunit, Maven, Maven Reports 21 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

CollabNet TeamForge Simplifies CI Discover Federate Replicate Central Repository Lifecycle Traceability Automation for End-to-End Processes Central Administration Plan Code Track User/Project Admin Task Hierarchy Team Collaboration Real-time Reports & Status Social Architecture Browse SCM Tracker/SCM Integration Bugs Artifacts Requirements Discussion Forums Build and Test Integrated Hudson Project-based Wiki Release Collect Archive Release Indexed Objects 300+ File Types Build Test Run Lab Management Community & Projects My Workspace Tasks Tracking Project List Monitor Settings User Tool Integrations Business Users Developers User Point Tools CollabNet Desktop, Microsoft Windows, Project CollabNet Desktop, Eclipse Edition, Visual Studio Edition Lifecycle Tools, e.g., Code Analysis, Unit Test, Load Test, Report Management, Planning ScrumWorks Pro

Case Study Fortune 500 Bank Centralized Build Service Community of 20,000 Developers Providing Build Services to 80 Groups Driven by Open Source Tools Develop Software Build Provisioning Lab Management Deploy and Release Nexus Build Life-Cycle Code Quality Sonar Build Management Jenkins/Hudson 23 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Summary, and Take Away Eliminating waste is #1 principle for lean management CI cuts waste from software delivery process Implementation requires changes in patterns, collaboration Version control, and automation is key Technology and tools greatly help ensuring success summary 24 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Introducing CI Workshop http://blogs.collab.net/oncollabnet/ 4 day on-site workshop Contact us at dbowler@collab.net 25 Copyright 2011 CollabNet, Inc. All Rights Reserved. CollabNet Confidential.

Thank You Darryl Bowler dbowler@collab.net www.collab.net +1 (650) 228-2598