Asee peer logo

Teaching Black Box Testing Techniques Through Specification Patterns

Download Paper |


2008 Annual Conference & Exposition


Pittsburgh, Pennsylvania

Publication Date

June 22, 2008

Start Date

June 22, 2008

End Date

June 25, 2008



Conference Session

Software Engineering Course Content

Tagged Division

Software Engineering Constituent Committee

Page Count


Page Numbers

13.1149.1 - 13.1149.13



Permanent URL

Download Count


Request a correction

Paper Authors

author page

Salamah Salamah Embry-Riddle Aeronautical University, Daytona Beach

author page

Ann Gates University Of Texas - El Paso

Download Paper |

NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract

Using Specification Patterns to Teach Black-Box Testing

Ann Q. Gates Computer Science Dept., University of Texas at El Paso. Salamah Salamah Computer and Software Engineering Dept., Embry-Riddle Aeronautical University.


Software verification is one of the most important activities in the software development cycle, and testing remains the most common approach to verification used in industry. The goal of black- box testing (functional testing) is to verify the system’s adherence to specifications. The notion of patterns and scopes developed by Dwyer et al. provides a cohesive and rich set of examples to teach black-box testing strategies. A pattern describes a recurring software property, and a scope specifies the interval of program execution where a pattern must hold. A property specified using a pattern and scope combination has characteristics that must be satisfied if it is to hold. Based on these characteristics, there is a large set of behaviors that can be examined using black-box testing techniques. In a complementary fashion, the behaviors specified by patterns and scopes provide clear and simple examples that can enhance the understanding of these testing techniques. In this paper, we describe an approach and present general lessons and exercises that demonstrate how patterns and scopes can be used to teach boundary value analysis and equivalence class testing, which are two of the most commonly used black-box testing techniques. As a side effect of this approach, students are exposed to, and become familiar with, formally specifying system behavior.

1 Introduction

Testing remains the most natural and customary way of verifying a piece of software [6]. In software development, testing ranges from verifying the separate components of the system (meth- ods, classes, etc.) to verifying the system as a whole (system testing). Testing approaches also differ in their techniques, which are based on the accessibility to the internal structure (code) of the system. In black-box testing techniques, test cases are defined based on system specification and without any consideration for the design or implementation of the system. Conversely, white-box techniques focus on testing the actual code of the system. As such, black-box testing is referred to as specification-based testing, and white-box testing is refereed to as implementation-based testing [6]. In this work, we focus on two of the most common black-box testing techniques: equivalence class testing, and boundary value analysis. Specifically, we discuss the Specification Pattern System (SPS) and the notions of patterns and scopes introduced by Dwyer et. al., [4] and how they are used to assist in defining system specifications. We then introduce an approach that uses patterns and scopes to teach the aforementioned testing techniques. This paper is organized as follows; Section 2 provides the background information about the work. This includes a detailed description of SPS’ patterns and scopes. In addition, descriptions


Salamah, S., & Gates, A. (2008, June), Teaching Black Box Testing Techniques Through Specification Patterns Paper presented at 2008 Annual Conference & Exposition, Pittsburgh, Pennsylvania. 10.18260/1-2--3308

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2008 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015