Show simple item record

dc.contributor.advisorIsaacs, Katherine
dc.contributor.authorDevkota, Sabin
dc.creatorDevkota, Sabin
dc.date.accessioned2021-09-10T19:08:53Z
dc.date.available2021-09-10T19:08:53Z
dc.date.issued2021
dc.identifier.citationDevkota, Sabin. (2021). Visualizing Control Flow Graphs (Doctoral dissertation, University of Arizona, Tucson, USA).
dc.identifier.urihttp://hdl.handle.net/10150/661593
dc.description.abstractControl Flow Graphs (CFGs) are directed graphs that represent all possible paths a computer program can take during its execution. They are used to analyze computer programs for purposes such as compilation, performance, and security. Experts in these areas visualize the contents of CFGs alongside other artifacts generated during the program analysis to develop and debug new algorithms, verify hypotheses, and understand program optimizations. Control Flow Graphs are commonly visualized as node-link diagrams using hierarchical layouts. However, the general nature of such layouts does not capture CFG-specific structures, making it more difficult to match the drawing to the domain. In addition, the tasks performed by experts involve disparate artifacts and are non-trivial because of the complexity and specificity of the operations involved. To better support the creation of domain-aware CFG drawings and visual analytics systems that are suited to analysis tasks, we begin by identifying the CFG drawing conventions and visualization needs of experts through surveys, interviews, and collaboration with experts in various CFG-related areas. We then develop a novel graph layout technique to generate domain-aware drawings of CFGs that preserve the program structures in the drawings to match the mental model of experts. Following this, we synthesize design guidelines to integrate the domain-aware visualizations into visual analytics systems with program-aware interactions, navigation, and filtering to support more area-specific tasks. Since creating domain-specific drawings often requires the help of a graph drawing expert despite the computing expertise of the target audience, we then design a flexible set of representations based on the drawing requirements and develop CFGConf. CFGConf is a high-level CFG drawing library that provides a concise interface for specifying drawing requirements to create domain-specific drawings that support common CFG-related tasks. We conclude by discussing future directions and open challenges to creating domain-aware visualizations and transferring them to related domains.
dc.language.isoen
dc.publisherThe University of Arizona.
dc.rightsCopyright © is held by the author. Digital access to this material is made possible by the University Libraries, University of Arizona. Further transmission, reproduction, presentation (such as public display or performance) of protected items is prohibited except with permission of the author.
dc.rights.urihttp://rightsstatements.org/vocab/InC/1.0/
dc.subjectControl Flow Graphs
dc.subjectData Visualization
dc.subjectDesign Study
dc.subjectGraph Drawing
dc.subjectProgram Analysis
dc.subjectVisual Analytics System
dc.titleVisualizing Control Flow Graphs
dc.typetext
dc.typeElectronic Dissertation
thesis.degree.grantorUniversity of Arizona
thesis.degree.leveldoctoral
dc.contributor.committeememberStrout, Michelle M.
dc.contributor.committeememberKobourov, Stephen
dc.contributor.committeememberScheidegger, Carlos
thesis.degree.disciplineGraduate College
thesis.degree.disciplineComputer Science
thesis.degree.namePh.D.
refterms.dateFOA2021-09-10T19:08:53Z


Files in this item

Thumbnail
Name:
azu_etd_19102_sip1_m.pdf
Size:
10.15Mb
Format:
PDF

This item appears in the following Collection(s)

Show simple item record