HomeImage

The project TestPar - Parallel Program Test Support Mechanisms - exists to improve the quality of distributed and parallel applications. Today's computing is fundamentally composed of distributed applications that interact to improve our quality of life. A few examples of such applications are: mobile telephony, automated systems in vehicles that communicate to provide more security, smart home appliances, Web and cellular phone purchases, remote access to corporate web systems and integrated under the SOA (Service-Oriented Architecture) paradigm and cloud computing. Distributed computing is at the center of a virtuous cycle, self-feeding from new hardware and software technologies. These technologies have been changing our perception of the world, which interacts to aggregate resources and achieve increasingly ambitious goals.

Concurrent programming is a commonality in these technologies, providing primitives to process management and interaction (communication and synchronization) of processes. Communication and synchronization primitives are widely used and are responsible for errors that are difficult to detect, which can easily generate correct and / or incorrect results with the same data entry.

Testing and debugging distributed applications is a challenge in this scenario. Unlike the sequential programs, distributed application testing is still underdeveloped and still less used properly. This is due to the need for specific test models that extract from the distributed applications relevant information for testing, especially those related to the communication, synchronization and non-determinism inherent to the dynamic behavior of such applications. Associated with these test models, new criteria and tools are also necessary to conduct the test activity within an acceptable cost.

In general, all of these issues are being investigated without a TestPar project. Test models have already been developed without the TestPar project, please show information about control flows and data from competing processes, considering their sequential and competitors. The criteria are a coverage measure that can be used to evaluate the progress of the test activity and can also provide guidelines for a generation of test data. The ValiPar tool implements the concepts investigated and instantiated in the models and test criteria.