After Twitter-stalking him, making some harassing phone calls and sending threatening letters, Jon Bach (@jbtestpilot) cheerily agreed to take part in our Testing the Limits series. Much like his brother, Jon has a remarkable understanding of software testing – both in theory and in practice. Having worked for companies like Quardev, LexisNexis, HP and Microsoft, Jon is also a blogger, author and software testing consultant. An expert, in the truest sense of the term.
In the first installment of our two-part interview, we get Jon’s thoughts on sibling rivalry; the blame spiral of software development; the emergence of “agile-fall”; testing at a startup vs. testing in the enterprise; John Schneider as Jon Bach and more.
uTest: A few months back, we asked your buddy Andy Muns who’d win a fight between you and your brother (this was a big debate in the uTest office). He said you would win hands down. Would he be right? And since you and your brother seem to share the same testing philosophy, what would do you think the fight would be about?
JB: It’s hard to fight with someone who stayed in their room for most of our childhood. He was either reading or doing science experiments with a microscope or the chemistry set. It got worse when we got the TRS-80 in 1980. In fact, that’s probably the last time we fought — over who got computer time next. My memory may be fuzzy, but just when it came to blows, he programmed a user name and password dialog? Something clever like that. Now it’s better just to learn from him and do my best to keep up — but that’s true for all younger brothers, I think.
As for modern-day fighting, sponsor me for a testing certification and let’s see what he’d do.
uTest: Say you’re named grand poobah of the QA universe… what’s your first decree?
JB: Effective today, “Quality Assurance” is now “Quality Assistance”.
(Try it. Watch what happens when you start using it.)
uTest: When there are delays in development process, why does testing always seem to take the blame? Is their role just misunderstood? Or is it really the testing team’s fault? How can companies avoid this seemingly never-ending spiral?
JB: Often, we’re saved until last. It’s like the novel is written, the movie is produced, but the reviews aren’t in yet, leaving the creators in a heightened state of worry and concern. It’s a lot of stress to be in that position. As testers shine the light on the product, looking for risks and vulnerabilities, the light is really shining on *us*. We’re being tested just as much as that software, so we tend to be sensitive and aware of being in a critical position as others wait for our findings.
Not being an Agile guy, I’m finding that the values and principles of Scrum, Agile, Lean, and XP may be compelling enough to try. I’m getting more into that domain and I see merit in the values and principles it is trying to instill. One of my favorite colleagues (Elisabeth Hendrickson) is coaching me in a gentle way and her stories are enlightening because she lives this stuff. Like me, she used to focus on exploratory testing, but catching up with her recently, she seems to be the whole package — developer, tester, manager, coach — and seems to be immune from that never-ending blame spiral you asked about. That’s compelling to me. Some may call her one of those ardent “Agilista” types, but to me, she hasn’t lost her testing spirit or soul. Though she may agree there’s no silver bullet, she has some great experiences that convince me that with those approaches, the blame spiral is being made irrelevant because of the way testers are more involved, earlier.
uTest: In Half-Baked Ideas for Rapid Test Management (PDF) you used a term called “Agile-fall” (a combination of Agile and waterfall). This seems to be the methodology that most companies follow, yet they always call themselves agile. Is there any shame in being Agile-Fall? And did you coin this term? We couldn’t find it anywhere else.
JB: “Agile-fall” was something I heard at LexisNexis from an awesome PM named Lance Thomas, but in a Google talk in 2005, Elisabeth Hendrickson called it “Scrumfall”, so search on that term and you’ll see that it refers to having the principles associated with Agile (daily stand-ups, sprints, burndown charts, etc.), done in a waterfall-y series of development steps. Example: Sprint 1: Gather requirements, Sprint 2: Design your tests, Sprint 3, Run those tests, Sprint 4, Fix bugs, Sprint 5 regress those bugs. There’s no shame in that if that’s what works, and when you’re going through a transition from Waterfall to Agile, that may be the best thing as opposed to a sudden lever-pull one day where you show up and your desk is next to someone else with no walls and there’s a stack of sticky notes and markers on your chair with an email to report to your first standup in 30-minutes.
uTest: It looks like software bugs are partly to blame for the recent Toyota recall debacle. Is this the worst nightmare for testing managers? What else keeps them up at night?
JB: I almost got a Toyota last month, and wish I had, just so I could find a cool defect. But my nightmares in testing are: “Why didn’t you catch that bug?” Though I know several answers to that, and my favorite colleague Michael Bolton has a rich list of answers to that question, they don’t often overcome the strong emotional attachment that stakeholders have. And I can’t blame them, really. The more we call ourselves “Quality Assurance” (like we can guarantee quality), the more they will lean on us to assure them. I can’t. But I can certainly *assist* with the notion of whether something has value to its intended customer.
What keeps me awake is how to know if I’m bringing the right value to the project. There are a million things I could do, but which ones have the most value right now? I’m worried I would stumble into an idea too late, or not at all. That’s why I like heuristics and mnemonics and checklists to kick my mind into gear when I feel stuck or worried.
uTest: What’s the biggest difference between working for a large, mature enterprise and a small young startup (from a testing point of view, that is)?
JB: I’ve worked at both. At Quardev, which is neither startup or enterprise, we’ve got a mature-but-startup mentality. Since the word “Quardev” comes from an amalgam of QUality Assistance, Research, and DEVelopment, the balance of those gives us enough diverse opportunities to make it feel like a big company.
From a testing point-of view, test ideas are king no matter what size your company. Some may say the toolset is king, or dev skills are king, but when I’ve worked for start-ups, you don’t need as many signatures on things, and that helps creativity. You might fail faster with those test ideas because you have to do it cheaply, and that’s good. It’s like projects I’ve been on that use notions of Agile compared to those that don’t. I see those kinds of projects revealing problems faster because of the way the culture organizes to deliver working software.
At a small startup, it’s often expected that you’ll be brilliant. That pressure can make work not-so-fun. Maybe that’s why some of my best ideas came from working in enterprise environments (Microsoft, HP, LexisNexis). In those places, there was a perception that every test idea, method, tactic, and strategy had been tried before. That carried an unspoken dare (in my view) that begged to be challenged, which few people took on. For me, brilliance and innovation come when someone counts me out or doesn’t expect it. I like that. I like exceeding expectations no matter how big or small the crew.
What sums it up is a TED talk by Ken Robinson, who said: “If you’re not prepared to be wrong, you’ll never come up with anything original.”
uTest: Who plays Jon Bach in the made-for-TV-movie about your career in testing? And what’s the title?
JB: John Schneider, only because it has to be called “The Duke of Hazards.” It also fits because I told my friends in school that I was related to Cousin Daisy (played by Catherine Bach). Not true, but it helped keep the bullies away.
Editor’s note: Here’s part II of the interview.