License: Creative Commons Attribution 3.0 Unported license (CC BY 3.0)
When quoting this document, please refer to the following
DOI: 10.4230/LIPIcs.ECOOP.2016.24
URN: urn:nbn:de:0030-drops-61185
Go to the corresponding LIPIcs Volume Portal

Toman, John ; Grossman, Dan

Staccato: A Bug Finder for Dynamic Configuration Updates

LIPIcs-ECOOP-2016-24.pdf (0.6 MB)


Modern software applications are highly configurable, allowing
configuration options to be changed even during program
execution. When dynamic configuration updating is implemented
incorrectly, program errors can result. These program errors occur
primarily when stale data—computed from old configurations—or
inconsistent data—computed from different configurations—are used. We introduce Staccato, the first tool designed to detect these
errors. Staccato uses a dynamic analysis in the style of taint
analysis to find the use of stale configuration data in Java
programs. It supports concurrent programs running on commodity
JVMs. In some cases, Staccato can provide automatic bug avoidance and semi-automatic repair when errors occur.

We evaluated Staccato on 3 open-source applications that support
complex reconfigurability. Staccato found multiple errors in all of
them. Staccato requires only modest annotation overhead and has
moderate performance overhead.

BibTeX - Entry

  author =	{John Toman and Dan Grossman},
  title =	{{Staccato: A Bug Finder for Dynamic Configuration Updates}},
  booktitle =	{30th European Conference on Object-Oriented Programming (ECOOP 2016)},
  pages =	{24:1--24:25},
  series =	{Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =	{978-3-95977-014-9},
  ISSN =	{1868-8969},
  year =	{2016},
  volume =	{56},
  editor =	{Shriram Krishnamurthi and Benjamin S. Lerner},
  publisher =	{Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{},
  URN =		{urn:nbn:de:0030-drops-61185},
  doi =		{10.4230/LIPIcs.ECOOP.2016.24},
  annote =	{Keywords: Dynamic Configuration Updates, Dynamic Analysis, Software configuration}

Keywords: Dynamic Configuration Updates, Dynamic Analysis, Software configuration
Collection: 30th European Conference on Object-Oriented Programming (ECOOP 2016)
Issue Date: 2016
Date of publication: 18.07.2016

DROPS-Home | Fulltext Search | Imprint | Privacy Published by LZI