James Marcus Bach, Who Doesn’t Know!
A noted thought leader, a prominent speaker, author and the creator of Rapid Software Testing™ in QA community. He has acquired many skills in quality testing, software engineering, and DevOps testing to drive many revolutionized ideas and testing methodologies such as Exploratory testing, to improve the way we develop and test software.
He is currently leading Satisfice Inc, a teaching QA company and spent nearly a decade as a Test Manager in Silicon Valley. He worked for Apple and Borland. His popular blogs, thriving series of Conferences and testing publications have undoubtedly grabbed popularity, always.
With this publication, we are delighted to host James with an interesting QA session and thankful for his ideas on upcoming testing trends and challenges. Here he lay down his thoughts on Agile and DevOps adoption, automated testing, continuous testing and how Covid pandemic impacts on software testing industry.
Interviewed By Kanika Vatsyayan, VP Strategies- BugRaptors
Kanika : James, It’s a delightful moment for me to take your interview, you are really an inspiration for me & many software testers. Your several proven records in the IT firm with your rapid software testing methodology, which we and even QA industry widely use for designing and development, mainly when it comes to delivering something unique, in a budget, or completely satisfy the customers with the mission of testing.
James, according to you, what are the driving forces that compel organizations to adopt Agile and DevOps?
James Bach: To some degree you can’t avoid it. If I have a tool that deploys to production, then, kazaam!, I’m doing “DevOps.” If I develop incrementally, then, kapow!, it’s going to be called “Agile.
And to some degree, companies are trying to do whatever they perceive the successful companies do, and that’s “Agile” and “DevOps.”
I’m not interested in best practices religion, myself. I’m a humanist and a methodologist, but I don’t consider myself an Agilist. I think we all should have a reasonable grasp of methodology, and then tinker with our processes the way self-assured adults do.
Kanika : What according to you are the advantages of DevOps for an Agile based Company?
James Bach: There are advantages and disadvantages to anything. But that will differ depending on the situation. In general, I’d say that DevOps seems to be focused on risk management, and that’s good, except that it de-emphasizes testing, and testing is how we learn about product risk. That is to say, it tries to dissuade serious testers, like me, from doing deep testing, because that’s not convenient— it slows things down.
DevOps generally goes along with a philosophy of “automate all the testing.” But that usually translates into shallow testing (testing that only finds easy bugs). The automation push also discourages excellent critical thinkers and user advocates from being testers, since the main qualification has become that you can write simple code.
DevOps does help testability in some respects, however, because of the change control and controlled deployment and rollback capability that goes with it.
Kanika : Do you think Continuous Testing is necessary for DevOps and What are your experiences?
James Bach: “Continuous testing,” when my clients bring it up, appears to mean kicking off some sort of automated scripted user simulation on every build. (In fact, what most people call “test automation” is nothing more than simulating a user using the product, and checking the correctness of the output. If you ask “what else could ‘test automation’ be than that?” I have lot of ideas for you.)
If you want to deploy constantly and very fast, then I guess you better have some automated checks. But that is always going to be shallow testing. Deep testing is, by its nature, discontinuous. It is episodic and exploratory. Sure, we can “continuously” be on the job as testers, but when I set out to investigate a product risk, which is what good testers do for a living, it’s not like spraying water from a hose. It’s more like building a house, with starts and stops and different stages.
Kanika : Do you agree that by adopting Automation Testing, testers and developers can utilize their saved time? How should they use this saved time?
James Bach: I don’t believe that testing can be automated. And I say that as a programmer who writes tools to help me test on every single assignment.
I do think that tools are an important part of testing. Not everyone needs to be a “full stack” tester, but if you want to be one, you must be able to construct tools to help you wrangle data and interact with the product.
I don’t see tools as saving me time. They take time— time to build and time to maintain. What tools do is increase my power and reach and reliability as a tester. I was on a project once where the plan was to analyze statistical data with Excel. I instead wrote a Perl program to do it. Based on the spreadsheet work I had to do to test that tool, I guess it transformed about 5 hours of work into about 5 minutes. But I didn’t do it to save time, I did it because otherwise I would simply not have been allowed to do all the statistical testing that I believed was necessary. I wanted a high standard of coverage, and good tools allowed me to get it.
Kanika : Being a QA expert, what critical issues or deficiencies do you suggest to be fixed on priority in Industry?
James Bach: I think testers need to learn how to explain and defend testing as soon as possible, or else the DevOps people will “shift left” them right out of business. And when all the testers are gone, someone will have the bright idea of bringing testing specialists back again, but probably under some different name like “risk wardens” or “tech investigators.” The industry will start all over again.
Unfortunately, most testers are young and untrained. They haven’t studied epistemology or cognitive science. They have no idea about the importance of tacit knowledge or sensemaking, even though they rely on both. Their lack of self-awareness makes them easy to bully, and easy to exploit. The result is that smart people rarely want to specialize in testing.
Nevertheless, I specialized. And I will never abandon testing. I will keep the signal fires lit, come what may. I love the complexities of good testing.
Kanika : How corona virus is impacting software testing industry? What’s your thoughts?
James Bach: It’s making us learn how to work remotely. I predict that the industry will largely abandon centralized office space, after this is over. The new Silicon Valley will be everywhere that’s rural and has fiber Internet. Hey, just like where I live now. I don’t travel anymore, and I love it. But then again, my wife is an excellent cook and a wonderful companion. So, maybe I just hope I don’t ever have to go back to flying around the world to visit each client, and to eating an unsupervised diet.
Thanks much James for this wonderful QA session.