kanban testing

35
Copyright 2015, cPrime Inc. 1 AGILE TESTING IN KANBAN

Upload: cprime

Post on 21-Jan-2017

1.071 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Kanban testing

Copyright 2015, cPrime Inc. 1

AGILE TESTING IN KANBAN

Page 2: Kanban testing

Copyright 2015, cPrime Inc. 2

Migrations, Add-Ons, Licensing, Training, Optimization and moreAtlassian, VersionOne, AgileCraft, Innotas and more

Contract to Hire, Consulting, Full-time, Executive Search and moreScrumMasters, Product Owners, Scrum Coaches and more

Transformations, Scaling, Assessments, Planning, Coaching, Training, Advisory Services, Change Management and more

WHO IS CPRIME?

Page 3: Kanban testing

Copyright 2015, cPrime Inc. 3

Today’s Presenter

Joe Vallone, Agile Coach• Over 20 years of Software Development and project

management experience. Agile experience since 2002• Undergraduate Engineering, USF• Graduate MBA, Cox School of Business, SMU• Certified SCRUM Professional (CSP, CSM)• Experience leading Agile Transformations at Nokia, AT&T,

American Airlines• Previous Agile/Scrum opponent now proponent• Certified SAFe Program Consultant Trainer (SPCT)• Implemented multiple scaling frameworks: Less, SAFe, and

Nexus

3

[email protected]: @joejv

Page 4: Kanban testing

Copyright 2015, cPrime Inc. 4

Agenda• Introduction to Agile and Lean • Intro to Kanban• Kanban and ScrumBan• How testers add value to cross-functional Agile Development

Teams • How to test in an Agile Environment • The Four Environments (Dev, Test, Stage, Production) • Testing tools

Page 5: Kanban testing

Copyright 2015, cPrime Inc. 5

Adaptive Spectrum Drives Process Selection

Scope Uncertainty + Effort Uncertainty:

PREDICTIVE ADAPTIVE REACTIVEPlan-Driven Scrum KanbanWaterfall

The Agile Zone

• Emphasize adaptability to rapid change

• Enable detailed short-term planning

• Evolve longer-term specs, plans over time

• Overhead of enabling change is costly for predictable work

• Emphasize continuous re-prioritization, efficient allocation of work to people

• Do not require work to be planned against calendar

• Handle unpredictable work well

• Emphasize efficiency (minimum cost, duration)

• Perform well when work is well understood

• Perform poorly when uncertainty is high

5

Page 6: Kanban testing

Copyright 2015, cPrime Inc. 6

What is an Agile Process?Any process that adheres to the principles of the

Agile Manifesto

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.

Manifesto for Agile Software Development, www.agilemanifesto.org The concepts arose in software project management, BUT… Change “software” to “products” or “deliverables” to apply more generally

6

Page 7: Kanban testing

Copyright 2015, cPrime Inc. 7

Agile is Lean*1. Optimize the whole (value of complete solution, product)

• Consider big-picture, long-term as well as parts, short term2. Eliminate waste

• Maximize amount of work not done Minimize non-product effort (documents, sign-offs) Defer decisions, work: YAGNI

3. Build Quality In• Definition of Done, XP practices

4. Learn Constantly• Feedback loops (external, internal)

5. Deliver Fast• Short cycles, incremental delivery

6. Engage Everyone• Group expertise / Wisdom of Crowds**

7. Keep Getting Better• Retrospectives *www.poppendieck.com

**© 2004 James Surowiecki, Anchor Books7

Page 8: Kanban testing

Copyright 2015, cPrime Inc. 8

What is Kanban?

• Kanban Japanese for Signal Card• Pull system for work flow• Originated from Toyota Manufacturing

Signals up-stream to produce more• Implemented as part of the Lean Software Movement• An agreed upon system for capacity matching• Visualization of work flow• Less overhead than traditional Scrum• Worked is pulled in as capacity is available

Page 9: Kanban testing

Copyright 2015, cPrime Inc. 9

Kanban Terms• Lead Time – Time from Feature Request to completion (i.e.

elapsed time)• Cycle Time – Time to finish the task (i.e. time per unit)• Throughput – Amount of work delivered in a time frame• WIP – Work in Process• Swarm – Collaboration to reduce bottlenecks

Page 10: Kanban testing

Copyright 2015, cPrime Inc. 10

