kanban testing
TRANSCRIPT
Copyright 2015, cPrime Inc. 1
AGILE TESTING IN KANBAN
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?
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
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
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
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
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
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
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
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
Copyright 2015, cPrime Inc. 11
Card Wall/Kanban Board
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
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
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!
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
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
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
Copyright 2015, cPrime Inc. 18
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
Copyright 2015, cPrime Inc. 20
Sample QA Kanban Board
Source: blog.kanbanize.com
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
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!
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?
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
Copyright 2015, cPrime Inc. 25
Agile Testing Quadrants
Courtesy of lisaCrispin.com
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
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
Copyright 2015, cPrime Inc. 32Robust testing platform purpose-built for agile teams
QASYMPHONY
32
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
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
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
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
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.
Copyright 2015, cPrime Inc. 3838
RICH, ACTIONABLE REPORTING
Application Quality Heat Map
Customizable GraphicalReporting
One-Click Traceability Matrices
Intuitive Custom Query Builder
Copyright 2015, cPrime Inc. 39
Questions?