Interview: Rex Black 
   
News | Interviews | Workshops | Contact Us | Collaborative Book Writing

Home

Q-Patterns

Jobs

WIT Groups

Workshops

Contact us
 

Rex Black is founder and principal consultant of Rex Black consulting services. He has written two books Managing the Testing Process and Critical Testing Processes. He has provided many templates for download on his site www.rexblackconsulting.com.

WhatIsTesting interviewed him recently. We hope that this interview will be useful for you.

Q1. Rex, please tell something about your background, your experience, and non-testing interests. I have spent over 20 years in the software, hardware, and systems engineering business now. Most of that time has been as a tester and test manager, though I have also worked as a programmer and system administrator. I’ve worked with shrink-wrapped software for start-ups and big Information Technologies projects for banks. I’ve worked with the Department of Defense and with university research facilities. I’ve worked on PCs (starting back in the CP/M days), Linux, SGI, HP/UX and Solaris workstations, Unix, VMS, and AS/400 minicomputers, and even big mainframes.
In my varied experience, I’ve learned that, in testing, common themes run through projects that involve different technologies, different business problems, and different teams. The specific context matters, of course, but the commonality of problems—and solutions—is what strikes me.
When I’m not working, I try to spend time around the Texas Hill Country with my wife and daughters, out hunting with my dog, or fixing up our house.
Q2. What are your comments on the state of software testing in industry today? Software testing—like programming—is in a state of intense change. We are seeing new technologies in both; testing tools and programming languages are evolving rapidly. We are seeing new project methodologies in both; quality risk analyses and solid unit testing are gaining ground. We are seeing new approaches to organizing projects in both; outsourcing is big for testing and development. As is the case in all industries throughout history, times of intense change are times of what the economist Schumpeter called “creative destruction.” These changes will destroy many existing organizations, approaches, and accepted ideas, but those changes will also create amazing opportunities and growth for the educated, the clever, the disciplined, and the industrious.
Q3. Even after decades of practice software testing still remains a much misunderstood process in industry. Everybody agrees that it is important but nobody agrees on exactly how or what to be done. Your comments? Indeed, there is a large gap between known best practices and typical practices in software testing. I believe this is true for software engineering in general. Think of how many projects are managed without even a cursory work-breakdown-structure. Read Brook’s The Mythical Man-Month: You’d think he was describing software engineering projects being done today, but he wrote that book based on experiences in the 1960s and early 1970s!
Education is part of the answer. People who want to prosper in this time of change will need to master the known best practices. There are plenty of books, articles, and courses available for those committed to doing so, in software testing in particular and in software engineering in general.
Just knowing the ideas is not enough. You must be clever enough to adapt these ideas to your circumstances. As I wrote in Critical Testing Processes, there is no such thing as the One Right Way to do anything. However, there are general ideas that clever people can fine-tune to fit their circumstances.
Discipline and hard work are also part of the answer. The lazy and the undisciplined cannot expect to survive in tough economic periods, particularly when major changes are occurring. Many of these best practices require patiently gathering data, incrementally improving, sticking with hard work, over long periods of time.
Q4. Do you think that software testing profession is maturing as an engineering discipline? Yes. We are clearly seeing more people understanding the need for specialization in testing. We are seeing more books, educational offerings, and consulting services that specialize in testing. That said, we still have a long way to go, especially in terms of the gap between known best practices and typical practices that we spoke of earlier.
Q5. What is the future of software testing in your opinion? It’s hard to say right now. I see software as in a position very similar to the automotive industry in the 1970s and 1980s. Up to that point, the US carmakers dominated the global market for automobiles, but, frankly, they built and sold low-quality cars. By applying ideas from people like Juran and Deming, the Japanese carmakers showed the world that it was possible to have high quality cars without high price tags. The Japanese helped people understand that quality does not mean luxury and ostentation, bells and whistles; quality means satisfying reasonable customer and user expectations again and again and again.
In the Japanese automotive revolution, quality control and quality assurance lead the way. They were key. There could be parallels now in software, if users and customers are ready to demand affordable software that simply works and works simply.
Certainly the economic situation and the rise of outsourcing is driving another possible parallel: The off-shore software houses, if they seize the moment, could lead the way, just as the Japanese took over the leadership of the auto industry in the 1980s.
Q6. How should a tester prepare oneself for the upward movement in management ladder as a test team lead, test manager and beyond? What are the essential qualities that they must develop? There are many essential qualities and skills. A tester who aspires to management must understand the underlying business considerations. Technology by itself is not by the point. Technology makes business innovations and improvements possible. Technology solves problems. And technology involves costs and benefits, risks and opportunities. Management decisions revolve around such considerations.
So, a tester must grow the skills needed to effectively consider and manage these factors. Estimation and budgeting. Risk analysis. The pertinent business domains. The effective tester knows testing and technology, but transcends those areas to understand management.
Q7. Given that consumers are increasingly becoming conscious of quality, how do you see that impacting the software testing process? Or maybe consumers are not as demanding of quality as they should be?

