首页 > 最新文献

2019 Working Conference on Software Visualization (VISSOFT)最新文献

英文 中文
Speak to your Software Visualization—Exploring Component-Based Software Architectures in Augmented Reality with a Conversational Interface 与您的软件可视化交谈-使用会话界面探索增强现实中基于组件的软件架构
Pub Date : 2019-11-14 DOI: 10.1109/VISSOFT.2019.00017
P. Seipel, Adrian Stock, S. Santhanam, Artur Baranowski, N. Hochgeschwender, A. Schreiber
Exploring of software architectures with software visualization in Augmented Reality (AR) is possible with different interaction methods, such gesture, gaze, and speech. For interaction with speech (i.e., natural language), we present an architecture and an implementation of conversational interfaces for the Microsoft HoloLens device. We aim to remedy some peculiarities of AR devices, but also enhancing the exploration task at hand. To implement the conversational interface different natural language processing (NLP) components such as natural language generation and intent recognition are typically required. Our proposed architecture integrates conversational components with the AR-based software visualization. We describe its implementation based on different user utterances, where the system provides information about the to-be-explored component-based software architecture in the form of adjusted visualizations and speech-based results. We apply out tool to explore OSGi-based software architectures.
使用增强现实(AR)中的软件可视化来探索软件架构,可以使用不同的交互方法,例如手势、凝视和语音。为了与语音(即自然语言)交互,我们为微软HoloLens设备提供了一个架构和会话接口的实现。我们的目标是弥补AR设备的一些特点,同时也增强手头的探索任务。为了实现会话界面,通常需要不同的自然语言处理(NLP)组件,如自然语言生成和意图识别。我们提出的架构将会话组件与基于ar的软件可视化集成在一起。我们根据不同的用户话语描述其实现,其中系统以调整后的可视化和基于语音的结果的形式提供有关待探索的基于组件的软件架构的信息。我们应用这个工具来探索基于osgi的软件架构。
{"title":"Speak to your Software Visualization—Exploring Component-Based Software Architectures in Augmented Reality with a Conversational Interface","authors":"P. Seipel, Adrian Stock, S. Santhanam, Artur Baranowski, N. Hochgeschwender, A. Schreiber","doi":"10.1109/VISSOFT.2019.00017","DOIUrl":"https://doi.org/10.1109/VISSOFT.2019.00017","url":null,"abstract":"Exploring of software architectures with software visualization in Augmented Reality (AR) is possible with different interaction methods, such gesture, gaze, and speech. For interaction with speech (i.e., natural language), we present an architecture and an implementation of conversational interfaces for the Microsoft HoloLens device. We aim to remedy some peculiarities of AR devices, but also enhancing the exploration task at hand. To implement the conversational interface different natural language processing (NLP) components such as natural language generation and intent recognition are typically required. Our proposed architecture integrates conversational components with the AR-based software visualization. We describe its implementation based on different user utterances, where the system provides information about the to-be-explored component-based software architecture in the form of adjusted visualizations and speech-based results. We apply out tool to explore OSGi-based software architectures.","PeriodicalId":375862,"journal":{"name":"2019 Working Conference on Software Visualization (VISSOFT)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-11-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123286960","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
Evo-Clocks: Software Evolution at a Glance Evo-Clocks:软件进化概览
Pub Date : 2019-10-01 DOI: 10.1109/VISSOFT.2019.00010
Carol V. Alexandru, Sebastian Proksch, Pooyan Behnamghader, H. Gall
Understanding the evolution of a project is crucial in reverse-engineering, auditing and otherwise understanding existing software. Visualizing how software evolves can be challenging, as it typically abstracts a multi-dimensional graph structure where individual components undergo frequent but localized changes. Existing approaches typically consider either only a small number of revisions or they focus on one particular aspect, such as the evolution of code metrics or architecture. Approaches using a static view with a time axis (such as line charts) are limited in their expressiveness regarding structure, and approaches visualizing structure quickly become cluttered with an increasing number of revisions and components. We propose a novel trade-off between displaying global structure over a large time period with reduced accuracy and visualizing fine-grained changes of individual components with absolute accuracy. We demonstrate how our approach displays changes by blending redundant visual features (such as scales or repeating data points) where they are not expressive. We show how using this approach to explore software evolution can reveal ephemeral information when familiarizing oneself with a new project. We provide a working implementation as an extension to our open-source library for fine-grained evolution analysis, LISA.
在逆向工程、审计和其他理解现有软件的过程中,理解项目的演进是至关重要的。可视化软件的发展是具有挑战性的,因为它通常抽象出一个多维图结构,其中单个组件经历频繁但局部的变化。现有的方法通常要么只考虑少量的修订,要么专注于一个特定的方面,比如代码度量或体系结构的演变。使用带有时间轴的静态视图(例如折线图)的方法在结构的表达性方面受到限制,并且可视化结构的方法很快就会因为越来越多的修订和组件而变得混乱。我们提出了一种新的权衡方法,即在较长时间内以较低的精度显示全局结构,并以绝对精度显示单个组件的细粒度变化。我们演示了我们的方法如何通过混合冗余的视觉特征(如尺度或重复的数据点)来显示变化,而这些特征并不具有表现力。我们展示了在熟悉一个新项目时,如何使用这种方法来探索软件进化可以揭示短暂的信息。我们提供了一个工作实现,作为对我们的细粒度演化分析开源库LISA的扩展。
{"title":"Evo-Clocks: Software Evolution at a Glance","authors":"Carol V. Alexandru, Sebastian Proksch, Pooyan Behnamghader, H. Gall","doi":"10.1109/VISSOFT.2019.00010","DOIUrl":"https://doi.org/10.1109/VISSOFT.2019.00010","url":null,"abstract":"Understanding the evolution of a project is crucial in reverse-engineering, auditing and otherwise understanding existing software. Visualizing how software evolves can be challenging, as it typically abstracts a multi-dimensional graph structure where individual components undergo frequent but localized changes. Existing approaches typically consider either only a small number of revisions or they focus on one particular aspect, such as the evolution of code metrics or architecture. Approaches using a static view with a time axis (such as line charts) are limited in their expressiveness regarding structure, and approaches visualizing structure quickly become cluttered with an increasing number of revisions and components. We propose a novel trade-off between displaying global structure over a large time period with reduced accuracy and visualizing fine-grained changes of individual components with absolute accuracy. We demonstrate how our approach displays changes by blending redundant visual features (such as scales or repeating data points) where they are not expressive. We show how using this approach to explore software evolution can reveal ephemeral information when familiarizing oneself with a new project. We provide a working implementation as an extension to our open-source library for fine-grained evolution analysis, LISA.","PeriodicalId":375862,"journal":{"name":"2019 Working Conference on Software Visualization (VISSOFT)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127835249","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 8
Enhancing Commit Graphs with Visual Runtime Clues 增强提交图与可视化运行时线索
Pub Date : 2019-09-01 DOI: 10.1109/VISSOFT.2019.00012
Juan Pablo Sandoval Alcocer, Harold Camacho Jaimes, D. Costa, Alexandre Bergel, Fabian Beck
Monitoring software performance evolution is a daunting and challenging task. This paper proposes a lightweight visualization technique that contrasts source code variation with the memory consumption and execution time of a particular benchmark. The visualization fully integrates with the commit graph as common in many software repository managers. We illustrate the usefulness of our approach with two application examples. We expect our technique to be beneficial for practitioners who wish to easily review the impact of source code commits on software performance.
监视软件性能演变是一项艰巨而富有挑战性的任务。本文提出了一种轻量级的可视化技术,将源代码变化与特定基准的内存消耗和执行时间进行对比。可视化与许多软件存储库管理器中常见的提交图完全集成。我们用两个应用程序示例来说明我们的方法的有用性。我们期望我们的技术对那些希望轻松地审查源代码提交对软件性能的影响的实践者是有益的。
{"title":"Enhancing Commit Graphs with Visual Runtime Clues","authors":"Juan Pablo Sandoval Alcocer, Harold Camacho Jaimes, D. Costa, Alexandre Bergel, Fabian Beck","doi":"10.1109/VISSOFT.2019.00012","DOIUrl":"https://doi.org/10.1109/VISSOFT.2019.00012","url":null,"abstract":"Monitoring software performance evolution is a daunting and challenging task. This paper proposes a lightweight visualization technique that contrasts source code variation with the memory consumption and execution time of a particular benchmark. The visualization fully integrates with the commit graph as common in many software repository managers. We illustrate the usefulness of our approach with two application examples. We expect our technique to be beneficial for practitioners who wish to easily review the impact of source code commits on software performance.","PeriodicalId":375862,"journal":{"name":"2019 Working Conference on Software Visualization (VISSOFT)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124928917","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 8
Visually Exploring Software Maintenance Activities 可视化地探索软件维护活动
Pub Date : 2019-09-01 DOI: 10.1109/VISSOFT.2019.00021
S. Levin, A. Yehudai
Lehman's Laws teach us that a software system will become progressively less satisfying to its users over time, unless it is continually adapted to meet new needs. A line of previous works sought to better understand software maintenance by studying how commits can be classified into three main software maintenance activities. Corrective: fault fixing; Perfective: system improvements; Adaptive: new feature introduction. In this work we suggest visualizations for exploring software maintenance activities in both project and individual developer scopes. We demonstrate our approach using a prototype we have built using the Shiny R framework. In addition, we have also published our prototype as an online demo. This demo allows users to explore the maintenance activities of a number of popular open source projects. We believe that the visualizations we provide can assist practitioners in monitoring and maintaining the health of software projects. In particular, they can be useful for identifying general imbalances, peaks, deeps and other anomalies in projects' and developers' maintenance activities.
雷曼定律告诉我们,随着时间的推移,软件系统对用户的满意度将逐渐降低,除非它不断地进行调整以满足新的需求。通过研究如何将提交划分为三个主要的软件维护活动,以前的一系列工作试图更好地理解软件维护。纠正:修复故障;完善:系统改进;Adaptive:新特性的引入。在这项工作中,我们建议在项目和个人开发人员范围内探索软件维护活动的可视化。我们使用使用Shiny R框架构建的原型来演示我们的方法。此外,我们还发布了我们的原型作为在线演示。这个演示允许用户探索一些流行的开源项目的维护活动。我们相信我们提供的可视化可以帮助从业者监控和维护软件项目的健康。特别是,它们可以用于识别项目和开发人员维护活动中的一般不平衡、峰值、深度和其他异常情况。
{"title":"Visually Exploring Software Maintenance Activities","authors":"S. Levin, A. Yehudai","doi":"10.1109/VISSOFT.2019.00021","DOIUrl":"https://doi.org/10.1109/VISSOFT.2019.00021","url":null,"abstract":"Lehman's Laws teach us that a software system will become progressively less satisfying to its users over time, unless it is continually adapted to meet new needs. A line of previous works sought to better understand software maintenance by studying how commits can be classified into three main software maintenance activities. Corrective: fault fixing; Perfective: system improvements; Adaptive: new feature introduction. In this work we suggest visualizations for exploring software maintenance activities in both project and individual developer scopes. We demonstrate our approach using a prototype we have built using the Shiny R framework. In addition, we have also published our prototype as an online demo. This demo allows users to explore the maintenance activities of a number of popular open source projects. We believe that the visualizations we provide can assist practitioners in monitoring and maintaining the health of software projects. In particular, they can be useful for identifying general imbalances, peaks, deeps and other anomalies in projects' and developers' maintenance activities.","PeriodicalId":375862,"journal":{"name":"2019 Working Conference on Software Visualization (VISSOFT)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116146760","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
CorpusVis – Visualizing Software Metrics at Scale CorpusVis -大规模可视化软件度量
Pub Date : 2019-09-01 DOI: 10.1109/VISSOFT.2019.00020
Jack Slater, C. Anslow, Jens Dietrich, Leonel Merino
We do not know fully understand how software violates metrics based principles, particularly in large systems. Systems are restricted by structural and static deficiencies that we can aim to reduce by providing developers with effective visualizations of their code. We developed CorpusVis a widget-based application to explore software metrics of Java software systems from the Qualitas Corpus. Through an evaluation of the visualization techniques we identified what visualizations were effective and which ones did not scale well for large software systems. Our application helps to reduce the structural and static deficiencies in developers code which enables developers to spend less time maintaining legacy systems and learn to develop more effective code for future systems.
我们并不完全了解软件是如何违反基于度量的原则的,特别是在大型系统中。系统受到结构和静态缺陷的限制,我们可以通过为开发人员提供有效的代码可视化来减少这些缺陷。我们开发了CorpusVis,一个基于小部件的应用程序,从Qualitas语料库中探索Java软件系统的软件度量。通过对可视化技术的评估,我们确定了哪些可视化是有效的,哪些不适合大型软件系统。我们的应用程序有助于减少开发人员代码中的结构性和静态缺陷,从而使开发人员能够花费更少的时间维护遗留系统,并学习为未来的系统开发更有效的代码。
{"title":"CorpusVis – Visualizing Software Metrics at Scale","authors":"Jack Slater, C. Anslow, Jens Dietrich, Leonel Merino","doi":"10.1109/VISSOFT.2019.00020","DOIUrl":"https://doi.org/10.1109/VISSOFT.2019.00020","url":null,"abstract":"We do not know fully understand how software violates metrics based principles, particularly in large systems. Systems are restricted by structural and static deficiencies that we can aim to reduce by providing developers with effective visualizations of their code. We developed CorpusVis a widget-based application to explore software metrics of Java software systems from the Qualitas Corpus. Through an evaluation of the visualization techniques we identified what visualizations were effective and which ones did not scale well for large software systems. Our application helps to reduce the structural and static deficiencies in developers code which enables developers to spend less time maintaining legacy systems and learn to develop more effective code for future systems.","PeriodicalId":375862,"journal":{"name":"2019 Working Conference on Software Visualization (VISSOFT)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127273672","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
A Tertiary Systematic Literature Review on Software Visualization 软件可视化的三级系统文献综述
Pub Date : 2019-09-01 DOI: 10.1109/VISSOFT.2019.00013
Laure Bedu, Olivier Tinh, Fábio Petrillo
Software visualization (SV) allows us to visualize different aspects and artifacts related to software, thus helping engineers understanding its underlying design and functionalities in a more efficient and faster way. In this paper, we conducted a tertiary systematic literature review to identify, classify, and evaluate the current state of the art on software visualization from 48 software visualization secondary studies, following three perspectives: publication trends, software visualization topics and techniques, and issues related to research field. Hence, we summarized the main findings among popular sub-fields of SV, identifying potential research directions and fifteen shared recommendations for developers, instructors and researchers. Our main findings are the lack of rigorous evaluation or theories support to assess SV tools effectiveness, the disconnection between tool design and their scope, and the dispersal of the research community.
软件可视化(SV)允许我们可视化与软件相关的不同方面和工件,从而帮助工程师以更有效和更快的方式理解其底层设计和功能。在本文中,我们进行了第三次系统的文献综述,从48个软件可视化二级研究中识别、分类和评估软件可视化的现状,从三个角度:出版趋势、软件可视化主题和技术以及与研究领域相关的问题。因此,我们总结了SV热门子领域的主要发现,确定了潜在的研究方向,并为开发者、教师和研究人员提供了15条共同建议。我们的主要发现是缺乏严格的评估或理论支持来评估SV工具的有效性,工具设计与其范围之间的脱节,以及研究界的分散。
{"title":"A Tertiary Systematic Literature Review on Software Visualization","authors":"Laure Bedu, Olivier Tinh, Fábio Petrillo","doi":"10.1109/VISSOFT.2019.00013","DOIUrl":"https://doi.org/10.1109/VISSOFT.2019.00013","url":null,"abstract":"Software visualization (SV) allows us to visualize different aspects and artifacts related to software, thus helping engineers understanding its underlying design and functionalities in a more efficient and faster way. In this paper, we conducted a tertiary systematic literature review to identify, classify, and evaluate the current state of the art on software visualization from 48 software visualization secondary studies, following three perspectives: publication trends, software visualization topics and techniques, and issues related to research field. Hence, we summarized the main findings among popular sub-fields of SV, identifying potential research directions and fifteen shared recommendations for developers, instructors and researchers. Our main findings are the lack of rigorous evaluation or theories support to assess SV tools effectiveness, the disconnection between tool design and their scope, and the dispersal of the research community.","PeriodicalId":375862,"journal":{"name":"2019 Working Conference on Software Visualization (VISSOFT)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131637169","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
CloneCompass: Visualizations for Exploring Assembly Code Clone Ecosystems CloneCompass:探索汇编代码克隆生态系统的可视化
Pub Date : 2019-09-01 DOI: 10.1109/VISSOFT.2019.00019
Ying Wang, Jorin Weatherston, M. Storey, D. Germán
Assembly code analysis is an intensive process undertaken by security analysts and reverse engineers to discover vulnerabilities in existing software when source code is unavailable. Kam1n0 is an efficient code clone search engine that facilitates assembly code analysis. However, Kam1n0 search results can contain millions of function-clone pairs, and efficiently exploring and comprehensively understanding the resulting data can be challenging. This paper presents a design study whereby we collaborated with analyst stakeholders to identify requirements for a tool that visualizes and scales to millions of function-clone pairs. These requirements led to the design of an interactive visual tool, CloneCompass, consisting of novel TreeMap Matrix and Adjacency Matrix visualizations to aid in the exploration of assembly code clones extracted from Kam1n0. We conducted a preliminary evaluation with the analyst stakeholders and show how CloneCompass enables these users to visually and interactively explore code clone data generated from software systems with suspected vulnerabilities.
汇编代码分析是一个密集的过程,由安全分析人员和逆向工程师承担,用于在源代码不可用时发现现有软件中的漏洞。Kam1n0是一个高效的代码克隆搜索引擎,便于汇编代码分析。然而,Kam1n0搜索结果可能包含数百万个功能克隆对,有效地探索和全面理解结果数据可能具有挑战性。本文提出了一项设计研究,通过该研究,我们与分析涉众合作,确定了一种工具的需求,该工具可以可视化并扩展到数百万个功能克隆对。这些需求导致了交互式可视化工具CloneCompass的设计,该工具由新颖的TreeMap矩阵和邻接矩阵可视化组成,以帮助探索从Kam1n0提取的汇编代码克隆。我们与分析师利益相关者进行了初步评估,并展示了CloneCompass如何使这些用户能够以可视化和交互式的方式探索从具有可疑漏洞的软件系统生成的代码克隆数据。
{"title":"CloneCompass: Visualizations for Exploring Assembly Code Clone Ecosystems","authors":"Ying Wang, Jorin Weatherston, M. Storey, D. Germán","doi":"10.1109/VISSOFT.2019.00019","DOIUrl":"https://doi.org/10.1109/VISSOFT.2019.00019","url":null,"abstract":"Assembly code analysis is an intensive process undertaken by security analysts and reverse engineers to discover vulnerabilities in existing software when source code is unavailable. Kam1n0 is an efficient code clone search engine that facilitates assembly code analysis. However, Kam1n0 search results can contain millions of function-clone pairs, and efficiently exploring and comprehensively understanding the resulting data can be challenging. This paper presents a design study whereby we collaborated with analyst stakeholders to identify requirements for a tool that visualizes and scales to millions of function-clone pairs. These requirements led to the design of an interactive visual tool, CloneCompass, consisting of novel TreeMap Matrix and Adjacency Matrix visualizations to aid in the exploration of assembly code clones extracted from Kam1n0. We conducted a preliminary evaluation with the analyst stakeholders and show how CloneCompass enables these users to visually and interactively explore code clone data generated from software systems with suspected vulnerabilities.","PeriodicalId":375862,"journal":{"name":"2019 Working Conference on Software Visualization (VISSOFT)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116068854","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
CodeHouse: VR Code Visualization Tool CodeHouse: VR代码可视化工具
Pub Date : 2019-09-01 DOI: 10.1109/VISSOFT.2019.00018
A. Hori, M. Kawakami, M. Ichii
Derivative software development complicates the base software over the years of enhancement and maintenance. It reduces the source code readability, taking developers a long time to understand the software structure and its various parts. In software engineering, software is often compared to buildings. We propose to use this metaphor from a new prospective to help developers understand the existing software efficiently. In this paper, we present a tool called "CodeHouse" that visualizes the source code of the software in a VR space as if it were a house. By placing rooms, which represent modules of the software, on the inside of a virtual cylinder, the CodeHouse makes it possible for the developers to understand both the whole structure of the software and the details of individual program parts before they begin derivative development. The CodeHouse also links with a debugger and helps developers to understand the dynamic behaviors of the program.
衍生软件开发在多年的增强和维护中使基础软件变得复杂。它降低了源代码的可读性,使开发人员花了很长时间来理解软件结构及其各个部分。在软件工程中,软件经常被比作建筑物。我们建议从一个新的角度来使用这个比喻,以帮助开发人员有效地理解现有的软件。在本文中,我们提出了一个名为“CodeHouse”的工具,它可以将软件的源代码可视化到VR空间中,就好像它是一个房子一样。通过将代表软件模块的房间放置在虚拟圆柱体的内部,CodeHouse使开发人员能够在开始衍生开发之前了解软件的整体结构和单个程序部分的细节。CodeHouse还与调试器连接,并帮助开发人员理解程序的动态行为。
{"title":"CodeHouse: VR Code Visualization Tool","authors":"A. Hori, M. Kawakami, M. Ichii","doi":"10.1109/VISSOFT.2019.00018","DOIUrl":"https://doi.org/10.1109/VISSOFT.2019.00018","url":null,"abstract":"Derivative software development complicates the base software over the years of enhancement and maintenance. It reduces the source code readability, taking developers a long time to understand the software structure and its various parts. In software engineering, software is often compared to buildings. We propose to use this metaphor from a new prospective to help developers understand the existing software efficiently. In this paper, we present a tool called \"CodeHouse\" that visualizes the source code of the software in a VR space as if it were a house. By placing rooms, which represent modules of the software, on the inside of a virtual cylinder, the CodeHouse makes it possible for the developers to understand both the whole structure of the software and the details of individual program parts before they begin derivative development. The CodeHouse also links with a debugger and helps developers to understand the dynamic behaviors of the program.","PeriodicalId":375862,"journal":{"name":"2019 Working Conference on Software Visualization (VISSOFT)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124651468","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 5
A User Study on the Usefulness of Visualization Support for Requirements Monitoring 可视化支持对需求监控有用性的用户研究
Pub Date : 2019-09-01 DOI: 10.1109/VISSOFT.2019.00015
L. M. Kritzinger, Thomas Krismayer, Rick Rabiser, P. Grünbacher
Many requirements monitoring approaches have been proposed that check key properties of systems and their interactions at runtime. Some of these approaches also visualize monitoring results and provide details on requirements violations to end users. However, only few studies exist about the usefulness of requirements monitoring tools for practitioners, particularly regarding visualization. In this paper, we present a user study we have conducted with both industrial practitioners and researchers to assess the usefulness of visualization capabilities we have been developing for an event-based requirements monitoring tool. These capabilities allow users to monitor the status of the involved systems, to view trends and statistics, and to inspect the events and data that led to specific violations when diagnosing their root cause. We first performed a walkthrough of the tool using the cognitive dimensions of notations framework from the field of human-computer interaction. We then conducted a user study involving five software engineers of a large company from the automation software domain and four researchers. Using the tool's visualization capabilities all subjects succeeded in monitoring a real-world automation system and in diagnosing violations. Subjects regarded the visualization capabilities as essential for understanding the behavior of a complex system. Based on the study results we derive implications, opportunities, and risks of using visualization in requirements monitoring tools.
已经提出了许多需求监控方法来检查系统的关键属性及其在运行时的交互。其中一些方法还将监视结果可视化,并向最终用户提供有关需求违反的详细信息。然而,只有很少的研究存在于需求监控工具对从业者的有用性,特别是关于可视化。在本文中,我们展示了我们与行业从业者和研究人员一起进行的用户研究,以评估我们为基于事件的需求监控工具开发的可视化功能的有用性。这些功能允许用户监视所涉及系统的状态,查看趋势和统计数据,并在诊断其根本原因时检查导致特定违规的事件和数据。我们首先使用来自人机交互领域的符号框架的认知维度对该工具进行了演练。然后,我们进行了一项用户研究,涉及来自自动化软件领域的一家大公司的五名软件工程师和四名研究人员。使用该工具的可视化功能,所有受试者都成功地监控了真实世界的自动化系统并诊断了违规行为。受试者认为可视化能力对于理解复杂系统的行为是必不可少的。基于研究结果,我们推导出在需求监控工具中使用可视化的含义、机会和风险。
{"title":"A User Study on the Usefulness of Visualization Support for Requirements Monitoring","authors":"L. M. Kritzinger, Thomas Krismayer, Rick Rabiser, P. Grünbacher","doi":"10.1109/VISSOFT.2019.00015","DOIUrl":"https://doi.org/10.1109/VISSOFT.2019.00015","url":null,"abstract":"Many requirements monitoring approaches have been proposed that check key properties of systems and their interactions at runtime. Some of these approaches also visualize monitoring results and provide details on requirements violations to end users. However, only few studies exist about the usefulness of requirements monitoring tools for practitioners, particularly regarding visualization. In this paper, we present a user study we have conducted with both industrial practitioners and researchers to assess the usefulness of visualization capabilities we have been developing for an event-based requirements monitoring tool. These capabilities allow users to monitor the status of the involved systems, to view trends and statistics, and to inspect the events and data that led to specific violations when diagnosing their root cause. We first performed a walkthrough of the tool using the cognitive dimensions of notations framework from the field of human-computer interaction. We then conducted a user study involving five software engineers of a large company from the automation software domain and four researchers. Using the tool's visualization capabilities all subjects succeeded in monitoring a real-world automation system and in diagnosing violations. Subjects regarded the visualization capabilities as essential for understanding the behavior of a complex system. Based on the study results we derive implications, opportunities, and risks of using visualization in requirements monitoring tools.","PeriodicalId":375862,"journal":{"name":"2019 Working Conference on Software Visualization (VISSOFT)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126316956","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
Exploring Eye Tracking Data on Source Code via Dual Space Analysis 通过双空间分析探索源代码上的眼动追踪数据
Pub Date : 2019-09-01 DOI: 10.1109/VISSOFT.2019.00016
Li Zhang, Jianxin Sun, Cole S. Peterson, Bonita Sharif, Hongfeng Yu
Eye tracking is a frequently used technique to collect data capturing users' strategies and behaviors in processing information. Understanding how programmers navigate through a large number of classes and methods to find bugs is important to educators and practitioners in software engineering. However, the eye tracking data collected on realistic codebases is massive compared to traditional eye tracking data on one static page. The same content may appear in different areas on the screen with users scrolling in an Integrated Development Environment (IDE). Hierarchically structured content and fluid method position compose the two major challenges for visualization. We present a dual-space analysis approach to explore eye tracking data by leveraging existing software visualizations and a new graph embedding visualization. We use the graph embedding technique to quantify the distance between two arbitrary methods, which offers a more accurate visualization of distance with respect to the inherent relations, compared with the direct software structure and the call graph. The visualization offers both naturalness and readability showing time-varying eye movement data in both the content space and the embedded space, and provides new discoveries in developers' eye tracking behaviors.
眼动追踪是一种常用的数据收集技术,用于捕捉用户处理信息的策略和行为。了解程序员如何在大量的类和方法中找到bug,对于软件工程的教育者和实践者来说是很重要的。然而,与在一个静态页面上收集的传统眼动追踪数据相比,在现实代码库上收集的眼动追踪数据是巨大的。当用户在集成开发环境(IDE)中滚动时,相同的内容可能出现在屏幕上的不同区域。层次结构的内容和流动的方法位置构成可视化的两大挑战。我们提出了一种双空间分析方法,利用现有的软件可视化和一种新的图形嵌入可视化来探索眼动追踪数据。我们使用图嵌入技术来量化两种任意方法之间的距离,与直接的软件结构和调用图相比,它在内在关系方面提供了更准确的距离可视化。可视化既自然又易读地显示了内容空间和嵌入空间中随时间变化的眼动数据,并为开发人员的眼动追踪行为提供了新的发现。
{"title":"Exploring Eye Tracking Data on Source Code via Dual Space Analysis","authors":"Li Zhang, Jianxin Sun, Cole S. Peterson, Bonita Sharif, Hongfeng Yu","doi":"10.1109/VISSOFT.2019.00016","DOIUrl":"https://doi.org/10.1109/VISSOFT.2019.00016","url":null,"abstract":"Eye tracking is a frequently used technique to collect data capturing users' strategies and behaviors in processing information. Understanding how programmers navigate through a large number of classes and methods to find bugs is important to educators and practitioners in software engineering. However, the eye tracking data collected on realistic codebases is massive compared to traditional eye tracking data on one static page. The same content may appear in different areas on the screen with users scrolling in an Integrated Development Environment (IDE). Hierarchically structured content and fluid method position compose the two major challenges for visualization. We present a dual-space analysis approach to explore eye tracking data by leveraging existing software visualizations and a new graph embedding visualization. We use the graph embedding technique to quantify the distance between two arbitrary methods, which offers a more accurate visualization of distance with respect to the inherent relations, compared with the direct software structure and the call graph. The visualization offers both naturalness and readability showing time-varying eye movement data in both the content space and the embedded space, and provides new discoveries in developers' eye tracking behaviors.","PeriodicalId":375862,"journal":{"name":"2019 Working Conference on Software Visualization (VISSOFT)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2019-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132410717","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
期刊
2019 Working Conference on Software Visualization (VISSOFT)
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1