Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Arash Alavi 0001

dblp:183/0175-1 · DBLP profile ↗
← Back
4ranked-venue papers
2as first author
0since 2021 · last 2019
0000-0002-7245-6889ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Security and privacy · 2 · 2 first-authorSoftware engineering, systems software and programming languages · 2

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
2 papers
Program analysis · 36% Concurrent programming · 36% Debugging and program repair · 18%

Topics — the 8 heaviest of 8, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis
dynamic analysis
0.412019
Dynamic slicing for Android · ICSE 2019
Program analysis › dynamic analysis
dynamic slicing
0.412019
Dynamic slicing for Android · ICSE 2019
Debugging and program repair
fault localization
0.412019
Dynamic slicing for Android · ICSE 2019
Concurrent programming
concurrency bugs
0.212016
Automatically verifying and reproducing event-based races in Android apps · ISSTA 2016
Concurrent programming › concurrency bug detection
data race detection
0.212016
Automatically verifying and reproducing event-based races in Android apps · ISSTA 2016
Concurrent programming › concurrency bugs
event races
0.212016
Automatically verifying and reproducing event-based races in Android apps · ISSTA 2016
Software testing
regression testing
0.112019
Dynamic slicing for Android · ICSE 2019
Software testing › regression testing
test suite reduction
0.112019
Dynamic slicing for Android · ICSE 2019

Methods — techniques the papers use, named apart from their topics

instrumentation · 0.4asynchronous slicing · 0.4state comparison · 0.2replay · 0.2event flipping · 0.2event dependency graphs · 0.2
YearPublicationVenuePosition
2019 Dynamic slicing for Android
abstract
Dynamic program slicing is useful for a variety of tasks, from testing to debugging to security. Prior slicing approaches have targeted traditional desktop/server platforms, rather than mobile platforms such as Android. Slicing mobile, event-based systems is challenging due to their asynchronous callback construction and the IPC (interprocess communication)- heavy, sensor-driven, timing-sensitive nature of the platform. To address these problems, we introduce AndroidSlicer1, the first slicing approach for Android. AndroidSlicer combines a novel asynchronous slicing approach for modeling data and control dependences in the presence of callbacks with lightweight and precise instrumentation; this allows slicing for apps running on actual phones, and without requiring the app's source code. Our slicer is capable of handling a wide array of inputs that Android supports without adding any noticeable overhead. Experiments on 60 apps from Google Play show that AndroidSlicer is effective (reducing the number of instructions to be examined to 0.3% of executed instructions) and efficient (app instrumentation and post-processing combined takes 31 seconds); all while imposing a runtime overhead of just 4%. We present three applications of AndroidSlicer that are particularly relevant in the mobile domain: (1) finding and tracking input parts responsible for an error/crash, (2) fault localization, i.e., finding the instructions responsible for an error/crash, and (3) reducing the regression test suite. Experiments with these applications on an additional set of 18 popular apps indicate that AndroidSlicer is effective for Android testing and debugging.
Tanzirul Azim, Arash Alavi 0001, Iulian Neamtiu, Rajiv Gupta 0001
ICSE2
2019 When the Attacker Knows a Lot: The GAGA Graph Anonymizer
Arash Alavi 0001, Rajiv Gupta 0001, Zhiyun Qian
ISC1
2017 Where Is the Weakest Link? A Study on Security Discrepancies Between Android Apps and Their Website Counterparts
Arash Alavi 0001, Alan Quach, Hang Zhang 0012, Bryan Marsh, Farhan Ul Haq, Zhiyun Qian, Long Lu, Rajiv Gupta 0001
PAM1
2016 Automatically verifying and reproducing event-based races in Android apps
abstract
Concurrency has been a perpetual problem in Android apps, mainly due to event-based races. Several event-based race detectors have been proposed, but they produce false positives, cannot reproduce races, and cannot distinguish be- tween benign and harmful races. To address these issues, we introduce a race verification and reproduction approach named ERVA. Given a race report produced by a race detector, ERVA uses event dependency graphs, event flipping, and replay to verify the race and determine whether it is a false positive, or a true positive; for true positives, ERVA uses state comparison to distinguish benign races from harmful races. ERVA automatically produces an event schedule that can be used to deterministically reproduce the race, so developers can fix it. Experiments on 16 apps indicate that only 3% of the races reported by race detectors are harmful, and that ERVA can verify an app in 20 minutes on average.
Yongjian Hu, Iulian Neamtiu, Arash Alavi 0001
ISSTA3