Limit search to available items
Book Cover
Book
Author Weinberg, Gerald M.

Title Perfect software--and other illusions about testing / Gerald M. Weinberg
Published New York, NY : Dorset House Pub., 2008

Copies

Location Call no. Vol. Availability
 W'PONDS  005.14 Wei/Psa  AVAILABLE
Description xv, 182 pages ; 23 cm
Contents Machine derived contents note: Acknowledgments v -- ix -- Contents ix -- xv -- Preface xv -- One: Why Do We Bother Testing? 3 -- Humans are not perfect thinkers. 4 -- We need to make decisions about software. 4 -- Decisions can be risky. 7 -- Testing can provide information that reduces risk. 9 -- Summary 11 -- Common Mistakes 11 -- two 13 -- What Testing Cannot Do 13 -- Information doesn't necessarily help reduce risk. 14 -- We may not be using the information we're paying for. 15 -- Our decisions are emotional, not rational. 16 -- Poor testing may be worse than no testing at all. 17 -- Your product may not be ready for testing. 18 -- Summary 19 -- Common Mistakes 19 -- three 22 -- Why Not Just Test Everything? 22 -- There are an infinite number of possible tests. 22 -- Testing is, at best, sampling. 24 -- The cost of information can exceed the cost of ignorance. 25 -- We can obtain more information with less testing; perhaps. 26 -- Imagine you are about to dine at the Testing Buffet. 26 -- Summary 27 -- Common Mistakes 27 -- four 29 -- What's the Difference Between Testing and Debugging? 29 -- Testing for discovery 29 -- 29 -- 29 -- Pinpointing 30 -- Locating 30 -- Determining significance 31 -- Repairing 31 -- Troubleshooting 32 -- Testing to learn 32 -- Task-switching 33 -- What happens to testing as an organization grows? 33 -- Make the time-limit heuristic a management mantra; but adjust it as needed. 36 -- Summary 36 -- Common Mistakes 37 -- five 39 -- Meta-Testing 39 -- We have specs, but we can't find them. 40 -- We have so many bugs, our bug database doesn't work efficiently. 40 -- We didn't find many bugs, though we didn't really look. 41 -- We modify our records to make bugs look less severe. 42 -- It's not in my component, so I don't record it 42 -- I'm testing the wrong application and don't know it. 43 -- We don't test the worst components because it takes too long. 43 -- We found so many bugs, there couldn't be any more. 44 -- Our tests proved the program was correct. 44 -- We ran so many test cases that we couldn't look at them all. 44 -- If our software works okay for three users, obviously it will work okay for a hundred. -- 45 -- We don't want our testers to know we're ignoring their information. 46 -- I don't report bugs, so the developer won't be angry with me. 46 -- We don't need to test that, because the developer is really good. 47 -- Follow up on meta-information. 47 -- Summary 48 -- Common Mistakes 48 -- six 51 -- Information Immunity 51 -- 51 -- 51 -- We are afraid when our rules are threatened. 52 -- We repress the unacceptable. 53 -- We rationalize the unreasonable. 54 -- We project our own negative qualities onto other people. 56 -- We displace blame to absolve ourselves. 57 -- We overcompensate for our self-perceived deficiencies. 58 -- We become compulsive when we feel we're losing control. 59 -- Summary 60 -- Common Mistakes 60 -- Identify the fear. 62 -- seven 62 -- How to Deal With Defensive Reactions 62 -- 62 -- 62 -- Use critical thinking. 63 -- Practice, practice, practice. 64 -- Test yourself. 65 -- Summary 66 -- Common Mistakes 66 -- eight 67 -- What Makes a 67 -- Good Test? 67 -- You can never know for sure. 67 -- 67 -- 67 -- You can assess goodness only after the fact. 68 -- You may want to insert bugs intentionally. 70 -- Estimates of "goodness" are always statistical. 70 -- You can estimate not-badness. 71 -- Summary 72 -- Common Mistakes 72 -- nine 74 -- Major Fallacies 74 -- About Testing 74 -- The Blaming Fallacy 74 -- 74 -- 74 -- The Exhaustive Testing Fallacy 75 -- The Testing-Produces-Quality Fallacy 76 -- The Decomposition Fallacy 77 -- The Composition Fallacy 78 -- The All-Testing-Is-Testing Fallacy 78 -- The Any-Idiot-Can-Test Fallacy 80 -- Summary 81 -- Common Mistakes 81 -- ten 83 -- Testing Is More Than Banging Keys 83 -- 83 -- 83 -- Is banging keys to no purpose a test, or not? 84 -- The White Glove Test 85 -- The Dog Food Test 86 -- Testers need testing, too. 88 -- You can test without consciously realizing it. 89 -- A demonstration is not a test. 89 -- Summary 90 -- Common Mistakes 90 -- Use the Satir Interaction Model to unravel communications. 92 -- eleven 92 -- The Satir Interaction Model: Intake 92 -- Intake 93 -- Meaning 93 -- Significance 94 -- Response 95 -- People listen selectively. 95 -- The source of the data influences intake. 96 -- Timing makes a difference. 96 -- People can be overloaded with information. 97 -- You may convey more information by reducing the number of tests. 98 -- Seek intake from outside the box. 98 -- Don't confuse interpretation with intake. 99 -- Ask The Data Question to filter out interpretations. 100 -- Summary 100 -- Common Mistakes 100 -- Case 1. Four Bugs; Five Meanings 102 -- twelve 102 -- Making Meaning 102 -- Case 2. Four Bugs; Seven Meanings 104 -- Case 3. Four Bugs; Make Your Own Meanings 105 -- Know what you're expecting before you interpret. 106 -- What if you don't know what's expected? 107 -- Use the information you have. 108 -- Use indirect information. 108 -- Use the information you don't have. 109 -- The same word may have several different meanings. 110 -- "Same" may not be identical. 110 -- Sometimes it's better to be imprecise. 111 -- Summary 112 -- Common Mistakes 112 -- thirteen 113 -- Determining 113 -- Significance 113 -- 113 -- 113 -- Different people attach different importance to the same information. 114 -- Public significance may differ from private. 115 -- Significance depends on context. 116 -- You can't always judge significance in money terms. 117 -- Don't put too fine a point on it. 118 -- Address significant problems first. 119 -- Listen to your emotional reactions. 120 -- Summary 122 -- Common Mistakes 122 -- fourteen 124 -- Making a Response 124 -- Is it bad luck or bad management? 124 -- 124 -- 124 -- Why do projects rush at the end? 125 -- How should you respond close to the end? 127 -- Why are estimates of time needed for testing so far from reality? 128 -- Sunny-day estimating 128 -- Unrealistic process models 128 -- Poor-quality process data 129 -- No process data 131 -- Determine whether you've passed the point where you can make a difference. 132 -- Summary 132 -- Common Mistakes 132 -- fifteen 134 -- Preventing Software Testing from Growing More Difficult 134 -- Why is the situation growing worse? 134 -- Keep systems as small as possible. 135 -- Keep your model of "system" expansive. 136 -- Build incrementally in isolated components with clear interfaces. 137 -- Reduce the number of bugs going in. 138 -- Summary 138 -- Common Mistakes 138 -- sixteen 140 -- Testing Without Machinery 140 -- Testing by machine is never enough. 140 -- Instant reviews 141 -- Worst-first reviews establish bug severity. 146 -- The truth is not always convincing. 147 -- Testers make valuable reviewers. 147 -- Summary 148 -- Common Mistakes 148 -- seventeen 149 -- Testing Scams 149 -- We'll sell you a magic tool. 149 -- 149 -- 149 -- Our demonstration is a scam. 150 -- With all these testimonials, it must be good. 152 -- We can scam you with our pricing. 152 -- Our tool can read minds. 153 -- We promise that you don't have to do a thing. 155 -- We are secretly in cahoots. 155 -- Here's how to avoid scams. 156 -- Summary 156 -- Common Mistakes 157 -- What happens when we delay documentation? 158 -- eighteen 158 -- Oblivious Scams 158 -- Ambiguous test reports are like quicksand. 159 -- Falsified test reports impede improvement. 159 -- Take your revenge somewhere else. 160 -- Early returns will mislead you. 161 -- Quantity is not a synonym for quality. 161 -- Don't count non-tests as tests. 162 -- It's too tidy to be true. 163 -- Garbage arranged in a spreadsheet is still garbage. 164 -- Summary 164 -- Common Mistakes 164 -- 166 -- Epilogue 166 -- 166 -- 166 -- 168 -- Additional Reading 168 -- 168 -- 168 -- Footnotes 169
Bibliography Includes bibliographical references and index
Subject Computer software -- Testing.
Computer software -- Quality control.
Computer software -- Reliability.
LC no. 2008027598
ISBN 9780932633699 alkaline paper
0932633692 alkaline paper