Training: Non-Functional Techniques

Usability Testing - 1 hour
Usability is a quality attribute that assesses how easy user interfaces are to use. Usability testing can also be used during design to improve the ease-of-use before the system is built. Learn how to design and run tests for the 5 quality components of usability; learnability, efficiency, understandability, satisfaction and error recovery. Designing tests for usability early in the lifecycle is often difficult since most organisations concentrate on functionality. During this session we shall generate usability tests with different personas, address accessibility and operability issues and find ways to convince stakeholders of the importance of fixing usability defects.

RETURN TO CREATE A COURSE

Performance Testing - 1 hour

The general concept of performance testing is to see how quick the system responds under a particular workload. However there are many different aspects associated with performance testing that need to be understood and clarified. Learn the differences between Load Testing and Stress Testing, and discover how Endurance Testing and Configuration Testing can find certain types of performance bugs. During this session we shall see the importance of understanding the underlying architecture and network infrastructure when producing performance timings otherwise a false confidence can be given to stakeholders. Learn how performance tools can help but also hinder the progress of performance testing.

RETURN TO CREATE A COURSE

Security Testing - 1 hour

Security testing plays a vital role when data, information and systems are vulnerable to attack, whether accidentally or malliciously. It is the process to determine that a system protects data and maintains functionality as intended. Learn the six basic security concepts that need to be covered by security testing: confidentiality, integrity, authentication, availability, authorisation and non-repudiation. During this session we shall look at the differences between functional security and technical security and how both aspects need to be tested. Learn some key security attacks; attacking software dependencies, attacking the user interface using covert channels, attacking the design and implementation of the system.

RETURN TO CREATE A COURSE

Reliability Testing - 30 minutes

Reliability testing is not concerned with finding bugs, but is concerned with measuring the time taken to find a failure. The key aspect for effective reliability testing is to define what a failure will be. Although this may seem obvious, there are many situations where it is not clear whether a failure is the fault of the system. Learn how to define failures for reliability testing and how to measure and report how reliable your system is. Understand the differences between MTBF and MTTR and how to measure and report them in clear understandable ways.

RETURN TO CREATE A COURSE

Portability Testing - 30 minutes
Portability testing is testing the ease at which computer software can be moved from one environment to another for example moving from Windows 7 to Windows 8. Learn how to measure and effectively report the results of the protability tests in the time taken to move the software, convert the data and update the documentation. During this session I shall provide key examples for portability testing using the following suitable techniques; installability, coexistance, adaptability and replacability. The cost of a system failing when it is moved from one environment to another could be significant and therefore portability testing can become a cost saving activity.

RETURN TO CREATE A COURSE