SlideShare ist ein Scribd-Unternehmen logo
1 von 39
The Pursuit of Quality: Chasing
          Tornadoes or Just Hot Air?




Gerrard Consulting Limited
PO Box 347
Maidenhead
Berkshire
SL6 2GU
Tel: +44 (0) 1628 639173
Fax: +44 (0) 1628 630398
Web: gerrardconsulting.com

                             Intelligent Testing, Improvement and Assurance   Slide 1
Agenda
•   What is Quality?
•   Models for quality and testing
•   Examples of models
•   Models and stakeholders
•   Failures of systems, failures of models
•   Close



                Intelligent Testing, Improvement and Assurance   Slide 3
Weather
• Rain is great for farmers and their crops, but
  terrible for tourists
• Wind is essential for sailors and windmills but
  bad for the rest of us

• Quality, like weather, can be good or bad and
  that depends on who you are.


              Intelligent Testing, Improvement and Assurance   Slide 4
That’s
Fantastic!




              That’s
             Terrible!
Quality is a relationship
• Quality is not an
  attribute of a system
• It is a relationship
  between systems and
  stakeholders who
  take different views
• The model of Quality
  that prevails has more
  to do with
  stakeholders than the
  system itself

              Intelligent Testing, Improvement and Assurance   Slide 6
The concepts of quality, risk,
comfort, intuitiveness …
                                          • Concepts that most
                                            people understand, but
                                            few can explain
                                          • But it‟s a lot worse than
                                            that
                                          • Quality is an all-
                                            encompassing, collective
                                            term for these and many
                                            other difficult concepts
                                          • A term that means all
                                            things to all people
                                          • (I try and avoid the
                                            Q-word).



          Intelligent Testing, Improvement and Assurance          Slide 7
Models for Quality and
       Testing



     Intelligent Testing, Improvement and Assurance   Slide 8
Models


         Models are everywhere




             Intelligent Testing, Improvement and
                                                    Slide 9
                           Assurance
Models and reality
• In our minds we build mental models of everything we
  experience (and also, many things we don‟t experience)
• When we pick up a glass of water, we build models
   – The 3-dimentional location and relationship between the
     glass, the water, the table it sits on and our body
   – As we reach for the glass, our brain processes the signals
     from our eyes, our muscles and the feelings in our
     fingertips
   – It continuously compares experience with the model and
     adjusts/rebuilds the model many times
• … just to lift a cup of water – incredible!

                  Intelligent Testing, Improvement and Assurance   Slide 10
Some familiar models
• The project plan is a model
  – The resources, activities, effort, costs, risks and
    future decision making
• System requirements are a model
  – The “what and how” of the system
  – What: the features and functionality
  – How: how the system works (fast, secure, reliable)
• User personas (16 year old gamer, 30 year old
  security hacker, 50 year old Man United fan).

                Intelligent Testing, Improvement and Assurance   Slide 11
Where quality comes from
• Quality is the outcome of a comparison
   – Our mental model of perfection
   – Our experience of reality
• Mental models are internal,
  personal and unique to us
• We could share them using some
  kind of Vulcan mind meld
• But usually, we can write them
  down or we can talk about them
• However we communicate, there is noise and
  information gets corrupted/lost in translation.


                Intelligent Testing, Improvement and Assurance   Slide 12
A quality model?
• The requirements and design describe the
  behaviour of a system
• Functional
  – Mapping test cases to requirements is all we need
• Non-Functional
  – All technical attributes are defined and measured
• Quality and therefore testing assumes a model
  – Often undocumented, the model may not be shared,
    understood, complete, consistent, correct…

               Intelligent Testing, Improvement and Assurance   Slide 13
Test design is based on models
• Models describe the environment, system, usage, users,
  goals, risks
• They simplify the context of the test - irrelevant or
  negligible details are ignored in the model
• Focus attention on a particular aspect of the behaviour
  of the system
• Generate a set of unique and diverse tests (within the
  context of the model)
• Enable the testing to be estimated, planned, monitored
  and evaluated for its completeness (coverage).
• Models help us to select tests in a systematic way.


                Intelligent Testing, Improvement and Assurance   Slide 14
Examples of test models
• A checklist or sets of criteria
   – Goals, risks, process paths, interfaces, message type…
• Diagrams from requirements or design
  documents
• Analyses of narrative text or tables
• Some models are documented, many models are
  never committed to paper
   – Can be mental models constructed specifically to
     guide the tester whilst they explore the system under
     test and guide their next action.

                 Intelligent Testing, Improvement and Assurance   Slide 15
Sources of models
• Test Basis
   – We analyse the text or diagrams or information that describe
     required behaviour (or use past experience and knowledge)
