SlideShare a Scribd company logo
1 of 32
1
2
   Patterns in real world
   Design Patterns and Test Patterns
   Usefulness of patterns in testing
   Patterns in testing
       Data Patterns
       Test Patterns
       Defect Patterns
       Test management Patterns
       People management Patterns
       Control Patterns
   What we do not know today
   What we might need to create – pattern language

                                                      3
4
5
   The sum of the
    numbers in any row
    is equal to 2n




      Source - http://ptri1.tripod.com/




                                          6
   How do you learn your native language?
   How do you learn your second language?




                                             7
   The brain is a pattern-mad supposing
     machine. Given just a little stimuli, it divines
     the probable. …it recognizes familiar patterns
     and acts with conviction.

    As much of a confection as our mental maps
     are, they (Patterns) allow us to
     speculate, rehearse and make plans.
*http://www.nytimes.com/2004/06/15/science/essay-i-sing-the-body-s-pattern-recognition-machine.html


                                                                                                      8
   *A form or model proposed for imitation
   *Something designed or used as a model for
    making things
   Design pattern - general reusable solution to
    a commonly occurring design problem


From MW Dictionary*

                                                    9
   I predict that one of the future breakthrough
    in testing will come through pattern
    recognition
   Example
     Patterns of defects arising out of patterns of
      errors in code/design/requirements
     Patterns of project failures arising out of data
      collected during project execution


                                                         10
   Patterns exists everywhere - in
    defects, code, design, processes
   Pattern identification helps predict the next
    set of events in the chain enabling you to do
    risk mitigation
   Patterns enable you to distinguish the woods
    from the trees


                                                    11
   Data Patterns
   Test Patterns
   Defect Patterns
   Test management Patterns
   People management Patterns
   Control Patterns



                                 12
   Ross Collard listed a number of data patterns
    for functional and performance testing -
       Routine Live Data
       Baseline
       Batch Volume or Parallel
       Benchmark
       Pristine
       Truncated
       Minimally Redundant etc.
                                                    13
   People often work on one side of boundary
    while testing
   Make them work on both sides/all sides of
    boundary
   Example –
     Triangle Problem negative test cases - no value, 1
      value, 2 values, all 3 values
     what about the other side of the boundary - more
      number of values?
                                                           14
   Patterns can help uncover new test design
    techniques OR new ways to look at existing
    test design techniques
     Apply test design techniques to create tests
     Monitor the bugs arising OUT(SIDE) of tests
     Establish the bugs that could have been found
      using existing techniques
     Defects not “findable” using techniques should be
      analyzed for patterns and a technique using which
      these could be found
                                                          15
Some patterns in type of bugs not found using
tests created using techniques
 Interaction of application with the operating
  system
     Reason – Design specifications hardly go to that level
      of detail and system specifications never
   Defects related to interdependency of features
    and code structures causing one portion of code
    to be bound to another piece of code
     Reason – Code dependencies are either not called out
      explicitly, born in either assumptions or ignorance
      (most of the time)
                                                               16
Associations
                                         Contains
                   User Inputs

   A model     System Inputs                                                                                        Output Data
                                             Entity under test
    based          Input Data
                                                                                                                   Output Actions

    technique      Input Actors

                                                                                                                                      On other
   Resembles                                                                                                                         elements/
                                                                                                                                       entities




                                         Environment (Ext. State)
    state

                                                                    State (Internal State)
    diagrams                                                                                                                            On OS     - Disk
                                                                                                                                                  - File
                                                                                                                                                  - Process
                                                                                                                                                  - Screen IO
                                                                                                                                                  - System Messages
                                                                                                            Transient /Stable State




                                                                                                             Parameters & their attributes

                            Parameters
                                                     State of Parameters
                                                                                                                                                                      17
   How many bugs do you find every month?
   How many of them are type –
    UI, Feature, cross-
    feature, database, security…
   Can you sub-classify them?
   Do you know what are other testers finding?
   Do you see any patterns in
     What type of bugs you find
     What types of bugs you don’t find?
                                                  18
   If you find predictable bugs (based on your
    past experience and pattern recognition) can
    there be pattern recognition
     for code?
     Design?
     Requirements?




                                                   19
   Are there testers who do good bug isolation?
   Are there those who do not?
   How do they fail? What things they do not
    do?
   What patterns exist?
   If I know those patterns can I improve their
    skills?


                                                   20
   Example
     Project Failure pattern –
      Communication/delivery/no-interested-client-
      stakeholder
     Automation Outsourcing Failure – Lack of ~effort
      appreciation/well-written tests/domain
      knowledge



                                                         21
