Welcome!

Silverlight Authors: Automic Blog, Michael Kopp, AppDynamics Blog, Kaazing Blog, Steven Mandel

Related Topics: Microsoft Cloud, Java IoT, Microservices Expo, Silverlight, Agile Computing, Apache

Microsoft Cloud: Article

Making a Case for a Test Case

You need to balance the limitations in terms of resources and time, with the need to ship the highest quality product possible

For software testers to create a detailed test case during the QA process can be tricky: sometimes it's not an option; sometimes it's wasted effort. Here are ways to help make that decision.

Part of the skill set required to be a good tester involves the ability to assess a software project and decide when it's worth putting in the effort to create really detailed test cases. Sometimes the software will lend itself to unstructured testing, sometimes the development methodology will dictate a specific approach, and sometimes every possible facet will need to be covered. If you plotted projects on a graph you would get a bell curve because most of them fall somewhere in between the casual and the comprehensive.

How Do You Decide?
There are various factors that are going to weigh on any decision. Some of them leave no room for ambiguity, for example:

  • There are legal compliance requirements or contractual obligations that require documentary evidence.
  • Any bugs in the software would be potentially disastrous, such as with air traffic control or medical software.

These are special cases and they make the decision to write detailed test cases easy, but most projects are not so straightforward.

Consider Your Testers and Audience
How much experience does your test team have? Novice testers may well need the guidance provided by a set of clear and concise test cases. If they are more experienced, then you can trust them to do a thorough job without so much direction.

The intended audience for the software is also an important factor. If this is business software aimed at specific professionals, and you can envisage clear use cases, then a well-organized test plan with detailed test cases will help the QA department. If, on the other hand, the software is aimed at the mass market and it's tougher to predict exactly how people will interact with it, some less formal, agile exploratory testing could turn up important bugs that a more formal approach would miss.

It's also worth bearing in mind that rigorous, detailed test cases, with no room for intellectual input or creative thought, can be dispiriting and even demotivating for testers. Talented testers welcome the opportunity to flex their brains and they can use their experience and their intuition to uncover flaws in the software. If the approach is overly strict and you fail to leverage your tester's skills, bugs will end up slipping through into the final product.

Match the Development Methodology
Modern software development encompasses a number of different approaches and no two teams or projects are the same. If you start out with a vague set of requirements and the developers take an agile approach, then you may not even have the necessary prerequisites to write detailed test cases.

It's also not uncommon for projects to change direction frequently during development and these changes could render your test cases obsolete within a few weeks of them being created. It may be necessary to talk directly to designers or the customers generating the requirements in order to keep abreast of where the software is going and how best to test it, but it's not always possible to get answers to all of your questions.

At the other end of the spectrum a traditional waterfall approach to development, where everything is agreed and signed off before the project begins, will enable you to create test cases with confidence.

It's About Efficiency
Ultimately it's about finding the most efficient approach. You need to balance the limitations in terms of resources and time, with the need to ship the highest quality product possible. Longevity has to factor in - if the project is only scheduled for three months, you won't get much value from a detailed set of test cases, but an ongoing enterprise platform that will be in use for years definitely merits an upfront investment in test cases.

Think about what will offer the best return on investment. Writing test cases is a time-consuming task and it requires the attentions of your most experienced testers. Before you pull the trigger on a detailed test plan, take the time to consider whether it's the most efficient use of their time.

Sometimes it will increase your effectiveness and have a big positive impact on the software, sometimes it won't. The trick is to find the right balance.

More Stories By Vu Lam

Vu Lam is founder and CEO of QASymphony, developers of defect capture tools that track user interactions with applications. He was previously with First Consulting Group and was an early pioneer in Vietnam’s offshore IT services industry since 1995. He holds an MS degree in electrical engineering from Purdue University. You may reach him at [email protected]

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


IoT & Smart Cities Stories
Bill Schmarzo, author of "Big Data: Understanding How Data Powers Big Business" and "Big Data MBA: Driving Business Strategies with Data Science," is responsible for setting the strategy and defining the Big Data service offerings and capabilities for EMC Global Services Big Data Practice. As the CTO for the Big Data Practice, he is responsible for working with organizations to help them identify where and how to start their big data journeys. He's written several white papers, is an avid blogge...
Dynatrace is an application performance management software company with products for the information technology departments and digital business owners of medium and large businesses. Building the Future of Monitoring with Artificial Intelligence. Today we can collect lots and lots of performance data. We build beautiful dashboards and even have fancy query languages to access and transform the data. Still performance data is a secret language only a couple of people understand. The more busine...
If a machine can invent, does this mean the end of the patent system as we know it? The patent system, both in the US and Europe, allows companies to protect their inventions and helps foster innovation. However, Artificial Intelligence (AI) could be set to disrupt the patent system as we know it. This talk will examine how AI may change the patent landscape in the years to come. Furthermore, ways in which companies can best protect their AI related inventions will be examined from both a US and...
Enterprises have taken advantage of IoT to achieve important revenue and cost advantages. What is less apparent is how incumbent enterprises operating at scale have, following success with IoT, built analytic, operations management and software development capabilities - ranging from autonomous vehicles to manageable robotics installations. They have embraced these capabilities as if they were Silicon Valley startups.
Chris Matthieu is the President & CEO of Computes, inc. He brings 30 years of experience in development and launches of disruptive technologies to create new market opportunities as well as enhance enterprise product portfolios with emerging technologies. His most recent venture was Octoblu, a cross-protocol Internet of Things (IoT) mesh network platform, acquired by Citrix. Prior to co-founding Octoblu, Chris was founder of Nodester, an open-source Node.JS PaaS which was acquired by AppFog and ...
The deluge of IoT sensor data collected from connected devices and the powerful AI required to make that data actionable are giving rise to a hybrid ecosystem in which cloud, on-prem and edge processes become interweaved. Attendees will learn how emerging composable infrastructure solutions deliver the adaptive architecture needed to manage this new data reality. Machine learning algorithms can better anticipate data storms and automate resources to support surges, including fully scalable GPU-c...
Cloud-enabled transformation has evolved from cost saving measure to business innovation strategy -- one that combines the cloud with cognitive capabilities to drive market disruption. Learn how you can achieve the insight and agility you need to gain a competitive advantage. Industry-acclaimed CTO and cloud expert, Shankar Kalyana presents. Only the most exceptional IBMers are appointed with the rare distinction of IBM Fellow, the highest technical honor in the company. Shankar has also receive...
The standardization of container runtimes and images has sparked the creation of an almost overwhelming number of new open source projects that build on and otherwise work with these specifications. Of course, there's Kubernetes, which orchestrates and manages collections of containers. It was one of the first and best-known examples of projects that make containers truly useful for production use. However, more recently, the container ecosystem has truly exploded. A service mesh like Istio addr...
Business professionals no longer wonder if they'll migrate to the cloud; it's now a matter of when. The cloud environment has proved to be a major force in transitioning to an agile business model that enables quick decisions and fast implementation that solidify customer relationships. And when the cloud is combined with the power of cognitive computing, it drives innovation and transformation that achieves astounding competitive advantage.
Whenever a new technology hits the high points of hype, everyone starts talking about it like it will solve all their business problems. Blockchain is one of those technologies. According to Gartner's latest report on the hype cycle of emerging technologies, blockchain has just passed the peak of their hype cycle curve. If you read the news articles about it, one would think it has taken over the technology world. No disruptive technology is without its challenges and potential impediments t...