Business Analyst Training

Requirements elicitation, writing, analysis, and modeling by IIBA Endorsed Education Provider.

www.requirementssolutions.com

Business System Analysis Bookstore
In Association with Amazon.com
Help PicoSearch
Free Business Analyst Skills Test for CBAP Looking for Business Analysis Training

Software Testing

Buy the Book
Summary TOC Author Look Inside Comments Reviews
Ron Patton
November 2000, Sams, Paperback, 389 pages, ISBN 0672319837

Instructor-led, virtual, and self-paced training for Business Analysts What Do Business Analysts Do?
How to Test an Application using Business Requirements
How to Plan, Prepare, and Manage Acceptance Testing
How to Find and Build Test Cases from Requirements
e-Learning, virtual workshops and webinars Try our new Virtual Workshops and e-Coaching
for today's Business System Analysts (BA's) and Subject Matter Experts (SME's)

Summary
Buy the book

Software Testing is the book for new or aspiring software testers interested in learning about this crucial part of the software development process. The complexity and size of today's software makes writing bug-free code extremely difficult, even for highly experienced programmers. Couple that with our increasing reliance on software for performing everyday tasks and its pervasiveness in the medical, telecommunications, manufacturing, and financial industries, and a software bug can spell disaster. Quality software can't be created with an ad- hoc, part-time, bug hunt. It requires a methodical and disciplined approach to preventing, finding, and reporting bugs. Software Testing will show you what it takes to be a successful software tester, assuring that you discover those nasty bugs before your customers do.

Ideal for programmers and project managers who want to better understand what their software test teams do and how they operate

Most large software companies are so committed to quality that they have one or more testers for each programmer

According to ZDNet, "despite increased competition, the overall [software] testing and monitoring market is growing exponentially"

 
analysis bookstore top
BA books: Table of Contents
Buy the book

Introduction

Part I - The Big Picture

Chapter 1 - Software Testing Background

  • Infamous Software Error Case Studies
    • Disney's Lion King, 1994–1995
    • Intel Pentium Floating-Point Division Bug, 1994
    • NASA Mars Polar Lander, 1999
    • Patriot Missile Defense System, 1991
    • The Y2K (Year 2000) Bug, circa 1974
  • What Is a Bug?
    • Terms for Software Failures
    • Software Bug: A Formal Definition
  • Why Do Bugs Occur?
  • The Cost of Bugs
  • What Exactly Does a Software Tester Do?
  • What Makes a Good Software Tester?
  • Summary
  • Quiz

Chapter 2 - The Software Development Process

  • Product Components
    • What Effort Goes Into a Software Product?
    • What Parts Make Up a Software Product?
  • Software Project Staff
  • Software Development Lifecycle Models
    • Big-Bang Model
    • Code-and-Fix Model
    • Waterfall Model
    • Spiral Model
  • Summary
  • Quiz

Chapter 3 - The Realities of Software Testing

  • Testing Axioms
    • It's Impossible to Test a Program Completely
    • Software Testing Is a Risk-Based Exercise
    • Testing Can't Show That Bugs Don't Exist
    • The More Bugs You Find, the More Bugs There Are
    • The Pesticide Paradox
    • Not All the Bugs You Find Will Be Fixed
    • When a Bug's a Bug Is Difficult to Say
    • Product Specifications Are Never Final
    • Software Testers Aren't the Most Popular Members of a Project Team
    • Software Testing Is a Disciplined Technical Profession
  • Software Testing Terms and Definitions
    • Precision and Accuracy
    • Verification and Validation
    • Quality and Reliability
    • Testing and Quality Assurance (QA)
  • Summary
  • Quiz

Part II - Testing Fundamentals

Chapter 4 - Examining the Specification

  • Getting Started
    • Black-Box and White-Box Testing
    • Static and Dynamic Testing
    • Static Black-Box Testing: Testing the Specification
  • Performing a High-Level Review of the Specification
    • Pretend to Be the Customer
    • Research Existing Standards and Guidelines
    • Review and Test Similar Software
  • Low-Level Specification Test Techniques
    • Specification Attributes Checklist
    • Specification Terminology Checklist
  • Summary
  • Quiz

Chapter 5 - Testing the Software with Blinders On

  • Dynamic Black-Box Testing: Testing the Software While Blindfolded
  • Test-to-Pass and Test-to-Fail
  • Equivalence Partitioning
  • Data Testing
    • Boundary Conditions
    • Sub-Boundary Conditions
    • Default, Empty, Blank, Null, Zero, and None
    • Invalid, Wrong, Incorrect, and Garbage Data
  • State Testing
    • Testing the Software's Logic Flow
    • Testing States to Fail
  • Other Black-Box Test Techniques
    • Behave Like a Dumb User
    • Look for Bugs Where You've Already Found Them
    • Follow Experience, Intuition, and Hunches
  • Summary
  • Quiz

Chapter 6 - Examining the Code

  • Static White-Box Testing: Examining the Design and Code
  • Formal Reviews
    • Peer Reviews
    • Walkthroughs
    • Inspections
  • Coding Standards and Guidelines
    • Examples of Programming Standards and Guidelines
    • Obtaining Standards
  • Generic Code Review Checklist
    • Data Reference Errors
    • Data Declaration Errors
    • Computation Errors
    • Comparison Errors
    • Control Flow Errors
    • Subroutine Parameter Errors
    • Input/Output Errors
    • Other Checks
  • Summary
  • Quiz

Chapter 7 - Testing the Software with X-Ray Glasses

  • Dynamic White-Box Testing
  • Dynamic White-Box Testing versus Debugging
  • Testing the Pieces
    • Unit and Integration Testing
    • An Example of Module Testing
  • Data Coverage
    • Data Flow
    • Sub-Boundaries
    • Formulas and Equations
    • Error Forcing
  • Code Coverage
    • Program Statement and Line Coverage
    • Branch Coverage
    • Condition Coverage
  • Summary
  • Quiz

Part III - Applying Your Testing Skills

Chapter 8 - Configuration Testing

  • An Overview of Configuration Testing
    • Isolating Configuration Bugs
    • Sizing Up the Job
  • Approaching the Task
    • Decide the Types of Hardware You'll Need
    • Decide What Hardware Brands, Models, and Device Drivers Are Available
    • Decide Which Hardware Features, Modes, and Options Are Possible
    • Pare Down the Identified Hardware Configurations to a Manageable Set
    • Identify Your Software's Unique Features That Work with the Hardware Configurations
    • Design the Test Cases to Run on Each Configuration
    • Execute the Tests on Each Configuration
    • Rerun the Tests Until the Results Satisfy Your Team
  • Obtaining the Hardware
  • Identifying Hardware Standards
  • Configuration Testing Other Hardware
  • Summary
  • Quiz

Chapter 9 - Compatibility Testing

  • Compatibility Testing Overview
  • Platform and Application Versions
    • Backward and Forward Compatibility
    • The Impact of Testing Multiple Versions
  • Standards and Guidelines
    • High-Level Standards and Guidelines
    • Low-Level Standards and Guidelines
  • Data Sharing Compatibility
  • Summary
  • Quiz

Chapter 10 - Foreign-Language Testing

  • Making the Words and Pictures Make Sense
  • Translation Issues
    • Text Expansion
    • ASCII, DBCS, and Unicode
    • Hot Keys and Shortcuts
    • Extended Characters
    • Computations on Characters
    • Reading Left to Right and Right to Left
    • Text in Graphics
    • Keep the Text out of the Code
  • Localization Issues
    • Content
    • Data Formats
  • Configuration and Compatibility Issues
    • Foreign Platform Configurations
    • Data Compatibility
  • How Much Should You Test?
  • Summary
  • Quiz

Chapter 11 - Usability Testing

  • User Interface Testing
  • What Makes a Good UI?
    • Follows Standards or Guidelines
    • Intuitive
    • Consistent
    • Flexible
    • Comfortable
    • Correct
    • Useful
  • Testing for the Disabled: Accessibility Testing
    • It's the Law
    • Accessibility Features in Software
  • Summary
  • Quiz

Chapter 12 - Testing the Documentation

  • Types of Software Documentation
  • The Importance of Documentation Testing
  • What to Look for When Reviewing Documentation
  • The Realities of Documentation Testing
  • Summary
  • Quiz

Chapter 13 - Web Site Testing

  • Web Page Fundamentals
  • Black-Box Testing
    • Text
    • Hyperlinks
    • Graphics
    • Forms
    • Objects and Other Simple Miscellaneous Functionality
  • Gray-Box Testing
  • White-Box Testing
  • Configuration and Compatibility Testing
  • Usability Testing
  • Introducing Automation
  • Summary
  • Quiz

Part IV - Supplementing Your Testing

Chapter 14 - Automated Testing and Test Tools

  • The Benefits of Automation and Tools
  • Test Tools
    • Viewers and Monitors
    • Drivers
    • Stubs
    • Stress and Load Tools
    • Interference Injectors and Noise Generators
    • Analysis Tools
  • Software Test Automation
    • Macro Recording and Playback
    • Programmed Macros
    • Fully Programmable Automated Testing Tools
  • Random Testing: Monkeys and Gorillas
    • Dumb Monkeys
    • Semi-Smart Monkeys
    • Smart Monkeys
  • Realities of Using Test Tools and Automation
  • Summary
  • Quiz

Chapter 15 - Bug Bashes and Beta Testing

  • Only As Far As the Eye Can See
  • Test Sharing
  • Beta Testing
  • Outsourcing Your Testing
  • Summary
  • Quiz

Part V - Working with Test Documentation

Chapter 16 - Planning Your Test Effort

  • The Goal of Test Planning
  • Test Planning Topics
    • High-Level Expectations
    • People, Places, and Things
    • Definitions
    • Inter-Group Responsibilities
    • What Will and Won't Be Tested
    • Test Phases
    • Test Strategy
    • Resource Requirements
    • Tester Assignments
    • Test Schedule
    • Test Cases
    • Bug Reporting
    • Metrics and Statistics
    • Risks and Issues
  • Summary
  • Quiz

Chapter 17 - Writing and Tracking Test Cases

  • The Goals of Test Case Planning
  • Test Case Planning Overview
    • Test Design
    • Test Cases
    • Test Procedures
  • Test Case Organization and Tracking
  • Summary
  • Quiz

Chapter 18 - Reporting What You Find

  • Getting Your Bugs Fixed
  • Isolating and Reproducing Bugs
  • Not All Bugs Are Created Equal
  • A Bug's Life Cycle
  • Bug-Tracking Systems
    • The Standard: The Test Incident Report
    • Manual Bug Reporting and Tracking
    • Automated Bug Reporting and Tracking
  • Summary
  • Quiz

Chapter 19 - Measuring Your Success

  • Using the Information in the Bug Tracking Database
  • Metrics That You'll Use in Your Daily Testing
  • Common Project-Level Metrics
  • Summary
  • Quiz

Part VI - The Future

Chapter 20 - Software Quality Assurance

  • Quality Is Free
  • Testing and Quality Assurance in the Workplace
    • Software Testing
    • Quality Assurance
    • Other Names for Software Testing Groups
  • Test Management and Organizational Structures
  • Capability Maturity Model (CMM)
  • ISO 9000
  • Summary
  • Quiz

Chapter 21 - Your Career as a Software Tester

  • Your Job as a Software Tester
  • Finding a Software Testing Position
  • Gaining Hands-On Experience
  • Formal Training Opportunities
  • Internet Links
  • Professional Organizations
  • Further Reading
  • Summary
  • Quiz

Apendix A - Answers to Quiz Questions

Index

 
analysis bookstore top
Author info
Buy the book
Ron Patton lives and works in Washington state as a software consultant. His software testing experience is wide and varied from mission- critical systems to children's painting programs. He began his career at Texas Instruments as a quality assurance engineer testing embedded systems and user interface software for industrial automation equipment. In 1992 he joined Microsoft as a software test lead in the Systems Group. His test projects included Multimedia Viewer, the authoring tool used to develop Encarta(r), Cinemania(r), and Bookshelf(r),. and He eventually moved on to become responsible for the software that shipsped with the mouse, keyboard, gaming, telephony, and ActiMates(r) product lines.
 
analysis bookstore top
Business System Analysis Books: Reviews
Buy the book
Review-Date: 1/27/2010 Rating: 3 Summary: Provides a general overview of the field

This book offers a decent introduction into the field of software testing. Despite it‘s limited size the book covers a wide range of topics. These include a description of the software development process, the responsibilities of a tester and several kinds of testing. The latter include functional, security, usability and localization testing. Each kind of testing is illustrated by example which can be especially useful for the aspiring tester. However no subject is elaborated to the point where it can serve as a practical guide to a novice tester.


Review-Date: 8/25/2009 Rating: 5 Summary: Interesting and light wording

This book is very interesting and its wording is really easy for reading. I broadly suggest it for beginners, intermediate and senior people. I keep it handy.


Review-Date: 6/15/2009 Rating: 4 Summary: Software Test

This is a good book for anybody who is new to the subject of software test; but, if a more technical discussion on the subject is sought then this book may not be that useful. I strongly recommend the book to anyobody who‘s trying to learn the fundamentals and basic concepts on how software is tested as well as a basic understanding of how software is developed.


Review-Date: 9/29/2008 Rating: 4 Summary: Software Testing – by Ron Patton

Great book for those just trying to learn what a software tester must do with no prior experience.


Review-Date: 5/14/2008 Rating: 4 Summary: Good introduction to software testing

I thought the book was quite good. I read it before I attended my first introductory software testing course and it allowed me to get a lot more out of the course and ask questions that were more relevant. In fact, my instructor borrowed the book and thought it was quite good as well. If you have experience in this field, then this book is not for you. (Why anyone would buy it if they did have "expertise" in the field is beyond me.) I have read a couple of the reviews for this book and to be honest, these people probably whine about anything and everything, yet they are incapable of publishing their own book. I have noticed that is quite the "American thing". Criticizing without the ability to create and waxing poetic about anything and everything without the benefit of expertise. This is an odd "habit" and one that apparently is addictive and hypnotic to some. Can you imagine the amount of time some people spend on those inane blogs? Who has that bloody amount of time to be that self–indulgent? I digress...

Overall, a very good text and I would recommend it highly based on its readability; I index books for a living so I CAN wax poetic about this type of thing, and its conversational style. I encourage the author to continue his work in this area.


Review-Date: 3/19/2008 Rating: 3 Summary: Only if you are new to testing

If you are already in software testing business this book is not for you. If you are looking for something to guide you for your safety critical V&V activities again this is not your book. But if you are new in testing and if you want to make a good start this book will help you. So only for newbies...


Review-Date: 12/21/2007 Rating: 3 Summary: Blah Blah Blah and more Blah.

This is an example of a book that I was forced into purchasing and using as a text book. I was shocked that this is considered required reading for a Master‘s level course. While it is a good overview of quality, especially as it applies to the web, I found it mostly trite and a little boring. I gave it a three because I think it has its place in the world. If you are a beginner and need a general overview it‘s a good place to start. It is not however a "textbook" that will find its way to my keeper shelf, I will be selling it back.


Review-Date: 10/25/2007 Rating: 5 Summary: excellent book for beginners

This book is excellent for beginners who are looking to learn more about software testing. It details the concepts of manual testing and what to look for and what not to do while testing software.

It is also good for programmers who want to transition into testing or Q/A or just want to gain an insight into the world of testers!


Review-Date: 10/7/2007 Rating: 1 Summary: Ron Patton, improve your book instead of commenting on every review!

I would NOT recommend this book to anyone who really want to know about testing/ want to get into testing. There is not one iota of information about how to test. It‘s like a "cookbook" without a single recipe. It maybe good for managers to learn what testing is, but it‘s not practical at all.

And Mr. Author, take these hints and improve your next book instead of getting defensive about every comment.


Review-Date: 6/1/2007 Rating: 3 Summary: OK book, but focused on a very low intelligence audience.

I think that this book covers a lot of good material, but it is not geared toward an avid tester. Great book for those just trying to learn what a software tester must do with no prior experience, but avoid this one if you are experienced at any level with software testing.


 
analysis bookstore top
 
Requirements
  Business Rules
Prototyping
Requirements Analysis
Requirements Definition
Requirements Documentation
Requirements Engineering
Requirements Management
Requirements Traceability
User Interfaces
Miscellaneous
Requirements Validation
  Acceptance Testing
Test Cases
Test Data Engineering
Test Planning
Testing Tools
Business Process Modeling (BPM)
  Data Flow Diagrams
Decision Tables
Process Analysis
Process Improvement (BPI)
Process Models
Facilitation
  Conducting Meetings
JAD
Miscellaneous
Data Analysis
  Data Models
Miscellaneous
NEW RELEASES
Business Systems Analysis
Best Practices
Interviewing Techniques
Methodologies
Problem Analysis
Request for Proposal (RFP)
Requirements Elicitation
Task Analysis
Unified Modeling Language (UML)
Use Cases
Workflow Analysis
Home Links CBAP Business Analyst Skills Test Business Anlayst Training Inquiry