Agile Computing Authors: APM Blog, Pat Romanski, Liz McMillan, Shelly Palmer, William Schmarzo

Related Topics: @CloudExpo, Agile Computing, @DXWorldExpo

@CloudExpo: Blog Feed Post

Four Secrets to Managing Your Testing Workflow By @JustinRohrman | @CloudExpo #API #Cloud

How do we manage the flow of work and keep testers productive?

Four Secrets to Managing Your Testing Workflow
By Justin Rohrman

Take your typical project.

New code appears in pieces - the front end is ready, but the API that front end makes request on isn't even on a test server yet. There is a performance optimization project going on the side.

One tester is dealing with a critical support issue, another is supposed to get a new feature any minute now, and the last is completely blocked.

This is normal life in software testing. Work comes in fits and starts, and is often hard to predict.

How do we manage the flow of work and keep testers productive? Here are a few things that have worked for me.

1. Go beyond test cases
In the past when new feature development was just starting, the daily tester scrum was a steady flow of people saying write more test cases!

Test cases dominated the conversation, and it wasn't just during the start of projects. When testing finally started everyone was running test cases, and probably talking about how many were left, how many had failed, and how many needed to be performed again. The test cases didn't tell us about the quality of the product, and they certainly weren't helping me figure out when I was done testing. The test cases were acting as filler, something to do when we didn't know what else to do.

We can do better than test cases.

That period of time between when a release iteration begins, and the first testable thing is ready is certainly shrinking, but there will always be some delay. Instead of ‘writing test cases' in that buffer, I'd rather contribute as a team member. Test Driven Development (TDD) is growing but is still something practiced mostly by outliers, the developers that really care about their work. The technology stack can be tricky of course, and the underlying premise of TDD is that the developer is actually good at testing.

Testers are professional test designers; those who have done it for over a year with attention are relative experts. That might be intuitive; we might not be able to explain the how or why we picked a certain combination of events to test, but we still have that hunch that proves useful. When I sit with a developer, I usually ask questions in rapid fire - how do you know what the value is at this point? What happens if the user clicks Submit too soon? If this code is changed will it break this -  and at the end leave with a few new automated checks and hopefully a slightly better feature. When there is a build, I go all in, but there is no point when I'm just waiting.

I can already imagine the protests - this will take too long and we'll get fewer features. Maybe, maybe not. You could get fewer features, but they would also be working better on the first try, while training the programmers to improve first-time quality. I have left a sprint more than once using this method with five working and ready to go features, instead of the usual three done and a fourth in a questionable state. Try it out with one person on one feature, and see how it goes.

2. Fix unnecessary blockers
Serious blockers, things that prevent you from working on the project at this very moment, are one of the big reasons iterations get that herky jerky, start and stop feeling. The worst offender is a new build that falls over the minute you look at it - the dead on arrival (DOA) build. At first glance, this might not feel like a testing problem. Surely the test team didn't cause the build to fail or login to throw exceptions. The problem is up-stream of testing.

On small teams, the hardest part of preventing the DOA build is cultural. I worked on a project once where a good week only had two or three DOA builds. On a bad week we didn't get much work done. Developers were working too many hours under too much pressure and things were falling apart. All it would have taken to move forward was the developer checking out the latest code and spinning up the build to poke around a little bit. Nothing too heavy, but enough to see that basic functionality is there.

If you're on a bigger team that is committing code not just a few times an hour, but more like a few times a minute, then grabbing the latest code probably won't do much good. By the time everything is checked out and running, your up-to-date environment isn't so up-to-date anymore.

Having some amount of automated checks running with every build, even on local development systems, can really help in this type of environment. In addition to being able to see when a new change potentially broke something else, you can easily see areas with no coverage and remember to look there for surprises.

But, what if the blocks are mental?

3. Make use of "down time"
The phrase ‘I don't have anything to do' is like nails on a chalk board. There is almost always something that can be done on a project, somewhere I can work in and create value. We testers usually find ourselves in software, but there is a lot more we can do, and people that can be helped, in those rare instances that there is no new software to work on.

  • Product Managers: Product managers are experts at talking with customers about their needs, and turning that vision into something the developers can use as a direction forward. In the past when things have been slow, I like to find those product meetings and start asking probing questions about who will be using the feature and what value they want. Maybe those questions help make a better feature. At a minimum, I walked away with a good understanding of software in the pipeline.
  • Support: Support always has something time sensitive in the works. Sometimes that is a hard to reproduce bug, sometimes it is getting educated about what is in the latest release. The support call and email logs have always been useful for me. I like to look for patterns in questions to guide my testing and add weight to a report. If five people call that need help with some aspect of the product, I can probably find a bug.
  • Documentation: I see documentation less and less. It seems that most companies are moving to SaaS and expect people to just figure it out. When I worked on a heavy weight installed product, the documentation needed to be tested just like the product. Do the new features work the way the docs explain? Are the installer instructions correct, do they actually work? There were always bugs to be found in those pages.

