Publication detail

SHADOWS - Deliverable D3.2.1: Research Report on Methodology for Self-Healing Concurrent Code Fixing

KŘENA, B., LETKO, Z., TZOREF, R., UR, S., VOJNAR, T.

Original Title

SHADOWS - Deliverable D3.2.1: Research Report on Methodology for Self-Healing Concurrent Code Fixing

Type

report

Language

English

Original Abstract

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.

Keywords

Self-healing, concurrency, bug fixing, methodology.

Authors

KŘENA, B., LETKO, Z., TZOREF, R., UR, S., VOJNAR, T.

RIV year

2007

Released

28. 2. 2007

Publisher

European Comission

Location

Brno

Pages count

13

BibTex

@techreport{BUT57726,
  author="Bohuslav {Křena} and Zdeněk {Letko} and Rachel {Tzoref} and Shmuel {Ur} and Tomáš {Vojnar}",
  title="SHADOWS - Deliverable D3.2.1: Research Report on Methodology for Self-Healing Concurrent Code Fixing",
  year="2007",
  publisher="European Comission",
  address="Brno",
  pages="13"
}