Consumers are still not as demanding of software quality as they should be. Many users of software and systems assume that, if their computer screws up, they must be stupid. They say things like, “Well, I wouldn’t have this problem if I knew how computers work.” Hogwash.
First, this statement is not true. I know how computers work, and I have plenty of problems with them. I call those problems “bugs” rather than calling myself “stupid.” Second, no one would ever make such an assumption about any other work-a-day implement or tool. Can you imagine someone saying, “Stupid me, my car wouldn’t be stalling if I just understood internal combustion engines and could adjust my own timing belt”? Third, it is the job of those who build tools to make those tools fit for use. If the users find them clumsy or cumbersome, they should reject the tools, not insult themselves.
Sooner or later, as with cars, refrigerators, and washing-machines, computers will become common place. Then, as consumers did with other common-place appliances, tools, and conveniences, consumers will start to take them for granted. I think that day might be sooner than we think. At that point, consumer tolerance for lousy software will end.
I think we’re already seeing that in terms of IT software. Business customers—the CIOs, the IT managers, the project sponsors—are unwilling to tolerate big-budget projects that deliver poor quality, often late and sometimes not even at all. I think this intolerance of poor quality, along with a desire to save money, is part of what drives the outsource and off-shore boom. Perhaps consumers are not fair behind.
Companies—and professionals—who position themselves to thrive in a new environment of higher expectations for software will, I think, do well in the future, quite possibly the very near future.

Q8. Rex, you have written two books on software testing process management. What prompted you to write these books? There have been books written on test design and testing itself, but not on test management. There have been books on software project management, but those books did not address test managers. So, my books are addressed to those previously-underserved professionals who are managing testing projects. Based on the fact that my first book has, in the last four years, sold over 15,000 copies around the world, I think the need is clearly there.
Q9. Why did you need to write two books? Why did you think one was not enough? How are the two books related? How should one read these books- Independently or one after the other? What is the overlap between two books? Managing the Testing Process is about tools and techniques for test managers. Critical Testing Processes is about fitting those tools and techniques together into a successful test project, and fitting that test project into the larger project. They are distinct but related topics.
They overlap slightly, in that I can’t assume that everyone who reads Critical Testing Processes has already read Managing the Testing Process. So, I have to describe some of the tools covered in Managing the Testing Process, such as the test tracking spreadsheet when I’m talking about the test execution process.
If you’re planning on reading both, then you should read Managing the Testing Process first, then Critical Testing Processes.
Q10. What are the future trends in software testing that we are going to witness? Clearly, international outsourcing is one key trend. The diverse set of tools for programmer testing will, I think, consolidate into tools for early testing in general, including static testing. Focusing test resources via risk mitigation is another trend.
Q11. Do you think outsourcing of testing is a good idea? What are the factors that prompt consideration of outsourcing? Outsourcing is a good idea under many circumstances.
Certainly cost can be a factor. Geographical convenience can be a factor when the outsource test facility is close to the development facility. Specialized skills—including test expertise—in the outsource test facility can be a factor. Short-term spikes in work that can’t be handled in-house can also be a factor.
Q12. What are the main pain points of outsourcing? It’s important to be very careful in planning and organizing distributed and outsource test efforts. Poorly planned and disorganized test efforts, run in-house, can sometimes succeed through brilliant and inspirational management and leadership. However, under such circumstances, an outsource project will fail.
Q13. What are the advantages of outsourcing? Cost-saving, the access to specialized test professionals, and the ability to leverage strengths possessed by the outsource test facility.

 

www.WhatIsTesting.com - A Tester's Paradise.© 2002 All rights reserved

webmaster@whatistesting.com
Best Viewed in 800X600 Resolution