Testability Analysis of the Communication Protocols Modeled by Relations 1

The cost of the test activity constitutes an important part of the total development cost. To make test easier (cost, time, and efforts), the consideration of test problems before the implementation phase is now necessary. This early consideration is known as Design for testability (DFT). The design of testable software does not consist solely in applying methods that improve the testability but also to verify if the degree of testability of the new obtained product is acceptable. This activity can be carried out using testability evaluation and a set of appropriate transformations. We propose a method based on the modeling of software by relations. The testability of a given specification is defined as a set of factors that influence the tests. These factors are evaluated separately and their values are gathered in a vector called the testability vector. The evaluation is based on the properties of a relation such as determinism, definissability, and informability. The method is used for the classification of specifications. It is simple and can be used at different levels of abstraction. In the case of a weak testability, we can seek for the cause by analyzing the testability vector and by refining the specification. Then we try to enhance the testability by applying some specification transformations that correct the cause of the weakness. The proposed method is generic and do not require strong hypothesis for its use.