300 likes | 306 Views
Dive into common testing challenges faced by organizations, such as increasing code complexity, security vulnerabilities, and the need for efficient testing practices. Learn about risk-based testing, unit testing processes, and effective test design techniques. Discover the importance of people skills in testing and how to build skilled test teams. Explore the Lean Testing Tool Box for improving testing priorities and embracing agile practices. Improve IT services by optimizing testing strategies and prioritizing risk analysis. Visit Erik van Veenendaal's website for more insights.
E N D
Building on Success Beyond the Obvious Erik van Veenendaalwww.erikvanveenendaal.nl
No More Testers!No More Testers!No More Testers!No More Testers! Improve IT Services BV
Common Testing Challenges • Increasing business importance • Increasing code size and complexity • Technology advancement • Systems-of-systems • Variety of devices and OS’s • Security vulnerabilities • Outsourcing • Time-to-market critical • Number of defects hardly decreases Improve IT Services BV
Proof…. Improve Quality Services B.V.
Agile ≠ SilverBullit Defects Project Size (KLOC) “despitecontinuousgrowth in adoption of agile, manyorganizations are stillfacing the thesamechallenges as in previousyears”, World Quality Report Improve IT Services BV
Common Testing Practices Many organizations • No test strategy • Useless test plans • No test techniquesapplied • Few have effectivereviews • Test automationnotsuccessful • Re-usable testware hard to find • “Testers” nottrainedforthe job 6 Improve IT Services BV
Paradox • Systems are stillreleased! • How to be “goodenough” and “survive” • A tool box foragility / lean in testing! Improve IT Services BV
Manifesto and Values Communication Simplicity Feedback Improve IT Services BV
Core Practice # 0 Improve IT Services BV
Core Practice # 1: Risk-Based Testing is risk-based • Product Risk Session • Risk-Based Test Approach • Risk-Based Tracking (business language) Define Clear Testing Priorities Communication, Customer CollaborationWorking software & Responding to change Improve IT Services BV
Setting Priorities • Risk identification • Requirements (user story) based, • Brainstorming, failure history • Risk analysis • Risk = Impact x Likelihood • Much better …… Risk = f (Impact, Likelihood) New technologyComplexityInterfacing SafetyUsageintensityexternalvisibility Improve IT Services BV
Product Risk Matrix 5 Technical Risk 1 2 Likelihood 3 4 Business Risk Impact Improve IT Services BV
Test Approach Test design techniques Review software design Support unit tests Review unit tests Exploratory testing Support unit tests Review unit tests 5 1 2 Likelihood 3 4 Exploratory testing Test design techniques Review software design Impact Improve IT Services BV
Test Plan Test Appr Test Approach Test Approach Test Approach Improve IT Services BV
Core Practice # 2: Reviews Testing is preventing defects • Priority to risk • Review practices that make the difference • “Agile Inspection” Perform Limited Effective Reviews Communication & FeedbackCustomer collaboration Improve IT Services BV
It’s SimplebutNot Easy • Different review types for different objectives • Trained moderators • Apply roles, checklists and kick-off • Entry check • Not too many pages (± 20) • Good logging rate (2 per min.) • Reasonable checking rate (± 10 pages) Improve IT Services BV
Core Practice # 3: Unit Testing Testing requires independence • Code Coverage • Buddy Testing (XP) • Test Driven Development Get Developers doing Unit Testing Working software over comprehensivedocumentation ? Improve IT Services BV
Unit Testing Process most high level testing will onlyachieve 30 - 40% code coverage testcode design Functional Check ! code TEST Coverage Check ! Improve IT Services BV
Continuous Integration Improve IT Services B.V.
Core Practice # 4: Test Design Testing is finding defects • Apply Test Design (start-up) • Classification Tree Method / Use Cases • Exploratory Testing Use Test Techniques as Tools Responding to change, Customercollaboration and No comphrehensivedoc’s Improve IT Services BV
Apply Test Design • Identification test conditions • Establish traceability to requirements Improve IT Services BV
Test Design Start-up Improve IT Services BV
Exploratory Testing Process Session-Based Testing Keep track ofbug vs. fix ratio! Charter Sessions - Exploration- Design- Execution Debriefing Heuristics - Boundaries- CRUD- configurations- Interruptions- .... Improve IT Services BV
Core Practice # 5: People Testing is an extremely complex, intellectually challenging task • Training (on-the-job) • Team Dynamics • Not only for Testers!! Build Experienced & Skilled Testers Individuals and interactionsover processes and tools Improve IT Services BV
People Skills not only for testers Testing Development Domain Soft Skills Improve IT Services BV
More People Factors • Job satisfaction - Getting respect & feeling valued, adequate rewards - … • Test guild • Test meetings, best practices • … • Career paths - Job description & training, promotion - … • Team Dynamics • Effective teams don’t just happen • Correct skills, Correct attitude, Common goals Improve IT Services BV
Lean Testing Tool Box Clear Testing Priorities Effective Reviews Developers doing Unit Testing Test Techniques as Tools Experienced & Skilled Testers Improve IT Services BV
No More Testers, or …. There has never been a time when software testers were needed more! Improve IT Services BV
www.erikvanveenendaal.nl erik@erikvanveenendaal.nl @ErikvVeenendaal Improve IT Services BV