l e a n Lean Software Development software development Faster Better Cheaper

Similar documents
Kanban One-Day Workshop

Adopting Agile Practices

Test Automation Strategies in Continuous Delivery. Nandan Shinde Test Automation Architect (Tech CoE) Cognizant Technology Solutions

ROTATE TO THE NEW: FROM TESTING TO QUALITY ENGINEERING

Collaboration at Scale: Prioritizing a Backlog. 13-Dec-2017

Scrum and Kanban Compare and Contrast

Exam Questions

A CONFUSED TESTER IN AGILE WORLD

Agile Software Development Agile UX Work. Kati Kuusinen TUT / Pervasive / IHTE

Struggling to Integrate Selenium into Your Ice Age Test Management Tools?

Shift Left, Automation, and Other Smart Strategies for Getting Ahead in QA

About Us. Services CONSULTING OUTSOURCING TRAINING MENTORING STAFF AUGMENTATION 9/9/2016

The Improvement Backlog. Claude Rémillard InCycle Software

Agile Accessibility. Presenters: Ensuring accessibility throughout the Agile development process

Inverting the Pyramid

Software Quality in a Modern Development Team. Presented by Timothy Bauguess and Marty Lewis

Agile vs Fragile. Susmit Bhattacharya, Solution Architect, Asia Pacific. - The need for Automation in Agile Tricentis GmbH. All Rights Reserved.

Agile Software Development. Software Development Methodologies. Who am I? Waterfall. John York JOHN YORK EECS 441 WINTER 2018 A BRIEF LOOK

Agile Software Development. Software Development Methodologies. Who am I? Waterfall. John York JOHN YORK EECS 441 FALL 2017 A BRIEF LOOK

I keep hearing about DevOps What is it?

Lean-Thinking. Re-Defined. Going Beyond Toyota. Alan Shalloway.

The Kanban Applied Guide

Agile where are we at?

FROM VSTS TO AZURE DEVOPS

Get Good at DevOps: Feature Flag Deployments with ASP.NET, WebAPI, & JavaScript

2014 Intelliware Development Inc.

Shift Left Testing: are you ready? Live Webinar, Sept 19

ICAgile Learning Roadmap Agile Testing Track

Software Engineering I (02161)

Agile Test Automation ICAgile

Secure Agile How to make secure applications using Agile Methods Thomas Stiehm, CTO

Kanban Kickstart Geeknight. Jesper Boeg, Agile/Lean Coach, VP Trifork Agile Excellence Twitter: J_Boeg

THE SCRUM FRAMEWORK 1

Testing in an Agile Environment Understanding Testing role and techniques in an Agile development environment. Just enough, just in time!

02291: System Integration

Vision, Roadmap, and Release Planning

How to develop a website content evaluation plan

How Can a Tester Cope With the Fast Paced Iterative/Incremental Process?

Ready for Scrum? Steve Hutchison DISA T&E

Testing in the Agile World

How Can Testing Teams Play a Key Role in DevOps Adoption?

Using Layered Model-Based Requirements to achieve Continuous Testing

Dilbert Scott Adams. CSc 233 Spring 2012

By Camille Spruill SPC4, SA, CSM, PMP, CBAP. Raleigh Business Analysis Development Day (RBADD) October 18 th, 2016

Deploy Early, Deploy Often, Deploy Safely Andy Lowe

Final Paper/Best Practice/Tutorial Advantages OF BDD Testing

Roles and Responsibilities on DevOps Adoption

Kanban, Flow and Cadence

Integrated Rapid Testing at DHS Joshua Seckel, Technical Manager

Bob Galen. Bob began as a developer, then moved to Project Management and Leadership, then Testing.

A Tale of Continuous Testing

The Scaled Agile Framework

XP Evolution Rachel Davies

Bringing QA Into the Agile Process

3,500. The Developer Division at Microsoft

Designed in collaboration with Infosys Limited

Which one? It all comes down to complexity. Scrum - Kanban Cage Match. Kanban. Scrum Ben Day. The Tale of the Tape. Scrum and Kanban Cage Match

CONFIGURING SAFE 4.5 IN THE IBM COLLABORATIVE LIFECYCLE MANAGEMENT SOLUTION

The Future of Testing: Continuous Enterprise Testing

CONFERENCE PROCEEDINGS QUALITY CONFERENCE. Conference Paper Excerpt from the 28TH ANNUAL SOFTWARE. October 18th 19th, 2010

a brief introduction to creating quality software continuously Copyright 2011 Davisbase, LLC

agile engineering practices Lionel Bisschoff CEO Kaizania

Specifying Acceptance Criteria

Test Driven Development TDD

Visual Studio Team Services

This Thing Called Kanban

PERSPECTIVE. End-to-end test automation A behaviordriven and tool-agnostic approach. Abstract

Continuous Delivery of your infrastructure. Christophe

Introduction to Extreme Programming

THE ART OF SECURING 100 PRODUCTS. Nir

Orchestrating the Continuous Delivery Process

From Dev/Ops to devops

ITIL isn t evil Most people who implement it are

LESSONS LEARNED: BEING AGILE IN THE WATERFALL SANDBOX

SAFe Atlassian Style (Updated version with SAFe 4.5) Whitepapers & Handouts

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do?

Going Agile. UK TMF April 2011

Ninja or Samurai? The Art of War and the Future of Testing

TESTING TRENDS FOR 2018

CONTINUOUS DELIVERY IN THE ORACLE CLOUD

Performance Testing at the Speed of Agile A Neotys Whitepaper

Daniel Lynn Lukas Klose. Technical Practices Refresher

Reengineering II. Transforming the System

Azure DevOps. Randy Pagels Intelligent Cloud Technical Specialist Great Lakes Region

PRODUCT ROADMAP Q4/2018. Update Nov 18

Seven Deadly Sins of Agile Testing

Automated Acceptance testing by Developers & Automated Functional Testing by Testers

Safety and Speed How Tenable Runs Swift and Sure in a DevOps World

How technical excellence helps in LeSS adoption. Anton Bevzuk Dodo Pizza Chief Agile Officer

Responsive Redesign dispatch.com 10tv.com thisweeknews.com

What is database continuous integration?

Team Foundation Consulting. Training. Team Member Training User training designed to cater for specific roles within your team. Developer TFVC / Git

Con. Continuous Integration

A Little Lean with Kanban

Database Engineering. Percona Live, Amsterdam, September, 2015

Architects: Anchors or Accelerators to Organizational Agility?

Accelerate your Software Delivery Lifecycle with IBM Development and Test Environment Services

Test Driven Development

HP APPs v.12 Solutions for Dev-Ops

18-642: Software Development Processes

Transcription:

software development Lean Software Development Faster Better Cheaper mary@poppendieck.com Mary Poppendieck www.poppendieck.com

Characteristics of Lean Companies: 1. They don t call themselves Lean The --------- Way 2. Customer Obsession Stay Profitable to Stay in Business 3. Operational Discipline Things. Just. Work. 4. Highly Engaged People The Law of Reciprocity 5. System-Level Incentives Long Term Thinking 6. Highly Successful Business 2 More Value for Customers

Principles of Lean Product Development 1. Optimize the Whole 2. Eliminate Waste 3. Build Quality In 4. Learn Constantly Quality Low Cost 5. Deliver Fast Speed 3 6. Keep Getting Better 7. Engage Everyone Copyright 2006 Poppendieck.LLC

software development The Impact of the Pace of Delivery The Fastest Learner Wins mary@poppendieck.com Mary Poppendieck www.poppendieck.com

The Fastest Learner Wins It is not the strongest of a species that survives, OODA Loop: Developed by USAF strategist John Boyd Observe Orient 5 Act nor the most intelligent, Decide but the one that is the most responsive to change. Charles Darwin

Release Cycle 6 Months Development Cycle When in your release cycle do you try to freeze code and test the system? What percent of the release cycle remains for this hardening? Typical: 30% Top Companies: <10% Release Cycle Sometimes: 50% When in your release cycle do you try to choose l the features e for a release? a n 6 Governance Model Thanks to Kent Beck for his ideas on cadence.

