mdh.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
10 Years of research on debugging concurrent and multicore software: a systematic mapping study
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.ORCID iD: 0000-0002-5058-7351
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.ORCID iD: 0000-0002-5032-2310
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems. Ericsson AB, Kista, Sweden .ORCID iD: 0000-0002-5070-9312
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.ORCID iD: 0000-0002-7235-6888
Show others and affiliations
2017 (English)In: Software quality journal, ISSN 0963-9314, E-ISSN 1573-1367, Vol. 25, no 1, p. 49-82Article in journal (Refereed) Published
Abstract [en]

Debugging – the process of identifying, localizing and fixing bugs – is a key activity in software development. Due to issues such as non-determinism and difficulties of reproducing failures, debugging concurrent software is significantly more challenging than debugging sequential software. A number of methods, models and tools for debugging concurrent and multicore software have been proposed, but the body of work partially lacks a common terminology and a more recent view of the problems to solve. This suggests the need for a classification, and an up-to-date comprehensive overview of the area. 

This paper presents the results of a systematic mapping study in the field of debugging of concurrent and multicore software in the last decade (2005– 2014). The study is guided by two objectives: (1) to summarize the recent publication trends and (2) to clarify current research gaps in the field.

Through a multi-stage selection process, we identified 145 relevant papers. Based on these, we summarize the publication trend in the field by showing distribution of publications with respect to year , publication venues , representation of academia and industry , and active research institutes . We also identify research gaps in the field based on attributes such as types of concurrency bugs, types of debugging processes , types of research  and research contributions.

The main observations from the study are that during the years 2005–2014: (1) there is no focal conference or venue to publish papers in this area, hence a large variety of conferences and journal venues (90) are used to publish relevant papers in this area; (2) in terms of publication contribution, academia was more active in this area than industry; (3) most publications in the field address the data race bug; (4) bug identification is the most common stage of debugging addressed by articles in the period; (5) there are six types of research approaches found, with solution proposals being the most common one; and (6) the published papers essentially focus on four different types of contributions, with ”methods” being the type most common one.

We can further conclude that there is still quite a number of aspects that are not sufficiently covered in the field, most notably including (1) exploring correction  and fixing bugs  in terms of debugging process; (2) order violation, suspension  and starvation  in terms of concurrency bugs; (3) validation and evaluation research  in the matter of research type; (4) metric  in terms of research contribution. It is clear that the concurrent, parallel and multicore software community needs broader studies in debugging.This systematic mapping study can help direct such efforts.

Place, publisher, year, edition, pages
2017. Vol. 25, no 1, p. 49-82
National Category
Computer Systems
Identifiers
URN: urn:nbn:se:mdh:diva-31419DOI: 10.1007/s11219-015-9301-7ISI: 000394524400003Scopus ID: 2-s2.0-84955305408OAI: oai:DiVA.org:mdh-31419DiVA, id: diva2:919038
Projects
SYNOPSIS projectAvailable from: 2016-04-12 Created: 2016-04-12 Last updated: 2018-10-29Bibliographically approved
In thesis
1. Bugs and Debugging of Concurrent and Multicore Software
Open this publication in new window or tab >>Bugs and Debugging of Concurrent and Multicore Software
2016 (English)Licentiate thesis, comprehensive summary (Other academic)
Place, publisher, year, edition, pages
Mälardalen University Press, 2016
Series
Mälardalen University Press Licentiate Theses, ISSN 1651-9256 ; 230
National Category
Computer Systems
Identifiers
urn:nbn:se:mdh:diva-31421 (URN)978-91-7485-261-5 (ISBN)
Presentation
2016-05-23, Gamma, Mälardalens högskola, Västerås, 10:15 (English)
Supervisors
Projects
SYNOPSIS Project
Available from: 2016-04-13 Created: 2016-04-12 Last updated: 2016-04-27Bibliographically approved
2. Concurrency Bugs: Characterization, Debugging and Runtime Verification
Open this publication in new window or tab >>Concurrency Bugs: Characterization, Debugging and Runtime Verification
2018 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Concurrent software has been increasingly adopted in recent years, mainly due to the introduction of multicore platforms. However, concurrency bugs are still difficult to test and debug due to their complex interactions involving multiple threads (or tasks). Typically, real world concurrent software has huge state spaces. Thus, testing techniques and handling of concurrency bugs need to focus on exposing the bugs in this large space. However, existing solutions typically do not provide debugging information to developers (and testers) for understanding the bugs.

Our work focuses on improving concurrent software reliability via three contributions: 1) An investigation of concurrent software challenges with the aim to help developers (and testers) to better understand concurrency bugs. We propose a classification of concurrency bugs and discuss observable properties of each type of bug. In addition, we identify a number of gaps in the body of knowledge on concurrent software bugs and their debugging. 2) Exploring concurrency related bugs in real-world software with respect to the reproducibility of bugs, severity of their consequence and effort required to fix them. Our findings here is that concurrency bugs are different from other bugs in terms of their fixing time and severity, while they are similar in terms of reproducibility. 3) A model for monitoring concurrency bugs and the implementation and evaluation of a related runtime verification tool to detect the bugs. In general, runtime verification techniques are used to (a) dynamically verify that the observed behaviour matches specified properties and (b) explicitly recognize understandable behaviors in the considered software. Our implemented tool is used to detect concurrency bugs in embedded software and is in its current form tailored for the FreeRTOS operating system. It helps developers and testers to automatically identify concurrency bugs and subsequently helps to reduce their finding and fixing time.

Place, publisher, year, edition, pages
Västerås: Mälardalen University, 2018
Series
Mälardalen University Press Dissertations, ISSN 1651-4238 ; 278
National Category
Embedded Systems
Research subject
Computer Science
Identifiers
urn:nbn:se:mdh:diva-41237 (URN)978-91-7485-412-1 (ISBN)
Public defence
2018-12-04, Kappa, Mälardalens högskola, Västerås, 13:30 (English)
Opponent
Supervisors
Available from: 2018-10-29 Created: 2018-10-29 Last updated: 2018-11-02Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full textScopus

Authority records BETA

Abbaspour Asadollah, SaraSundmark, DanielEldh, SigridHansson, HansAfza, Wasif

Search in DiVA

By author/editor
Abbaspour Asadollah, SaraSundmark, DanielEldh, SigridHansson, HansAfza, Wasif
By organisation
Embedded Systems
In the same journal
Software quality journal
Computer Systems

Search outside of DiVA

GoogleGoogle Scholar

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 938 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf