Refactoring helps improve the design of software systems, making them more understandable, readable, maintainable, cleaner, and self-explanatory. Many refactoring tools allow developers to select and execute the best ...
详细信息
ISBN:
(纸本)9781450396561
Refactoring helps improve the design of software systems, making them more understandable, readable, maintainable, cleaner, and self-explanatory. Many refactoring tools allow developers to select and execute the best refactorings for their code. However, most of them lack quick and continuous feedback, support, and guidance, leading to a poor refactoring experience. To fill this gap, we are researching ways to increase liveness in refactoring. Live Refactoring consists of continuously knowing, in real-time, what and why to refactor. To explore the concept of Live Refactoring and its main components - recommendation, visualization, and application, we prototyped a Live Refactoring Environment focused on the Extract Method refactoring. With it, developers can receive recommendations about the best refactoring options and have support to apply them automatically. This work helped us reinforce the hypothesis that early and continuous refactoring feedback helps to shorten the time needed to create high-quality systems.
The Design Navigator is a semi-automated design mining tool which reverse engineers LePUS3 design charts from Java (TM) 1.4 programs at any level of abstraction in reasonable time. We demonstrate the Design Navigator&...
详细信息
ISBN:
(纸本)9781605580791
The Design Navigator is a semi-automated design mining tool which reverse engineers LePUS3 design charts from Java (TM) 1.4 programs at any level of abstraction in reasonable time. We demonstrate the Design Navigator's step-wise charting process of Java Foundation Classes, generating decreasingly abstract charts of *** and discovering building-blocks in its design.
We analyze visually, to what extend team members and external developers contribute to open-source projects to have a high-level impression about collaboration in that projects. For that, we record the provenance of t...
详细信息
ISBN:
(纸本)9781450387507
We analyze visually, to what extend team members and external developers contribute to open-source projects to have a high-level impression about collaboration in that projects. For that, we record the provenance of the development process and draw the resulting property graph. Our graph drawings show, which developers are jointly changed the same files what we apply to Germany's COVID-19 exposure notification app 'Corona-Warn-App'.
Dynamic information collected as a software system executes can help software engineers perform some tasks on a system more effectively. To interpret the sizable amount of data generated from a system's execution,...
详细信息
ISBN:
(纸本)9781581130058
Dynamic information collected as a software system executes can help software engineers perform some tasks on a system more effectively. To interpret the sizable amount of data generated from a system's execution, engineers require tool support. We have developed an off-line, flexible approach for visualizing the operation of an object-oriented system at the architectural level. This approach complements and extends existing profiling and visualization approaches available to engineers attempting to utilize dynamic information. In this paper, we describe the technique and discuss preliminary qualitative studies into its usefulness and usability. These studies were undertaken in the context of performance tuning tasks.
Feature modeling is a popular software Product Line Engineering (SPLE) technique used to describe variability in a product family. A usable feature modeling tool environment should enable SPLE practitioners to produce...
详细信息
ISBN:
(纸本)9783319112459;9783319112442
Feature modeling is a popular software Product Line Engineering (SPLE) technique used to describe variability in a product family. A usable feature modeling tool environment should enable SPLE practitioners to produce good quality models, in particular, models that effectively communicate modeled information. FAMILIAR is a text- based environment for manipulating and composing Feature Models (FMs). In this paper we present extensions we made to FAMILIAR to enhance its usability. The extensions include a visualization of FMs, or more precisely, a feature diagram rendering mechanism that supports the use of a combination of text and graphics to describe FMs, their configurations, and the results of FM analyses. We also present the results of a preliminary evaluation of the environment's usability. The evaluation involves comparing the use of the extended environment with the previous textbased console- driven version. The preliminary experiment provides some evidence that use of the new environment results in increased cognitive effectiveness of novice users and improved quality of new FMs.
This position paper discusses the situations when visualizing traceability links is opportune, as well as what information pertaining to these links should be visualized and *** also presents a prototype tool, which i...
详细信息
ISBN:
(纸本)1595932437
This position paper discusses the situations when visualizing traceability links is opportune, as well as what information pertaining to these links should be visualized and *** also presents a prototype tool, which is used to visualize traceability links to provide support for the user during recovery, maintenance, and browsing of such links. Copyright 2005 ACM.
software architecture design is known to be driven by the quality attributes we may want to satisfy. Among them, modifiability plays an important role since software maintenance takes the lion's share in the softw...
详细信息
ISBN:
(纸本)9781479931507
software architecture design is known to be driven by the quality attributes we may want to satisfy. Among them, modifiability plays an important role since software maintenance takes the lion's share in the software development costs. However, to successfully maintain a legacy system, the latter must be sufficiently understood so that the maintenance team will not introduce new bugs when correcting others. Then we present a software metric that we called the Autonomy Ratio (AR). We show this dynamic metric to be a good indicator of the system's structure understandability. Since we end up with hundreds of values for a single system, we represent these values as a hierarchical map: the "Autonomy Ratio Map". The contribution of the paper is to link the AR metric with theories of software comprehension, to show how the AR Map helps in assessing software structure understand-dability, and to present an empirical validation of it.
C# is the most widely used programming language among XR developers. However, only a limited number of graph-based data acquisition tools exist for C# software. XR development commonly relies on reusing existing softw...
详细信息
ISBN:
(纸本)9781450394758
C# is the most widely used programming language among XR developers. However, only a limited number of graph-based data acquisition tools exist for C# software. XR development commonly relies on reusing existing software components to accelerate development. Graph-based visualization tools can facilitate this comprehension process, e.g., by providing an overview of relationships between components. This work describes a new tool called Src2Neo that generates labeled property graphs of C#-based software projects. The stored graph follows a simple C# naming scheme and — contrary to other solutions — maps each software entity to exactly one node. The resulting graph facilitates the comprehension process by providing an easy to read representation of software components. Additionally, the generated graphs can act as a data basis for more advanced software visualizations without the need for complex data requests.
The goal of viral marketing is that, by the virtue of mouth to mouth word spread, a small set of influential customers can influence greater number of customers. Influence maximization (IM) task is to discover such in...
详细信息
The goal of viral marketing is that, by the virtue of mouth to mouth word spread, a small set of influential customers can influence greater number of customers. Influence maximization (IM) task is to discover such influential nodes (or customers) from a social network. Existing algorithms adopt Greedy based approaches, which assume only positive influence among users. But in real life network, such as trust network, one can also get negatively influenced.
In this research we propose a model, called T-GT model, considering both positive and negative influence. To solve IM under this model, a trust network where relationships among users are either `trust'' or `distrust'' is considered. We first compute positive and
negative influence by mining frequent patterns of actions performed. Then using local search a new algorithm, called MineSeedLS, is proposed. Experimental results on real trust network shows that our approach outperforms Greedy based approach by almost 35%.
Advisors/Committee Members: Dr. Christie I. Ezeife
We built a tool to visualize and explore program execution traces. Our goal was to help programmers without any prior knowledge of a program, quickly get enough knowledge about its structure so that they can make smal...
详细信息
暂无评论