Automated API property inference techniques

MP Robillard, E Bodden, D Kawrykow… - IEEE Transactions …, 2012 - ieeexplore.ieee.org
Frameworks and libraries offer reusable and customizable functionality through Application
Programming Interfaces (APIs). Correctly using large and sophisticated APIs can represent a …

Code completion with statistical language models

V Raychev, M Vechev, E Yahav - Proceedings of the 35th ACM SIGPLAN …, 2014 - dl.acm.org
We address the problem of synthesizing code completions for programs using APIs. Given a
program with holes, we synthesize completions for holes with the most likely sequences of …

MAPO: Mining and recommending API usage patterns

H Zhong, T Xie, L Zhang, J Pei, H Mei - … , Genoa, Italy, July 6-10, 2009 …, 2009 - Springer
To improve software productivity, when constructing new software systems, programmers
often reuse existing libraries or frameworks by invoking methods provided in their APIs …

Graph-based mining of multiple object usage patterns

TT Nguyen, HA Nguyen, NH Pham… - Proceedings of the 7th …, 2009 - dl.acm.org
The interplay of multiple objects in object-oriented programming often follows specific
protocols, for example certain orders of method calls and/or control structure constraints …

Mining requirements from closed-loop control models

X Jin, A Donzé, JV Deshmukh, SA Seshia - Proceedings of the 16th …, 2013 - dl.acm.org
A significant challenge to the formal validation of software-based industrial control systems
is that system requirements are often imprecise, non-modular, evolving, or even simply …

Bugram: bug detection with n-gram language models

S Wang, D Chollak, D Movshovitz-Attias… - Proceedings of the 31st …, 2016 - dl.acm.org
To improve software reliability, many rule-based techniques have been proposed to infer
programming rules and detect violations of these rules as bugs. These rule-based …

A graph-based approach to API usage adaptation

HA Nguyen, TT Nguyen, G Wilson Jr, AT Nguyen… - ACM Sigplan …, 2010 - dl.acm.org
Reusing existing library components is essential for reducing the cost of software
development and maintenance. When library components evolve to accommodate new …

Effective typestate verification in the presence of aliasing

SJ Fink, E Yahav, N Dor, G Ramalingam… - ACM Transactions on …, 2008 - dl.acm.org
This article addresses the challenge of sound typestate verification, with acceptable
precision, for real-world Java programs. We present a novel framework for verification of …

Synthesizing near-optimal malware specifications from suspicious behaviors

M Fredrikson, S Jha, M Christodorescu… - … IEEE Symposium on …, 2010 - ieeexplore.ieee.org
Fueled by an emerging underground economy, malware authors are exploiting
vulnerabilities at an alarming rate. To make matters worse, obfuscation tools are commonly …

[PDF][PDF] Contextual policy enforcement in android applications with permission event graphs.

KZ Chen, NM Johnson, V D'Silva, S Dai, K MacNamara… - Ndss, 2013 - lilicoding.github.io
The difference between a malicious and a benign Android application can often be
characterised by context and sequence in which certain permissions and APIs are used. We …