Better Software Articles
David Lee's company needed a system to track customer support and development issues—one that had the right combination of tools and the scalability they needed to effectively address their customer needs, as well as their own internal requirements. Here is a discussion of why they chose Team Track, and an evaluation of the tool.
Adaptive Testing Syndrome happens when, for various reasons, test team members become blind to the idiosyncrasies of the software and even accept them as a normal part of the design. However, when a different tester, or maybe just a different set of tests, comes in contact with the software, the bugs become painfully obvious. Here's how to diagnose and avoid ATS.
Peer reviews and inspections are among the highest-leverage software quality practices available. Here are some useful sources of guidance on how to perform software inspections and peer reviews, as well as some tools and online resources that can help you jump-start your fledgling review program.
Sometimes, no matter how talented you are and how hard you work, you will not be able to succeed, at least within the constraints you are handed. If your boss says you have to achieve project goals with the resources you have, what can you do? Esther Derby suggests: 1) Start by assuming that a reasonable approach will get reasonable results; 2) If your boss isn't willing or able to hear what you have to say, decide what you are willing to do; and 3) Consider what you might do differently next time.
This article aims to show you the rich variety of information that can be used to help you build a good model of the system you are involved with. Some of the areas covered are: the business context; the language; the organizational structure; the culture; and cross-departmental relationships.
Graphical User Interfaces make test automation hard. The problems are well known. You need specialized tools to drive the GUI. Those tools can be confused by the common programming practice of inventing custom user interface controls. When they are used in the simplest way, the tools lead to fragile tests that tend to break en masse when the GUI changes. Making the test resistant to change requires elaborate and sometimes awkward testing frameworks. Learn how to use a scripting interface to get around the GUI problem.
How well you present a defect to a developer can impact when a defect is resolved–or whether it is resolved at all. Deliver the information abruptly or inappropriately, and you run the risk of alienating a person or creating project hot spots that aren't needed. Deliver news too passively, and your report may be discarded. Karen Johnson describes some ways to soften the blow so that your defects are not only acknowledged, but fixed.
Maps are a universal way of describing an area. You use them to plan your route and find your destination. Just as it's a good idea to have a map when traveling, it's a good idea to have a picture of the software you're testing. Elisabeth Hendrickson describes UML, parts maps, flow charts, state diagrams, and more.
An infinite number of metrics can be applied to various aspects of software development. In fifteen years of managing software development, Mike Cohn has found a handful of metrics that really help him do his job--and keep him cool and confident when the heat is on. Here, he describes product stabilization metrics, programmer quality metrics, customer satisfaction metrics, and complexity metrics.
Justifying the role of testing and measuring the value of testers' performance are problems that many of us struggle with. James Bach offers some things he finds helpful when he has to give a quantitative answer to the question, "What is your group saving the company?"