Title :
Object-oriented legacy system trace-based logic testing
Author :
Ducasse, Stéphane ; Gîrba, Tudor ; Wuyts, Roel
Author_Institution :
LISTIC, Univ. de Savoie
Abstract :
When reengineering legacy systems, it is crucial to assess if the legacy behavior has been preserved or how it changed due to the reengineering effort. Ideally if a legacy system is covered by tests, running the tests on the new version can identify potential differences or discrepancies. However, writing tests for an unknown and large system is difficult due to the lack of internal knowledge. It is especially difficult to bring the system to an appropriate state. Our solution is based on the acknowledgment that one of the few trustable piece of information available when approaching a legacy system is the running system itself. Our approach reifies the execution traces and uses logic programming to express tests on them. Thereby it eliminates the need to programatically bring the system in a particular state, and handles the test-writer a high-level abstraction mechanism to query the trace. The resulting system, called Testlog, was used on several real-world case studies to validate our claims
Keywords :
logic programming; object-oriented programming; program testing; software maintenance; systems re-engineering; Testlog; high-level abstraction; legacy system testing; legacy systems reengineering; logic programming; object-oriented legacy system trace-based logic testing; Collaboration; Computer bugs; Dynamic programming; Information resources; Logic programming; Logic testing; Software libraries; Software testing; System testing; Writing; dynamic information; legacy systems; logic programming; testing;
Conference_Titel :
Software Maintenance and Reengineering, 2006. CSMR 2006. Proceedings of the 10th European Conference on
Conference_Location :
Bari
Print_ISBN :
0-7695-2536-9
DOI :
10.1109/CSMR.2006.37