Use este identificador para citar ou linkar para este item:
https://repositorio.ufu.br/handle/123456789/12567
Tipo do documento: | Dissertação |
Tipo de acesso: | Acesso Aberto |
Título: | Crowd cookbooks: usando conhecimento de multidão a partir de sítios de perguntas e respostas para documentação de apis |
Autor(es): | Souza, Lucas Batista Leite de |
Primeiro orientador: | Maia, Marcelo de Almeida |
Primeiro membro da banca: | Macêdo, Autran |
Segundo membro da banca: | Valente, Marco Túlio de Oliveira |
Resumo: | Desenvolvedores de elementos reusáveis de software, como as bibliotecas, em geral têm a responsabilidade de disponibilizar documentação abrangente e de alta qualidade para permitir o reuso efetivo desses elementos. O reuso efetivo de bibliotecas depende da qualidade da documentação da API (Interface para Programação de Aplicativos). Bibliotecas bem estabelecidas tipicamente têm documentação abrangente, por exemplo em Javadocs. Porém, essa documentação geralmente carece de exemplos e explicações, o que pode dicultar o reuso efetivo da biblioteca. Stackoverow.com (SO) é um serviço de perguntas e respostas (Q&A) direcionado a questões relacionadas ao desenvolvimento de software. No SO, um desenvolvedor pode postar perguntas relacionadas a um tópico de programação e outros membros do site podem disponibilizar respostas para ajudá-lo a resolver o problema que ele tem em mãos. Apesar da utilização crescente do SO pela comunidade de desenvolvimento de software, a informação relação a um biblioteca está espalhada ao longo do site. Assim, o SO ainda carece de uma organização do crowd knowledge nele contido. Nessa dissertação, será apresentada uma abordagem semi-automatizada que organiza a informação disponível no SO para a construção de um tipo de documentação para APIs, conhecido por cookbooks (livros orientados a receitas). Os cookbooks produzidos pela abordagem proposta são chamados crowd cookbooks. Para avaliar a abordagem proposta foram gerados cookbooks para três APIs amplamente utilizadas pela comunidade de desenvolvimento de software: SWT, LINQ e QT. Foram identicadas características desejáveis de cookbooks e realizado um estudo com sujeitos humanos para entender em que grau os cookbooks construídos atendem a estas características. Por meio estudo também foi possível compreender melhor os pers de uso dos cookbooks mais apropriados em relação ao aprendizado de APIs. Os resultados mostraram que os cookbooks construídos pela estratégia proposta, em geral, atendem às características identicadas. Além disso, a maior parte dos sujeitos humanos considerou que cookbooks não possuem um formato adequado ao aprendizado de APIs. |
Abstract: | Developers of reusable software elements, such as libraries, usually have the responsibility to provide comprehensive and high quality documentation to enable eective reuse of those elements. The eective reuse of libraries depends upon the quality of the API (Application Program Interface) documentation. Well established libraries typically have comprehensive API documentation, for example in Javadocs. However, they also typically lack examples and explanations, which may dicult the eective reuse of the library. StackOverow.com (SO) is a Question and Answer service directed to issues related to software development. In SO, a developer can post questions related to a programming topic and other members of the site can provide answers to help him/her solve the problem he/she has at hand. Despite of the increasing use of SO by the software development community, the information related to a particular library is spread along the website. Thus, SO still lacks an organization of its crowd knowledge. In this dissertation, we present a semi-automatic approach that organizes the information available on SO in order to build a kind of documentation for APIs, called cookbooks (recipe-oriented books). The cookbooks generated by the approach are called crowd cookbooks. In order to evaluate the proposed approach, cookbooks were generated for three APIs widely used by the software development community: SWT,LINQ and QT. Desired features that cookbooks must meet were identied and a study with human subjects was conducted to assess to what extent the generated cookbook meet those features. Through the study it was also possible to identify what is the perceived usefulness by the subjects in relation to the use of cookbooks in APIs learning. The results showed that the cookbooks built using the proposed strategy, in general, meet the identied features. Furthermore, most human subjects considered that cookbooks do not have an appropriate format to the learning of APIs. |
Palavras-chave: | Sítios de perguntas e respostas Conhecimento da multidão Interface para programação de aplicativos Documentação de software Questions and answers sites Crowd knowledge Application programming interface, Software documentation Crowdsourcing Interfaces de programação de aplicativo (software de computador) |
Área(s) do CNPq: | CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO |
Idioma: | por |
País: | BR |
Editora: | Universidade Federal de Uberlândia |
Sigla da instituição: | UFU |
Departamento: | Ciências Exatas e da Terra |
Programa: | Programa de Pós-graduação em Ciência da Computação |
Referência: | SOUZA, Lucas Batista Leite de. Crowd cookbooks: usando conhecimento de multidão a partir de sítios de perguntas e respostas para documentação de apis. 2014. 158 f. Dissertação (Mestrado em Ciências Exatas e da Terra) - Universidade Federal de Uberlândia, Uberlândia, 2014. DOI https://doi.org/10.14393/ufu.di.2014.351 |
Identificador do documento: | https://doi.org/10.14393/ufu.di.2014.351 |
URI: | https://repositorio.ufu.br/handle/123456789/12567 |
Data de defesa: | 23-Jul-2014 |
Aparece nas coleções: | DISSERTAÇÃO - Ciência da Computação |
Arquivos associados a este item:
Arquivo | Descrição | Tamanho | Formato | |
---|---|---|---|---|
CrowdCookbooksUsando.pdf | 2.15 MB | Adobe PDF | Visualizar/Abrir |
Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.