Avaliação de Métodos para Elicitação e Especificação de Requisitos de Usabilidade com Histórias de Usuário: Um Experimento Controlado
Resumo
Considerar aspectos de qualidade desde os primeiros estágios do processo de desenvolvimento de software é fundamental para aumentar seu sucesso, evitar retrabalho e garantir a satisfação do usuário final. Entretanto, no contexto do desenvolvimento ágil, esses aspectos são vistos como secundários em relação aos requisitos do software. Para resolver esse problema, pesquisas sugerem abordagens para incorporar requisitos não funcionais, como usabilidade e experiência do usuário, nas histórias de usuários, que são um artefato valioso para as equipes ágeis. Este artigo tem como objetivo comparar duas abordagens que apoiam equipes ágeis na elicitação e especificação de artefatos que ajudam a melhorar a qualidade do software. Duas abordagens propostas recentemente, USARP (USability Requirements with Personas and user stories) e ACUX (Acceptance Criteria of User eXperience) foram selecionadas para serem comparadas em um experimento controlado com a participação de 32 indivíduos. Foram coletados dados quantitativos e qualitativos para avaliar a eficácia, a eficiência, a facilidade de uso e a utilidade das duas abordagens. Os resultados revelaram que o USARP obteve um desempenho melhor em relação ao ACUX em termos de facilidade de uso. Por outro lado, o ACUX demonstrou maior capacidade de especificar as interações do usuário e as funcionalidades do sistema. Os participantes também elogiaram a praticidade, o fornecimento de exemplos e os padrões para a escrita de requisitos de qualidade. Espera-se que esses resultados sirvam para identificar as melhores práticas do USARP e do ACUX, orientar o desenvolvimento futuro de métodos nessa área e contribuir para o aprimoramento das abordagens estudadas.
Referências
S. Barbosa and B. Silva. 2010. Interação Humano-Computador. Elsevier Brasil.
V.R. Basili and H.D. Rombach. 1988. The TAME project: towards improvementoriented software environments. IEEE Transactions on Software Engineering 14, 6 (1988), 758–773. DOI: 10.1109/32.6156
K. Beck and C. Andres. 2004. Extreme Programming Explained: Embrace Change. Pearson Education.
Johan Kaj Blomkvist, Johan Persson, and Johan Åberg. 2015. Communication through boundary objects in distributed agile teams. In Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems. 1875–1884.
M. Cohn. 2004. User Stories Applied: For Agile Software Development. Addison-Wesley.
Mike Cohn. 2004. User Stories Applied: For Agile Software Development. Addison Wesley Longman Publishing Co., Inc., USA.
Karina Curcio, Tiago Navarro, Andreia Malucelli, and Sheila Reinehr. 2018. Requirements engineering: A systematic mapping study in agile software development. Journal of Systems and Software 139 (2018), 32–50.
Karina Curcio, Rodolfo Santana, Sheila Reinehr, and Andreia Malucelli. 2019. Usability in agile software development: A tertiary study. Computer Standards Interfaces 64 (2019), 61–77. DOI: 10.1016/j.csi.2018.12.003
Bruna Ferreira, Tayana Conte, and Simone Diniz Junqueira Barbosa. 2015. Eliciting requirements using personas and empathy map to enhance the user experience. In 2015 29th Brazilian Symposium on Software Engineering. IEEE, 80–89.
J.J. Garrett. 2003. The Elements of User Experience: User-centered Design for the Web. New Riders.
Graham Gibbs. 2009. Analise de dados qualitativos: Coleção Pesquisa Qualitativa. Bookman.
Mark Goss-Sampson. 2021. Statistical analysis in JASP: a guide for students (4 ed.). JASP. DOI: DOI:10.6084/m9.figshare.9980744 Versão em português..
Marc Hassenzahl. 2018. The Thing and I (Summer of ’17 Remix). Springer International Publishing, Cham, 17–31. DOI: 10.1007/978-3-319-68213-6_2
Heitor Marques Hon´ørio. 2019. Teste de Mann-Whitney (SigmaPlot 12.0). [link] Fornece dicas de análise dos dados resultantes do teste..
ISO-24765. 2017. ISO/IEC/IEEE 24765:2017 Systems and software engineering Vocabulary. ISO/IEC/IEEE 24765:2017(E) (2017), 1–541. DOI: 10.1109/IEEESTD.2017.8016712
R. Jeffries. 2001. Essencial XP: card, conversation and confirmation. XP Magazine 30 (2001).
James Garrett Jesse. 2011. The elements of user experience: User-centered design for the web and beyond.
Natalia Juristo, Ana Moreno, and Maria-Isabel Sanchez-Segura. 2007. Guidelines for Eliciting Usability Functionalities. IEEE Transactions on Software Engineering 33, 11 (2007), 744–758. DOI: 10.1109/TSE.2007.70741
Steven Loh Mun Keong and Zarina Che Embi. 2022. A Systematic Review on Non-Functional Requirements Documentation in Agile Methodology. Journal of Informatics and Web Engineering 1, 2 (2022), 19–29.
Nader Keshk, Mohammad El-Ramly, and Akram Salah. 2022. A Proposal for Enhancing Agile Requirements Engineering with Prototyping and Enriched User Stories. In Proceedings of the Federated Africa and Middle East Conference on Software Engineering (Cairo-Kampala, Egypt) (FAMECSE ’22). Association for Computing Machinery, New York, NY, USA, 59–63. DOI: 10.1145/3531056.3542773
S. Krug. 2013. Don’t Make Me Think, Revisited: A Common Sense Approach to Web Usability. Pearson Education.
Anna Beatriz Marques, Alex Felipe Costa, Ismayle Santos, and Rossana Andrade. 2022. Enriching User Stories with Usability Features in a Remote Agile Project: A Case Study. In Proceedings of the XXI Brazilian Symposium on Software Quality (Curitiba, Brazil) (SBQS ’22). Association for Computing Machinery, New York, NY, USA, Article 24, 10 pages. DOI: 10.1145/3571473.3571496
Anna Beatriz Marques and Maria Victoria Fiori. 2023. Evolving the USARP Method to Support Usability Requirements Elicitation and Specification. (2023), 14 pages. DOI: 10.29327/1298356.26-3
Anna Beatriz Marques, Alex Alan Santos, Maria Victoria Fiori, Natalia Coelho, and Victor Feitosa. 2022. Integrando técnicas de IHC e Engenharia de Software na especificação de requisitos de uma ferramenta de modelagem. In Anais Estendidos do XXI Simpósio Brasileiro de Fatores Humanos em Sistemas Computacionais. SBC, 40–47.
S Martinelli, J Choma, J Saad, and L Zaina. 2023. Análise Qualitativa em IHC: da codificação a criação de visualizaçães. , 72 pages.
Suéllen Martinelli, Nicolas Nascimento, Jonathan Souza, Afonso Sales, and Luciana Zaina. 2022. UX Requirements Matters: Guidelines to Support Software Teams on the Writing of Acceptance Criteria. In Proceedings of the XXXVI Brazilian Symposium on Software Engineering. 398–408.
Suéllen Martinelli, Nicolas Nascimento, Jonathan Souza, Afonso Sales, and Luciana A. M. Zaina. 2022. UX Requirements Matters: Guidelines to Support Software Teams on the Writing of Acceptance Criteria. In SBES 2022: XXXVI Brazilian Symposium on Software Engineering, Virtual Event Brazil, October 5 - 7, 2022, Marcelo de Almeida Maia, Fabiano A. Dorça, Rafael Dias Araújo, Christina von Flach, Elisa Yumi Nakagawa, and Edna Dias Canedo (Eds.). ACM, 398–408. DOI: 10.1145/3555228.3555230
Ana M Moreno and Agustín Yagüe. 2012. Agile user stories enriched with usability. In Agile Processes in Software Engineering and Extreme Programming: 13th International Conference, XP 2012, Malmö, Sweden, May 21-25, 2012. Proceedings 13. Springer, 168–176.
J. Nielsen. 1994. Usability Engineering. Elsevier Science.
D.A. Norman. 2004. Emotional Design: Why We Love (or Hate) Everyday Things. Basic Books.
D.A. Norman and A. Deiró. 2006. O design do dia-a-dia. Rocco.
Dan North. 2006. Behavior Modification. Better Software Magazine 2006-03 (2006).
Gabriel F. de Oliveira, Bruna Ferreira, and Anna Beatriz Marques. 2020. USARP Method: Eliciting and Describing USAbility Requirements with Personas and User Stories. In Proceedings of the XXXIV Brazilian Symposium on Software Engineering (Natal, Brazil) (SBES ’20). Association for Computing Machinery, New York, NY, USA, 437–446. DOI: 10.1145/3422392.3422435
Anathan Pereira, Abner Cleto Filho, Eduardo Guerra, and Luciana Zaina. 2021. Towards a Pattern Language to Embed UX Information in Agile Software Requirements. In 26th European Conference on Pattern Languages of Programs. 1–8.
Roger S. Pressman. 2011. Engenharia de Software: uma abordagem profissional (7ª ed. ed.). Bookman.
Luis Rivero and Tayana Conte. 2016. How novice software engineers apply user interface design patterns: an empirical study. In Proc Int Conf Softw Eng Knowl Eng SEKE. 600–604.
Y. Rogers, H. Sharp, and J. Preece. 2013. Design de Interação - 3ed. Bookman Editora.
Alex Alan Santos, Maria Elanne Mendes, and Anna Beatriz Marques. 2022. Inserindo um olhar de IHC no ensino de Engenharia de Requisitos: um relato de experiência. In Anais do XIII Workshop sobre Educação em IHC. SBC, 13–18.
Eva-Maria Schön, Jörg Thomaschewski, and María José Escalona. 2017. Agile Requirements Engineering: A systematic literature review. Computer Standards Interfaces 49 (2017), 79–91. DOI: 10.1016/j.csi.2016.08.011
Tassio Ferenzini Martins Sirqueira, Marcos Alexandre Miguel, Humberto Luiz de Oliveira Dalpra, and Marco Antônio Pereira Araújo. 2020. Aplicação de Métodos Estatísticos em Engenharia de Software: Teoria e Prática. 18 (2020), 228–246.
I. Sommerville. 2011. Engenharia de software. Pearson Prentice Hall.
I. Sommerville and P. Sawyer. 1997. Requirements Engineering: A Good Practice Guide. Wiley.
Gabriel Ferreira Barros de Sousa and Simone da Silva Amorim. 2021. Speech-To-Story: Gerando Histórias de Usuário. In Proceedings of the XXXV Brazilian Symposium on Software Engineering. 309–314.
Viswanath Venkatesh and Hillol Bala. 2008. Technology acceptance model 3 and a research agenda on interventions. Decision sciences 39, 2 (2008), 273–315.
C. Wohlin, P. Runeson, M. Höst, M.C. Ohlsson, B. Regnell, and A. Wesslén. 2012. Experimentation in Software Engineering. Springer Berlin Heidelberg.
Luciana AM Zaina, Helen Sharp, and Leonor Barroca. 2021. UX information in the daily work of an agile team: A distributed cognition analysis. International journal of human-computer studies 147 (2021), 102574.