Release Cycle 6 Months Quick & Dirty Value Stream Map: Act Observe Decide Orient Request Features Request Features Select Features Develop Features Harden UAT Release Cycle Release Cycle Release Cycle 7 Value-Added Time Total Cycle Total Time Cycle Time Start Average Start End Business Model: Software installed at customer site Support each release Avoid releases

Release Cycle Quarterly Act Observe Decide Orient Hardening must be 2 weeks. Typically: 2-4 week iterations Code from each iteration goes to integration testing Automated integration testing becomes necessary 8 The Big Bang becomes obsolete

Specification by Example For each feature: 1. Design a. Specify: Discuss and agree on examples of intended behavior. b. Automate: Put the examples in a framework such as cucumber. 2. Implement a. Develop: Write feature code using TDD. b. Refactor: Clean up the code to keep it simple. c. Regression: Check that all completed examples work. 3. Deploy a. Feedback: Determine value to stakeholders ASAP. 9

Release Cycle Quarterly Act Observe Decide Orient Business issues: How to price and sell releases? Which releases to support? Supporting multiple branches can create a support nightmare Public vs. Private releases? Governance: Teams stay with a system there isn t time to change There isn t time for variance-based (project) metrics Success is measured based on customer satisfaction, revenue improvement, etc. 10

Basic Disciplines 11 1. Low Dependency Architecture 2. Coding Standards 3. Source Control / Configuration Mgmt 4. Automated Specification Examples 5. Automated Unit Tests 6. STOP if the tests don t pass 7. Design/Code Reviews 8. Refactoring is a Habit 9. Continuous Integration 10.System Testing / UAT early & often 11.Customer Validation 12.Escaped Defect Root Cause Analysis

Release Cycle Monthly Act Observe Decide Orient Now you need: Cross Functional Team Visualization Short Daily Meetings SBE/TDD working! Hardening 3 days 12 Business Environment Works best for: Software as a Service (SaasS) Internal Software

A Typical Deployment Pipeline Source Code & Tests VERSION CONTROL Environment & Application Configuration Scripts Self-Service Deployments Testers UAT Stage Configure Environment Deploy Binaries Smoke Test Manual Testing Develop Stage Design Code & Script Unit Test Refactor 13 Reports Metadata BINARIS Commit Stage Compile Commit Tests Assembly Code Analysis Reports Metadata BINARIS Acceptance Stage Configure Environment Deploy Binaries Smoke Test Run Acceptance Tests Reports Metadata Operations Push-Button Releases Testers BINARIS Capacity Stage Configure Environment Deploy Binaries Smoke Test Run Capacity Tests Production Configure Environment Deploy Binaries Smoke Test Reports Metadata ARTIFACT REPOSITORY

Release Cycle Weekly/Daily/Continuous Act Observe Decide Orient Kanban works well Iterations become irrelevant High discipline is fundamental The team is everyone. Estimating is largely unnecessary Rapid cycles of learning drive portfolio decisions 14 DevOps: Test & deployment automation is essential Business Issues: Increasingly common in startups

The Lean Startup Agile Vs. Lean Startup Adapted from similar chart posted by Joshua Kerievsky, Industrial Logic Blog August, 2011 https://elearning.industrial logic.com/gh/submit?action =PageAction&album=blog200 9&path=blog2009/2011/agil evsleanstartup&devlangua ge=java 15 Agile Product Roadmap Product Vision Release Plan On-Site Customer Iteration Iteration Review Backlog User Story Acceptance Test Definition of Done Continuous Integration Customer Feedback Product Owner CSM (Certified Scrum Master) Lean Startup Business Model Canvas Product Market Fit Minimal Viable Product Get Out Of The Building Build-Measure-Learn Loop Persevere or Pivot To Learn List Hypothesis Split Test Validated Learning Continuous Deployment Cohort-based Metrics Entrepreneur CSM (Customer Success Manager)

software development Thank You! More Information: www.poppendieck.com mary@poppendieck.com Mary Poppendieck www.poppendieck.com