• System architecture:
   – We identify testable items in its user-interface, structure or
     internal design
• Modes of failure (product risks):
   – We identify potential ways in which the system might fail that
     are of concern to stakeholders
• Usage patterns:
   – We focus on the way the system will be used, operated and
     interacted with in a business context using personas
• Everything looks fine – doesn‟t it?

                    Intelligent Testing, Improvement and Assurance    Slide 16
But all models (over-)simplify
• But requirements are never perfect, not all
  attributes can be meaningfully measured
• Models incorporate implicit assumptions and are
  approximate representations
• All test models are heuristic, useful in some
  situations, always incomplete and fallible
• Before we adopt a model, we need to know:
  – What aspects of the behaviour, design, modes of
    failure or usage the model helps us to identify
  – What assumptions and simplifications it includes
    (explicitly or implicitly).

               Intelligent Testing, Improvement and Assurance   Slide 17
Formality
• Formal test models
   – Derived from analyses of requirements or code
   – Quantitative coverage measure can be obtained from a formal
     test mode (mostly)
• Informal test models
   – E.g. some models are just lists of modes of failure, risks or
     vulnerabilities.
   – Informal models cannot be used to define quantitative coverage
     measures
• Ad-hoc models
   – Some models can be ad-hoc, invented by the tester just before
     or even during testing
   – Can be formal or informal.


                  Intelligent Testing, Improvement and Assurance   Slide 18
Examples of Models




   Intelligent Testing, Improvement and Assurance   Slide 19
Basic test design techniques are
based on the simplest models
• Equivalence partitions and boundary values:
  – Presume single input, single output responses
  – All values in partitions are equivalent, but the
    boundaries are the most important
• These techniques are useful, but they date
  from the „green-screen‟ era.




               Intelligent Testing, Improvement and Assurance   Slide 20
“Green Screen” equivalence model
• Single input, single output                                     Single Input

• All input is classified and
  partitioned with rules
                                                           If m<1 then
• One test per rule is                                         “Error”
                                                           Else if m>12 then
  enough!                                                      “Error”
• But we don‟t consider:                                   Else
                                                               “OK”
   – The state of the system
   – Combinations of values.
                                                                  Single Output


                 Intelligent Testing, Improvement and Assurance                   Slide 21
State Transition Testing
                                                      Customer arrives              Customer pays
                                                         None                       Increment room
                                                                                    count
                                              Room                 Overnight
                                             Booked                                                  Checkout
                 Room available                                      Stay
                 Decrement room count



Start                    Room                                                        Customer cancels
                       Requested                  Room available                     Increment room
State                                             Decrement room                     count
        Room request
          None                                    count

                       No room available
                       Add to waiting list
                                                 On
                                                                                     Booking
                                                Waiting
                                                              Customer cancels      Cancelled
                                                 List         Remove from waiting
                                                              list




                               Intelligent Testing, Improvement and Assurance                           Slide 22
But the number of states is infinite!
• State-Transition considers:
  – The states of the system and
  – The valid/invalid transitions between states
• Some systems have many, many states
  – A real-time system e.g. telecoms switch may have
    25,000 distinct states
  – State may depend on many variables that can have
    infinite values in combination
• How confident can we be in this model?

               Intelligent Testing, Improvement and Assurance   Slide 23
End-to-end/transaction-flow tests
• End–to-end tests can follow a path through a
  process or a user journey
• The mechanics of the experience are
  simulated but…




             Intelligent Testing, Improvement and Assurance   Slide 24
Bad experience leads to attrition
• Typical form-filling on government sites
  intended to allow citizens to „apply online‟
   Page 1   Page 2   Page 3   Page 4   Page 5   Page 6     Page 7

    45%      72%      48%      21%      85%     80%      Conversion
                                                          by page
    45%      32%      16%       3%       3%      2%      Cumulative




• Every page „works‟ but the user-experience is so
  poor that only 2% finish the journey
• Modelling the journey is good, but not enough…
• We need to model the experience too.
                                                                Slide 25
Models and
Stakeholders



Intelligent Testing, Improvement and Assurance   Slide 26
Stakeholders and test models
• Stakeholders may not tell testers to use
  specific test models; you need to explain them
  to stakeholders so they understand
• The challenge(s):
  – Stakeholders may be of the opinion that the
    models you propose generate too few tests to be
    meaningful or too many to be economic
  – We need to engage stakeholders.


              Intelligent Testing, Improvement and Assurance   Slide 27
„Measuring quality‟ feels good
but…
• Measurable quality attributes make techies feel
  good, but they don‟t help stakeholders if they
  can‟t be related to experience
