70 likes | 167 Views
ECE 453 – CS 447 – SE 465 Software Testing & Quality Assurance Case Studies Instructor Paulo Alencar. Overview. Selecting an integration testing strategy Some OO integration testing strategies are compared.
E N D
ECE 453 – CS 447 – SE 465 Software Testing & Quality AssuranceCase StudiesInstructorPaulo Alencar
Overview • Selecting an integration testing strategy • Some OO integration testing strategies are compared. • Six real-world case studies of various complexities are considered (e.g., small telecommunications software, Swing Java Library) • Optimization problem – minimization of the number of stubs to the written (cost) and the number of steps needed to achieve the integration (duration) • Hahn, V., Akif, K., Traon, Y., Jezequel, J., Selecting an Efficient OO Integration Strategy: An Experimental Evaluation of Data Dependence Analysis Techniques, IEEE Transactions on Parallel and Distributed Systems, vol. 15, no. 3, pp. 196-213, March 2004.
Main Results • Perfect Club Benchmarks, Scientific Library Lapack – Fortran • Perfect Club Benchmarks – collection of scientific • and engineering Fortran 77 programs executed in • high-performance computers • Scientific Library Lapack – a numerical linear algebra library • of Fortran 77 programs for high-performance computers • Polaris compiler (Illinois/Purdue) – restructuring compiler • that automatically parallelizes Fortran programs for execution • on shared memory multiprocessors • Polaris was extended to perform the following tests: the Banerjee • test, I-test, and the Omega test
Main Results • Data dependence: two statements are dependent if both access • the same memory location and at least one of them writes on it • In the presence of data dependence the order of execution in the • original program needs to be preserved. Statements that are not • data dependent may be executed in any order and, therefore, in • parallel • For scalar variables, traditional dataflow analysis can obtain • the data dependence relations (e.g., a sequential loop can be • transformed into a parallel loop if it does not contain loop • carried dependences) • For arrays, the problem is more complicated • and the compiler must examine the subscript expressions • (i.e., determine integer solutions with constraints)
Main Results The Perfect Club Benchmarks: The Scientific Library Lapack:
Main Results The Perfect Club Benchmarks: The Scientific Library Lapack:
Main Results The Scientific Library Lapack: