Course Duration: 2 Days

Course Category: Software Testing

 

14 Contact Hours

Software Testing (Techniques for Improving Software Quality)

 

Course Abstract

This two-day course is essential for those who want to understand the role of software testing as a technique for improving software quality. 

 

The course starts with a discussion of key quality concepts and how they relate to software quality. During this discussion, the inherent limitations of software testing are identified and a number of alternative quality improvement techniques are described. 

 

The course then moves on to introduce the 'software testing canvas' and describe how it can be used as a tool for understanding standard test levels and as a framework for developing a custom software testing strategy. The importance of adopting a risk-based approach to testing is emphasised. 

 

Participants then learn how to design design functional (black-box) and structural (white-box) test cases, applying a variety of techniques with an emphasis on 'negative testing'. 

 

The theory presented during the course is enhanced by lively class discussions and practical exercises that provide an opportunity for participants to apply what they have learnt.

Course Features
  • Describes the role of software testing as a quality improvement technique by presenting six fundamental reasons for testing software that are based on a widely recognised definition of quality
  • Incorporates the ISTQB's 'principles of software testing' with a practical explanation of what each principles means and how to apply it to real projects
  • Provides an introduction to risk based testing that emphasises the importance of incorporating a risk based approach in testing strategies
  • Incorporates two unique learning learning frameworks: the 'quality triangle' which is used to explain the underlying reasons for poor software quality and how poor quality can be rectified; and the 'software testing canvas' which is used to explain the different 'levels' of testing and for developing customised testing strategies
  • Suitable for both experienced testers wanting to improve their testing skills as well as those moving into a software testing role for the first time
Participant Benefits
  • Awareness of the limitations of software testing and understanding of when alternative quality improvement techniques should be used
  • Ability to develop a custom software strategy using the 'software testing canvas' and design functional (black-box) and structural (white-box) test cases applying a variety of techniques
  • Understanding of the need to incorporate exploratory testing into a test strategy to compliment scripted and automated testing
  • Practical strategies for reporting test progress and increased confidence interacting with management
Who should Attend
  • Those who want to improve their software testing skills such as Test Engineers, Tester Analysts, Quality Assurance Staff, Agile Teams, Software Engineers, Software Developers, Business Analysts, Business Systems Analysts, Systems Analysts, Functional Analysts
  • Those who need to plan and manage the software testing effort such as Test Managers, Quality Assurance Staff, Project Managers, Program Managers Product Owners, Product Managers, Scrum Masters
  • Those who want to gain an understanding of software testing as a quality improvement technique such as Test Managers, Project Managers, Program Managers Software Engineers, User Representatives, Product Owners, Product Managers, Scrum Masters, Requirements Engineers, Requirements Analysts, Human Factors Specialists, Software Developers, Process Engineers, Software Engineers, Process Group (SEPG) Staff, Methodologists, Process Improvement Staff
Course Agenda

Software Quality

  • Five Popular Assumptions About Software Quality
  • Software Quality is a Measure of 'Excellence'
  • Software Quality is Difficult to Measure
  • Software Quality is Expensive
  • Quality Can Be Tested Into Software
  • Software Quality Depends on Developer Skills

Introduction to Software Testing

  • What Software Testing Is Not!
  • The Principles of Software Testing
  • Testing Shows Presence of Defects
  • Comparing Test to Pass and Test to Fail (Negative Testing)
  • Absence of Errors Fallacy
  • The Objectives of Software Testing

Software Testing Limitations

  • Early Testing is Desirable
  • The Limitations of Software Testing
  • Late Discovery of Errors Triggers Rework
  • Quality Improvement Throughout the Development Life Cycle
  • Agile Software Development

Software Testing Strategies

  • Testing is Context Dependent
  • Defining Test Levels
  • Do Test Levels Provide a Good Contextual a Test Strategy?
  • A Better Approach to Testing Context
  • Test Target
  • Test Basis
  • Executing Tests
  • Test Agents
  • Some Typical Strategies for Software Testing
  • Developing a Custom Strategy
  • Exploratory Testing
  • Strategies for Measuring Non-Functional Attributes of Software

Software Testing and Risk

  • Exhaustive Testing is Impossible
  • There Will Always Be a Risk That Software Contains Errors
  • Software Testing Should
  • What is Risk?
  • Defects Tend to Cluster
  • The risk paradox

Designing Test Cases

  • Definition of a Test Case
  • Test Cases
  • Test Data
  • Test Procedures
  • Test Procedures
  • Test Case Coverage
  • Test Case Design Technique

Functional Test Case Design

  • Equivalence Partitioning
  • Boundary Value Analysis
  • State Transition Testing

Structural Test Case Design

  • Statement Testing
  • Branch/Decision Testing
  • Branch/Condition Testing

Exploratory Testing

  •  
  • Pesticide paradox – bugs become immune
  • What is Exploratory Testing?
  • Types of Exploratory Testing
  • Exploratory Testing Skills
  • Exploratory Testing Cheat Sheets
  • Exploratory Testing and Test Automation
  • Software Tools For Exploratory Testing

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <font color="" face="" size=""> <span style="">

PMI, PMP, PMBOK, CAPM, PMI-ACP and the Registered Education Provider logo are registered marks of the Project Management Institute, Inc.
CMMI®, Capability Maturity Model®, Capability Maturity Modeling®, CMM®, PCMM® and Carnegie Mellon® are registered in the US Patent and Trademark Office by Carnegie Mellon University.
ISTQB® is a Registered Trade Mark of the International Software Testing Qualifications Board.
IIBA®, BABOK® and Business Analysis Body of Knowledge® are registered trademarks owned by International Institute of Business Analysis. CBAP® and CCBA® are registered certification marks owned by International Institute of Business Analysis. Certified Business Analysis Professional, Certification of Competency in Business Analysis, Endorsed Education Provider, EEP and the EEP logo are trademarks owned by International Institute of Business Analysis.
The APMG-International Agile Project Management, AgilePM and Swirl Device logos are trademarks of The APM Group Limited.
PRINCE2®, ITIL®, IT Infrastructure Library®, and MSP® are registered trademarks of AXELOS Limited. The Swirl logo™ is a trade mark of AXELOS Limited.
The ITIL Licensed Affiliate logo is a trademark of AXELOS Limited.
SCRUM Alliance REP SM is a service mark of Scrum Alliance, Inc.