Publication Details
SHADOWS - Deliverable D3.2.1: Research Report on Methodology for Self-Healing Concurrent Code Fixing
Letko Zdeněk, Ing. (FIT BUT)
Tzoref-Brill Rachel (IBM)
Ur Shmuel (IBM)
Vojnar Tomáš, prof. Ing., Ph.D. (DITS FIT BUT)
Self-healing, concurrency, bug fixing, methodology.
General self-healing methodology consists of four steps---problem detection, problem localization, problem healing, and healing assurance. In this report, we describe how we have adopted this general self-healing methodology for the concurrency code fixing. We show how to improve testing of concurrency code by the tool ConTest. The ConTest allows us to monitor concurrent Java programs and to increase the probability of a bug revealing by a noise injection. On the top of the ConTest, we have developed a specialized tool for detection and localization of data races (data races are common and hard to find type of concurrency bugs). We have also proposed a method for pinpointing a cause of a concurrent bug by statistical evaluation of a large number of tests. Based on typical concurrency bugs, we have identified suitable healing actions. Finally, we have discussed requirements, problems, and possibilities of assurance of self-healing actions. For healing assurance, we aim to exploit formal methods like model checking and static analysis.
@TECHREPORT{FITPUB8497, author = "Bohuslav K\v{r}ena and Zden\v{e}k Letko and Rachel Tzoref-Brill and Shmuel Ur and Tom\'{a}\v{s} Vojnar", title = "SHADOWS - Deliverable D3.2.1: Research Report on Methodology for Self-Healing Concurrent Code Fixing", pages = 13, year = 2007, location = "Brno, CZ", publisher = "European Comission EU", language = "english", url = "https://www.fit.vut.cz/research/publication/8497" }