4. Think beyond the short-term flow
A lot of what i have talked about so far - finding waste; getting people past blockers - is geared toward getting people back into the game right now. That is a good strategy when we are worried about the next build, or even the next release, but we have to worry about the months in front of us, too. There are things we can do now that will pay off in the future.

Hopefully you have cross-functional teams, the next step is to develop a culture of pairing.

Two brains are usually better than one, and getting a developer and tester sitting together and working on a feature will have surprising results. I've done this a few times on teams with developers that trusted me.

The general idea was that we happened to both be in the office early when it was quiet and easy to work. I was playing some music and testing a change that made it into the build last night and that developer would ask me if I had a minute. I always did, and that builds trust. I'd roll over to his desk and ask for a demonstration of the change and take some notes about simple things, maybe a button that could be moved or a missing label highlight and then we'd get down to business.

I'd ask questions, like what happens when I add a special character here or forget to populate that field, and then we'd immediately try it out right there in the dev environment.

Sometimes we would find bugs, and I'd go off and do my own thing for a while while he fixed them. Sometimes, we could come up with questions that neither of us knew the answer to and we'd make a note to ask the product manager.

The end result was always knowing more about the feature, and having decent quality before the change made it into the test environment.

The other tool I like to use is strategic automation. This takes time to realize, there are technology stacks to learn, build systems to configure, and then the checks of course have to be written. One team I worked with had a product based on a REST API.

When I joined the team, there was one test against the API that made sure someone could authenticate, but that was it. My first task was to get that running with every build, so if authentication broke in an obvious way, we'd know about it before someone tried to log in.

Over the next few months, I spent time building out API tests in areas the developers were concerned about. I found quite a few problems while building the tests, and one by one they were added to the build system and would throw alarms when something bad happened. Finding out about problems faster helped us get them fixed faster.

Flow is all about smoothing out the ups and downs of software work to find a steady, stable pace to work. There are lots of reasons to work on flow  - maybe you want to know how much software can be delivered in the next couple of months, or maybe you just want to not work your team to death.

Pick a place, smooth it out, and let me know how it goes.

Read the original blog entry...

More Stories By SmartBear Blog

As the leader in software quality tools for the connected world, SmartBear supports more than two million software professionals and over 25,000 organizations in 90 countries that use its products to build and deliver the world’s greatest applications. With today’s applications deploying on mobile, Web, desktop, Internet of Things (IoT) or even embedded computing platforms, the connected nature of these applications through public and private APIs presents a unique set of challenges for developers, testers and operations teams. SmartBear's software quality tools assist with code review, functional and load testing, API readiness as well as performance monitoring of these modern applications.

