Ensino de Programação Paralela na Educação Básica: Uma Revisão Sistemática da Literatura, Análise Bibliométrica e Agenda para Estudos Futuros

  • Felipe Pereira Perez Centro Universitário da Grande Dourados
  • Wilk Oliveira Tampere University
  • Anderson Corrêa de Lima Universidade Federal de Mato Grosso do Sul
  • Amaury Antônio de Castro Junior Universidade Federal do Mato Grosso do Sul https://orcid.org/0000-0002-0915-6613
  • Graziela Araújo Universidade Federal do Mato Grosso do Sul

Resumo


Na última década, especialmente devido ao aumento do poder computacional, e, por conseguinte a urgência da programação paralela, surgiu a necessidade de profissionais capacitados para desenvolver softwares que utilizam todo o potencial paralelo das máquinas. Com isso, o ensino de programação paralela, por muito tempo exclusivo dos cursos de graduação, abriu espaço para ser trabalhado também na Educação Básica. No entanto, antes de começar a propor abordagens especificas para o ensino de programação paralela na Educação Básica, é necessário entender o estado da arte nesse domínio. Para enfrentar esse desafio, foi conduzida uma Revisão Sistemática da Literatura com o objetivo de i) identificar quais abordagens têm sido empregadas no ensino de programação paralela na Educação Básica; ii) detectar quais linguagens de programação são utilizadas; iii) levantar quais conceitos são abordados; iv) apontar em quais fases de ensino são aplicadas essas abordagens; e v) identificar como tem sido a experiência dos estudantes na aprendizagem. Como resultado, é possíve identificar que i) o número de publicações ainda é limitado; ii) a maioria dos estudos são conduzidos em oficinas de curta duração; iii) a maioria dos estudos são conduzidos apenas nos Estados Unidos da América; iv) a maioria dos estudos usa abordagens tradicionais de ensino; v) não há consenso em relação ao uso de linguagens de programação no ensino de programação paralela; vi) a maioria dos estudos foram conduzidos no Ensino Médio; e vii) em geral, a experiencia dos estudantes foi positiva. Os resultados contribuem especialmente para a área de Educação em Computação, abrindo espaço para o desenvolvimento de novas abordagens para o ensino de programação paralela.
Palavras-chave: Ensino de Computação, Educação em Computação, Programação Paralela, Revisão da Literatura, Agenda de Pesquisa

Referências

Roberto Almeida Jr, Hadria Farias, Marcos Saavedra, and Josivaldo Araújo. 2021. Metodologias de Ensino na Programação Paralela com Placas Gráficas: Uma Revisão Sistemática da Literatura. Anais do XXXII Simpósio Brasileiro de Informática na Educação 32, 1, 1243–1252.

Naylor Bachiega, Paulo Lopes de Souza, Sarita Bruschi, and Simone Souza. 2017. Mapeamento sistemático do ensino teórico e prático de programação paralela. In Anais dos Workshops do Congresso Brasileiro de Informática na Educação. 1089.

Naylor Garcia Bachiega, Paulo Lopes de Souza, Sarita Bruschi, and Simone Souza. 2018. Um Panorama do Ensino de Programação Paralela e Distribuída em Universidades Brasileiras. In Anais dos Workshops do Congresso Brasileiro de Informática na Educação. 480.

Mordechai Ben-Ari and Yifat Ben-David Kolikant. 1999. Thinking parallel: The process of learning concurrency. ACM SIGCSE Bulletin 31, 3, 13–16.

Brian Broll, Akos Lédeczi, Peter Volgyesi, János Sallai, Miklós Maróti, and Chris Vanags. 2017. Introducing parallel and distributed computing to K12. In 2017 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW). IEEE, 323–330.

Luis Jorge Enrique Rivero Cabrejos, Davi Viana, and Rodrigo Pereira dos Santos. 2018. Planejamento e execuçao de estudos secundários em informática na educaçao: Um guia prático baseado em experiências. Jornada de Atualização em Informática na Educação, 21–52.

Robert A Chesebrough and Ivan Turner. 2010. Parallel computing: at the interface of high school and industry. In Proceedings of the 41st ACM technical symposium on Computer science education. 280–284.

Bushra Tawfiq Chowdhury, Sam Blanchard, Kirk W Cameron, and Aditya Johri. 2015. Seemore: An interactive kinetic sculpture designed to teach parallel computational thinking. In 2015 ASEE Annual Conference & Exposition. 26–1360.

Pawel Czarnul. 2018. Parallel programming for modern high performance computing systems. CRC Press.

Anderson Corrêa de Lima, Thiago Carvalho, Daniel Bailo, José Filipe Rozeno Rodrigues, Wellington Marques de Aquino, and Plabiany Acosta. 2018. Uma Oficina para Ensino de Algoritmos Paralelos por Meio de Computação Desplugada. In Anais dos Workshops do Congresso Brasileiro de Informática na Educação, Vol. 7. 619.

