Publication:
Systematic asynchrony bug exploration for android apps

dc.contributor.coauthorEmmi, Michael
dc.contributor.departmentDepartment of Mechanical Engineering
dc.contributor.departmentGraduate School of Sciences and Engineering
dc.contributor.kuauthorÖzkan, Burcu Külahcıoğlu
dc.contributor.kuauthorTaşıran, Serdar
dc.contributor.schoolcollegeinstituteCollege of Engineering
dc.contributor.schoolcollegeinstituteGRADUATE SCHOOL OF SCIENCES AND ENGINEERING
dc.date.accessioned2024-11-09T23:22:55Z
dc.date.issued2015
dc.description.abstractSmartphone and tablet “apps” are particularly susceptible to asynchrony bugs. In order to maintain responsive user interfaces, events are handled asynchronously. Unexpected schedules of event handlers can result in apparently-random bugs which are notoriously difficult to reproduce, even given the user-event sequences that trigger them. We develop the AsyncDroid tool for the systematic discovery and reproduction of asynchrony bugs in Android apps. Given an app and a user-event sequence, AsyncDroid systematically executes alternate schedules of the same asynchronous event handlers, according to a programmable schedule enumerator. The input user-event sequence is given either by user interaction, or can be generated by automated UI “monkeys”. By exposing and controlling the factors which influence the scheduling order of asynchronous handlers, our programmable enumerators can explicate reproducible schedules harboring bugs. By enumerating all schedules within a limited threshold of reordering, we maximize the likelihood of encountering asynchrony bugs, according to prevailing hypotheses in the literature, and discover several bugs in Android apps found in the wild.
dc.description.indexedbyWOS
dc.description.indexedbyScopus
dc.description.openaccessYES
dc.description.publisherscopeInternational
dc.description.sponsoredbyTubitakEuN/A
dc.description.volume9206
dc.identifier.doi10.1007/978-3-319-21690-4_28
dc.identifier.eissn1611-3349
dc.identifier.isbn978-3-319-21690-4
dc.identifier.isbn978-3-319-21689-8
dc.identifier.issn0302-9743
dc.identifier.quartileQ4
dc.identifier.scopus2-s2.0-84951032623
dc.identifier.urihttps://doi.org/10.1007/978-3-319-21690-4_28
dc.identifier.urihttps://hdl.handle.net/20.500.14288/11156
dc.identifier.wos364182900028
dc.keywordsComputer science, hardware and architecture
dc.keywordsComputer Science, software engineering
dc.keywordsComputer Science, theory and methods
dc.keywordsLogic
dc.language.isoeng
dc.publisherSpringer-Verlag Berlin
dc.relation.ispartofComputer Aided Verification, Pt I
dc.subjectComputer science
dc.subjectHardware and architecture
dc.subjectSoftware engineering
dc.subjectLogic
dc.titleSystematic asynchrony bug exploration for android apps
dc.typeConference Proceeding
dspace.entity.typePublication
local.contributor.kuauthorÖzkan, Burcu Külahcıoğlu
local.contributor.kuauthorTaşıran, Serdar
local.publication.orgunit1GRADUATE SCHOOL OF SCIENCES AND ENGINEERING
local.publication.orgunit1College of Engineering
local.publication.orgunit2Department of Mechanical Engineering
local.publication.orgunit2Graduate School of Sciences and Engineering
relation.isOrgUnitOfPublicationba2836f3-206d-4724-918c-f598f0086a36
relation.isOrgUnitOfPublication3fc31c89-e803-4eb1-af6b-6258bc42c3d8
relation.isOrgUnitOfPublication.latestForDiscoveryba2836f3-206d-4724-918c-f598f0086a36
relation.isParentOrgUnitOfPublication8e756b23-2d4a-4ce8-b1b3-62c794a8c164
relation.isParentOrgUnitOfPublication434c9663-2b11-4e66-9399-c863e2ebae43
relation.isParentOrgUnitOfPublication.latestForDiscovery8e756b23-2d4a-4ce8-b1b3-62c794a8c164

Files