Actionable Software Visualization

TIC

Software visualizations can be very useful for answering complex questions that arise in the software development process. Although modern visualization engines offer expressive tools for building such visualizations, developers can have difficulties to (1) identify a suitable visualization, and (2) implement that visualization using the engine's API. Examples that illustrate the usage of an engine to build concrete visualizations offer a good starting point, but developers may have to traverse long lists of categories and analyze examples one-by-one to find a suitable one.

In this project you will design and implement a visualization tool, such as MetaVis: Exploring Actionable Visualization, for recommending developers suitable visualization for their questions that they can execute within the IDE. The tool will be integrated in a popular IDE (e.g. Eclipse), support the analysis of software written in multiple languages, and provide web-based visualization.

To this end, you will learn about the (1) Rascal meta-programming language, (2) d3.js data visualization engine, and (3) state-of-the-art software visualization techniques.

Contact: Leonel Merino