Home > Software Quality Tips > Software Testing > Software testing affected by pressure to release software
Software Quality Tips:
EMAIL THIS
 TIPS & NEWSLETTERS TOPICS 

SOFTWARE TESTING

Software testing affected by pressure to release software


David W. Johnson
12.09.2008
Rating: -4.62- (out of 5)


Software quality news and advice
Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


The QA/testing space has always been stalked by the "Politics of Science" -- a desire to move the results in a direction that meet the expectations or desires of senior project leaders. It's what I refer to as the "rush to failure," based on factors surrounding the application that have more to do with perceived rewards (bonuses, market share, and political expediency) than the actual value proposition of the software.

QA/testing, as one of the last gates before delivery, has always felt the brunt of this pressure to release software, software that may actually represent a negative value proposition to production. With the introduction of adaptive development methodologies such as agile software development, Extreme Programming, and Scrum this pressure has become more strident and the timelines more compressed. To be fair, this is often a result of "agile-like" development (read undisciplined cowboy development) than actual application of adaptive methodologies.

QA/test manager yields to pressure to expedite release
Under these new pressures QA/test managers are pressured to take risks in terms of testing scope and schedule that result in inadequate test coverage and ultimately unexpected failures in production. The QA/test manager often is brought up on the carpet to answer this typical series of questions:

  1. Why didn't you test for this?
  2. Why didn't you explain the risks?
  3. Why didn't you ensure the quality of the product before signing off?

The simplest ...


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google



RELATED CONTENT
Software Testing
How to stop developer vs. tester, quality-killing blame game
How to apply modeling techniques to support software testing
Calculating mean time to failure in performance testing
The lowdown on PCI compliance
5 ways to answer executives' unfair software test, QA questions
10 steps to acing Web app security assessments
Three software regression testing steps can perfect defect fixes
Exploring mobile layout testing, emulators and goals
Preparing for testing applications in the cloud
Hack maliciously to boost your software's security

Software testing and quality assurance (QA) fundamentals
Software Testing: New software testing technologies bring new challenges
Testing strategies for complex environments
Astronaut's STPCon advice: Teamwork delivers "The Right Stuff"
How to make your software tamperproof
Software consortium seeks standard quality metrics
Demo: Using WebGoat, a free software testing tool
Seven steps for a quality change and configuration management program
Winning responses to "Why is QA always the bottleneck?"
Where to find good methodology guides for software testing
5 ways to answer executives' unfair software test, QA questions

Software quality management
VisibleThread aims to boost IT documentation quality, improve processes
Winning responses to "Why is QA always the bottleneck?"
Using virtual lab management tools to stop developer, QA conflicts
VMLogix LabManager adds support for vSphere 4, Hyper-V R2
Surgient 7's self-provisioning promises software testers quick IT resource access
Transitioning from AJAX to .NET what changes to expect in RIA's
The QA team's role in application performance evaluation and management
Adaptation in project management through agile
Budget-friendly Web app performance testing, monitoring tips
New requirements definition tools focus on chronic flaws

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
build  (SearchSoftwareQuality.com)
code review  (SearchSoftwareQuality.com)
conformance testing  (SearchSoftwareQuality.com)
error handling  (SearchSoftwareQuality.com)
garbage in, garbage out  (SearchSoftwareQuality.com)
load testing  (SearchSoftwareQuality.com)
NUnit  (SearchSoftwareQuality.com)
quality assurance  (SearchSoftwareQuality.com)
stress testing  (SearchSoftwareQuality.com)
white box  (SearchSoftwareQuality.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary


response would be that you were pressured into making a decision to proceed that you knew was incorrect. Though this may in fact be correct, that response will not gain much traction in a politically heated environment. And for the most part, QA/test managers do not have the political experience to win in that environment.

QA managers need to mostly focus on the quality of the product and complete testing -- not deadlines. Of course, this conflicts with "but we have to get it out the door so we can make money." It is a constant battle. The QA/test manager should focus on quality, while the project management team focuses on the risk/benefit analysis. Let's look at each one of the above questions and determine what could be going on here.

1. Why didn't you test for this?

If something wasn't tested, it's usually because the feature was deemed to be out of scope for testing or adequate resources were not made available to test for this feature. The question occurs for one of two reasons: The questioner is trying to disallow ownership of the issue or the questioner did not truly understand the scope of testing and the inherent risks.

There isn't much you can do about questioners' disallowing ownership except to clearly communicate scope and risks on an ongoing basis. But the second reason can be addressed by working together to truly understand and communicate testing scope and inherent risks so that informed decisions can be made. This usually takes the form of a weekly or daily status report coupled with a mechanism to expedite issues.

2. Why didn't you explain the risks?

In most cases the QA/test manager did attempt to explain the risks but was ignored or simply did not explain the risk in a way that the decision-makers understood. This question often carries many of the same challenges as "Why didn't you test for this?" but with the additional weight of serious production failures.

This is a communication issue between the QA/test manager and the decision-makers. The QA/test manager has to communicate the risks in terms of the impact on the value proposition of the software. For example, if this risk becomes a production issue, what is the impact on the business? The technical reasons behind the risks still need to be communicated, but the business impacts are the paramount message. Include the technical dissertations as attachments or appendices. Do not cloud the risk with technical details that may not be understood.

3. Why didn't you ensure the quality of the product before signing off?

This is one of the most interesting questions that can be posed to a QA/test manager. Testing cannot be responsible for the quality of a product, since testing did not design, build, fix, or deploy the product. Testing simply measures the product in terms of expected vs. observed behavior and then provides this information to decision-makers who determine if this observation should be addressed before the product is released.

The expectation being conveyed with this question is that testing behaves as a safety net to trap quality issues before they reach production. The problem with that assumption is that testing alone does not have the capacity to ensure a quality product is released. The QA/test manager must communicate what testing can and cannot bring to the quality question. And if the expectation of testing as a safety net remains in place, move testing further up the development stream into the design and development stages.

QA/test manager does not yield to pressure to expedite release
Experienced or empowered QA/test managers often do not yield to pressures to expedite the release of an untested product. This certainly prevents the issue of inadequate test coverage and should prevent unexpected failures in production. If that's the case, the QA/test manager will be challenged to respond to these questions:

  • Why isn't testing completed on time or on budget?
  • Why is testing taking so long?

And these would be their very predictable responses:

  • Why is testing not completed on time/on budget?

    • The rest of the project was delayed or poorly implemented
    • Timelines were not agreed to and proved to be unrealistic

  • Why is testing taking so long?

    • The test environment was not ready
    • The code was not ready
    • The test data was not available
    • The bug fixes are taking to long

Taking into account our earlier discussion about the QA/test manager who yielded to the pressures to release or was not empowered to delay the release, how can you better manage the expectations of your peers and decision makers? This breaks down into challenges that are common in IT and especially pertinent to anyone managing a QA/testing effort: failure to communicate clearly, poor project/test planning, and lack of testing capacity.

-----------------------------------------
About the author: David W. Johnson (DJ) is a senior computer systems analyst with over 20 years of experience in IT across several industries. He has played key roles in business needs analysis, software design, software development, testing, training, implementation, organizational assessments and support of business solutions. David has developed specific expertise over the past 12 years on implementing "Testware," including test strategies, test planning, test automation and test management solutions. You may contact David at DavidWJohnson@Eastlink.ca.


Rate this Tip
To rate tips, you must be a member of SearchSoftwareQuality.com.
Register now to start rating these tips. Log in if you are already a member.


Submit a Tip




DISCLAIMER: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.



Software Design & Testing - Project Management
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2006 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts