Effective Methods for Software Testing: Includes Complete Guidelines, Checklists, and Templates / Edition 3

Effective Methods for Software Testing: Includes Complete Guidelines, Checklists, and Templates / Edition 3

by William E. Perry
5.0 2
Pub. Date:

Hardcover - Rent for

Select a Purchase Option (Revised Edition)
  • purchase options

Temporarily Out of Stock Online


Effective Methods for Software Testing: Includes Complete Guidelines, Checklists, and Templates / Edition 3

  • Written by the founder and executive director of the Quality Assurance Institute, which sponsors the most widely accepted certification program for software testing
  • Software testing is a weak spot for most developers, and many have no system in place to find and correct defects quickly and efficiently
  • This comprehensive resource provides step-by-step guidelines, checklists, and templates for each testing activity, as well as a self-assessment that helps readers identify the sections of the book that respond to their individual needs
  • Covers the latest regulatory developments affecting software testing, including Sarbanes-Oxley Section 404, and provides guidelines for agile testing and testing for security, internal controls, and data warehouses
  • CD-ROM with all checklists and templates saves testers countless hours of developing their own test documentation

Note: CD-ROM/DVD and other supplementary materials are not included as part of eBook file.

Product Details

ISBN-13: 9780764598371
Publisher: Wiley
Publication date: 05/28/2006
Edition description: Revised Edition
Pages: 1008
Product dimensions: 7.60(w) x 9.52(h) x 2.36(d)

Table of Contents


Part I:  Assessing Testing Capabilities and Competencies.

Chapter 1: Assessing Capabilities, Staff Competency, and User Satisfaction.

The Three-Step Process to Becoming a World-Class Testing Organization.

Step 1: Define a World-Class Software Testing Model.

Step 2: Develop Baselines for Your Organization.

Assessment 1: Assessing the Test Environment.

Assessment 2: Assessing the Capabilities of Your Existing.Test Processes.

Assessment 3: Assessing the Competency of Your Testers.

Step 3: Develop an Improvement Plan.


Part II:  Building a Software Testing Environment.

Chapter 2: Creating an Environment Supportive of Software Testing.

Chapter 3: Building the Software Testing Process.

Software Testing Guidelines.

Guideline #1: Testing Should Reduce Software Development.

Guideline #2: Testing Should Be Performed Effectively.

Guideline #3: Testing Should Uncover Defects.

Guideline #4: Testing Should Be Performed Using Business Logic.

Guideline #5: Testing Should Occur Throughout the Development Life Cycle.

Guideline #6: Testing Should Test Both Function and Structure.

Chapter 4: Selecting and Installing Software Testing Tools.

Chapter 5: Building Software Tester Competency.

Part III: The Seven-Step Testing Process.

Chapter 6: Overview of the Software Testing Process.

Chapter 7: Step 1: Organizing for Testing.

Task 1: Appoint the Test Manager.

Task 2: Define the Scope of Testing.

Task 3: Appoint the Test Team.

Task 4: Verify the Development Documentation.

Task 5: Validate the Test Estimate and Project Status.

Chapter 8: Step 2: Developing the Test Plan.

Task 1: Profile the Software Project.

Task 2: Understand the Project Risks.

Task 3: Select a Testing Technique.

Task 4: Plan Unit Testing and Analysis.

Task 5: Build the Test Plan.

Task 6: Inspect the Test Plan.

Chapter 9: Step 3: Verification Testing.

Task 1: Test During the Requirements Phase.

Task 2: Test During the Design Phase.

Task 3: Test During the Programming Phase.

Chapter 10: Step 4: Validation Testing.

Task 1: Build the Test Data.

Task 2: Execute Tests.

Task 3: Record Test Results.

Chapter 11: Step 5: Analyzing and Reporting Test Results.

Task 1: Report Software Status.

Task 2: Report Interim Test Results.

Task 3: Report Final Test Results.

Chapter 12: Step 6: Acceptance and Operational Testing.

Task 1: Acceptance Testing.

Task 2: Pre-Operational Testing.

Task 3: Post-Operational Testing.

Chapter 13: Step 7: Post-Implementation Analysis.

Task 1: Establish Assessment Objectives.

Task 2: Identify What to Measure.

Task 3: Assign Measurement Responsibility.

Task 4: Select Evaluation Approach.

Task 5: Identify Needed Facts.

Task 6: Collect Evaluation Data.

Task 7: Assess the Effectiveness of Testing.

Part IV: Incorporating Specialized Testing Responsibilities.

Chapter 14: Software Development Methodologies.

Chapter 15: Testing Client/Server Systems.

Task 1: Assess Readiness.

Task 2: Assess Key Components.

Task 3: Assess Client Needs.

Chapter 16: Rapid Application Development Testing.

Task 1: Determine Appropriateness of RAD.

Task 2: Test Planning Iterations.

Task 3: Test Subsequent Planning Iterations.

Task 4: Test the Final Planning Iteration.

Chapter 17: Testing Internal Controls.