Franciely Alves de Souza, Taciana Pontual Falcão, and Rafael Ferreira Mello. 2021. O Ensino de Programação na Educação Básica: Uma Revisão da Literatura. Anais do XXXII Simpósio Brasileiro de Informática na Educação, 1265–1275.

Kevin Doucet and Jian Zhang. 2019. The creation of a low-cost raspberry pi cluster for teaching. In Proceedings of the Western Canadian Conference on Computing Education. 1–5.

Russell Feldhausen, Scott Bell, and Daniel Andresen. 2014. Minimum time, maximum effect: Introducing parallel computing in cs0 and stem outreach activities using scratch. In Proceedings of the 2014 Annual Conference on Extreme Science and Engineering Discovery Environment. 1–7.

Simcha Gochman, Avi Mendelson, Alon Naveh, and Efraim Rotem. 2006. Introduction to Intel Core Duo Processor Architecture. Intel Technology Journal 10, 2.

Chris Gregg, Luther Tychonievich, James Cohoon, and Kim Hazelwood. 2012. EcoSim: a language and experience teaching parallel programming in elementary school. In Proceedings of the 43rd ACM technical symposium on Computer Science Education. 51–56.

Wen-mei Hwu, Kurt Keutzer, and Timothy G Mattson. 2008. The concurrency challenge. IEEE Design & Test of Computers 25, 4, 312–320.

David Kirk and Wen-Mei Hwu. 2010. Programando para Processadores Paralelos: uma abordagem prática à programação de GPU. Elsevier Brasil.

Yifat Ben-David Kolikant. 2004. Learning concurrency: evolution of students’ understanding of synchronization. International Journal of Human-Computer Studies 60, 2, 243–268.

Suzanne J Matthews, Joel C Adams, Richard A Brown, and Elizabeth Shoop. 2018. Portable parallel computing with the raspberry pi. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education. 92–97.

Nkundwe Moses Mwasaga and Mike Joy. 2020. Using high-performance computing artifacts as a learning intervention: a systematic literature review. In Proceedings of the 2nd International Conference on Intelligent and Innovative Computing Applications. 1–10.

Matthew J Page, Joanne E McKenzie, Patrick M Bossuyt, Isabelle Boutron, Tammy C Hoffmann, Cynthia D Mulrow, Larissa Shamseer, Jennifer M Tetzlaff, Elie A Akl, Sue E Brennan, et al. 2021. The PRISMA 2020 statement: an updated guideline for reporting systematic reviews. Systematic reviews 10, 1, 1–11.

Daniel Perry, John Robinson, Stephanie Cruz, Cecilia Aragon, Jeanne Ting Chowning, and Mette Peters. 2014. Game design for bioinformatics and cyberinfrastructure learning: a parallel computing case study. Concurrency and Computation: Practice and Experience 26, 13, 2303–2315.

Mitchel Resnick. 1990. MultiLogo: A study of children and concurrent programming. Interactive learning environments 1, 3, 153–170.

Adam Rifkin. 1994. Teaching parallel programming and software engineering concepts to high school students. ACM SIGCSE Bulletin 26, 1, 26–30.

Charles I Saidu, AA Obiniyi, and Peter O Ogedebe. 2015. Overview of trends leading to parallel computing and parallel programming. British Journal of Mathematics & Computer Science 7, 1, 40.

Amaal Shorman and Mohammad Qatawneh. 2018. Performance improvement of double data encryption standard algorithm using parallel computation. International Journal of Computer Applications 179, 25.

Paolo AG Sivilotti and Murat Demirbas. 2003. Introducing middle school girls to fault tolerant computing. ACM SIGCSE Bulletin 35, 1, 327–331.

Michael Steffen and Joseph Zambreno. 2012. Exposing High School Students to Concurrent Programming Principles Using Video Game Scripting Engines. In 2012 ASEE Annual Conference & Exposition. 25–623.

Shane Torbert, Uzi Vishkin, Ron Tzur, and David J Ellison. 2010. Is teaching parallel algorithmic thinking to high school students possible? One teacher’s experience. In Proceedings of the 41st ACM technical symposium on Computer science education. 290–294.
Publicado
24/04/2023
PEREZ, Felipe Pereira; OLIVEIRA, Wilk; LIMA, Anderson Corrêa de; CASTRO JUNIOR, Amaury Antônio de; ARAÚJO, Graziela. Ensino de Programação Paralela na Educação Básica: Uma Revisão Sistemática da Literatura, Análise Bibliométrica e Agenda para Estudos Futuros. In: SIMPÓSIO BRASILEIRO DE EDUCAÇÃO EM COMPUTAÇÃO (EDUCOMP), 3. , 2023, Evento Online. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2023 . p. 19-26. DOI: https://doi.org/10.5753/educomp.2023.228051.