How does Kanban Work?• Forces the team to visualize WIP (Work in Progress)

• Via Kanban board• Constrained by WIP

• WIP limits cannot be exceeded

– No work is pulled unless a slot is available• Flow of cards (work) through the system• Identify the bottlenecks and optimize• Based upon Little’s Law from Lean Manufacturing

• CT = WIP/Throughput• Lower CT = Less Lead Time

Page 11: Kanban testing

Copyright 2015, cPrime Inc. 11

Card Wall/Kanban Board

Page 12: Kanban testing

Copyright 2015, cPrime Inc. 12

Walking the Kanban board• Different color post-it notes can mean different things

• Priority, bugs, defects• Class of Service – priorites, severity, due dates, etc.

• Left to right process flow• Enables visualization of bottlenecks• Post-it notes typically has:

• Description, assignment, <due date>• Backlog is prioritized on demand by product owner

Page 13: Kanban testing

Copyright 2015, cPrime Inc. 13

How does it work with Software and IT Systems?

• The first virtual Kanban system for software engineering was implemented at Microsoft

• In IT work we often use a virtual kanban system • Tools e.g. JIRA, Lean Kit, etc.• no actual physical card is passed around to define the limit to

work-in-progress• Helps to implement incremental process improvement

• Kaizen

Page 14: Kanban testing

Copyright 2015, cPrime Inc. 14

Differences from Traditional Scrum/Agile

• Less Planning overhead• If a card is available and it doesn’t exceed WIP, pull it.• Planning on demand/as needed

• No estimating. WIP is the constraint• Focus on the work and improving the system• Still have daily standup which provides focus on work flow

through the system and resolving bottleknecks• No time box!

Page 15: Kanban testing

Copyright 2015, cPrime Inc. 15

ScrumBan?• Kanban combined with Scrum process and structure• Ideal for predictable planning and release periods• Regular planning and grooming sessions• Combination of metrics

• Burndown and CFD• Regular Kiazen sessions• Time boxed

Page 16: Kanban testing

Copyright 2015, cPrime Inc. 16

Why use it?• Trust is event driven and that small, frequent

gestures or events enhance trust more than larger gestures

• Demand can be balanced against throughput with a pull system

• Pull systems expose the bottlenecks and create slack in non-bottlenecks• Reduces system variability

• Reducing variability allows reduced Kanban tokens, less WIP, and results in reduced average lead time

• Transparency on both work and process• WIP Limits and class of service leads to

empowerment

Page 17: Kanban testing

Copyright 2015, cPrime Inc. 17

Lean Metrics• WIP (Work in Progress)

• How many cards can we handle?• CFD (Cumulative Flow Diagram)

• Focus on how to reduce lead time• leverage point for improving quality is to reduce the quantity of

work-in-• Little’s Law

• Lead Time = Cycle Time * WIP• Cycle Time = WIP/Throughput

• Focus on the work• NOT the worker

Page 18: Kanban testing

Copyright 2015, cPrime Inc. 18

Page 19: Kanban testing

Copyright 2015, cPrime Inc. 19

How do Testers Add Value in Agile and Lean?

• Who’s responsible for testing?• EVERYONE! – Paradigm Shift• Developers need to ensure their code is high quality, BEFORE

giving it to test• XP – TDD, Pair Programming, etc.

• Testers are part of the Cross-Functional Development Team• Participate in all ceremonies, including estimation• Testers create test plans and scripts while developers code

• Map the testing states to the Kanban board

Page 20: Kanban testing

Copyright 2015, cPrime Inc. 20

Sample QA Kanban Board

Source: blog.kanbanize.com

Page 21: Kanban testing

Copyright 2015, cPrime Inc. 21

Environments and DevOps

• Unit Testing• TDD• CI• Development Teams have Content Authority

Dev

• ATDD• Test case Execution• Early NFR Testing• QA has Content Authority• Regression Testing

Test • Identical to Prod• Final NFR Testing• UAT• Product Manager has Content Authority

• Full Regression Testing• Exploratory Testing

Stage

• Release to Customer• Release Documentation• Release Management has Content Authority

Prod

Page 22: Kanban testing

Copyright 2015, cPrime Inc. 22

Automation is Key!• Continuous Integration

• Jenkins, Hudson, Cruise Control, etc.• TDD

• xUnit, • ATDD

• Cucumber • Nightly builds• Test Case Automation/Scripting• Enables Great Exploratory Testing

