EDBT 2026 Demo / reviewers in the wild / expert
Annie T. T. Ying
dblp:01/6160
· DBLP profile ↗
7ranked-venue papers
5as first author
0since 2021 · last 2018
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 6 · 4 first-authorDatabases, data management, data science and information retrieval · 1Human-computer interaction and ubiquitous computing · 1 · 1 first-author
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
4 papers |
Program analysis · 51% Software maintenance and evolution · 25% Program synthesis and code generation · 15% | |
| Databases, data mining, and information retrieval
1 paper |
Information retrieval · 100% |
Topics — the 8 heaviest of 9, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Program analysis
static analysis |
0.3 | 1 | 2017 | Statically checking web API requests in JavaScript · ICSE 2017 |
Program analysis › data flow analysis › value analysis
string analysis |
0.3 | 1 | 2017 | Statically checking web API requests in JavaScript · ICSE 2017 |
Information retrieval › search interfaces
search result presentation |
0.2 | 1 | 2013 | Code fragment summarization · ESEC/SIGSOFT FSE 2013 |
Program synthesis and code generation
code summarization |
0.2 | 1 | 2013 | Code fragment summarization · ESEC/SIGSOFT FSE 2013 |
Empirical software engineering
developer studies |
0.1 | 1 | 2014 | Selection and presentation practices for code example summarization · SIGSOFT FSE 2014 |
Software maintenance and evolution › code change analysis
change pattern mining |
0.0 | 1 | 2004 | Predicting Source Code Changes by Mining Change History · IEEE Trans. Software Eng. 2004 |
Software maintenance and evolution › recommendation system for software engineering
change recommendation |
0.0 | 1 | 2004 | Predicting Source Code Changes by Mining Change History · IEEE Trans. Software Eng. 2004 |
Empirical software engineering
mining software repositories |
0.0 | 1 | 2004 | Predicting Source Code Changes by Mining Change History · IEEE Trans. Software Eng. 2004 |
Methods — techniques the papers use, named apart from their topics
machine learning · 0.3inter-procedural string analysis · 0.3qualitative analysis · 0.2data mining · 0.0association rule mining · 0.0
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2018 | Towards extracting web API specifications from documentationabstractWeb API specifications are machine-readable descriptions of APIs. These specifications, in combination with related tooling, simplify and support the consumption of APIs. However, despite the increased distribution of web APIs, specifications are rare and their creation and maintenance heavily rely on manual efforts by third parties. In this paper, we propose an automatic approach and an associated tool called D2Spec for extracting significant parts of such specifications from web API documentation pages. Given a seed online documentation page of an API, D2Spec first crawls all documentation pages on the API, and then uses a set of machine-learning techniques to extract the base URL, path templates, and HTTP methods - collectively describing the endpoints of the API. Jinqiu Yang 0001, Erik Wittern, Annie T. T. Ying, Julian Dolby, Lin Tan 0001 |
MSR | 3 |
| 2017 | Statically checking web API requests in JavaScriptabstractMany JavaScript applications perform HTTP requests to web APIs, relying on the request URL, HTTP method, and request data to be constructed correctly by string operations. Traditional compile-time error checking, such as calling a non-existent method in Java, are not available for checking whether such requests comply with the requirements of a web API. In this paper, we propose an approach to statically check web API requests in JavaScript. Our approach first extracts a request's URL string, HTTP method, and the corresponding request data using an inter-procedural string analysis, and then checks whether the request conforms to given web API specifications. We evaluated our approach by checking whether web API requests in JavaScript files mined from GitHub are consistent or inconsistent with publicly available API specifications. From the 6575 requests in scope, our approach determined whether the request's URL and HTTP method was consistent or inconsistent with web API specifications with a precision of 96.0%. Our approach also correctly determined whether extracted request data was consistent or inconsistent with the data requirements with a precision of 87.9% for payload data and 99.9% for query data. In a systematic analysis of the inconsistent cases, we found that many of them were due to errors in the client code. The here proposed checker can be integrated with code editors or with continuous integration tools to warn programmers about code containing potentially erroneous requests. Erik Wittern, Annie T. T. Ying, Yunhui Zheng, Julian Dolby, Jim Laredo |
ICSE | 2 |
| 2014 | Selection and presentation practices for code example summarizationabstractCode examples are an important source for answering questions about software libraries and applications. Many usage contexts for code examples require them to be distilled to their essence: e.g., when serving as cues to longer documents, or for reminding developers of a previously known idiom. We conducted a study to discover how code can be summarized and why. As part of the study, we collected 156 pairs of code examples and their summaries from 16 participants, along with over 26 hours of think-aloud verbalizations detailing the decisions of the participants during their summarization activities. Based on a qualitative analysis of this data we elicited a list of practices followed by the participants to summarize code examples and propose empirically-supported hypotheses justifying the use of specific practices. One main finding was that none of the participants exclusively extracted code verbatim for the summaries, motivating abstractive summarization. The results provide a grounded basis for the development of code example summarization and presentation technology. Annie T. T. Ying, Martin P. Robillard |
SIGSOFT FSE | 1 |
| 2013 | Code fragment summarizationabstractCurrent research in software engineering has mostly focused on the retrieval accuracy aspect but little on the presentation aspect of code examples, e.g., how code examples are presented in a result page. We investigate the feasibility of summarizing code examples for better presenting a code example. Our algorithm based on machine learning could approximate summaries in an oracle manually generated by humans with a precision of 0.71. This result is promising as summaries with this level of precision achieved the same level of agreement as human annotators with each other. Annie T. T. Ying, Martin P. Robillard |
ESEC/SIGSOFT FSE | 1 |
| 2012 | Facilitating Code Example Search on the Web through Expertise Personalization
Annie T. T. Ying |
UMAP | 1 |
| 2011 | The Influence of the Task on Programmer BehaviourabstractProgrammers performing a change task must understand the existing software in addition to performing the actual change. This process is likely to be affected by characteristics of the task. We investigated whether the nature of a task has any relationship with when a programmer edits code during a programming session. We characterized differences in editing behaviour with three types of editing styles: edit-first, edit-last, and edit-throughout. We based our analysis on the interaction history of over 4000 programming sessions collected as part of the development history of open source projects. Our results showed that an enhancement task (as opposed to a bug fix) was less likely to be associated with a high fraction of source code edit events at the beginning of the programming session. To our surprise, we also found that the presence of a stack trace in a bug report did not significantly effect the editing style of the programming session. Annie T. T. Ying, Martin P. Robillard |
ICPC | 1 |
| 2004 | Predicting Source Code Changes by Mining Change HistoryabstractSoftware developers are often faced with modification tasks that involve source which is spread across a code base. Some dependencies between source code, such as those between source code written in different languages, are difficult to determine using existing static and dynamic analyses. To augment existing analyses and to help developers identify relevant source code during a modification task, we have developed an approach that applies data mining techniques to determine change patterns - sets of files that were changed together frequently in the past - from the change history of the code base. Our hypothesis is that the change patterns can be used to recommend potentially relevant source code to a developer performing a modification task. We show that this approach can reveal valuable dependencies by applying the approach to the Eclipse and Mozilla open source projects and by evaluating the predictability and interestingness of the recommendations produced for actual modification tasks on these systems. Annie T. T. Ying, Gail C. Murphy, Raymond T. Ng, Mark Chu-Carroll |
IEEE Trans. Software Eng. | 1 |