Novice Understanding of Program Analysis Tool Notifications

Brittany Johnson

North Carolina State University, USA

Track: ACM Student Research Competition

Program analysis tools are available to make developers' jobs easier by automating tasks that would otherwise be performed manually or not at all. To communicate with the developer, these tools use notifications which may be textual, visual, or a combination of both. Research has shown that these notifications need improvement in two areas: expressiveness and scalability. In the research described here, I begin an investigation into the expressiveness and scalability of existing program analysis tools and potential improvements in expressiveness and scalability in and across these tools for novice and expert developers. I begin with novices because I have conducted research with expert developers which found that both expressiveness and scalability play a part in an expert's ability to effectively use a subset of program analysis tools.