This Month’s Pattern *

35 Testing Before Testing

“Testing is more than testing (and should start before testing).” —Dorothy Graham

Testing is traditionally done when some of the software has been built. That is, the testers test the delivered code to determine that it is working correctly. Nontraditionally, some organizations distribute their testing activities throughout the life cycle. In particular, they introduce testing during the earliest stages of product development (long before anything tangible like software is produced), and early in each iteration. Early testing—that is, testing before testing—is done to ensure the project’s proposed deliverables can be tested for correctness once they have been produced.

The justification for pre-test testing is that it makes later testing far more productive and, along the way, significantly reduces the amount of time spent correcting avoidable errors. Organizations that use early testing find that later efforts can be safely restricted to testing whether or not the product is working as desired. Many organizations can’t do this, because they have little confidence that their definition of “working as desired” is correct. If the requirements themselves have not been tested, then they cannot be trusted by the software testers. The idea of early testing is to provide the later-stage testing with an accurate yardstick against which to measure the solution.

But early testing is not restricted to requirements; it works for any project deliverable. For example, the design of a product can be tested early provided it is communicated in some tangible form. Similarly for the project plans, the scope document, and so on, through the project deliverables. All of these can benefit from early testing when they are presented in a testable form. Additionally, the expectation of early testing influences the producers and results in interim deliverables that are more widely comprehensible.

Belated testing—delaying testing to a time when the product has already been built—cannot help the success of the project. By that stage, if errors exist—and if there is no early testing, they will almost certainly exist—it is too late.

Testing before testing means introducing quality control at the time of the initial project discussions. On projects that do this, the earliest deliverables are tested to see if they make sense before proceeding. The point of this early testing is to uncover as many misconceptions, misunderstandings, conflicts, unrealistic expectations, and so on, as early as possible—before they become entrenched and difficult to dislodge. Testing before testing means you are testing the highest-impact deliverables, which naturally gives you the best return on your testing effort.