Date      Action                                     Issue
 24-Jan-01Clear work division in overlapping areas   Performance test cases being written by Joe and Jane.
          and ensuring communication between         Test were duplicated. Some missing test cases
          the overlapping/concerned people.          because every body was not aware hence did not
                                                     review/contribute to the tests.
28-Jan-01Knowledge of the system (WES, WAS           Some members of the team did not know what they
         performance, tuning, deployment)            had to do, others did not have required technical
         should be available to the team.            knowledge
14-Feb-01Communication of the documents,             The release meeting with developers happened
         Agenda, Minutes to the testing team         without a copy of test plan (esp. dates) being
         should be formal, via mail.                 available.
 9-Mar-01User Guides esp. “how to get started”       Swami sent a mail asking how to use the ABC app. We
         should always accompany a build             had to write some steps and send him the document.

         What pattern do you see here?
         This pattern emerges from long term view - The four
          entries here are from a list of 133 entries between Jan and April 2001.
         How is pattern recognition different from Root cause analysis?

                                                                                                       22
   Example – Patterns while Interviewing
     assessing people, forming
      impressions, validating, creating and refining
      patterns
     Remember - you have not discovered the last
      pattern hence you may be wrong
     Keep updating your impression of patterns and be
      ready for the worst


                                                         23
   Example – “Only a Guest” pattern
     when people (are about to) leave the organization
      without information to the management there
      are some behavioral patterns that manifest
      themselves.
     Indifference, extra-hard work, sudden forgiveness
      and not picking up of battles, unplanned
      absenteeism, putting all paper-work in place etc.


                                                          24
   Patterns for
     Predicting
     Inventing
     Improving
     Preventing
     …




                   25
   Unified Modeling Language – Unified Testing
    Language

   No guarantee of success and no predictions
    of failure




                                                  26
   Applying patterns requires
     Ignoring the small and looking at the large
     Large amount of data (usually)
     Reduction in the number of variables
     Elimination of outliers
     Pattern of outliers
     Variations and taking cognizance of those
     Variations and eliminating them

                                                    27
http://www.rense.com/general86/stun.htm
                                          28
http://www.rense.com/general86/stun.htm
                                          29
   “Homo sapiens is about pattern
    recognition, he says. Both a gift and a trap.” -
    William Gibson – Pattern Recognition




                                                       30
   http://www.exampler.com/testing-com/test-patterns/
   http://c2.com/cgi-bin/wiki?TestingPatterns
   http://www.testingreflections.com/node/view/9




                                                         31
Thank you everybody <<meta-pattern – help>> for images, text and ideas




                                                                         32

More Related Content

Similar to Patterns in Testing: Recognizing Defect, Process and People Patterns

Is the current model of load testing broken ukcmg - steve thair
Is the current model of load testing broken   ukcmg - steve thairIs the current model of load testing broken   ukcmg - steve thair
Is the current model of load testing broken ukcmg - steve thairStephen Thair
 
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16AppDynamics
 
20111104 s4 overview
20111104 s4 overview20111104 s4 overview
20111104 s4 overviewLeo Neumeyer
 
Testing In Software Engineering
Testing In Software EngineeringTesting In Software Engineering
Testing In Software Engineeringkiansahafi
 