Good News: Many testing tools and frameworks are free!

Page 23: Kanban testing

Copyright 2015, cPrime Inc. 23

Defects• Don’t have them!

• Not realistic• Solid Definition of Done• Will slow down the throughput of the system

• Stories/Tasks are not complete if tests are failed• It is valuable to determine where defects are found

• Development, Test, Staging, and Production• Establish Defect Feedback Loop

• Defects found should result in new automated tests• Product Owner and teams work together to prioritize

• Which defects have to be fixed now and which can wait?

Page 24: Kanban testing

Copyright 2015, cPrime Inc. 24

Agile Principle #7 – Working software is the primary measure of progress

• Good coding practices• Separation of Concerns• SOLID, GRASP

• TDD – test first strategy• ATDD - vetting and automating acceptance criteria• Continuous Integration• Hardening sprints• Agile Requirements Modeling• Agile testing metrics

Page 25: Kanban testing

Copyright 2015, cPrime Inc. 25

Agile Testing Quadrants

Courtesy of lisaCrispin.com

Page 26: Kanban testing

Copyright 2015, cPrime Inc. 26

Software Quality Metrics• Defect Tracking System

• Number of defects• Location/Identification

• Cyclomatic Complexity• Number of unit tests• % of unit test coverage• Code Coverage• Number and % of automated tests• Number of refactors

Page 27: Kanban testing

Copyright 2015, cPrime Inc. 27

IMPORTANCE OF TESTING IN AGILE

• Advocate for the End User

• Making sure the right thing is built

• Visibility to what, how, and why something was tested

• Not testing is costly – 50% of software goes untested costing US economy $60B / year*

*Source: http://www.codeguru.com/blog/category/programming/the-cost-of-bugs.html

Page 28: Kanban testing

Copyright 2015, cPrime Inc. 32Robust testing platform purpose-built for agile teams

QASYMPHONY

32

Page 29: Kanban testing

Copyright 2015, cPrime Inc. 3333

TESTING TOOLS HAVE NOT EVOLVED

Legacy testing software was not built for agile

Hard to use Doesn’t fit agile workflows

Lack of integrations with

agile tools

Not cross-platform or cross-browser

Page 30: Kanban testing

Copyright 2015, cPrime Inc. 3434

OUR STRATEGY

QAS is the only software provider with integrated tools built for Agile

Elevate testing and QA from a cost center to a value provider by delivering:

Efficiency for the tester

Collaboration for the team

Continuous improvement

for the enterprise

Page 31: Kanban testing

Copyright 2015, cPrime Inc. 3535

WHAT THIS MEANS TO YOU

Efficiency for Tester

40% ⇩ Manual Documentation time

20% ⇩ Defect Reproduction time

Increased traceability to ALM

Collaboration Between Teams

⇩ Time from design to test

⇩ Time from test to fix to retest

Increased visibility to code, design, build

Continuous Improvement Across

Organizations

⇧ Frequency of team evaluation

⇧ Available comparison data

Increased visibility to analytics from entire SDLC

Page 32: Kanban testing

Copyright 2015, cPrime Inc. 3636

A CORE PART OF THE AGILE TESTING PROCESS

Agile Testing Platform

BDD/TDD/ATDD

Reporting and Insights

Automation Integration

with Jenkins, Bamboo and

SeleniumALM

Integration with Jira, Rally,

Version One

Exploratory Testing

Page 33: Kanban testing

Copyright 2015, cPrime Inc. 3737

OUR SOLUTIONS

For Test Case ManagementqTest is a powerful,

elegant, scalable test management solution that works with small

teams and allows large enterprises to coordinate

and track hundreds of projects across many

locations.

For Exploratory Testing

qTest eXplorer is a ground-breaking test

documentation tool that supports exploratory

and unscripted testing AND saves time when performing traditional

manual testing.

For Reporting & Insights

qMap is a revolutionary new way to view the

results from your agile testing process, providing a high level visualization of your test results and allowing you to quickly

identify issues.

Page 34: Kanban testing

Copyright 2015, cPrime Inc. 3838

RICH, ACTIONABLE REPORTING

Application Quality Heat Map

Customizable GraphicalReporting

One-Click Traceability Matrices

Intuitive Custom Query Builder

Page 35: Kanban testing

Copyright 2015, cPrime Inc. 39

Questions?