• If statistics don‟t inform the stakeholders‟
  vision or model of quality
  – We think we do a good job
  – They think we waste their time and money.



              Intelligent Testing, Improvement and Assurance   Slide 28
Relevance
• Documented or not, testers need and use models
  to identify what is important and what to test
• A control flow graph has meaning (and value) to a
  programmer but not to an end-user
• An equivalence partition may have meaning to
  users but not the CEO of the company
• Control flow, equivalence partitions are models
  that have value in some, but never all, contexts.


              Intelligent Testing, Improvement and Assurance   Slide 29
Helping stakeholders to make
better decisions is the tester‟s goal
• We need models that
  – Do more than identify tests
  – Take account of the stakeholders‟ perspective and
    have meaning in the context of their decision-
    making
• If we „measure quality‟ using technical models
  – We delude both our stakeholders and ourselves
    into thinking we are in control of Quality
  – We‟re not.
              Intelligent Testing, Improvement and Assurance   Slide 30
Failures of Systems,
 Failures of Models



    Intelligent Testing, Improvement and Assurance   Slide 31
F-16 bug (found in flight)
• One of the early problems was that you could
  flip the plane over and the computer would
  gladly let you drop a bomb or fuel tank. It
  would drop, dent the wing, and then roll off.
• http://catless.ncl.ac.uk/Risks/3.44.html#subj1.1


                      Poor test model


              Intelligent Testing, Improvement and Assurance   Slide 32
Poor test model




                  Slide 33
Poor test model




Intelligent Testing, Improvement and Assurance
                                                     Slide 34
Scope of testing for E-Commerce
    4. Full E-Business System

                            3. Order Processing Sub-System          Process

                                2. Web Sub-System
   People
                                    Web Server


                                                                          Environment
         Banking System             1. Application
         (Credit Card               (objects)
         Processor)                 Sub-System




                                    Database Server          Legacy System(s)
   Training
Test strategy
• Our test strategy must align with our model
  of quality and our risk-assessment    Every focus area
                                                                       requires test
Test Phase                   Focus                                       model(s)
Requirements, design etc. Relevance, correctness, completeness, ambiguity etc.

Component                    Input validation, correct behaviour, output validation,
                             statement and branch coverage
Integration                  Correct, authorised transfer of control, exchange of
                             data, consistency of use and reconciliations
System (-system)             End-to-end accuracy, consistency, security,
                             performance and reliability
Acceptance                   Alignment to business goals, end-to-end ease of use
                             and experience, successful outcomes, user personas

                      Intelligent Testing, Improvement and Assurance           Slide 36
Failure of testing is usually a failure
in a test model
• If the right models are selected, and commitment
  is made to cover them
  – The testing usually gets done
• But often, no model is explicitly selected at all
• Where a model fails, it is usually wrong because:
  – The model does not represent reality
  – The scope of the model is too narrow
  – The model ignores critical aspects (context, people,
    process, environment or training/capability).

               Intelligent Testing, Improvement and Assurance   Slide 37
Close
• We need to understand what quality is before we
  can pursue and achieve it
• Testing often fails because test models are not
  used or understood
• Testers need models to test but the „standard‟
  quality models are too simple
• We need to take stakeholder views into account
  to create relevant testing models
• Using models sounds techy, but it‟s completely
  natural – it‟s part of what makes us human.

              Intelligent Testing, Improvement and Assurance   Slide 38
Assurance is NOT
  Quality Assurance

It’s not about proof or
   guarantees, either

       Intelligent Testing, Improvement and
                                              Slide 39
                     Assurance
@paul_gerrard
The Pursuit of Quality: Chasing
 Tornadoes or Just Hot Air?



    gerrardconsulting.com
       maelscrum.com
  businessstorymanager.com
       test-axioms.com
          uktmf.com
       Intelligent Testing, Improvement and Assurance    Slide 40

Weitere ähnliche Inhalte

Was ist angesagt?

A New Model for Testing
A New Model for TestingA New Model for Testing
A New Model for TestingSQALab
 
Advancing Testing Using Axioms
Advancing Testing Using AxiomsAdvancing Testing Using Axioms
Advancing Testing Using AxiomsSQALab
 
Software Testing with Agile Requirements Practices
Software Testing with Agile Requirements Practices Software Testing with Agile Requirements Practices
Software Testing with Agile Requirements Practices A B M Moniruzzaman
 
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...TEST Huddle
 
New Model Testing: A New Test Process and Tool
New Model Testing:  A New Test Process and ToolNew Model Testing:  A New Test Process and Tool
New Model Testing: A New Test Process and ToolTEST Huddle
 