Machine programming
Machine programmingMachine programming
Machine programmingDESMOND YUEN
 
Advanced malware analysis training session3 botnet analysis part2
Advanced malware analysis training session3 botnet analysis part2Advanced malware analysis training session3 botnet analysis part2
Advanced malware analysis training session3 botnet analysis part2Cysinfo Cyber Security Community
 
It’s Time to Automate Your Exploratory Testing
It’s Time to Automate Your Exploratory TestingIt’s Time to Automate Your Exploratory Testing
It’s Time to Automate Your Exploratory TestingTechWell
 
A Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
A Comparison of Three Bug-Finding Techniques and Their Relative EffectivenessA Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
A Comparison of Three Bug-Finding Techniques and Their Relative EffectivenessParasoft
 
Sanjeevi's SDLC Guest Lecture in Anna University campus at AU-PERS Centre (Ye...
Sanjeevi's SDLC Guest Lecture in Anna University campus at AU-PERS Centre (Ye...Sanjeevi's SDLC Guest Lecture in Anna University campus at AU-PERS Centre (Ye...
Sanjeevi's SDLC Guest Lecture in Anna University campus at AU-PERS Centre (Ye...Sanjeevi Prasad
 
Testingfor Sw Security
Testingfor Sw SecurityTestingfor Sw Security
Testingfor Sw Securityankitmehta21
 
Expert System - Artificial intelligence
Expert System - Artificial intelligenceExpert System - Artificial intelligence
Expert System - Artificial intelligenceDr. Abdul Ahad Abro
 
Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-conceptsmedsherb
 
TEA Presentation V 0.3
TEA Presentation V 0.3TEA Presentation V 0.3
TEA Presentation V 0.3Ian McDonald
 
SOFTWARE ENGINEERING UNIT 6 Ch 13
SOFTWARE ENGINEERING UNIT 6 Ch 13SOFTWARE ENGINEERING UNIT 6 Ch 13
SOFTWARE ENGINEERING UNIT 6 Ch 13Azhar Shaik
 
Semantic (Social) Sensor Networks
Semantic (Social) Sensor NetworksSemantic (Social) Sensor Networks
Semantic (Social) Sensor NetworksOscar Corcho
 
A&D - Introduction to Analysis & Design of Information System
A&D - Introduction to Analysis & Design of Information SystemA&D - Introduction to Analysis & Design of Information System
A&D - Introduction to Analysis & Design of Information Systemvinay arora
 

Similar to Patterns in Testing: Recognizing Defect, Process and People Patterns (20)

Taxonomy for bugs
Taxonomy for bugsTaxonomy for bugs
Taxonomy for bugs
 
Is the current model of load testing broken ukcmg - steve thair
Is the current model of load testing broken   ukcmg - steve thairIs the current model of load testing broken   ukcmg - steve thair
Is the current model of load testing broken ukcmg - steve thair
 
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
Monitoring and Instrumentation Strategies: Tips and Best Practices - AppSphere16
 
Tc Checklist
Tc ChecklistTc Checklist
Tc Checklist
 
20111104 s4 overview
20111104 s4 overview20111104 s4 overview
20111104 s4 overview
 
Testing In Software Engineering
Testing In Software EngineeringTesting In Software Engineering
Testing In Software Engineering
 
Machine programming
Machine programmingMachine programming
Machine programming
 
Advanced malware analysis training session3 botnet analysis part2
Advanced malware analysis training session3 botnet analysis part2Advanced malware analysis training session3 botnet analysis part2
Advanced malware analysis training session3 botnet analysis part2
 
It’s Time to Automate Your Exploratory Testing
It’s Time to Automate Your Exploratory TestingIt’s Time to Automate Your Exploratory Testing
It’s Time to Automate Your Exploratory Testing
 
A Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
A Comparison of Three Bug-Finding Techniques and Their Relative EffectivenessA Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
A Comparison of Three Bug-Finding Techniques and Their Relative Effectiveness
 
Sanjeevi's SDLC Guest Lecture in Anna University campus at AU-PERS Centre (Ye...
Sanjeevi's SDLC Guest Lecture in Anna University campus at AU-PERS Centre (Ye...Sanjeevi's SDLC Guest Lecture in Anna University campus at AU-PERS Centre (Ye...
Sanjeevi's SDLC Guest Lecture in Anna University campus at AU-PERS Centre (Ye...
 
Testingfor Sw Security
Testingfor Sw SecurityTestingfor Sw Security
Testingfor Sw Security
 
Expert System - Artificial intelligence
Expert System - Artificial intelligenceExpert System - Artificial intelligence
Expert System - Artificial intelligence
 
Basic software-testing-concepts
Basic software-testing-conceptsBasic software-testing-concepts
Basic software-testing-concepts
 
TEA Presentation V 0.3
TEA Presentation V 0.3TEA Presentation V 0.3
TEA Presentation V 0.3
 
SOFTWARE ENGINEERING UNIT 6 Ch 13
SOFTWARE ENGINEERING UNIT 6 Ch 13SOFTWARE ENGINEERING UNIT 6 Ch 13
SOFTWARE ENGINEERING UNIT 6 Ch 13
 
Semantic (Social) Sensor Networks
Semantic (Social) Sensor NetworksSemantic (Social) Sensor Networks
Semantic (Social) Sensor Networks
 
A&D - Introduction to Analysis & Design of Information System
A&D - Introduction to Analysis & Design of Information SystemA&D - Introduction to Analysis & Design of Information System
A&D - Introduction to Analysis & Design of Information System
 
Robotics and expert systems
Robotics and expert systemsRobotics and expert systems
Robotics and expert systems
 
Software testing overview subbu
Software testing overview subbuSoftware testing overview subbu
Software testing overview subbu
 

More from RIA RUI Society

Introduction to google cloud messaging in android
Introduction to google cloud messaging in androidIntroduction to google cloud messaging in android
Introduction to google cloud messaging in androidRIA RUI Society
 
Entering the world of Samsung developer ecosystem
Entering the world of Samsung developer ecosystemEntering the world of Samsung developer ecosystem
Entering the world of Samsung developer ecosystemRIA RUI Society
 
Design of the indian rupee symbol
Design of the indian rupee symbolDesign of the indian rupee symbol
Design of the indian rupee symbolRIA RUI Society
 
Creating delightful experiences
Creating delightful experiencesCreating delightful experiences
Creating delightful experiencesRIA RUI Society
 
Typographic history, systems and perception
Typographic history, systems and perceptionTypographic history, systems and perception
Typographic history, systems and perceptionRIA RUI Society
 
Understanding Design and Brand Communication Workshop Content - Design Camp I...
Understanding Design and Brand Communication Workshop Content - Design Camp I...Understanding Design and Brand Communication Workshop Content - Design Camp I...
Understanding Design and Brand Communication Workshop Content - Design Camp I...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Web application usability by Parimala Hariprasad
Bug deBug Chennai 2012 Talk - Web application usability by Parimala HariprasadBug deBug Chennai 2012 Talk - Web application usability by Parimala Hariprasad
Bug deBug Chennai 2012 Talk - Web application usability by Parimala HariprasadRIA RUI Society
 
Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software...
Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software...Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software...
Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Effective test management with triple t tools,...
Bug deBug Chennai 2012 Talk - Effective test management with triple t  tools,...Bug deBug Chennai 2012 Talk - Effective test management with triple t  tools,...
Bug deBug Chennai 2012 Talk - Effective test management with triple t tools,...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Business value articulation in software project...
Bug deBug Chennai 2012 Talk - Business value articulation in software project...Bug deBug Chennai 2012 Talk - Business value articulation in software project...
Bug deBug Chennai 2012 Talk - Business value articulation in software project...RIA RUI Society
 
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...RIA RUI Society
 
Usability testing for mobile apps - Touch Tour Chennai
Usability testing for mobile apps - Touch Tour ChennaiUsability testing for mobile apps - Touch Tour Chennai
Usability testing for mobile apps - Touch Tour ChennaiRIA RUI Society
 
Introduction to Android OS - Touch Tour Chennai
Introduction to Android OS - Touch Tour ChennaiIntroduction to Android OS - Touch Tour Chennai
Introduction to Android OS - Touch Tour ChennaiRIA RUI Society
 
Html5 and beyond the next generation of mobile web applications - Touch Tou...
Html5 and beyond   the next generation of mobile web applications - Touch Tou...Html5 and beyond   the next generation of mobile web applications - Touch Tou...
Html5 and beyond the next generation of mobile web applications - Touch Tou...RIA RUI Society
 
Demystyfing the touch device market - Touch Tour Chennai
Demystyfing the touch device market - Touch Tour ChennaiDemystyfing the touch device market - Touch Tour Chennai
Demystyfing the touch device market - Touch Tour ChennaiRIA RUI Society
 
Cross platform mobile applications - Touch Tour Chennai
Cross platform mobile applications - Touch Tour ChennaiCross platform mobile applications - Touch Tour Chennai
Cross platform mobile applications - Touch Tour ChennaiRIA RUI Society
 
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...RIA RUI Society
 
Achieving 5 Es in mobile testing
Achieving 5 Es in mobile testingAchieving 5 Es in mobile testing
Achieving 5 Es in mobile testingRIA RUI Society
 

More from RIA RUI Society (20)

Introduction to google cloud messaging in android
Introduction to google cloud messaging in androidIntroduction to google cloud messaging in android
Introduction to google cloud messaging in android
 
Entering the world of Samsung developer ecosystem
Entering the world of Samsung developer ecosystemEntering the world of Samsung developer ecosystem
Entering the world of Samsung developer ecosystem
 
Design of the indian rupee symbol
Design of the indian rupee symbolDesign of the indian rupee symbol
Design of the indian rupee symbol
 
Creating delightful experiences
Creating delightful experiencesCreating delightful experiences
Creating delightful experiences
 
Typographic history, systems and perception
Typographic history, systems and perceptionTypographic history, systems and perception
Typographic history, systems and perception
 
Understanding Design and Brand Communication Workshop Content - Design Camp I...
Understanding Design and Brand Communication Workshop Content - Design Camp I...Understanding Design and Brand Communication Workshop Content - Design Camp I...
Understanding Design and Brand Communication Workshop Content - Design Camp I...
 
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...
Bug deBug Chennai 2012 Talk - Trimming those flabs designing lightweight test...
 
Bug deBug Chennai 2012 Talk - Web application usability by Parimala Hariprasad
Bug deBug Chennai 2012 Talk - Web application usability by Parimala HariprasadBug deBug Chennai 2012 Talk - Web application usability by Parimala Hariprasad
Bug deBug Chennai 2012 Talk - Web application usability by Parimala Hariprasad
 
Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software...
Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software...Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software...
Bug deBug Chennai 2012 Talk - V3 analysis an approach for estimating software...
 
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...
Bug deBug Chennai 2012 Talk - Future of testing impact of mobile devices by S...
 
Bug deBug Chennai 2012 Talk - Effective test management with triple t tools,...
Bug deBug Chennai 2012 Talk - Effective test management with triple t  tools,...Bug deBug Chennai 2012 Talk - Effective test management with triple t  tools,...
Bug deBug Chennai 2012 Talk - Effective test management with triple t tools,...
 
Bug deBug Chennai 2012 Talk - Business value articulation in software project...
Bug deBug Chennai 2012 Talk - Business value articulation in software project...Bug deBug Chennai 2012 Talk - Business value articulation in software project...
Bug deBug Chennai 2012 Talk - Business value articulation in software project...
 
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...
Bug deBug Chennai 2012 Talk - Test automation support systems layered archite...
 
Usability testing for mobile apps - Touch Tour Chennai
Usability testing for mobile apps - Touch Tour ChennaiUsability testing for mobile apps - Touch Tour Chennai
Usability testing for mobile apps - Touch Tour Chennai
 
Introduction to Android OS - Touch Tour Chennai
Introduction to Android OS - Touch Tour ChennaiIntroduction to Android OS - Touch Tour Chennai
Introduction to Android OS - Touch Tour Chennai
 
Html5 and beyond the next generation of mobile web applications - Touch Tou...
Html5 and beyond   the next generation of mobile web applications - Touch Tou...Html5 and beyond   the next generation of mobile web applications - Touch Tou...
Html5 and beyond the next generation of mobile web applications - Touch Tou...
 
Demystyfing the touch device market - Touch Tour Chennai
Demystyfing the touch device market - Touch Tour ChennaiDemystyfing the touch device market - Touch Tour Chennai
Demystyfing the touch device market - Touch Tour Chennai
 
Cross platform mobile applications - Touch Tour Chennai
Cross platform mobile applications - Touch Tour ChennaiCross platform mobile applications - Touch Tour Chennai
Cross platform mobile applications - Touch Tour Chennai
 
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
Mobile app development using PhoneGap - A comprehensive walkthrough - Touch T...
 
Achieving 5 Es in mobile testing
Achieving 5 Es in mobile testingAchieving 5 Es in mobile testing
Achieving 5 Es in mobile testing
 

Recently uploaded

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Recently uploaded (20)

08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Patterns in Testing: Recognizing Defect, Process and People Patterns

  • 1. 1
  • 2. 2
  • 3. Patterns in real world  Design Patterns and Test Patterns  Usefulness of patterns in testing  Patterns in testing  Data Patterns  Test Patterns  Defect Patterns  Test management Patterns  People management Patterns  Control Patterns  What we do not know today  What we might need to create – pattern language 3
  • 4. 4
  • 5. 5
  • 6. The sum of the numbers in any row is equal to 2n Source - http://ptri1.tripod.com/ 6
  • 7. How do you learn your native language?  How do you learn your second language? 7
  • 8. The brain is a pattern-mad supposing machine. Given just a little stimuli, it divines the probable. …it recognizes familiar patterns and acts with conviction.  As much of a confection as our mental maps are, they (Patterns) allow us to speculate, rehearse and make plans. *http://www.nytimes.com/2004/06/15/science/essay-i-sing-the-body-s-pattern-recognition-machine.html 8
  • 9. *A form or model proposed for imitation  *Something designed or used as a model for making things  Design pattern - general reusable solution to a commonly occurring design problem From MW Dictionary* 9
  • 10. I predict that one of the future breakthrough in testing will come through pattern recognition  Example  Patterns of defects arising out of patterns of errors in code/design/requirements  Patterns of project failures arising out of data collected during project execution 10
  • 11. Patterns exists everywhere - in defects, code, design, processes  Pattern identification helps predict the next set of events in the chain enabling you to do risk mitigation  Patterns enable you to distinguish the woods from the trees 11
  • 12. Data Patterns  Test Patterns  Defect Patterns  Test management Patterns  People management Patterns  Control Patterns 12
  • 13. Ross Collard listed a number of data patterns for functional and performance testing -  Routine Live Data  Baseline  Batch Volume or Parallel  Benchmark  Pristine  Truncated  Minimally Redundant etc. 13
  • 14. People often work on one side of boundary while testing  Make them work on both sides/all sides of boundary  Example –  Triangle Problem negative test cases - no value, 1 value, 2 values, all 3 values  what about the other side of the boundary - more number of values? 14
  • 15. Patterns can help uncover new test design techniques OR new ways to look at existing test design techniques  Apply test design techniques to create tests  Monitor the bugs arising OUT(SIDE) of tests  Establish the bugs that could have been found using existing techniques  Defects not “findable” using techniques should be analyzed for patterns and a technique using which these could be found 15
  • 16. Some patterns in type of bugs not found using tests created using techniques  Interaction of application with the operating system  Reason – Design specifications hardly go to that level of detail and system specifications never  Defects related to interdependency of features and code structures causing one portion of code to be bound to another piece of code  Reason – Code dependencies are either not called out explicitly, born in either assumptions or ignorance (most of the time) 16
  • 17. Associations Contains User Inputs  A model System Inputs Output Data Entity under test based Input Data Output Actions technique Input Actors On other  Resembles elements/ entities Environment (Ext. State) state State (Internal State) diagrams On OS - Disk - File - Process - Screen IO - System Messages Transient /Stable State Parameters & their attributes Parameters State of Parameters 17
  • 18. How many bugs do you find every month?  How many of them are type – UI, Feature, cross- feature, database, security…  Can you sub-classify them?  Do you know what are other testers finding?  Do you see any patterns in  What type of bugs you find  What types of bugs you don’t find? 18
  • 19. If you find predictable bugs (based on your past experience and pattern recognition) can there be pattern recognition  for code?  Design?  Requirements? 19
  • 20. Are there testers who do good bug isolation?  Are there those who do not?  How do they fail? What things they do not do?  What patterns exist?  If I know those patterns can I improve their skills? 20
  • 21. Example  Project Failure pattern – Communication/delivery/no-interested-client- stakeholder  Automation Outsourcing Failure – Lack of ~effort appreciation/well-written tests/domain knowledge 21
  • 22. Date Action Issue 24-Jan-01Clear work division in overlapping areas Performance test cases being written by Joe and Jane. and ensuring communication between Test were duplicated. Some missing test cases the overlapping/concerned people. because every body was not aware hence did not review/contribute to the tests. 28-Jan-01Knowledge of the system (WES, WAS Some members of the team did not know what they performance, tuning, deployment) had to do, others did not have required technical should be available to the team. knowledge 14-Feb-01Communication of the documents, The release meeting with developers happened Agenda, Minutes to the testing team without a copy of test plan (esp. dates) being should be formal, via mail. available. 9-Mar-01User Guides esp. “how to get started” Swami sent a mail asking how to use the ABC app. We should always accompany a build had to write some steps and send him the document.  What pattern do you see here?  This pattern emerges from long term view - The four entries here are from a list of 133 entries between Jan and April 2001.  How is pattern recognition different from Root cause analysis? 22
  • 23. Example – Patterns while Interviewing  assessing people, forming impressions, validating, creating and refining patterns  Remember - you have not discovered the last pattern hence you may be wrong  Keep updating your impression of patterns and be ready for the worst 23
  • 24. Example – “Only a Guest” pattern  when people (are about to) leave the organization without information to the management there are some behavioral patterns that manifest themselves.  Indifference, extra-hard work, sudden forgiveness and not picking up of battles, unplanned absenteeism, putting all paper-work in place etc. 24
  • 25. Patterns for  Predicting  Inventing  Improving  Preventing  … 25
  • 26. Unified Modeling Language – Unified Testing Language  No guarantee of success and no predictions of failure 26
  • 27. Applying patterns requires  Ignoring the small and looking at the large  Large amount of data (usually)  Reduction in the number of variables  Elimination of outliers  Pattern of outliers  Variations and taking cognizance of those  Variations and eliminating them 27
  • 30. “Homo sapiens is about pattern recognition, he says. Both a gift and a trap.” - William Gibson – Pattern Recognition 30
  • 31. http://www.exampler.com/testing-com/test-patterns/  http://c2.com/cgi-bin/wiki?TestingPatterns  http://www.testingreflections.com/node/view/9 31
  • 32. Thank you everybody <<meta-pattern – help>> for images, text and ideas 32

Editor's Notes

  1. Root-cause analysis is one step in pattern recognition but not the only one RC – Communication/Training whereas pattern is things not getting done properly