131 research outputs found

    Using Icicle Trees to Encode the Hierarchical Structure of Source Code

    Get PDF
    This paper presents a study which evaluates the use of a tree visualisation (icicle tree) to encode the hierarchical structure of source code. The tree visualisation was combined with a source code editor in order to function as a compact overview to facilitate the process of comprehending the global structure of a source code document. Results from our study show that pro- viding an overview visualisation led to an increase in accuracy and a decrease in completion time when participants performed counting tasks. However, in locating tasks, the presence of the visualisation led to a decrease in participants’ performance

    On Using Tree Visualisation Techniques to Support Source Code Comprehension

    Get PDF
    This paper presents a design study that investigates the use of compact tree visualisations to provide software de-velopers with an overview of the static structure of a sourcecode document within a code editor in order to facilitate source code understanding and navigation. A prototype is presented which utilises an icicle tree visualisation to encode the control structure hierarchy of a source code document, as well as a circular treemap visualisation to encode the scope hierarchy of a source code document. An overview of the prototype and its functionality is given as well as a detailed discussion on the design rationale behind the tool. Possible applications and future work plans are also discussed

    Hierarkkisessa asiakasdatassa ajan suhteen tapahtuvien muutosten visualisointi käyttäen visualisointikirjastoa Plotly Python Graphing Library

    Get PDF
    Time-dependent hierarchical data is a complex type of data that is difficult to visualize in a clear manner. It can be found in many real-life situations, for example in customer analysis, but the best practices for visualizing this type of data are not commonly known in business world. This thesis focuses on visualizing changes over time in hierarchical customer data using the Plotly Python Graphing Library and is written as an assignment for a Finnish company. The thesis consists of a literature survey and experimental part. The literature survey introduces the most common hierarchical visualization methods, and the different possible encoding techniques for adding time dimension on top of these hierarchical visualization methods. Moreover, the pros and cons of different visualization techniques and encodings are discussed about. In the experimental part of the thesis, visualization prototypes are designed using the Plotly Python Graphing Library. A company customer data set of the commissioning company is partitioned into hierarchical customer segments by a hierarchical industrial classification TOL 2008, and changes over time in a continuous variable are visualized by these segments. Two hierarchical visualization techniques: the sunburst chart and treemap, are used to create two prototype versions, and the combination of color, typography, and interaction is used to encode time dimension in these prototypes. The same prototypes are also exploited to visualize customer segments by an artificial hierarchy created by combining multiple categorical features into a hierarchical structure. The prototypes are validated in the commissioning company by arranging an end user study and expert review. Concerning the prototypes by the industrial classification: According to the end users and experts, both prototype versions are very useful and well-implemented. Among the end users, there was no significant difference in which one of these prototype versions is faster to use, but the clear majority of the respondents regarded the sunburst chart version as their favorite prototype. The two experts who participated in the expert review had different opinions on which one of the prototype versions they would select to be utilized in practice. Concerning the prototypes by the artificial hierarchy: These prototypes also received positive feedback, but the possibility to change the order of features in the hierarchy was considered as an extremely important development idea. ACM Computing Classification System (CCS): Human-Centered Computing → Visualization → Visualization Techniques Human-Centered Computing → Visualization → Empirical Studies in Visualizatio

    Multiscale Visual Comparison of Execution Traces

    Get PDF

    Radial icicle tree (RIT): node separation and area constancy

    Get PDF

    Radial Icicle Tree (RIT): Node Separation and Area Constancy

    Full text link
    Icicles and sunbursts are two commonly-used visual representations of trees. While icicle trees can map data values faithfully to rectangles of different sizes, often some rectangles are too narrow to be noticed easily. When an icicle tree is transformed into a sunburst tree, the width of each rectangle becomes the length of an annular sector that is usually longer than the original width. While sunburst trees alleviate the problem of narrow rectangles in icicle trees, it no longer maintains the consistency of size encoding. At different tree depths, nodes of the same data values are displayed in annular sections of different sizes in a sunburst tree, though they are represented by rectangles of the same size in an icicle tree. Furthermore, two nodes from different subtrees could sometimes appear as a single node in both icicle trees and sunburst trees. In this paper, we propose a new visual representation, referred to as \emph{radial icicle tree} (RIT), which transforms the rectangular bounding box of an icicle tree into a circle, circular sector, or annular sector while introducing gaps between nodes and maintaining area constancy for nodes of the same size. We applied the new visual design to several datasets. Both the analytical design process and user-centered evaluation have confirmed that this new design has improved the design of icicles and sunburst trees without introducing any relative demerit

    Visualising The Complex Features Of Source Code

    Get PDF
    Software development is a complex undertaking composed of several activities that include reading, writing, and modifying source code. Indeed, previous studies have shown that the majority of the effort invested in software development is dedicated to understanding code. This includes understanding the static structure, dynamic behaviour, and evolution of the code. Given these particular characteristics, as well as the high complexity of source code, it is reasonable to consider how visualisation can facilitate source code understanding. This work proposes to extend existing software development tools with visualisations that can be used to encode the various complex features within a source code document. Further, this work establishes a design space which includes a series of visualisations that are meant to complement existing textual views of source code, as found in source code editors. Several prototype visualisations are presented in this work which utilise various visualisation techniques, such as tree visualisations techniques and visualisation techniques based on the code-map metaphor. This work also presents several experiments, where the results of these experiments indicate that combining existing software development tools with visualisations can have a positive effect on source code understanding. Additionally, the result of the experiments show that the less a visualisation is abstracted from the original textural representation of a source code document, in terms of line, token, ordering, and character information, the more likely it is that viewers can link the visualisation to the code and back

    Interactive Visualization for Deep Organizational data

    Get PDF
    During the last decade, there has been a growing interest in investigating how and why people use organizational data to solve problems, make decisions, and perform other cognitive activities, especially in the social network, healthcare, and education domains. Working with organizational data is challenging because of the complex and multi-structured nature of it. One way to support cognitive activities with organizational data is through the use of interactive visualization tools that provide different representations and mechanisms for interacting with deep layers of the data. In this research, we have deep organizational data which is mainly about collaborations inside universities. The thesis goal is making an interactive visualization tool to support complex cognitive activities with this database. The generated visualization tool has an expandable and reusable structure as well as innovative representations and interactions designed to allow navigating through the data intuitively
    corecore