Advancing Testing Using Axioms
Advancing Testing Using AxiomsAdvancing Testing Using Axioms
Advancing Testing Using AxiomsSQALab
 
10 signs your testing is not enough
10 signs your testing is not enough10 signs your testing is not enough
10 signs your testing is not enoughSQALab
 
A Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software TestingA Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software TestingTechWell
 
A Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software TestingA Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software TestingTechWell
 
Rapid Software Testing: Reporting
Rapid Software Testing: ReportingRapid Software Testing: Reporting
Rapid Software Testing: ReportingTechWell
 
Rapid Software Testing: Strategy
Rapid Software Testing: StrategyRapid Software Testing: Strategy
Rapid Software Testing: StrategyTechWell
 
Erkki Poyhonen - Software Testing - A Users Guide
Erkki Poyhonen - Software Testing - A Users GuideErkki Poyhonen - Software Testing - A Users Guide
Erkki Poyhonen - Software Testing - A Users GuideTEST Huddle
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test AutomationNaveen Kumar Singh
 
Testaus 2014 -seminaari: Paul Gerrard. The Changing Role of Testers’.
Testaus 2014 -seminaari: Paul Gerrard. The Changing Role of Testers’.Testaus 2014 -seminaari: Paul Gerrard. The Changing Role of Testers’.
Testaus 2014 -seminaari: Paul Gerrard. The Changing Role of Testers’.Tieturi Oy
 
Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineeringZeeshan Masood S
 