@ThingsExpo Stories
DX World EXPO, LLC, a Lighthouse Point, Florida-based startup trade show producer and the creator of "DXWorldEXPO® - Digital Transformation Conference & Expo" has announced its executive management team. The team is headed by Levent Selamoglu, who has been named CEO. "Now is the time for a truly global DX event, to bring together the leading minds from the technology world in a conversation about Digital Transformation," he said in making the announcement.
"Space Monkey by Vivent Smart Home is a product that is a distributed cloud-based edge storage network. Vivent Smart Home, our parent company, is a smart home provider that places a lot of hard drives across homes in North America," explained JT Olds, Director of Engineering, and Brandon Crowfeather, Product Manager, at Vivint Smart Home, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
SYS-CON Events announced today that Conference Guru has been named “Media Sponsor” of the 22nd International Cloud Expo, which will take place on June 5-7, 2018, at the Javits Center in New York, NY. A valuable conference experience generates new contacts, sales leads, potential strategic partners and potential investors; helps gather competitive intelligence and even provides inspiration for new products and services. Conference Guru works with conference organizers to pass great deals to gre...
The Internet of Things will challenge the status quo of how IT and development organizations operate. Or will it? Certainly the fog layer of IoT requires special insights about data ontology, security and transactional integrity. But the developmental challenges are the same: People, Process and Platform. In his session at @ThingsExpo, Craig Sproule, CEO of Metavine, demonstrated how to move beyond today's coding paradigm and shared the must-have mindsets for removing complexity from the develop...
In his Opening Keynote at 21st Cloud Expo, John Considine, General Manager of IBM Cloud Infrastructure, led attendees through the exciting evolution of the cloud. He looked at this major disruption from the perspective of technology, business models, and what this means for enterprises of all sizes. John Considine is General Manager of Cloud Infrastructure Services at IBM. In that role he is responsible for leading IBM’s public cloud infrastructure including strategy, development, and offering m...
"Evatronix provides design services to companies that need to integrate the IoT technology in their products but they don't necessarily have the expertise, knowledge and design team to do so," explained Adam Morawiec, VP of Business Development at Evatronix, in this SYS-CON.tv interview at @ThingsExpo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
To get the most out of their data, successful companies are not focusing on queries and data lakes, they are actively integrating analytics into their operations with a data-first application development approach. Real-time adjustments to improve revenues, reduce costs, or mitigate risk rely on applications that minimize latency on a variety of data sources. In his session at @BigDataExpo, Jack Norris, Senior Vice President, Data and Applications at MapR Technologies, reviewed best practices to ...
Widespread fragmentation is stalling the growth of the IIoT and making it difficult for partners to work together. The number of software platforms, apps, hardware and connectivity standards is creating paralysis among businesses that are afraid of being locked into a solution. EdgeX Foundry is unifying the community around a common IoT edge framework and an ecosystem of interoperable components.
Large industrial manufacturing organizations are adopting the agile principles of cloud software companies. The industrial manufacturing development process has not scaled over time. Now that design CAD teams are geographically distributed, centralizing their work is key. With large multi-gigabyte projects, outdated tools have stifled industrial team agility, time-to-market milestones, and impacted P&L stakeholders.
"Akvelon is a software development company and we also provide consultancy services to folks who are looking to scale or accelerate their engineering roadmaps," explained Jeremiah Mothersell, Marketing Manager at Akvelon, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
"IBM is really all in on blockchain. We take a look at sort of the history of blockchain ledger technologies. It started out with bitcoin, Ethereum, and IBM evaluated these particular blockchain technologies and found they were anonymous and permissionless and that many companies were looking for permissioned blockchain," stated René Bostic, Technical VP of the IBM Cloud Unit in North America, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Conventi...
In his session at 21st Cloud Expo, Carl J. Levine, Senior Technical Evangelist for NS1, will objectively discuss how DNS is used to solve Digital Transformation challenges in large SaaS applications, CDNs, AdTech platforms, and other demanding use cases. Carl J. Levine is the Senior Technical Evangelist for NS1. A veteran of the Internet Infrastructure space, he has over a decade of experience with startups, networking protocols and Internet infrastructure, combined with the unique ability to it...
22nd International Cloud Expo, taking place June 5-7, 2018, at the Javits Center in New York City, NY, and co-located with the 1st DXWorld Expo will feature technical sessions from a rock star conference faculty and the leading industry players in the world. Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud ...
"Cloud Academy is an enterprise training platform for the cloud, specifically public clouds. We offer guided learning experiences on AWS, Azure, Google Cloud and all the surrounding methodologies and technologies that you need to know and your teams need to know in order to leverage the full benefits of the cloud," explained Alex Brower, VP of Marketing at Cloud Academy, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clar...
Gemini is Yahoo’s native and search advertising platform. To ensure the quality of a complex distributed system that spans multiple products and components and across various desktop websites and mobile app and web experiences – both Yahoo owned and operated and third-party syndication (supply), with complex interaction with more than a billion users and numerous advertisers globally (demand) – it becomes imperative to automate a set of end-to-end tests 24x7 to detect bugs and regression. In th...
"MobiDev is a software development company and we do complex, custom software development for everybody from entrepreneurs to large enterprises," explained Alan Winters, U.S. Head of Business Development at MobiDev, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
Coca-Cola’s Google powered digital signage system lays the groundwork for a more valuable connection between Coke and its customers. Digital signs pair software with high-resolution displays so that a message can be changed instantly based on what the operator wants to communicate or sell. In their Day 3 Keynote at 21st Cloud Expo, Greg Chambers, Global Group Director, Digital Innovation, Coca-Cola, and Vidya Nagarajan, a Senior Product Manager at Google, discussed how from store operations and ...
"There's plenty of bandwidth out there but it's never in the right place. So what Cedexis does is uses data to work out the best pathways to get data from the origin to the person who wants to get it," explained Simon Jones, Evangelist and Head of Marketing at Cedexis, in this SYS-CON.tv interview at 21st Cloud Expo, held Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA.
SYS-CON Events announced today that CrowdReviews.com has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5–7, 2018, at the Javits Center in New York City, NY. CrowdReviews.com is a transparent online platform for determining which products and services are the best based on the opinion of the crowd. The crowd consists of Internet users that have experienced products and services first-hand and have an interest in letting other potential buye...
SYS-CON Events announced today that Telecom Reseller has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5-7, 2018, at the Javits Center in New York, NY. Telecom Reseller reports on Unified Communications, UCaaS, BPaaS for enterprise and SMBs. They report extensively on both customer premises based solutions such as IP-PBX as well as cloud based and hosted platforms.