Uma Abordagem para o Ensino de Testes de Software utilizando Metodologias Ativas em Cursos Superiores de Computação
Resumo
O teste de software é considerado uma atividade chave no ciclo de desenvolvimento de software, pois ajuda os profissionais de computação a projetar software de boa qualidade. Assim, esta é uma atividade essencial para a indústria de software, embora com todas as suas nuances ainda não seja dada alta prioridade ao aprendizado em nível acadêmico. Tendo em vista que é um conteúdo que precisa de uma boa quantidade de elementos de conhecimentos prévios e grande parte do seu conhecimento necessita de intervenções práticas, viu-se a importância de se utilizar as metodologias ativas, que vem tendo uma boa aceitação em disciplinas mais práticas de computação. Assim, o principal objetivo deste trabalho é apresentar uma abordagem de ensino utilizada com um currículo e um plano de ensino de uma disciplina de testes de software, elaborados com base em metodologias ativas. Como resultados tem-se um plano de ensino que é construído a partir de metodologias ativas, composto por 32 aulas teóricas e práticas, distribuídas em 4 módulos, baseado em referenciais de um currículo especializado em testes de software, e construído a partir de um mapeamento em diferentes ativos relacionados a testes de software, sendo os principais deles o Guia de Referencias Curriculares da SBC, o guia curricular da ACM/IEEE e o Guia dos conhecimentos de Engenharia de Software SWEBOK. Além disso, dois quase-experimentos foram executados por completo, o primeiro avaliou a efetividade da abordagem de ensino de testes em comparação com uma abordagem tradicional e o segundo além de avaliar a efetividade da abordagem de ensino perante uma abordagem tradicional também fez uma análise da eficiência da aprendizagem na turma. Ambos foram analisados com uma abordagem estatística utilizando a distribuição t de Student bicaudal, que apresentou um certo ganho de aprendizagem para a abordagem apresentada, sendo ele de até p-value = 000007915 no melhor caso.
Referências
ACM/IEEE (2020). “Computing Curricula 2020 – CC2020”. Paradigms for Global Computing Education. ACM.
Anderson, L.W., Krathwohl, D. R. (2001). “A Taxonomy for Learning Teaching and Assesing: A Revision of Bloom's Taxonomy of Educational Objectives”. Longman.
Benitti, F. (2018). “A Methodology to Define Learning Objects Granularity: A Case Study in Software Testing”. Informatics in Education, V. 17, No. 1, pp. 1–20.
Bourque, P., Fairley, R. E. (2014). “SWEBOK Guide V3.0”. Available: https://www.swebok.org.
Costa, I. E. F., Oliveira, S. R. B. (2022). “A Syllabus to Support Teaching and Learning of Exploratory Test Design and Execution”. In Proceedings of the 14th International Conference on Computer Supported Education (CSEDU 2022), Virtual.
Diesel, A., Santos Baldez, A. L., Neumann Martins, S. (2017). “Os princípios das metodologias ativas de ensino: uma abordagem teórica”. Revista Thema, v. 14, n. 1, p. 268–288.
Dolezal, D., Posekany, A., Vittori, L., Koppensteiner, G., Motschnig, R. (2019). “Fostering 21st Century Skills in Student-Centered Engineering Education at the Secondary School Level: Second Evaluation of The Learning Office”. 2019 IEEE Frontiers in Education Conference (FIE).
Elgrably, I. S., Oliveira, S. R. B. (2019). “Uma Proposta de Ensino ou Aplicação de Testes com Foco em Métodos Ágeis feita através de um Mapeamento de Ativos”. 16th International Conference on Information Systems & Technology Management.
Elgrably, I. S., Oliveira, S. R. B. (2020a). “Construction of a curriculum adhering to the Teaching of Software Tests Using elements of Agile Context”. 2020 IEEE Frontiers in Education Conference (FIE).
Elgrably, I. S., Oliveira, S. R. B. (2020b). “Model for Teaching and Training Software Testing in an Agile Context”. 2020 IEEE Frontiers in Education Conference (FIE).
Elgrably, I. S., Oliveira, S. R. B. (2021a). “A Diagnosis on Software Testing Education In The Brazilian Universities”. 2021 IEEE Frontiers in Education Conference (FIE).
Elgrably, I. S., Oliveira, S. R. B. (2021b). “Remote teaching and learning of software testing using active methodologies in the covid-19 pandemic context”. 2021 IEEE Frontiers in Education Conference (FIE).
Elgrably, I. S., Oliveira, S. R. B. (2022). “A Quasi-Experimental Evaluation of Teaching Software Testing in Software Quality Assurance Subject during a Post-Graduate Computer Science Course”. International Journal of Emerging Technologies in Learning (iJET), 17(05), pp. 57–86. https://doi.org/10.3991/ijet.v17i05.25673.
Enoiu, E. P. (2020). “Teaching Software Testing to Industrial Practitioners Using Distance and Web-Based Learning. Frontiers in Software Engineering Education”. Springer International Publishing.
Fonseca, S. M., Mattar, J. (2020). “Metodologias ativas aplicadas à educação a distância: revisão de literatura”. Revista Educação a Distância e Práticas Educativas Comunicacionais e Interculturais, São Cristóvão-SE, v. 17, n. 2, p. 185-197, 2017.
Furtado, J. C. C., Oliveira, S. R. B. (2018). “A Methodology to Teaching Statistical Process Control in Computer Courses”. 13th International Conference on Evaluation of Novel Approaches to Software Engineering, Portugal.
Furtado, J. C. C., Oliveira, S. R. B., Chaves, R. O., Colares, A. (2021). “An Experimental Evaluation of a Teaching Approach for Statistical Process Control in Computer Courses”. International Journal of Information and Communication Technology Education. IGI Global.
Garcia, F. W. S, Carvalho, E. C., Oliveira, S. R. B. (2021). “Use of active methodologies for the development of a teaching plan for the algorithms subject”. 51th Annual Frontiers in Education – FIE’21. Lincoln, Nebraska USA.
Garousi, V., Rainer, A., Lauvas, P., Arcuri, A. (2020). “Software-Testing Education: A Systematic Literature Mapping”. In Journal of Systems and Software. (vol. 165, p. 110570). Elsevier.
Hung, H. T. (2015). “Flipping the Classroom for English Language Learners to Foster Active Learning”. Computer Assisted Language Learning, V. 28.
Laing, S., Greaves, K. (2015). “The Testing Manifesto”. Available: http://www.growingagile.co.za/2015/04/the-testing-manifesto.
Lauvas, P., Arcuri, A. (2018). “Recent Trends in Software Testing Education: A Systematic Literature Review”. The Norwegian Conference on Didactics in it Education.
Lemos, O. A. L., Silveira, F. F., Ferrari, F. C., Garcia, A. (2017). “The Impact of Software Testing Education on Code Reliability: An Empirical Assessment”. Journal of Systems and Software.
Liu, A. (2020). “Design of Blending Teaching Mode for Software Testing Course”. 15th International Conference on Computer Science & Education (ICCSE). IEEE.
MEC (2016) “Diretrizes Curriculares Nacionais para os Cursos de Graduação em Computação (DCN16)”. Brasil.
Paschoal, L. N. (2019). “Contribuições ao Ensino de Teste De Software com o Modelo Flipped Classroom e um Agente Conversacional”. Dissertação (Mestrado em Ciências – Ciências de Computação e Matemática Computacional) – Instituto de Ciências Matemáticas e de Computação, Universidade de São Paulo, São Carlos – SP.
Paschoal, L.N., Souza, S. R. S. (2018). “A Survey on Software Testing Education in Brazil”. 17th Brazilian Symposium on Software Quality. New York. USA. ACM.
Paschoal, L. N., Oliveira, M. M., Melo, S. M., Barbosa, E. F., Souza, S. R. S. (2020). “Evaluating the impact of Software Testing Education through the Flipped Classroom Model in deriving Test Requirements”. Proceedings of the 34th Brazilian Symposium on Software Engineering.
Portela, C., Vasconcelos, A., Oliveira, S., Souza, M. (2021). “An Empirical Study on the Use of Student-Focused Approaches in the Software Engineering Teaching”. Informatics in Education.
Quaresma, J. A. S., Oliveira, S. R. B. (2022) “A Syllabus Proposal for Teaching of Software Development Process in Undergraduate Courses in Computer Science”. In Proceedings of the XXXVI Brazilian Symposium on Software Engineering, Virtual.
Scatalon, L. P., Fioravanti. M. L., Prates. J. M., Garcia. R. E., Barbosa. E. F. (2018). “A Survey on Graduates’ Curriculum-Based Knowledge Gaps in Software Testing”. IEEE Frontiers in Education Conference (FIE).
SBC (2017). “Referências de Formação para os Cursos de Graduação em Computação”. Brasil.
Soska, A., Mottok, J., Wolff, C. (2016). “An Experimental Card Game for Software Testing: Development, Design and Evaluation of a Physical Card Game to Deepen the Knowledge of Students in Academic Software Testing Education”. 7TH IEEE Global Engineering Abu Dhabi, United Arab Emirates.
SPIDER (2009). “Projeto SPIDER Tool Suite for Quality”. UFPA. Disponível em: http://www.spider.ufpa.br/.
TMMI Foundation (2018), “Test Maturity Model Integration – TMMi Release 1.0”. Valle, P. H. D., Barbosa, E. F., Maldonado, J. C. (2015). “Cs Curricula of the Most Relevant Universities in Brazil and Abroad: Perspective of Software Testing Education”. XVII International Symposium on Computers in Education (SIIE). IEEE.
Van Dam, K. (2019). “The Future of Testing. The Future of Software Quality Assurance”. Springer International Publishing. 197–205.
Van Veenendaal, E. (2019). “Next-Generation Software Testers: Broaden or Specialize! The Future of Software Quality Assurance”. Springer International Publishing. 229–243.
Vincenzi, A. M. R., Delamaro, M. E., Neto, A. C. D., Fabbri, S. C. P. F., Jino, M., Maldonado, J. C. (2018). “Automatização de Teste de Software com Ferramentas de Software Livre”. Rio De Janeiro. Elsevier.
Wazlawick, R. S. (2019). “Engenharia De Software Conceitos E Práticas”. 2. ED. Rio De Janeiro. Elsevier.
Yoshioka, S. R. I., Ishitani, L. (2018). “An Adaptive Test Analysis Based on Students’ Motivation. Informatics in Education”. Vilnius University Press.