Demo Data from EDBT 2026 / reviewers in the wild / expert
Syed Ahmed
dblp:126/7796
· DBLP profile ↗
5ranked-venue papers
1as first author
0since 2021 · last 2019
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 3 · 1 first-authorHuman-computer interaction and ubiquitous computing · 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
1 paper |
Software maintenance and evolution · 62% Programming languages and type systems · 19% Program analysis · 19% | |
| Computer architecture, parallel and distributed computing, and storage systems
1 paper |
Parallel and multicore computing · 100% |
Topics — the 4 heaviest of 4, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Software maintenance and evolution
refactoring |
0.4 | 1 | 2019 | Safe automated refactoring for intelligent parallelization of Java 8 streams · ICSE 2019 |
Parallel and multicore computing
parallel programming models |
0.4 | 1 | 2019 | Safe automated refactoring for intelligent parallelization of Java 8 streams · ICSE 2019 |
Program analysis › type-based analysis
typestate analysis |
0.1 | 1 | 2019 | Safe automated refactoring for intelligent parallelization of Java 8 streams · ICSE 2019 |
Programming languages and type systems
type systems |
0.1 | 1 | 2019 | Safe automated refactoring for intelligent parallelization of Java 8 streams · ICSE 2019 |
Methods — techniques the papers use, named apart from their topics
data ordering analysis · 0.8typestate analysis · 0.4type-state analysis · 0.4
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | Safe automated refactoring for intelligent parallelization of Java 8 streamsabstractStreaming APIs are becoming more pervasive in mainstream Object-Oriented programming languages. For example, the Stream API introduced in Java 8 allows for functional-like, MapReduce-style operations in processing both finite and infinite data structures. However, using this API efficiently involves subtle considerations like determining when it is best for stream operations to run in parallel, when running operations in parallel can be less efficient, and when it is safe to run in parallel due to possible lambda expression side-effects. In this paper, we present an automated refactoring approach that assists developers in writing efficient stream code in a semantics-preserving fashion. The approach, based on a novel data ordering and typestate analysis, consists of preconditions for automatically determining when it is safe and possibly advantageous to convert sequential streams to parallel and unorder or de-parallelize already parallel streams. The approach was implemented as a plug-in to the Eclipse IDE, uses the WALA and SAFE analysis frameworks, and was evaluated on 11 Java projects consisting of ?642K lines of code. We found that 57 of 157 candidate streams (36.31%) were refactorable, and an average speedup of 3.49 on performance tests was observed. The results indicate that the approach is useful in optimizing stream code to their full potential. Raffi Khatchadourian, Yiming Tang 0002, Mehdi Bagherzadeh 0001, Syed Ahmed |
ICSE | 4 |
| 2018 | What do concurrency developers ask about?: a large-scale study using stack overflowabstractBackground Software developers are increasingly required to write concurrent code. However, most developers find concurrent programming difficult. To better help developers, it is imperative to understand their interest and difficulties in terms of concurrency topics they encounter often when writing concurrent code. Syed Ahmed, Mehdi Bagherzadeh 0001 |
ESEM | 1 |
| 2018 | [Engineering Paper] A Tool for Optimizing Java 8 Stream Software via Automated RefactoringabstractStreaming APIs are pervasive in mainstream Object-Oriented languages and platforms. For example, the Java 8 Stream API allows for functional-like, MapReduce-style operations in processing both finite, e.g., collections, and infinite data structures. However, using this API efficiently involves subtle considerations like determining when it is best for stream operations to run in parallel, when running operations in parallel can be less efficient, and when it is safe to run in parallel due to possible lambda expression side-effects. In this paper, we describe the engineering aspects of an open source automated refactoring tool called Optimize Streams that assists developers in writing optimal stream software in a semantics-preserving fashion. Based on a novel ordering and typestate analysis, the tool is implemented as a plug-in to the popular Eclipse IDE, using both the WALA and SAFE frameworks. The tool was evaluated on 11 Java projects consisting of ~642 thousand lines of code, where we found that 36.31% of candidate streams were refactorable, and an average speedup of 1.55 on a performance suite was observed. We also describe experiences gained from integrating three very different static analysis frameworks to provide developers with an easy-to-use interface for optimizing their stream code to its full potential. Raffi Khatchadourian, Yiming Tang 0002, Mehdi Bagherzadeh 0001, Syed Ahmed |
SCAM | 4 |
| 2017 | User Experiences When Testing a Messaging App for Communication Between Individuals who are Hearing and Deaf or Hard of HearingabstractThis study investigated user experiences of participants testing a prototype messaging app with automatic speech recognition (ASR). Twelve pairs of participants, where one individual was deaf or hard-of-hearing (DHH), and the other one was hearing used the app, with the hearing individual using speech and ASR and the DHH one using typing. Participants completed a standardized decision making task to test the app. Regardless of hearing status of the participants or the type of device used, participants were generally satisfied with the app. These findings indicate that ASR has potential to facilitate communication between DHH and hearing individuals in small groups and that the technology merits further investigation. Lisa B. Elliot, Michael Stinson 0002, Syed Ahmed, Donna Easton |
ASSETS | 3 |
| 2017 | Using Automatic Speech Recognition to Facilitate Communication Between an Individual who is Hearing and One who is Deaf or Hard of HearingabstractThis study investigated use of automatic speech recognition (ASR) in 12 pairs where one individual was deaf or hard-of-hearing (DHH), and the other one was hearing, with the hearing individual using speech and ASR and the DHH one using typing. Each of the pairs used prototype software for messaging to communicate while completing a standardized decision making task. Results suggested that ASR produced text at a faster rate than a keyboard. When both participants used keyboards, they exchanged more messages than when one or both of them used a smartphone with a miniature keyboard. Michael Stinson 0002, Syed Ahmed, Lisa B. Elliot, Donna Easton |
ASSETS | 2 |