Guide for elicitation techniques applied to Agile software development

Detalhes bibliográficos
Autor(a) principal: Mesquita, Rodrigo Pereira de
Data de Publicação: 2023
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UnB
Texto Completo: http://repositorio2.unb.br/jspui/handle/10482/49834
Resumo: Dissertação (Mestrado) — Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2023.
id UNB_04f2f9974ba463495768b2dac4e7cd79
oai_identifier_str oai:repositorio.unb.br:10482/49834
network_acronym_str UNB
network_name_str Repositório Institucional da UnB
repository_id_str
spelling Guide for elicitation techniques applied to Agile software developmentDesenvolvimento de softwareEngenharia de requisitosElicitação de requisitosElicitação de requisitos - técnicasDissertação (Mestrado) — Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2023.Contexto: As técnicas de elicitação de requisitos são essenciais para apoiar os engenheiros de requisitos a obter uma melhor compreensão das necessidades dos usuários e das partes interessadas. Embora existam diversas técnicas disponíveis para apoiar as fases da Engenharia de Requisitos (ER), podem ocorrer dúvidas nas equipes de desenvolvimento de software sobre qual técnica utilizar durante a atividade de elicitação de requisitos. Objetivo: O objetivo desse trabalho é identificar as técnicas de elicitação de requisitos mais utilizadas na literatura e comparar com as técnicas mais usadas pelos profissionais na indústria. Além disso, identificam-se os desafios relacionados à elicitação de requisitos, os prós e contras das principais técnicas identificadas na literatura, e baseado nos prós e contras, analisam-se combinações possíveis das técnicas de elicitação de requisitos que podem minimizar os desafios identificados na literatura e na indústria. Método: Realizou-se uma Revisão Sistemática da Literatura (SLR) para identificar as técnicas de elicitação de requisitos e os desafios discutidos na literatura ou na indústria. Ainda dentro da Revisão Sistemática da Literatura, foi realizada a técnica de snowballing, para revisão dos estudos primários encontrados dentro de outras SLR que foram trazidas pela string de busca. Além disso, realizou-se uma pesquisa de opinião (survey) para investigar a percepção dos praticantes da área de desenvolvimento de software (indivíduos trabalhando na indústria de Software, independentemente da posição ou papel desempenhado) em relação às técnicas identificadas e posteriormente compará-las com os resultados obtidos na SLR. Finalmente, usando a técnica Grupo Focal, realizou-se duas sessões de avaliação com dezenove especialistas para avaliar as combinações de técnicas e os resultados fornecidos neste estudo. Resultados: Foram identificados 54 estudos primários na SLR e eles demonstraram que as técnicas tradicionais ainda são as mais utilizadas tanto na literatura quanto nos projetos da indústria de software ao mesmo tempo que técnicas como Persona estão ganhando espaço. Além disso, investigou-se combinações de técnicas já discutidas e apresentadas na literatura, também com base nos pontos fortes encontrados na literatura para cada técnica, foi possível identificar combinações de técnicas que pelas forças ou pontos a favor identificados no SLR, poderiam ser combinados para superar a maioria dos desafios identificados. As sessões de validação proporcionaram coletar a visão dos especialistas que complementaram as técnicas e combinações em uso pela comunidade. Conclusão As técnicas mais mencionadas pela literatura e usadas na indústria de software foram: Prototipação, Entrevistas, Estórias de Usuário, Cenários e Etnografia. A combinação do uso dessas técnicas com, por exemplo, a técnica Persona podem ajudar a superar os desafios identificados na literatura. O estudo conta com a descrição das principais técnicas identificadas na literatura, contendo seus prós e contras e poderá apoiar os engenheiros de requisitos durante a elicitação de requisitos. A disponibilização deste estudo para apoiar os profissionais de software na elicitação de requisitos, permitirá que a comunidade de engenharia de software contribua com feedback relacionado à combinação do uso de técnicas, permitindo assim um aprimoramento e disseminação das percepções das combinações feitas entre as técnicas de ER por os profissionais das equipes de desenvolvimento de software. Portanto, o guia pode auxiliar os profissionais de software na escolha das técnicas a serem usadas e (ou) combinadas.Background: Requirements elicitation techniques are essential to support requirements engineers to gain a better understanding of the needs of users and stakeholders. Although there are several techniques available to support the Requirements Engineering (RE) software development teams might be doubtful about which technique to use during requirements elicitation. Objective: The goal of this work is to identify Requirements Elicitation (RE) Techniques most used in the literature and compare with the techniques most used by professionals in the industry. In addition, we identified the challenges related to requirements elicitation, the pros and cons of the main techniques identified in the literature, and based on the pros and cons, analyze possible combinations of requirements elicitation techniques that can minimize the challenges identified in literature and industry. Method: We performed a Systematic Literature Review (SLR) to identify requirements elicitation techniques and challenges discussed in the literature or industry. Moreover, we performed a Survey to investigate the perception of software practitioners (individuals working in the software industry in a large variety of roles and positions) in relation to the techniques identified and subsequently compare them with the results obtained in the SLR. Finally, using Focus Group technique, we executed two validation sessions with nineteen specialists to evaluate technique combinations and the findings provided on this guide. Results: 54 primary studies were identified in the SLR and they demonstrated that traditional techniques are still the most used in both literature and software industry projects. In addition, some techniques, such as Persona, are gaining ground, helping requirements engineers to find different ways to elicit requirements from end users and stakeholders. Moreover, we have investigated combinations of techniques already discussed and presented in literature, also based on the strengths found in the literature for each technique, it was possible to identify combinations of techniques that by the forces or points in favor identified in the SLR, could be combined to overcome most of the challenges identified. Furthermore, validation sessions provided the view of specialists that complemented the techniques and combinations under use by the community. Conclusion The most mentioned techniques in the literature at the same time they are used in the software industry are: Prototyping, Interview, User Stories, Brainstorming, Observation, Scenarios, Questionnaires and Mind Mapping. In addition, Ethnography, Joint Application Development (JAD) and Workshop have many references in literature while are not appealing for real projects in industry. On the other hand, Persona at least from the papers retrieved during this search is not largely discussed in literature whereas it has shown to be widely used in the industry. Combine the use of RE techniques can help overcome the challenges identified in the literature. A guide with a description of all techniques identified in the literature, containing their advantages and disadvantages can support the requirements engineers during the requirements elicitation. The provision of this study to support software practitioners in eliciting requirements, will allow the software engineering community to contribute feedback related to the combination of the use of techniques, thus allowing an improvement and dissemination of the perceptions of the combinations made between the RE techniques by the professionals of the software development teams. Hence, the guide can support software practitioners in choosing the techniques to be used and (or) combined.Instituto de Ciências Exatas (IE)Departamento de Ciência da Computação (IE CIC)Programa de Pós-Graduação em InformáticaCanedo, Edna DiasMesquita, Rodrigo Pereira de2024-08-13T21:09:21Z2024-08-13T21:09:21Z2024-08-132023-04-27info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfMESQUITA, Rodrigo Pereira de. Guide for Elicitation techniques applied to Agile software development. 2023. 173 f., il. Dissertação (Mestrado em Informática) — Universidade de Brasília, Brasília, 2023.http://repositorio2.unb.br/jspui/handle/10482/49834porA concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor com as seguintes condições: Na qualidade de titular dos direitos de autor da publicação, autorizo a Universidade de Brasília e o IBICT a disponibilizar por meio dos sites www.unb.br, www.ibict.br, www.ndltd.org sem ressarcimento dos direitos autorais, de acordo com a Lei nº 9610/98, o texto integral da obra supracitada, conforme permissões assinaladas, para fins de leitura, impressão e/ou download, a título de divulgação da produção científica brasileira, a partir desta data.info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UnBinstname:Universidade de Brasília (UnB)instacron:UNB2024-08-13T21:09:22Zoai:repositorio.unb.br:10482/49834Repositório InstitucionalPUBhttps://repositorio.unb.br/oai/requestrepositorio@unb.bropendoar:2024-08-13T21:09:22Repositório Institucional da UnB - Universidade de Brasília (UnB)false
dc.title.none.fl_str_mv Guide for elicitation techniques applied to Agile software development
title Guide for elicitation techniques applied to Agile software development
spellingShingle Guide for elicitation techniques applied to Agile software development
Mesquita, Rodrigo Pereira de
Desenvolvimento de software
Engenharia de requisitos
Elicitação de requisitos
Elicitação de requisitos - técnicas
title_short Guide for elicitation techniques applied to Agile software development
title_full Guide for elicitation techniques applied to Agile software development
title_fullStr Guide for elicitation techniques applied to Agile software development
title_full_unstemmed Guide for elicitation techniques applied to Agile software development
title_sort Guide for elicitation techniques applied to Agile software development
author Mesquita, Rodrigo Pereira de
author_facet Mesquita, Rodrigo Pereira de
author_role author
dc.contributor.none.fl_str_mv Canedo, Edna Dias
dc.contributor.author.fl_str_mv Mesquita, Rodrigo Pereira de
dc.subject.por.fl_str_mv Desenvolvimento de software
Engenharia de requisitos
Elicitação de requisitos
Elicitação de requisitos - técnicas
topic Desenvolvimento de software
Engenharia de requisitos
Elicitação de requisitos
Elicitação de requisitos - técnicas
description Dissertação (Mestrado) — Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2023.
publishDate 2023
dc.date.none.fl_str_mv 2023-04-27
2024-08-13T21:09:21Z
2024-08-13T21:09:21Z
2024-08-13
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv MESQUITA, Rodrigo Pereira de. Guide for Elicitation techniques applied to Agile software development. 2023. 173 f., il. Dissertação (Mestrado em Informática) — Universidade de Brasília, Brasília, 2023.
http://repositorio2.unb.br/jspui/handle/10482/49834
identifier_str_mv MESQUITA, Rodrigo Pereira de. Guide for Elicitation techniques applied to Agile software development. 2023. 173 f., il. Dissertação (Mestrado em Informática) — Universidade de Brasília, Brasília, 2023.
url http://repositorio2.unb.br/jspui/handle/10482/49834
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Institucional da UnB
instname:Universidade de Brasília (UnB)
instacron:UNB
instname_str Universidade de Brasília (UnB)
instacron_str UNB
institution UNB
reponame_str Repositório Institucional da UnB
collection Repositório Institucional da UnB
repository.name.fl_str_mv Repositório Institucional da UnB - Universidade de Brasília (UnB)
repository.mail.fl_str_mv repositorio@unb.br
_version_ 1814508278497935360