Exploratory testing in an agile development organization (it quality & test ...
Exploratory testing in an agile development organization  (it quality & test ...Exploratory testing in an agile development organization  (it quality & test ...
Exploratory testing in an agile development organization (it quality & test ...Johan Åtting
 

Was ist angesagt? (19)

A New Model for Testing
A New Model for TestingA New Model for Testing
A New Model for Testing
 
Advancing Testing Using Axioms
Advancing Testing Using AxiomsAdvancing Testing Using Axioms
Advancing Testing Using Axioms
 
Software Testing with Agile Requirements Practices
Software Testing with Agile Requirements Practices Software Testing with Agile Requirements Practices
Software Testing with Agile Requirements Practices
 
Rapid Software Testing
Rapid Software TestingRapid Software Testing
Rapid Software Testing
 
New model
New modelNew model
New model
 
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...
Paul Gerrard - The Redistribution of Testing – Where to Innovate and What to ...
 
New Model Testing: A New Test Process and Tool
New Model Testing:  A New Test Process and ToolNew Model Testing:  A New Test Process and Tool
New Model Testing: A New Test Process and Tool
 
Advancing Testing Using Axioms
Advancing Testing Using AxiomsAdvancing Testing Using Axioms
Advancing Testing Using Axioms
 
agile vs. traditional methodologies
agile vs. traditional methodologies agile vs. traditional methodologies
agile vs. traditional methodologies
 
10 signs your testing is not enough
10 signs your testing is not enough10 signs your testing is not enough
10 signs your testing is not enough
 
A Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software TestingA Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software Testing
 
A Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software TestingA Rapid Introduction to Rapid Software Testing
A Rapid Introduction to Rapid Software Testing
 
Rapid Software Testing: Reporting
Rapid Software Testing: ReportingRapid Software Testing: Reporting
Rapid Software Testing: Reporting
 
Rapid Software Testing: Strategy
Rapid Software Testing: StrategyRapid Software Testing: Strategy
Rapid Software Testing: Strategy
 
Erkki Poyhonen - Software Testing - A Users Guide
Erkki Poyhonen - Software Testing - A Users GuideErkki Poyhonen - Software Testing - A Users Guide
Erkki Poyhonen - Software Testing - A Users Guide
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
 
Testaus 2014 -seminaari: Paul Gerrard. The Changing Role of Testers’.
Testaus 2014 -seminaari: Paul Gerrard. The Changing Role of Testers’.Testaus 2014 -seminaari: Paul Gerrard. The Changing Role of Testers’.
Testaus 2014 -seminaari: Paul Gerrard. The Changing Role of Testers’.
 
Flavours of agile software engineering
Flavours of agile software engineeringFlavours of agile software engineering
Flavours of agile software engineering
 
Exploratory testing in an agile development organization (it quality & test ...
Exploratory testing in an agile development organization  (it quality & test ...Exploratory testing in an agile development organization  (it quality & test ...
Exploratory testing in an agile development organization (it quality & test ...
 

Ähnlich wie The Pursuit of Quality - Chasing Tornadoes or Just Hot Air?

Things Could Get Worse: Ideas About Regression Testing
Things Could Get Worse: Ideas About Regression TestingThings Could Get Worse: Ideas About Regression Testing
Things Could Get Worse: Ideas About Regression TestingTechWell
 
Tester Challenges in Agile ?
Tester Challenges in Agile ?Tester Challenges in Agile ?
Tester Challenges in Agile ?alind tiwari
 
MHA2018 - Quality Advocacy: The next progression for Agile Testers - Don Peters
MHA2018 - Quality Advocacy: The next progression for Agile Testers - Don PetersMHA2018 - Quality Advocacy: The next progression for Agile Testers - Don Peters
MHA2018 - Quality Advocacy: The next progression for Agile Testers - Don PetersAgileDenver
 
Test case design techniques
Test case design techniquesTest case design techniques
Test case design techniquesAshutosh Garg
 
Test case design techniques
Test case design techniquesTest case design techniques
Test case design techniques2PiRTechnologies
 
Govind kulkarni
Govind kulkarniGovind kulkarni
Govind kulkarniNASSCOM
 
Agile Base Camp - Agile metrics
Agile Base Camp - Agile metricsAgile Base Camp - Agile metrics
Agile Base Camp - Agile metricsSerge Kovaleff
 
Web Application Remediation - OWASP San Antonio March 2007
Web Application Remediation - OWASP San Antonio March 2007Web Application Remediation - OWASP San Antonio March 2007
Web Application Remediation - OWASP San Antonio March 2007Denim Group
 
Mal12 qa tand-automatedtesting
Mal12 qa tand-automatedtestingMal12 qa tand-automatedtesting
Mal12 qa tand-automatedtestingandytinkham
 
Software Quality Metrics Do's and Don'ts - QAI-Quest 1 Hour Presentation
Software Quality Metrics Do's and Don'ts - QAI-Quest 1 Hour PresentationSoftware Quality Metrics Do's and Don'ts - QAI-Quest 1 Hour Presentation
Software Quality Metrics Do's and Don'ts - QAI-Quest 1 Hour PresentationXBOSoft
 
Why Automated Testing Matters To DevOps
Why Automated Testing Matters To DevOpsWhy Automated Testing Matters To DevOps
Why Automated Testing Matters To DevOpsdpaulmerrill
 
A New Model For Testing
A New Model For TestingA New Model For Testing
A New Model For TestingTEST Huddle
 
AI Models For Fun and Profit by Walmart Director of Artificial Intelligence
AI Models For Fun and Profit by Walmart Director of Artificial IntelligenceAI Models For Fun and Profit by Walmart Director of Artificial Intelligence
AI Models For Fun and Profit by Walmart Director of Artificial IntelligenceProduct School
 
A Software Testing Intro
A Software Testing IntroA Software Testing Intro
A Software Testing IntroEvozon Test Lab
 
Intro Of Agile
Intro Of AgileIntro Of Agile
Intro Of AgileSam Hwang
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterDeclan Whelan
 
An Overview of automated testing (1)
An Overview of automated testing (1)An Overview of automated testing (1)
An Overview of automated testing (1)Rodrigo Lopes
 
Fantastic Tests - The Crimes of Bad Test Design
Fantastic Tests - The Crimes of Bad Test DesignFantastic Tests - The Crimes of Bad Test Design
Fantastic Tests - The Crimes of Bad Test DesignWinston Laoh
 

Ähnlich wie The Pursuit of Quality - Chasing Tornadoes or Just Hot Air? (20)

Things Could Get Worse: Ideas About Regression Testing
Things Could Get Worse: Ideas About Regression TestingThings Could Get Worse: Ideas About Regression Testing
Things Could Get Worse: Ideas About Regression Testing
 
Tester Challenges in Agile ?
Tester Challenges in Agile ?Tester Challenges in Agile ?
Tester Challenges in Agile ?
 
Agile process
Agile processAgile process
Agile process
 
MHA2018 - Quality Advocacy: The next progression for Agile Testers - Don Peters
MHA2018 - Quality Advocacy: The next progression for Agile Testers - Don PetersMHA2018 - Quality Advocacy: The next progression for Agile Testers - Don Peters
MHA2018 - Quality Advocacy: The next progression for Agile Testers - Don Peters
 
Test case design techniques
Test case design techniquesTest case design techniques
Test case design techniques
 
Test case design techniques
Test case design techniquesTest case design techniques
Test case design techniques
 
Govind kulkarni
Govind kulkarniGovind kulkarni
Govind kulkarni
 
Agile Base Camp - Agile metrics
Agile Base Camp - Agile metricsAgile Base Camp - Agile metrics
Agile Base Camp - Agile metrics
 
Web Application Remediation - OWASP San Antonio March 2007
Web Application Remediation - OWASP San Antonio March 2007Web Application Remediation - OWASP San Antonio March 2007
Web Application Remediation - OWASP San Antonio March 2007
 
Mal12 qa tand-automatedtesting
Mal12 qa tand-automatedtestingMal12 qa tand-automatedtesting
Mal12 qa tand-automatedtesting
 
Software Quality Metrics Do's and Don'ts - QAI-Quest 1 Hour Presentation
Software Quality Metrics Do's and Don'ts - QAI-Quest 1 Hour PresentationSoftware Quality Metrics Do's and Don'ts - QAI-Quest 1 Hour Presentation
Software Quality Metrics Do's and Don'ts - QAI-Quest 1 Hour Presentation
 
Why Automated Testing Matters To DevOps
Why Automated Testing Matters To DevOpsWhy Automated Testing Matters To DevOps
Why Automated Testing Matters To DevOps
 
A New Model For Testing
A New Model For TestingA New Model For Testing
A New Model For Testing
 
AI Models For Fun and Profit by Walmart Director of Artificial Intelligence
AI Models For Fun and Profit by Walmart Director of Artificial IntelligenceAI Models For Fun and Profit by Walmart Director of Artificial Intelligence
AI Models For Fun and Profit by Walmart Director of Artificial Intelligence
 
A Software Testing Intro
A Software Testing IntroA Software Testing Intro
A Software Testing Intro
 
Model validation
Model validationModel validation
Model validation
 
Intro Of Agile
Intro Of AgileIntro Of Agile
Intro Of Agile
 
Agile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile TesterAgile Testing: The Role Of The Agile Tester
Agile Testing: The Role Of The Agile Tester
 
An Overview of automated testing (1)
An Overview of automated testing (1)An Overview of automated testing (1)
An Overview of automated testing (1)
 
Fantastic Tests - The Crimes of Bad Test Design
Fantastic Tests - The Crimes of Bad Test DesignFantastic Tests - The Crimes of Bad Test Design
Fantastic Tests - The Crimes of Bad Test Design
 

Kürzlich hochgeladen

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 

Kürzlich hochgeladen (20)

Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 

The Pursuit of Quality - Chasing Tornadoes or Just Hot Air?

  • 1. The Pursuit of Quality: Chasing Tornadoes or Just Hot Air? Gerrard Consulting Limited PO Box 347 Maidenhead Berkshire SL6 2GU Tel: +44 (0) 1628 639173 Fax: +44 (0) 1628 630398 Web: gerrardconsulting.com Intelligent Testing, Improvement and Assurance Slide 1
  • 2. Agenda • What is Quality? • Models for quality and testing • Examples of models • Models and stakeholders • Failures of systems, failures of models • Close Intelligent Testing, Improvement and Assurance Slide 3
  • 3. Weather • Rain is great for farmers and their crops, but terrible for tourists • Wind is essential for sailors and windmills but bad for the rest of us • Quality, like weather, can be good or bad and that depends on who you are. Intelligent Testing, Improvement and Assurance Slide 4
  • 4. That’s Fantastic! That’s Terrible!
  • 5. Quality is a relationship • Quality is not an attribute of a system • It is a relationship between systems and stakeholders who take different views • The model of Quality that prevails has more to do with stakeholders than the system itself Intelligent Testing, Improvement and Assurance Slide 6
  • 6. The concepts of quality, risk, comfort, intuitiveness … • Concepts that most people understand, but few can explain • But it‟s a lot worse than that • Quality is an all- encompassing, collective term for these and many other difficult concepts • A term that means all things to all people • (I try and avoid the Q-word). Intelligent Testing, Improvement and Assurance Slide 7
  • 7. Models for Quality and Testing Intelligent Testing, Improvement and Assurance Slide 8
  • 8. Models Models are everywhere Intelligent Testing, Improvement and Slide 9 Assurance
  • 9. Models and reality • In our minds we build mental models of everything we experience (and also, many things we don‟t experience) • When we pick up a glass of water, we build models – The 3-dimentional location and relationship between the glass, the water, the table it sits on and our body – As we reach for the glass, our brain processes the signals from our eyes, our muscles and the feelings in our fingertips – It continuously compares experience with the model and adjusts/rebuilds the model many times • … just to lift a cup of water – incredible! Intelligent Testing, Improvement and Assurance Slide 10
  • 10. Some familiar models • The project plan is a model – The resources, activities, effort, costs, risks and future decision making • System requirements are a model – The “what and how” of the system – What: the features and functionality – How: how the system works (fast, secure, reliable) • User personas (16 year old gamer, 30 year old security hacker, 50 year old Man United fan). Intelligent Testing, Improvement and Assurance Slide 11
  • 11. Where quality comes from • Quality is the outcome of a comparison – Our mental model of perfection – Our experience of reality • Mental models are internal, personal and unique to us • We could share them using some kind of Vulcan mind meld • But usually, we can write them down or we can talk about them • However we communicate, there is noise and information gets corrupted/lost in translation. Intelligent Testing, Improvement and Assurance Slide 12
  • 12. A quality model? • The requirements and design describe the behaviour of a system • Functional – Mapping test cases to requirements is all we need • Non-Functional – All technical attributes are defined and measured • Quality and therefore testing assumes a model – Often undocumented, the model may not be shared, understood, complete, consistent, correct… Intelligent Testing, Improvement and Assurance Slide 13
  • 13. Test design is based on models • Models describe the environment, system, usage, users, goals, risks • They simplify the context of the test - irrelevant or negligible details are ignored in the model • Focus attention on a particular aspect of the behaviour of the system • Generate a set of unique and diverse tests (within the context of the model) • Enable the testing to be estimated, planned, monitored and evaluated for its completeness (coverage). • Models help us to select tests in a systematic way. Intelligent Testing, Improvement and Assurance Slide 14
  • 14. Examples of test models • A checklist or sets of criteria – Goals, risks, process paths, interfaces, message type… • Diagrams from requirements or design documents • Analyses of narrative text or tables • Some models are documented, many models are never committed to paper – Can be mental models constructed specifically to guide the tester whilst they explore the system under test and guide their next action. Intelligent Testing, Improvement and Assurance Slide 15
  • 15. Sources of models • Test Basis – We analyse the text or diagrams or information that describe required behaviour (or use past experience and knowledge) • System architecture: – We identify testable items in its user-interface, structure or internal design • Modes of failure (product risks): – We identify potential ways in which the system might fail that are of concern to stakeholders • Usage patterns: – We focus on the way the system will be used, operated and interacted with in a business context using personas • Everything looks fine – doesn‟t it? Intelligent Testing, Improvement and Assurance Slide 16
  • 16. But all models (over-)simplify • But requirements are never perfect, not all attributes can be meaningfully measured • Models incorporate implicit assumptions and are approximate representations • All test models are heuristic, useful in some situations, always incomplete and fallible • Before we adopt a model, we need to know: – What aspects of the behaviour, design, modes of failure or usage the model helps us to identify – What assumptions and simplifications it includes (explicitly or implicitly). Intelligent Testing, Improvement and Assurance Slide 17
  • 17. Formality • Formal test models – Derived from analyses of requirements or code – Quantitative coverage measure can be obtained from a formal test mode (mostly) • Informal test models – E.g. some models are just lists of modes of failure, risks or vulnerabilities. – Informal models cannot be used to define quantitative coverage measures • Ad-hoc models – Some models can be ad-hoc, invented by the tester just before or even during testing – Can be formal or informal. Intelligent Testing, Improvement and Assurance Slide 18
  • 18. Examples of Models Intelligent Testing, Improvement and Assurance Slide 19
  • 19. Basic test design techniques are based on the simplest models • Equivalence partitions and boundary values: – Presume single input, single output responses – All values in partitions are equivalent, but the boundaries are the most important • These techniques are useful, but they date from the „green-screen‟ era. Intelligent Testing, Improvement and Assurance Slide 20
  • 20. “Green Screen” equivalence model • Single input, single output Single Input • All input is classified and partitioned with rules If m<1 then • One test per rule is “Error” Else if m>12 then enough! “Error” • But we don‟t consider: Else “OK” – The state of the system – Combinations of values. Single Output Intelligent Testing, Improvement and Assurance Slide 21
  • 21. State Transition Testing Customer arrives Customer pays None Increment room count Room Overnight Booked Checkout Room available Stay Decrement room count Start Room Customer cancels Requested Room available Increment room State Decrement room count Room request None count No room available Add to waiting list On Booking Waiting Customer cancels Cancelled List Remove from waiting list Intelligent Testing, Improvement and Assurance Slide 22
  • 22. But the number of states is infinite! • State-Transition considers: – The states of the system and – The valid/invalid transitions between states • Some systems have many, many states – A real-time system e.g. telecoms switch may have 25,000 distinct states – State may depend on many variables that can have infinite values in combination • How confident can we be in this model? Intelligent Testing, Improvement and Assurance Slide 23
  • 23. End-to-end/transaction-flow tests • End–to-end tests can follow a path through a process or a user journey • The mechanics of the experience are simulated but… Intelligent Testing, Improvement and Assurance Slide 24
  • 24. Bad experience leads to attrition • Typical form-filling on government sites intended to allow citizens to „apply online‟ Page 1 Page 2 Page 3 Page 4 Page 5 Page 6 Page 7 45% 72% 48% 21% 85% 80% Conversion by page 45% 32% 16% 3% 3% 2% Cumulative • Every page „works‟ but the user-experience is so poor that only 2% finish the journey • Modelling the journey is good, but not enough… • We need to model the experience too. Slide 25
  • 25. Models and Stakeholders Intelligent Testing, Improvement and Assurance Slide 26
  • 26. Stakeholders and test models • Stakeholders may not tell testers to use specific test models; you need to explain them to stakeholders so they understand • The challenge(s): – Stakeholders may be of the opinion that the models you propose generate too few tests to be meaningful or too many to be economic – We need to engage stakeholders. Intelligent Testing, Improvement and Assurance Slide 27
  • 27. „Measuring quality‟ feels good but… • Measurable quality attributes make techies feel good, but they don‟t help stakeholders if they can‟t be related to experience • If statistics don‟t inform the stakeholders‟ vision or model of quality – We think we do a good job – They think we waste their time and money. Intelligent Testing, Improvement and Assurance Slide 28
  • 28. Relevance • Documented or not, testers need and use models to identify what is important and what to test • A control flow graph has meaning (and value) to a programmer but not to an end-user • An equivalence partition may have meaning to users but not the CEO of the company • Control flow, equivalence partitions are models that have value in some, but never all, contexts. Intelligent Testing, Improvement and Assurance Slide 29
  • 29. Helping stakeholders to make better decisions is the tester‟s goal • We need models that – Do more than identify tests – Take account of the stakeholders‟ perspective and have meaning in the context of their decision- making • If we „measure quality‟ using technical models – We delude both our stakeholders and ourselves into thinking we are in control of Quality – We‟re not. Intelligent Testing, Improvement and Assurance Slide 30
  • 30. Failures of Systems, Failures of Models Intelligent Testing, Improvement and Assurance Slide 31
  • 31. F-16 bug (found in flight) • One of the early problems was that you could flip the plane over and the computer would gladly let you drop a bomb or fuel tank. It would drop, dent the wing, and then roll off. • http://catless.ncl.ac.uk/Risks/3.44.html#subj1.1 Poor test model Intelligent Testing, Improvement and Assurance Slide 32
  • 32. Poor test model Slide 33
  • 33. Poor test model Intelligent Testing, Improvement and Assurance Slide 34
  • 34. Scope of testing for E-Commerce 4. Full E-Business System 3. Order Processing Sub-System Process 2. Web Sub-System People Web Server Environment Banking System 1. Application (Credit Card (objects) Processor) Sub-System Database Server Legacy System(s) Training
  • 35. Test strategy • Our test strategy must align with our model of quality and our risk-assessment Every focus area requires test Test Phase Focus model(s) Requirements, design etc. Relevance, correctness, completeness, ambiguity etc. Component Input validation, correct behaviour, output validation, statement and branch coverage Integration Correct, authorised transfer of control, exchange of data, consistency of use and reconciliations System (-system) End-to-end accuracy, consistency, security, performance and reliability Acceptance Alignment to business goals, end-to-end ease of use and experience, successful outcomes, user personas Intelligent Testing, Improvement and Assurance Slide 36
  • 36. Failure of testing is usually a failure in a test model • If the right models are selected, and commitment is made to cover them – The testing usually gets done • But often, no model is explicitly selected at all • Where a model fails, it is usually wrong because: – The model does not represent reality – The scope of the model is too narrow – The model ignores critical aspects (context, people, process, environment or training/capability). Intelligent Testing, Improvement and Assurance Slide 37
  • 37. Close • We need to understand what quality is before we can pursue and achieve it • Testing often fails because test models are not used or understood • Testers need models to test but the „standard‟ quality models are too simple • We need to take stakeholder views into account to create relevant testing models • Using models sounds techy, but it‟s completely natural – it‟s part of what makes us human. Intelligent Testing, Improvement and Assurance Slide 38
  • 38. Assurance is NOT Quality Assurance It’s not about proof or guarantees, either Intelligent Testing, Improvement and Slide 39 Assurance
  • 39. @paul_gerrard The Pursuit of Quality: Chasing Tornadoes or Just Hot Air? gerrardconsulting.com maelscrum.com businessstorymanager.com test-axioms.com uktmf.com Intelligent Testing, Improvement and Assurance Slide 40