Being a Shark: Software Testing for Small Startups
So have you just started or joined a startup company? Maybe there are only five of you doing the jobs of ten people, and a couple of the team members are developers. How do you get quality into your product? How do you test your product with limited resources?
The "Ten Minute Test Plan" video by James Whitaker below is a good place to start.
Chances are you will not be in the position to hire a dedicated tester. Developers will be the core of any testing effort. They need to plan how they are going to test the software they are building. They know they are building iteratively because there is just no other way in a startup. I recommend that developers watch George Clooney’s empty backpack theory in the movie Up in the Air.
Why did you just watch that? Because in a startup, you are a shark. You have to keep moving to stay alive. You don’t have weeks to spend thinking, planning, writing, executing, and repeating. You don’t have time to clutter your process. You have to think differently when it comes to testing. James Whitaker highlights some great points we should look at further.
First, describe the value proposition of your product and write test cases to cover that. Second, describe what the components are that make up your product, and write test cases for them. Third, list the capabilities of your system, and write test cases for them. Execute the tests. You have now tested your product and can be confident you are releasing to market a product that has quality at its core.
However, before opening the bubbly, the next action to consider: What are the risk centers of your software? This is essential. After all, the goal of software testing is to find bugs. Spending some time identifying those areas of the software that pose more risk for the user makes your time more productive.
It has been shown that bugs cluster. You might find 80 percent of the defects in 20 percent of the code base. It’s all about risk analysis—do it carefully to save time and make your product a success.
Programmers can find themselves dropped into a scenario they just aren’t taught or trained for when having to think about quality and testing in a startup. Here is a discussion by programmers on how software tests are done at tech startups, which elicits interesting comments.
So if you are a startup thinking of getting testing training for your programmer, as well as the rest of team, it's likely to be money well spent.