Autores

5735
2231,2641,230
5736
Renan Ribeiro de Vasconcelos
2231,2641,230
5737
2231,2641,230

Informações:

Publicações do PESC

Título
A Quasi-Systematic Review on Software Visualization Approaches for Software Reuse
Linha de pesquisa
Engenharia de Software
Tipo de publicação
Relatório Técnico
Número de registro
ES-748/14
Data
6/2014
Resumo
A reutilização está presente no cotidiano de desenvolvedores de software, ainda que na maior parte de forma ad-hoc ou pragmática. Práticas de reutilização permitem reduzir o tempo e esforço despendidos no desenvolvimento de software. No entanto, as organizações possuem dificuldades em iniciar e lidar com um programa de reutilização. Uma preocupação crucial para facilitar a aceitação/consciência e adoção da reutilização é como fornecer a percepção (awareness) de reutilização adequada.
Mecanismos de awareness permitem que as partes interessadas (stakeholders) estejam cientes do que se passa no cenário de desenvolvimento, e podem fornecer-lhes as informações e apoio necessários para a realização de suas tarefas relacionadas à reutilização. Uma das formas de aumentar o awareness é através do emprego de recursos e técnicas de visualização. A visualização de software tem sido explorada como uma forma de apoiar as atividades de desenvolvimento de software que envolvem o raciocínio humano, ajudando as pessoas a lidar com a grande quantidade e variedade de informação fornecendo abstrações apropriadas.
Apesar de existirem vários trabalhos que visam a ajudar stakeholders de engenharia de software em suas atividades do dia-a-dia, pouco se sabe sobre o papel de visualizações no apoio a tarefas de reutilização de software. Existem algumas abordagens de visualização de software na literatura que se destinam a apoiar a reutilização de software, mas a literatura carece de um corpo sólido de conhecimento ou de um modelo de referência de visualizações de software voltados para a reutilização. As abordagens encontram-se dispersas na literatura e suas informações geralmente são não claramente organizadas, classificadas e categorizadas. Consequentemente, tais stakeholders podem não ser capazes de encontrar e escolher adequadamente visualizações orientadas para a reutilização (ou seja, com base em sua qualidade e provas concretas sobre a sua eficácia real) para um determinado cenário.
Este trabalho apresenta um estudo de caracterização de visualizações que fornecem suporte para tarefas de reutilização de software, organizadas em termos de um framework orientado a tarefas. Esse framework foi estendido a fim de capturar informações mais detalhadas que podem ser úteis para avaliar a adequação de uma visualização em particular. Além de possibilitar uma melhor organização dos resultados, o uso do framework estendido permite identificar aspectos que carecem de mais apoio, indicando oportunidades para pesquisadores em reutilização de software e visualização de software. Os resultados do estudo foram organizados em um website (http://www.cos.ufrj.br/~schots/survis_reuse/), a fim de permitir uma melhor exploração dos resultados, bem como estabelecer correlações entre as dimensões de visualização.
Abstract
Reuse is present in the daily routine of software developers, yet mostly in an ad-hoc or pragmatic way. Reuse practices allow for reducing the time and effort spent on software development. However, organizations struggle in beginning and coping with a reuse program. A crucial concern for facilitating the acceptance/consciousness and adoption of reuse is how to provide appropriate reuse awareness.
Awareness mechanisms allow stakeholders to be percipient of what goes on in the development scenario, and can provide them the necessary information and support for performing their reuse-related tasks. One of the ways to increase awareness is by employing visualization resources and techniques. Software visualization has been exploited as a way to assist software development activities that involve human reasoning, helping people to deal with the large amount and variety of information by providing appropriate abstractions.
Although there are several works that aim to assist software engineering stakeholders in their day-to-day activities, little is known about the role of visualizations in supporting software reuse tasks. There are some software visualization approaches in the literature that are intended to support software reuse, but literature lacks a solid body of knowledge or a reference model of software visualizations targeted to reuse. Approaches are spread in the literature and their information is usually not clearly organized, classified and categorized. Consequently, stakeholders may not be able to properly find and choose reuse-oriented visualizations (i.e., based on their quality and concrete evidence on their actual effectiveness) for a given scenario.
This work presents a characterization study of visualizations that provide support for software reuse tasks, organized in terms of a task-oriented framework. Such framework was extended in order to capture more detailed information that may be useful for assessing the suitability of a particular visualization. Besides enabling a better organization of the findings, the use of the extended framework allows to identify aspects that lack more support, indicating opportunities for researchers on software reuse and software visualization. The results of the study were organized in a website (http://www.cos.ufrj.br/~schots/survis_reuse/), in order to allow a better exploration of the findings, as well as establish correlations between the visualization dimensions.
Topo