Please use this identifier to cite or link to this item: https://repositorio.ufu.br/handle/123456789/19882
Document type: Tese
Access type: Acesso Aberto
Title: Uma abordagem híbrida para construção de documentação para apoio à instanciação de frameworks
Author: Lafetá, Raquel Fialho de Queiroz
First Advisor: Maia, Marcelo de Almeida
First member of the Committee: Soares, Michel dos Santos
Second member of the Committee: Figueiredo, Eduardo Magno Lages
Third member of the Committee: Alves, Vander Ramos
Fourth member of the Committee: Dorça, Fabiano Azevedo
Summary: Reuso de software é um dos principais objetivos em Engenharia de Software. Frameworks de aplicação promovem a reutilização de blocos de construção, mas também da solução arquitetural para um determinado domínio de aplicação. A criação de uma aplicação reutilizando um framework denomina-se instanciação do framework e requer um esforço substancial de compreensão do mesmo. Uma documentação de alta qualidade pode ser um instrumento útil para minimizar esse esforço. No entanto, na maioria dos casos, a documentação adequada não existe ou não é atualizada. Uma hipótese é que o próprio código fonte do framework e de instâncias existentes poderiam oferecer informação útil para novas instanciações. Contudo, haveria o desafio dos desenvolvedores entenderem quantidade substancial de código fonte. Neste contexto, o objetivo desta tese é demonstrar a viabilidade de construção de documentação relevante para a instanciação de frameworks utilizando análise estática e dinâmica do código fonte do framework e de suas instanciações pré-existentes. A proposta é apresentar tal documentação como um livro de receitas, onde as receitas são compostas de tarefas de programação e informações sobre os elementos do framework associados a uma característica de interesse. Inicialmente, dois estudos preliminares foram realizados para avaliar a cobertura e a utilidade prática das informações contidas nas receitas, os quais mostraram a necessidade de alguns ajustes, mas também indicaram receitas com informações relevantes e cobertura adequada. Por fim, foi conduzido um estudo robusto composto de 3 experimentos envolvendo ao todo 44 sujeitos humanos, com 88 execuções de atividades reais de instanciação de frameworks, onde o uso de livros de receitas foi comparado ao uso de documentações tradicionais dos frameworks. Os livros de receitas gerados semi-automaticamente apresentaram resultados de uso iguais ou melhores, em termos de taxa de acerto, tempo de execução e percepção da satisfação dos usuários, cumprindo os objetivos de pesquisa.
Abstract: Software reuse is one of the major goals in Software Engineering. Frameworks promote the reuse of individual building blocks, but also of system design. Framework instantiation is the construction of an application reusing a framework. This process requires a substantial understanding effort of the framework. So, high quality documentation may be a useful resource to minimize this effort. However, in most cases, appropriate documentation neither exists nor is up-to-date. A hypothesis is that the framework code itself and existing instantiations could provide useful information for new instantiations. However, in this case developers still would have to read large portions of code. The goal of this thesis is to demonstrate the feasibility of constructing relevant documentation for framework instantiation with static and dynamic analysis of the framework itself and pre-existing instantiations. The proposal is presenting the documentation in a cookbook style, where recipes are composed of programming tasks and information about framework elements related to a desired feature. Initially, two preliminary experiments were conducted to evaluate coverage and practical usefulness of the recipe information for developers. Results pointed out the need for some adjustments, but also indicated sufficient and relevant information in recipes. Finally, we performed a robust study, consisting of three experiments with 44 human subjects, and 88 executions of real framework instantiations. We compared the use of cookbooks with the use of traditional framework documentation. The generated cookbooks presented results better or as good as traditional framework documentation, in terms of correctness, time spent and the satisfaction perception of document uses.
Keywords: Computação
Pórticos estruturais
Programação (Computadores)
Métodos de ensino
Compreensão de software
Reuso
Framework
Livro de receitas
Análise estática
Análise dinâmica
Experimento controlado
Program Comprehension
Reverse engineering
Reuse
Frameworks
Cookbook
Recipe
Static analysis
Dynamic analysis
Controlled experiment
Engenharia reversa
Area (s) of CNPq: CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Language: por
Country: Brasil
Publisher: Universidade Federal de Uberlândia
Program: Programa de Pós-graduação em Ciência da Computação
Quote: LAFETÁ, Raquel Fialho de Queiroz. Uma abordagem híbrida para construção de documentação para apoio à instanciação de frameworks. 2017. 150 f. Tese (Doutorado em Ciência da Computação) - Universidade Federal de Uberlândia, Uberlândia, 2017. DOI http://dx.doi.org/10.14393/ufu.te.2017.64
Document identifier: http://dx.doi.org/10.14393/ufu.te.2017.64
URI: https://repositorio.ufu.br/handle/123456789/19882
Date of defense: 2-Mar-2017
Appears in Collections:TESE - Ciência da Computação

Files in This Item:
File Description SizeFormat 
AbordagemHibridaConstrucao.pdfTese9.17 MBAdobe PDFThumbnail
View/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.