The rise of distributed version control systems, such as git, and platforms built on top of it, such as GitHub, has triggered a change in how software is developed. Most notably, state-of-the-art practice foresees the...
详细信息
ISBN:
(纸本)9781665431446
The rise of distributed version control systems, such as git, and platforms built on top of it, such as GitHub, has triggered a change in how software is developed. Most notably, state-of-the-art practice foresees the use of pull requests and issues, enriched by means to enable discussions among the involved people. Platforms like GitHub and GitLab have thus turned into comprehensive and cohesive modern software development environments, also offering additional mechanisms, such as code review tools and a transversal support for continuous integration and deployment. However, the plethora of concepts, mechanisms, and their interconnections are stored and presented in textual form, which makes the understanding of the underlying evolutionary processes difficult. We introduce the notion of an issue tale, a visual narrative of the events and actors revolving around any GitHub issue, and present an approach, implemented as an interactive visual analytics tool, to depict and analyze the relevant information pertaining to issue tales. We illustrate our approach and its implementation on several open-source software systems.
software engineers need to comprehend large amounts of data to maintain software. softwarevisualization is an area that helps users to analyze software through the use of visual resources. It can be effectively used ...
详细信息
software engineers need to comprehend large amounts of data to maintain software. softwarevisualization is an area that helps users to analyze software through the use of visual resources. It can be effectively used to understand the large amount of data produced during softwareevolution. A key challenge in the area is to create strategies to consistently visualize the many software attributes, modules and versions produced during its lifecycle. Most of the current visualization strategies seek to present data as a whole, including all available versions of the software in one visual scene. The area lacks strategies visualizing software in detail through the analysis of the evolution of specific software modules. Both strategies are useful, and should be selected according to the task at hand. This work focuses on combining software evolution visualization strategies, experimentally validating the benefits of the approach. Its goal was to build empirical evidence on the use of the combined multiple strategies for softwareevolution comprehension. It presents an experimental study that exploits the benefits of combining multiple visual strategies of softwareevolution analysis. The results show that combined visualization strategies perform better in terms of correctness and analysis time. (C) 2017 Elsevier Inc. All rights reserved.
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 mult...
详细信息
ISBN:
(纸本)9781728149394
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 softwareevolution 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.
The day-to-day management of human resources that occurs during the development and maintenance process of software systems is a responsibility of project leads and managers, who usually perform such a task empiricall...
详细信息
The day-to-day management of human resources that occurs during the development and maintenance process of software systems is a responsibility of project leads and managers, who usually perform such a task empirically. Moreover, rotation and distributed software development affect the establishment of long-term relationships between project managers and software projects, as well as between project managers and companies. It is also common for project leads and managers to face decision-making on human resources without the necessary prior knowledge. In this context, the application of visual analytics to softwareevolution supports software project leads and managers using analysis methods and a shared knowledge space for decision-making by, means of visualization and interaction techniques. This approach offers the possibility of determining which programmer has led a project or contributed more to the development and maintenance of a software system in terms of revisions. Moreover, this approach helps to elucidate both the software items(1) that have been changed in common by a group of programmers and who has changed what software items. With this information, software project leads and managers can make decisions regarding task assignment to developers and staff substitutions due to unexpected situations or staff turnover. Consequently, this research is aimed at supporting software practitioners in tasks related to human resources management through the application of Visual Analytics to softwareevolution. (C) 2015 Elsevier B.V. All rights reserved.
evolutionary visual software analytics is a specialization of visual analytics. It is aimed at supporting software maintenance processes by aiding the understanding and comprehension of softwareevolution with the act...
详细信息
evolutionary visual software analytics is a specialization of visual analytics. It is aimed at supporting software maintenance processes by aiding the understanding and comprehension of softwareevolution with the active participation of users. Therefore, it deals with the analysis of software projects that have been under development and maintenance for several years and which are usually formed by thousands of software artifacts, which are also associated to logs from communications, defect-tracking and software configuration management systems. Accordingly, evolutionary visual software analytics aims to assist software developers and software project managers by means of an integral approach that takes into account knowledge extraction techniques as well as visual representations that make use of interaction techniques and linked views. Consequently, this paper discusses the implementation of an architecture based on the evolutionary visual software analytics process and how it supports knowledge discovery during software maintenance tasks.
暂无评论