HBT Masterclass

HBT3

Objective

The objective of this masterclass is to enable the participants  to apply a scientific approach to validating software.

Target audience

Test manager, Project manager, Test lead, Test engineer, Development staff



Content

Think better. Test Smarter. The act of producing clean software is challenging. In other disciplines of engineering, the final artifacts are physical in nature and therefore assessment of quality (or cleanliness)  is accomplishment of the physical behavior. Software however poses an interesting challenge as expectations in the mind are translated into non-physical entities (code) whose behavior needs  to be assessed for its correctness. Incorrectness I.e lack of quality is not limited to flaws in algorithm due to coding, but occur due to inappropriate design, incorrect understanding of intentions, complex interactions due to the deployment environment and finally due to the interesting usage by the end users.

Hypothesis Based Testing (HBT) is based on sound engineering principles geared to deliver the promise of guarantee of cleanliness. Its core value proposition is hypothesizing potential defects that may be present in the software and then allow you to engineer a staged detection model to uncover the defects faster and cheaper that the other typical test methodologies.

Details

Hypothesis-based testing (HBT) is a personal test methodology that is unique in its approach to ensuring cleanliness of software. HBT is goal-centered wherein the goal of software cleanliness is setup (i.e. collection of cleanliness criteria),  potential defect types that could impede cleanliness criteria identified,  and then activities done to ensure purposeful testing, that is indeed effective and efficient. The central theme is of constructing a hypothesis of potential defects that may be probable, and then scientifically proving that they do not indeed exist. The activities relate to formulating a scientific test strategy, designing test scenarios and cases that can be proven to be adequate and then automating them as appropriate.

HBT fits any development methodology and weaves into your organizational  test process. Its objective is to equip an individual with smart thinking tools (techniques, principles and guidelines) that enables a scientific inquiry process to understand needs & expectations, identify cleanliness criteria, hypothesize potential defect types, formulate test strategy, design test cases, identify metrics and build appropriate automation.

Program Content

An overview of HBT

  • Scientific approach to testing
  • How is it difference from a traditional approach

Key concepts in HBT

  • The notion of guarantee
  • Cleanliness criteria
  • Potential Defect Types
  • Quality Levels
  • Test types
  • Principle of orthogonality
  • Needs & expectations
  • Baseline
know more
Setting up a clear baseline of System Under Test(SUT)

  • The FOUR types of entities that make up a SUT
  • Landscaping, a technique for intelligent questioning
  • Mindmaps and their role in understanding
  • The various views : User/System, New/Modified/Unmodified, Prioritization
  • Baseline map
  • Understanding linkages : Interaction matrix

Understanding Potential Defect Types

  • How to hypothesise
  • Aspects, Views and their role in defect hypothesis

Creating purposeful strategy

  • What is a strategy?
  • The Triad – Levels, Types & Techniques
  • Regression strategy via Fault Propagation Analysis
  • Improving efficiency – Understand yield and immunity

Test design

  • Behaviour driven design  :The governing principle of design
  • Level/Type based design
  • Test scenarios vs cases
  • How to design test cases for a structural component
  • How to design test cases for a feature, requirement, business flow
  • Operational profiling for LSPS test design
  • How to judge test adequacy :Test breadth, depth and porosity
  • How to assess test scenarios/cases
  • How to document for test scenarios/cases in a minimalist manner
  • HBT test case architecture

Automation

  • What do you automate ? Scenarios or cases?
  • Level-isation and their role in automation
  • The automation script pattern and how HBT aids this

Visualisation and how they help effective management

  • Visualising test coverage
  • Visualising test execution progress
  • Visualising SUT quality