Software testers at the STAREAST 2013 conference in Orlando, Fla., from April 28 to May 3 returned home this week with a new agenda: Come up with a professional development plan.
The prevailing feeling at the conference was that is a good time to be a software tester. "People see themselves evolving; there is a lot of optimism around the profession -- a lot of hope," said Tom McCoy, a test manager for the Department of Families, Housing, Community Services and Indigenous Affairs, in Canberra, Australia.
In his keynote address, "Testing in a test-driven world," delivered to a packed room of software testers, Jeff Payne, CEO of software consultancy Coveros Inc., said, "We are no longer at the end of the whip. When budgets get cut, testers don't suffer all of the consequences."
Amid widespread optimism at the STAREAST conference, there was also evidence that testers must take charge of their careers, coming up with their own professional development plan. Although software testing is gaining respect as a profession overall, leadership opportunities aren't there for the asking. They are available only to those software testers who have the skills, courage and determination to pursue them. "You have to show up, crash the meeting and offer your opinion [even when no one is asking for it,]" said Jon Bach, director of Live Site Quality at online auction site eBay. "That takes personal courage."
Payne agreed that software testers must be their own advocates. The profession is changing and those changes bode well for software testers, he said. "But it's up to you to figure out what is happening," said Payne," and find a place in your organization to do what you are going to do in this new, test-driven world."
In this tip, STAREAST conference participants offer professional development advice.
Develop better communication skills
In his keynote address, "What software testers can learn from journalists," McCoy said software testers need to do a better job communicating with developers and product owners. They should avoid an accusatory tone when talking to developers about problems found in testing. "Have you thought about what happens when a user attempts to register more than once?" he asked, offering an example of how to inform a developer that the software he wrote has a flaw. This approach is so much more effective than saying: "There's a major hole in requirements," McCoy said. "Users can register as many times as they want."
Technology helps software testers make their case. McCoy has been known to record videos of user acceptance testing sessions. He showed an example at the conference, where the user repeatedly says: "I can't find the Save button." Videos help when earlier efforts to convince the developer to add the Save button, for example, fail. "It's too expensive, too time-consuming," said McCoy. "That's what the developer keeps telling you."
Map the organization and get involved
Software testers have a tendency to isolate themselves, sitting in the back room and doing their work. That's not doing their careers any good. McCoy recommends getting involved in companywide social activities such as sport events, after hours. Getting to know co-workers informally helps software testers understand who is connected to whom within the larger organization, McCoy said. "That is useful information when trying to figure out why certain decisions were made." He recommends literally drawing a map depicting connections among employees to help improve your understanding of the organization.
Get involved early in the application lifecycle
Payne recommends that software testers participate in requirements planning meetings at the outset of application projects. "In a test-driven world, we test specific behavior before we build the code, and that means testers get involved early -- before coding takes place."
Asked at the STAREAST conference what she thought of Payne's suggestion, a test manager for a national retail chain (she did not want to be named) said: "It's good in theory, but it would never happen in my organization. We are so far away from that." The four software testers who work for her have virtually no involvement in planning and requirements, she said. Yet, when she asks them how she can best help, they make the same request every project: "Get us better requirements to test."
Getting software testers involved in planning and requirements would take "a major shift in mindset" of her organization, the test manager said. She is not sure how to make that happen. Asked to offer advice to this test manager, eBay's Bach said: "What would happen if she simply showed up at the meeting?" The reaction she fears is not likely to materialize, he said. "As software testers, the more we speak up about our expectations, the better off we are."
Analyze problems, identify solutions
A key trait that separates test leaders from test managers is the ability to thoughtfully address problems that crop up in testing projects. Typical problems -- known in this context as "risks" -- include things like "not enough time to test the software" said Geoff Horne, New Zealand-based software test management expert and publisher of NZ Tester magazine. In a STAREAST session called "Deadline approaching? Budget cuts? How to keep your sanity," Horne showed how to identify possible solutions to the "not enough time" problem and explained how to weigh the various solutions to arrive at the best option for your organization.
Here are some of his examples, along with the issue each approach raises:
- Execute fewer tests. (What is the risk to the software?)
- Add more people. (Does the budget allow for this?)
- Delay the "go live" date. (What is the risk to the business?)
Horne's framework enables software test managers to take a leadership approach to a common problem instead of just assuming the blame when testing can't be completed on time.
Provide business leaders with feedback on the decisions they make
In a keynote presentation titled, "Surviving or thriving: Ten lessons for professional testers," Lloyd Roden, founder of a software test consultancy of the same name, said one common mistake test managers make is they don't interact with their business leaders often enough. "Go back and say; 'that was a good decision,'" he said. "Test managers who do that are more effective for their organizations."
He offered an example of an effective interaction between a software test manager and a business leader:
Business leader: Can we go live today?
Test manager: Yes, we can. However, we found 25 bugs during the last two weeks, and during the next two weeks, an additional 25 bugs will likely be found by the customer. If you give us two more weeks, we will find and fix the second set of bugs, and also conduct regression testing to make sure existing code works with the new changes.
Business leader: Take the additional two weeks.
Test manager (4 weeks later, armed with a report that shows bugs found and fixed): You made the right decision.
Effective interaction with business leaders helps create a culture of respect around software testing, Roden said. Software testers are a natural fit for leadership, added Coveros' Payne. "They see the big picture, they understand things aren't black and white," he said. "So move toward leadership. Focus on the business perspective of testing. Think strategically about software," he told the audience at STAREAST.
This was first published in May 2013