Scenarios offer promise as a way to tame requirements analysis, but progress has been impeded by the lack of a systematic way to analyze, generate, and validate them. The authors propose such a method and apply it to a simple PBX system. Their method has a formal mathematical base, generates precise scenarios, accommodates change, and keeps users involved… (More)
The complexity and interdependencies of an object-oriented program makes testing of such programs diicult. In this paper, we present a reverse engineering based model called Object Relation Diagram (ORD), which is generated from analyzing the C++ source code of an object-oriented program. An ORD is a directed graph in which the vertices represent the object… (More)
Regression testing is an important activity in software maintenance. Although a number of existing research results have addressed the problems and solutions in regression testing of traditional programs, no research results have focused on the issues and solutions in regression testing of object-oriented programs. In this paper, we present a method for… (More)
Regression testing is an important activity in software maintenance. Although a number of studies have addressed the problems and solutions in regression testing of traditional programs, no studies have focused on the issues and solutions in regression testing of object-oriented programs. In this article, we discuss various types of code changes of classes… (More)
Types of code changes in an object oriented library are described. A formal model for capturing and inferencing on the changes to identify aaected classes is described. The model consists of three types of diagrams: the object relation diagram (ORD), the block branch diagram (BBD), and the object state diagram (OSD). An ORD describes the inheritance,… (More)
The object-oriented (OO) paradigm is rapidly gaining acceptance in the software industry. However, the powerful features of this new paradigm also introduce a new set of OO software testing and maintenance problems. The pioneering work in identifying these new problems includes [7, 10-12, 14, 16, 18]. The problems can be summarized as: 1) the understanding… (More)
To cope with frequent upgrades of mobile devices and technologies, engineers need a reusable and cost-effective environment for testing mobile applications and an elastic infrastructure to support large-scale test automation.
2 Abstract Building high quality and reusable software components is very important for component-based software development projects. The testability of software components is one of the important factors determining the quality of components. As the concept of component engineering receives the wide acceptance in the real world, many practitioners begin… (More)