* Each month we plan to publish here one of the patterns from our Jolt Award book, Adrenaline Junkies and Template Zombies — Understanding Patterns of Project Behavior. (Watch this space for a mere 86 months and you'll have read the whole thing.) The book is published by Dorset House Publishing, in the US and Hanser Verlag in Germany. It is available at Amazon and also as a Kindle book.

events

Melbourne, Mastering the Requirements Process
03-Jun-2013 to 5-Jun-2013

Suzanne Robertson presents Mastering the Requirements Process. Please contact Software Education  for details and registration. 

Sydney, Mastering the Requirements Process
3-Jun-2013 to 5-Jun-2013

Moscow, Mastering Software Architectures
4-Jun-2013 to 6-Jun-2013

Peter Hruschka teaches this premiere in Moscow: Become a "Certified Professional for Software Architecture". Contact careerlab for more details.

Wellington, Mastering the Requirements Process
10-Jun-2013 to 12-Jun-2013

The first New Zealand presentation of the year of Mastering the Requirements Process. For details please contact Software Education.  

Wellington, Mastering the Requirements Process part 2
13-Jun-2013 to 14-Jun-2013

Suzanne Robertson teaches Mastering the Requirements Process part 2. Details for this advanced class at Software Education.

Karlsruhe, Agile Requirements Engineering
13-Jun-2013 to 14-Jun-2013

Peter Hruschka shows how effective requirements engineering works in iterative projects. Learn the working know-how for SCRUM product owners. Contact andrena for more details.

Munich, Mastering Software Architectures
18-Jun-2013 to 21-Jun-2013

The dynamic duo Peter Hruschka and Gernot Starke teach their 4-day seminar in German.You can take the exam to become a Certified Professional for Software Architecture right after the seminar. Contact arc42 for details.

Vienna, Pragmatic Requirements Modeling
25-Jun-2013 to 27-Jun-2013

Peter Hruschka teaches this IREB Advanced Level Module. Contact CONECT for details.

Brussels, Mastering the Requirements Process
24-Sep-2013 to 26-Sep-2013

James Robertson teaches Mastering the Requirements Process. Please contact I.T.Works for details.  

London, BA Conference
24-Sep-2013 to 25-Sep-2013

Suzanne Robertson speaks about Discovering the essence of the problem: the route to the best, most innovative solution. Details and registration at Business Analysis Conference Europe 2013.

Reykjavik Masterign the Requirements Process
2-Oct-2013 to 4-Oct-2013

James Robertson presents Mastering the Requirements Process for Continuing Education at the University of Iceland. Please contact Ragna Haraldsdóttir.

Brussels, MRP part 2
10-Oct-2013 to 11-Oct-2013

Brussels, Mastering Business Analysis
10-Oct-2013 to 11-Oct-2013

James Robertson teaches Mastering Business Analysis. Contact IT Works for details of this course.  

Oslo, Mastering the Requirements Process part 2
14-Oct-2013 to 15-Oct-2013

Suzanne Robertson teaches Mastering the Requirements Process part 2. Details for this advanced class at Den Norske Dataforeningen.

Maarsbergen, Mastering the Requirements Process
15-Oct-2013 to 17-Oct-2013

James Robertson presents Mastering the Requirements Process for Adept Events. Details and registration: English - Dutch.

Oslo, Mastering the Requirements Process
16-Oct-2013 to 18-Oct-2013

Suzanne Robertson teaches Mastering the Requirements Process. For more information on this popular course, contact Den Norske Dataforeningen

Rome, Mastering the Requirements Process
21-Oct-2013 to 23-Oct-2013

Rome, Mastering Business Analysis
24-Oct-2013 to 25-Oct-2013

James Robertson teaches Mastering Business Analysis. Contact Technology Transfer for details of this course.  

Rome, Mastering the Requirements Process part 2
28-Oct-2013 to 29-Oct-2013

Suzanne Robertson teaches Mastering the Requirements Process part 2. Please contact Technology Transfer for details of this advanced class.

Maarsbergen, Mastering Business Analysis
4-Nov-2013 to 5-Nov-2013

James Robertson teaches the popular Mastering Business Analysis. Details from Adept Events in English or Dutch.

Wellington, Mastering the Requirements Process
27-Nov-2013 to 29-Nov-2013

The ever popular Mastering the Requirements Process. For details please contact Software Education.  

Melbourne, Mastering the Requirements Process
2-Dec-2013 to 4-Dec-2013

Mastering the Requirements Process. Please contact Software Education  for details and registration. 

Sydney, Mastering the Requirements Process
2-Dec-2013 to 4-Dec-2013

Suzanne and James Robertson teach the popular Mastering the Requirements Process sponsored by Software Education.

Melbourne, MRP part 2
5-Dec-2013 to 6-Dec-2013

Suzanne Robertson teaches Mastering the Requirements Process part 2. Contact Software Education for details of this advanced class. 

Vienna, Mastering Software Architecture
10-Sep-2013 to 12-Sep-2013

Peter Hruschka present the seminar that allows you to become "Certified Professional for Software Architecture". Please contact CONECT for Details

in depth

In this podcast James speaks of his experience in the profession of architecture and how it provides inspiration for his work on innovation and creativity. He also discusses the role of the business analyst in agile teams. Listen to the podcast.


There are now seven books by Guild authors available as ebooks, either as Nook Books or as Kindle Books.  



Shane Hastie's interview with the authors and book excerpt: Mastering the Requirements Process on InfoQ.


The preparation course for the IREB "Certified Professional for Requirements Engineering" is now available as video training. Learn at home or any other place. Including questionnaires to prepare you for the multiple choice test.



Mastering the Requirements Process, third edition Getting Requirements Right is now available as a Kindle Book, Nook Book, or in traditional paper.



A Sci-Fi novel from Tom DeMarco: Andronescu’s Paradox.  Could this be the Apocalypse we’ve all been dreading?  Or has the nineteenth century just returned for an encore?  Click to find out.



James & Suzanne Robertson challenge the accepted wisdom of the agile community and point out how agile projects don't always deliver value to the organization. Download the pdf from Cutter Consortium.


In a recent issue of IEEE Software Tom DeMarco asserts that “All Late Projects Are the Same.”   Do you agree with Tom or not?  Take a look at All Late Projects Are the Same.



Suzanne Robertson was interviewed by Penny Pullan on the subject of 'The Business Analyst Working with the Project Manager'. This interview is part of the Business Analysis Summit, November 2011. Listen to the interview at volere.co.uk



Tom DeMarco and Peter Hruschka interviewed by Markus Voelter on Software Engineering Radio about the process and the discoveries from writing Adrenaline Junkies and Template Zombies.