The Journal of Software Testing Professionals

December 2002 Issue

(Full articles are available in the "Members Only " area.)

The December 2002 issue includes:

Articles:

Departments:


Previous Issues:


JSTP is a quarterly publication of
The International Institute for Software Testing


Articles

Application of the IEEE 829 Standard as a Basis for Structuring the Testing Process

Adalberto Nobiato Crespo, Marcia Regina Martins Martinez, Mario Jino, Miguel de Teive e Argollo Junior

The IEEE Std 829-1998 is a standard for software test documentation which can be very useful to help software houses to structure their software test projects. However, its application on real projects is not straightforward and many companies face difficulties when trying to use it. These difficulties may be explained, at least in part, by the fact that the standard is somewhat vague, lacking many details about the contents of the sections comprising the proposed documents.

Aiming to help alleviate this problem, the Software Test Group at CenPRA has developed two guides which constitute the basis for a method proposed for the deployment of the software testing processes based on the IEEE Std 829-1998’s usage. In the first one, “Guideline for the Elaboration of Software Test Documents”, the information needed to produce the documents proposed by the standard and its flow is described; in the second, “Processes for the Elaboration of Software Test Documents”, the processes for the production of the IEEE-829’s documents are presented. An outline of those two guides is given in this paper.

Go To the Top

Managing Quality During the Endgame: Lessons Learned...

Bruce F. Schoor

The endgame in a software development project is the period between the completion of the last feature (a.k.a. Code Complete) and Ship. This period has many interesting challenges because the exact amount and nature of remaining work is not known, and team members work with dynamic task lists. How do we arrive at Ship with the required quality in the shortest time possible? Which defects do we still fix? How do we safeguard the targeted quality at the moment we ship? How do we keep the team morale up during this demanding period?

This paper presents important lessons learned during the numerous endgames that I have driven in demanding, world-class environments such as Microsoft Corporation. Rather than elaborating on optimized testing strategies or metrics models, this paper focuses on pragmatic best practices that have been the key success factors in past endgames.

Go To the Top

Requirements Based Testing - Ambiguity Reviews

Gary E. Mogyorodi

This article provides an overview of the Requirements-Based Testing (RBT) process. RBT is a rigorous process for improving the quality of requirements and for deriving the minimum number of test cases to cover 100% of those requirements. RBT is comprised of two techniques: Ambiguity Reviews and Cause-Effect Graphing.

An Ambiguity Review is used in the requirements phase of software development to identify ambiguities in functional1 requirements. The intent of an Ambiguity Review is to identify anything that is unclear, ambiguous or incomplete in the requirements. The elimination of these ambiguities improves the quality of those requirements.

Cause-Effect Graphing is a test case design technique that is performed once requirements have been reviewed for ambiguity, and after they have been reviewed for content. Requirements are reviewed for content to insure that they are correct and complete. The Cause-Effect Graphing technique derives the minimum number of test cases to cover 100% of the functional requirements to improve the quality of test coverage.

This article addresses the first RBT technique - the Ambiguity Review. A follow-up article will discuss the Cause-Effect Graphing technique.

Go To the Top

Release Notes - What do Test Engineers Need to Know?

Marc Rene

Recently, I was asked to investigate and create a Release Notes Standards document to improve the content, format and consistency of my company’s Release Notes documentation. After searching the Web and various Software Engineering books, I discovered that there is little information on this topic. As a result, I had to rely on information obtained during interviews I conducted within my company. Our experienced Test Engineers and Software Engineers were asked what they considered ‘good’ and ‘bad’ practices with regard to Release Notes. The data was compiled and the Release Notes Standards document that resulted became the basis for this article.

Go To the Top


Columns

The Editor's Point of View: Where Effective Testing Starts

Magdy S. Hanna, Ph.D.

Most testers shy away from sitting in any kind of review or inspection. Some feel they do not belong there. Others do not see the value reviews and inspections may bring to them. The only type of reviews that most testers feel somewhat comfortable with is requirement reviews. Certainly, participating in requirement reviews is an absolute minimal requirement that is expected of every test professional.

Of course, testers are supposed to ask questions to clarify requirements and eliminate ambiguities. But, this all depends on the form in which requirements are

Go To the Top

Automation By Design: Test Automation Architecture

Jamie L. Mitchell

Simplicity: What a Concept
OK, I’ll admit it – I think everyone should be able to cook a gourmet dinner, kill a bear, fly an airplane, and program test automtion[1]. Unfortunately, this is yet another case of where our school system has failed us![2] Specialization appears to be the bane of civilization.

In the last issue, we discussed how to utilize the architectural concepts (covered previously) to mass produce automated test cases in those non-trivial numbers that we need. In this issue, we will discuss a concept that is absolutely essential if we want our automation architecture to be successfully utilized by the other members of our group.

Many people in software development are specialists at what they do. They are not only programmers;they are C programmers for Unix systems. They are not just network specialists; they are experts at 8255x Ethernet connected networks. One of the few exceptions to specialization in the IT game is testers. In many cases, testers are expected to be generalists. Technical enough to perform white box testing, business savvy enough to understand the needs of the end users, mathematically inclined to handle the metrics and chart the trends.

My experience is that testers usually have a very good set of skills – often, they just do not happen to include programming skills.

Go To the Top

Working At Quality

Rebecca Staton-Reinstein

Working At Quality is a new column that will focus on practical aspects of quality and case studies from successful implementations of quality techniques. Readers of this Journal know the importance of robust testing but that is only one aspect of quality. This column will be based on two definitions of quality.

The first definition comes from J.M. Juran: Quality is fitness for use. This customer view of quality must always be paramount as we define the requirements for any software solution.

The second definition comes from W. Edwards Deming: Quality is the continuous improvement of all processes. This is an operational definition that shows us how to produce a product for the customer that is fit for use. The success of the testing process or any other quality technique often depends on the strength of other processes that are in place. When development processes are weak, testing must bear the brunt of trying to find bugs when there are poor or no requirements. The sophistication of the testing process is constrained by the sophistication of the development process. When the development process is more mature, with robust reviews in place, the testing function can concentrate on more advanced techniques.

Send us a brief description of your real world experiences implementing quality techniques. We will contact you to get the details for an upcoming column.

Go To the Top

Certification News:

Magdy S. Hanna, Ph.D.

 

 
 
  © 2004 International Institute for Software Testing. All rights reserved.
 jkern@testinginstitute.com
763-546-0072