In industrial reality, risk is typically assessed by estimating probabilities and consequences. This approach provides only raw data, but does not offer any strategy for decision making. Software testing practitioners are commonly confronted with two decision-making situations: what to test and whether to continue testing. A branch of statistics called decision theory provides a number of concepts and methods that can be used to make better decisions in a structured and controlled way.
We've all heard the pitch: test automation saves testing time and resources. Test tools can execute tests faster than a person can, and in most cases they can do so in an unattended mode. So test automation should reduce test cycle time or the number of testers needed. Right? Not exactly. But Linda Hayes will tell you what it does save.
Prompted by a comment from our sticky-minded audience, this week Johanna shares some ways test managers can assess their performance against specific management deliverables likely to be high on an organization's priority list.
In this column, Bob Glass skewers one of the "old wives' tales" of the software field, the theory-based prediction that software reuse will lead to unbounded improvements in both development productivity and software quality. "It ain't so," he says here. But he certainly wishes that it were.
Prototypes are meant to demonstrate the viability of a process or to elicit requirements, but do not result in a sustainable system. In general, prototypes should be built only as a demonstration and replaced with a robust application for the production environment. Developers should take it upon themselves to avoid the proliferation of prototype code and systems.
Configuration Management (CM) includes synchronizing and supporting developers in their common development and maintenance of a system. In order to utilize skilled personnel despite geographical location, groups of developers are now working all over the world on the development of common systems, a situation called distributed development. This article discusses the different cases and architectures with respect to distributed development and their demands on Configuration Management Tools. It also presents the features of some currently available CM tools that support Distributed Development.
This paper explains how to identify good reusable components and describes a strategy for maintaining reusable components.
It may sound counterintuitive at first, but making tighter deadlines may improve software quality. When deadlines are strictly adhered to, the panic and rush as the deadline approaches can undermine quality of product. Heller discusses how a looser, but earlier deadline can encourage a healthier environment, and higher quality.
This article discusses the risks associated with latent software problems, reviews the alternatives tha development organizations might consider to reduce these risks, discusses the means by which developers can eliminate problems earlier in development, and presents the history, use, and benefits of using a static source code analysis tool to increase the quality of code and reduce organizational risk.
This is a short article that lists some of the things the authors have found can contribute significantly to achieving project success. These points are all the more relevant and useful in tough times, where all project teams are trying to accomplish more with less.