home    testing news   Follow testingref on Twitter twitter   about Testing References   about me   contact  

The Fire Hose

Below is a list of articles on software development, software engineering and software testing. Some of the articles are old and have historic value. The list contains classics such as No Silver Bullet by Brooks, Design and Code Inspections by Fagan or Software Engineering by Boehm. Others are new and treat topical subjects.

The list is published for a number reasons.

  • All of the articles below can be found on the internet in PDF format. There are a lot of articles (and knowledge) locked behind the paid subscriptions of for example the ACM or the IEEE. The articles below are available to every software professional.
  • Because they are articles they focus mainly on a single topic and can be read in a lot less time than for example a book. This makes it easier to access the knowledge contained.
  • The articles offer a wide range of perspectives on software development. I did not limit myself to software testing or to a certain school of thought.
All in all this means that the overview can be used in many different ways. It can be useful in generating ideas or in producing insight into the range of topics within software development. It can be used as a source for further study or as a starting point for discussions, I hope you enjoy the ride!

Adventures in Session-Based Testing
James Lyndsay
Click here to find the document using Google
The Agile Manifesto
Martin Fowler, Jim Highsmith
Click here to find the document using Google
The Agile Methods Fray
Barry W. Boehm, Tom DeMarco
Click here to find the document using Google
An Analysis and Survey of the Development of Mutation Testing
Mark Harman, Yue Jia
Click here to find the document using Google
Avoiding Classic Mistakes
Steve McConnell
Click here to find the document using Google
Beyond the Productivity Paradox
Erik Brynjolfsson, Lorin M. Hitt
Click here to find the document using Google
Biting the Silver Bullet
David Harel
Click here to find the document using Google
Both Sides Always Lose:
Tom DeMarco
Click here to find the document using Google
Brooks’ Law Repealed
Steve McConnell
Click here to find the document using Google
Bug Taxonomies: Use Them to Generate Better Tests
Cem Kaner, Giri Vijayaraghavan
Click here to find the document using Google
The Case against ISO 9000
John Seddon
Click here to find the document using Google
The Category Partition Method for Specifying and Generating Functional Tests
Marc Balcer, Thomas Ostrand
Click here to find the document using Google
Characterizing the Software Process
Watts Humphrey
Click here to find the document using Google
Classic Testing Mistakes
Brian Marick
Click here to find the document using Google
Climbing over the No Silver Bullet Brick Wall
Geoff Dromey
Click here to find the document using Google
Comparing the Effectiveness of Software Testing Strategies
Victor Basili, Richard Selby
Click here to find the document using Google
A Complexity Measure
Thomas McCabe
Click here to find the document using Google
Continuous Care Vs. Initial Design
Robert C. Martin
Click here to find the document using Google
Continuous Care Vs. Initial Design
Robert C. Martin
Click here to find the document using Google
Cornering the Chimera
Geoff Dromey
Click here to find the document using Google
Crisis, What Crisis?
Thomas Haigh
Click here to find the document using Google
Critical-Path Planning and Scheduling
Michael D. Kelly, Morgan R. Walker
Click here to find the document using Google
The Darker Side of Metrics
Douglas Hoffman
Click here to find the document using Google
Data Structure Diagrams
Charles Bachman
Click here to find the document using Google
Design and Code Inspections to Reduce Errors in Program Development
Michael Fagan
Click here to find the document using Google
Efficient Testing with All-Pairs
Bernie Berger
Click here to find the document using Google
An Engineering Context for Software Engineering
Richard D. Riehle
Click here to find the document using Google
Escaping the Software Tar Pit
Barry W. Boehm, Dan Port
Click here to find the document using Google
An Evaluation of the MOOD Set of Object-Oriented Software Metrics
Steve Counsell, Rachel Harrison, Reuben Nithi
Click here to find the document using Google
Exhausting Your Test Options
Douglas Hoffman
Click here to find the document using Google
Exploratory Testing Dynamics
James Bach, Jonathan Bach
Click here to find the document using Google
Exploratory Testing Explained
James Bach
Click here to find the document using Google
Facing Up to Faults
Brian Randell
Click here to find the document using Google
The Factors of Function Testing
Michael Bolton
Click here to find the document using Google
The Five Orders of Ignorance
Phillip Glen Armour
Click here to find the document using Google
Five Reasons for Scenario-Based Design
John M. Carroll
Click here to find the document using Google
The Forgotten Phase
Robin Goldsmith, Dorothy Graham
Click here to find the document using Google
Four Exercises for Teaching Exploratory Testing
James Lyndsay
Click here to find the document using Google
The Goal Question Metric Approach
Victor Basili, Gianluigi Caldiera, Dieter Rombach
Click here to find the document using Google
The Growth of Software Testing
David Gelperin, William Hetzel
Click here to find the document using Google
Handling Combinatorial Explosion in Software Testing
Mats Grindal
Click here to find the document using Google
Heuristic Test Strategy Model
James Bach
Click here to find the document using Google
Historical Roots of Agile Methods
Gary Wills, Andrew Gravell, Noura Abbas
Click here to find the document using Google
The histories of computing(s)
Michael Mahoney
Click here to find the document using Google
The History of Computing in the History of Technology
Michael Mahoney
Click here to find the document using Google
A History of Software Inspections
Michael Fagan
Click here to find the document using Google
How Software Project Risk Affects Project Performance
Mark Keil, Arun Rai, Linda Wallace
Click here to find the document using Google
The Ideal Collaborative Team
Carolyn Allen, Mitch Ditkoff, Tim Moore, Dave Pollard
Click here to find the document using Google
Industrial Software Metrics
Barry W. Boehm
Click here to find the document using Google
An Introduction to Scenario Testing
Cem Kaner
Click here to find the document using Google
The Irrational Tester
James Lyndsay
Click here to find the document using Google
Is Software Engineering Engineering?
Peter J. Denning, Richard D. Riehle
Click here to find the document using Google
IT Doesn’t Matter
Nicholas G. Carr
Click here to find the document using Google
IT Failure Rates
Robert L. Glass
Click here to find the document using Google
Iterative and Incremental Development: A Brief History
Victor Basili, Craig Larman
Click here to find the document using Google
Keep It Simple
Steve McConnell
Click here to find the document using Google
Keeping Software Soft
Martin Fowler
Click here to find the document using Google
Laws of Software Evolution Revisited
Meir Lehman
Click here to find the document using Google
Lessons Learned from Modeling the Dynamics of Software Development
Stuart Madnick, Tarek Abdel-Hamid
Click here to find the document using Google
The Logic of Correctness in Software Engineering
Mark Priestley
Click here to find the document using Google
Managing the Development of Large Software Systems
Winston Royce
Click here to find the document using Google
Measuring Application Development Productivity
Allan Albrecht
Click here to find the document using Google
A Metrics Suite for Object Oriented Design
Shiyam R. Chidamber, Chris F. Kemerer
Click here to find the document using Google
A Model to Assess Testing Process Maturity
Ilene Burnstein, Christopher R. Carlson, Robert Grom, Ariya Homyen
Click here to find the document using Google
Modeling Software Defect Introduction and Removal
Barry W. Boehm, Sunita Chulani
Click here to find the document using Google
Mutation 2000
Andrew Jefferson Offutt, Roland Untch
Click here to find the document using Google
New Models for Test Development
Brian Marick
Click here to find the document using Google
The New New Product Development Game
Ikujiro Nonaka, Hirotaka Takeuchi
Click here to find the document using Google
No Silver Bullet
Frederick Brooks
Click here to find the document using Google
On the Criteria To Be Used in Decomposing Systems into Modules
David Lorge Parnas
Click here to find the document using Google
On the Testing Maturity of Software Producing Organizations
Mats Grindal, Jonas Mellin, Andrew Jefferson Offutt
Click here to find the document using Google
One More Time: How Do You Motivate Employees
Frederick Herzberg
Click here to find the document using Google
The Ongoing Revolution in Software Testing
Cem Kaner
Click here to find the document using Google
A Positive View of Negative Testing
James Lyndsay
Click here to find the document using Google
Proactive Testing
Robin Goldsmith, Dorothy Graham
Click here to find the document using Google
Process Evolution in a Mad World
James Bach
Click here to find the document using Google
Process Models in Software Engineering
Walt Scacchi
Click here to find the document using Google
The Productivity Paradox of Information Technology
Erik Brynjolfsson
Click here to find the document using Google
Program Testing
Edward F. Miller
Click here to find the document using Google
Programmer Performance and the Effects of the Workplace
Tom DeMarco, Timothy Lister
Click here to find the document using Google
Project Management Tools and Software Failures and Successes
Capers Jones
Click here to find the document using Google
Pulling the Plug, Software Project Management and the Problem of Project Escalation
Mark Keil
Click here to find the document using Google
Quantifying Soft Factors
Steve McConnell
Click here to find the document using Google
A Rational Design Process: How and Why to Fake It
Paul C. Clements, David Lorge Parnas
Click here to find the document using Google
The Real Problem with Computers
Michael Schrage
Click here to find the document using Google
Requirements Elicitation – What’s Missing?
Chris Cope, Bill Davey
Click here to find the document using Google
Research in Software Engineering
Robert L. Glass
Click here to find the document using Google
Rethinking Lean Service
John Seddon, Brendan O’Donovan
Click here to find the document using Google
Rethinking Software Metrics
Cem Kaner
Click here to find the document using Google
The Revealing Power of a Test Case
Jeffrey M. Voas
Click here to find the document using Google
Reverse Engineering and Design Recovery
Elliot Chikofsky
Click here to find the document using Google
The Rise and Fall of the Chaos Report Figures
J. Laurenz Eveleens, Chris Verhoef
Click here to find the document using Google
The Roots of Software Engineering
Michael Mahoney
Click here to find the document using Google
Session-Based Test Management
Jonathan Bach
Click here to find the document using Google
Short-Term and Long-Term Remedies for Runaway Projects
Robert L. Glass
Click here to find the document using Google
Soap Opera Testing
Hans Buwalda
Click here to find the document using Google
Software Aging
David Lorge Parnas
Click here to find the document using Google
Software Aspects of Strategic Defense Systems
David Lorge Parnas
Click here to find the document using Google
Software Defect Reduction Top 10 List
Victor Basili, Barry W. Boehm
Click here to find the document using Google
Software Economics
Barry W. Boehm, Kevin J. Sullivan
Click here to find the document using Google
Software Engineering
Barry W. Boehm
Click here to find the document using Google
Software Engineering
Tom DeMarco
Click here to find the document using Google
Software Engineering Economics
Barry W. Boehm
Click here to find the document using Google
Software Engineering Metrics: What Do They Measure and How Do We Know?
Walter Patterson Bond, Cem Kaner
Click here to find the document using Google
Software Project Management Practices: Failure Versus Success
Capers Jones
Click here to find the document using Google
Software Quality: the Elusive Target
Barbara Kitchenham, Shari Lawrence Pfleeger
Click here to find the document using Google
Software's Chronic Crisis
Wyat Gibbs
Click here to find the document using Google
Some Future Trends and Some Future Trends and Implications for Systems and Software Engineering Processes
Barry W. Boehm
Click here to find the document using Google
A Spiral Model of Software Development and Enhancement
Barry W. Boehm
Click here to find the document using Google
Strategies for Managing Requirements Creep
Capers Jones
Click here to find the document using Google
A Taxonomy for Test Oracles
Douglas Hoffman
Click here to find the document using Google
Ten Things You Might Not Know
Robert Sabourin
Click here to find the document using Google
Test Automation Snake Oil
James Bach
Click here to find the document using Google
Test Case Design Using Classification Trees
Matthias Grochtmann
Click here to find the document using Google
Testers and Developers Think Differently
Bret Pettichord
Click here to find the document using Google
Testing Without a Map
Michael Bolton
Click here to find the document using Google
Things Testers Miss
James Lyndsay
Click here to find the document using Google
Toward a Theory of Test Data Selection
Susan Gerhart, John Goodenough
Click here to find the document using Google
Towards a Constructive Quality Model
Barbara Kitchenham
Click here to find the document using Google
Twelve Tough Questions
Tom Gilb
Click here to find the document using Google
Unskilled and Unaware of It
David Dunning, Justin Kruger
Click here to find the document using Google
Users We Don’t Like
Michael Bolton
Click here to find the document using Google
Users, Roles, and Personas
Larry Constantine
Click here to find the document using Google
Using a Defined and Measured Personal Software Process
Watts Humphrey
Click here to find the document using Google
What Do Users Want?
Larry Constantine
Click here to find the document using Google
What Is a Good Test Case?
Cem Kaner
Click here to find the document using Google
What Is Software Design?
Jack Reeves
Click here to find the document using Google
What Is Software Testing? And Why Is It So Hard?
James A. Whittaker
Click here to find the document using Google
What Not to Test
Robert Sabourin
Click here to find the document using Google
What Software Reality Is Really About
James Bach
Click here to find the document using Google
What’s Wrong with Risk Matrices?
Louis Cox
Click here to find the document using Google
When Should a Test Be Automated?
Brian Marick
Click here to find the document using Google
Where in the World?
Michael Bolton
Click here to find the document using Google
Why Software Projects Escalate
Mark Keil, Joan Mann, Arun Rai
Click here to find the document using Google