As a test professional in waterfall, I was used to getting the code much later and buggier than I expected and being under tremendous pressure to finish my testing before the go-live date hit. Then one day, I found out that there was a better way. Testers could be involved much earlier in the lifecycle, they could participate in requirements and design decisions as they happened, and the code could actually be unit tested before I received it! Heaven? Nope, agile.
Fault analysis reveals that interaction between the variables of dependent parameters is a common source of failure in complex systems. Imagine you are assigned to test a feature with twenty independent parameters and five possible states for each parameter. The total number of possible combinations is greater than five-hundred billion. At one test executed per millisecond, it would take more than 3,000 years to test all possible combinations. So, which combinations do we test? Pairwise testing is a systematic procedure to reduce the total number of tests by selecting a set of tests that evaluates every pair, rather than every combination. BJ Rollison compares the orthogonal arrays method to pairwise analysis and provides a detailed example of how to use PICT, a powerful, highly configurable combinatorial analysis tool that is freely available.
You've heard of orthogonal arrays and pairwise testing. Perhaps you've used a pairwise test case generator tool. Have you ever wondered where these popular and powerful techniques originated? Actually they have been around for almost twenty years. During this time, important test design principles have emerged and choices for test generation tools have improved. George Sherwood, inventor of CATS, one of the first pairwise test tools, reviews what we have learned and how it applies to testing today. He shows the benefits of using pairwise test techniques for selecting configurations and for generating test data. George also outlines important considerations for successful pairwise test designs, including the problems to anticipate and avoid. George dispels the mystery of pairwise test generators with a simplified view of how they work.
In the Earned Value Management (EVM) approach, as work is performed, it is "earned" on the same basis it was planned-both the original plan and agreed to changes. Today, more and more software projects are using this approach. Function Point Analysis has been shown to be a reliable method for measuring the size of computer software based on detailed requirements and specifications. Function points can be leveraged throughout the EVM process to establish cost and schedule baselines, control project scope over the lifecycle, and quantitatively assess percent complete. Ian Brown delves into the concepts of EVM as applied to software development and the key conditions necessary to profitably employ this management technology. Learn how companies are using function point analysis to improve the technology.
Earned Value Management applied to software development projects
Exploratory testing involves simultaneous activities-learning about the program and the risks associated with it, planning and conducting tests, troubleshooting, and reporting results. This highly skilled work depends on the ability of the tester to stay focused and alert. Based on a successful pilot study, Cem Kaner and James Bach discuss why two testers can be more effective working together than apart. Explore the advantages of testing in pairs, including ongoing dialogue to keep both testers alert and focused, faster and more effective troubleshooting, and an excellent opportunity for a seasoned tester to train a novice.
James Bach, Satisfice, Inc. and Cem Kaner, Florida Institute of Technology