Task 1: Understand the System Being Tested.

Task 2: Identify Risks.

Task 3: Review Application Controls.

Task 4: Test Application Controls.

Task 5: Document Control Strengths and Weaknesses.

Chapter 18: Testing COTS and Contracted Software.

Task 1: Test Business Fit.

Step 1: Testing Needs Specification.

Step 2: Testing CSFs.

Task 2: Test Operational Fit.

Step 1: Test Compatibility.

Step 2: Integrate the Software into Existing Work Flows.

Step 3: Demonstrate the Software in Action.

Task 3: Test People Fit.

Task 4: Acceptance-Test the Software Process.

Step 1: Create Functional Test Conditions.

Step 2: Create Structural Test Conditions.

Chapter 19: Testing in a Multiplatform Environment.

Task 1: Define Platform Configuration Concerns.

Task 2: List Needed Platform Configurations.

Task 3: Assess Test Room Configurations.

Task 4: List Structural Components Affected by the Platform(s).

Task 5: List Interfaces the Platform Affects.

Task 6: Execute the Tests.

Chapter 20: Testing Software System Security.

Task 1: Establish a Security Baseline.

Chapter 21: Testing a Data Warehouse.

Task 1: Measure the Magnitude of Data Warehouse Concerns.

Task 2: Identify Data Warehouse Activity Processes to Test.

Chapter 22: Testing Web-Based Systems.

Task 1: Select Web-Based Risks to Include in the Test Plan.

Task 2: Select Web-Based Tests.

Task 3: Select Web-Based Test Tools.

Task 4: Test Web-Based Systems.

Part V: Building Agility into the Testing Process.

Chapter 23: Using Agile Methods to Improve Software Testing.

Chapter 24: Building Agility into the Testing Process.

Step 1: Measure Software Process Variability.

Step 2: Maximize Best Practices.

Step 3: Build on Strength, Minimize Weakness.

Step 4: Identify and Address Improvement Barriers.

Step 5: Identify and Address Cultural and Communication.

Management Cultures.

Culture 1: Manage People.

Culture 2: Manage by Process.

Culture 3: Manage Competencies.

Culture 4: Manage by Fact.

Culture 5: Manage Business Innovation.

Step 6: Identify Implementable Improvements.

Step 7: Develop and Execute an Implementation Plan.


Customer Reviews

Most Helpful Customer Reviews

See All Customer Reviews

Effective Methods for Software Testing: Includes Complete Guidelines, Checklists, and Templates 5 out of 5 based on 0 ratings. 2 reviews.
Guest More than 1 year ago
For several years, I have recommended Bill Perry's Effective Methods for Software Testing, 2nd Ed to people who are looking for testing processes they can customize and apply quickly. I have also included this book as a reference text in many of my testing courses. Obviously, I feel that the book is very helpful to software testers. In the third edition, there are two fewer chapters, but the coverage of topics has been revised to include areas such as agile testing, the role of testing in software development methodologies, testing internal controls, and an expanded discussion on security testing. The eleven-step testing process in the second edition has been streamlined to seven steps in this edition. In this process, you will find everything you need to design and customize your own testing process all the way from test planning, through the various phases of testing (static testing, unit testing, integration testing, system testing and acceptance testing), and even through post-implementation testing. The process also addresses analyzing and reporting test results, which also discusses test metrics. The reasons I'm such a fan of the book are: 1) You get complete templates and examples, including checklists (although the CD contains PDF versions of the forms which would still need to be re-created in a word processor to be usable in electronic format). 2) The book is process-oriented as opposed to a collection of techniques. Collections are fine, but you still need a way to apply them. That¿s where the processes come in helpful. Also, the workbench process framework is helpful in defining your own processes. 3) These are practical and proven processes that have been used in a variety of organizations worldwide. There is very little theory and a lot of practical application as shown by the examples. 4) You don't have to be a highly mature organization to start applying these techniques. Whether you are CMMi Level 1 or 5, you can still find this information useful. 5)The book also addresses specific topics such as testing commercial-off-the-shelf software and data warehouse applications. This is a thick book, but then again, it is not designed to be read from front to back. I use it as a desk reference and a collection of processes to help get the job of testing done. I can save hours of work in designing processes by checking here first. My attitude is to tailor the processes to meet my needs. It¿s also my first stop when doing research. Personally, I like processes because I can transfer them to others and have something tangible to study and improve. However, I will say that if you are 'process averse' you will probably not find this book as helpful as someone who does process-based work. The processes described in the book are not heavy ones, though. This is a good resource for software testers written by someone who has been writing and working in this profession for many years. Readability - 4 Coverage of topics - 5 Depth of coverage - 5 Credibility - 5 Accuracy - 5 Relevance to software quality - 5 Overall - 5 Reviewed by Randy Rice
Laila_L More than 1 year ago
I've worked as a systems analyst for years, and often helped with UAT testing, and then I was signed up for a role as a QA/BA position. I wanted a bit more formal training, so I purchased this book & it gave great insight into testing procedures & methodologies.