universidade do estado do rio de janeiro (uerj) tupy...
TRANSCRIPT
![Page 1: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/1.jpg)
TuPy Online: Uma Ferramenta para Visualização de Algoritmos
Giancarlo F. Roberto, Jorge L. J. Goulart, Fabiano S. Oliveira, Paulo E. D. Pinto,
Vinicius Sathler
Universidade do Estado do Rio de Janeiro (UERJ)
WAlgProg 2019
![Page 2: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/2.jpg)
Como aprender e aplicar algoritmos?
● Símbolos e abstrações → Evolução do estado do programa
● Modelo mental de conceitos
Laços Funções
Listas encadeadas
RecursãoPonteiros
![Page 3: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/3.jpg)
Como aprender e aplicar algoritmos?
● Expectativa ≠ Realidade → Depuração
○ Como interpretar os valores exibidos? (esp. estruturas não-lineares!)
![Page 4: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/4.jpg)
Como aprender e aplicar algoritmos?
● Visualizadores de Algoritmo ⨉ Visualizadores de Programa
![Page 5: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/5.jpg)
Objetivo
● Introduzir e avaliar um ambiente de desenvolvimento
○ Visualização das estruturas de dados assim como nos materiais didáticos
○ Expressividade e legibilidade dos programas
○ Independente do conhecimento em Inglês
![Page 6: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/6.jpg)
TuPy Online
● Design da pseudolinguagem TuPy
● Implementação do interpretador
● Exemplo de código:
OrdenaçãoPorInserção(ref inteiro[] A, inteiro N):
inteiro i, j
para i ← 1 até N:
j ← i - 1
enquanto j ≥ 0 e A[j] > A[j+1]: A[j], A[j+1], j ← A[j+1], A[j], j-1
<- ←
>= ≥
Ligaduras tipográficas:
![Page 7: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/7.jpg)
TuPy Online
● Interface: Extensão do Online Python Tutor
○ Ferramenta conhecida
○ Utilizada em algumas universidades dos Estados Unidos
○ Visualização de estruturas de dados mais sofisticadas era um dos trabalhos futuros
![Page 8: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/8.jpg)
TuPy Online
![Page 9: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/9.jpg)
TuPy Online
● Navegação passo a passo
● Pontos de parada
● Como melhorar a visualização?
![Page 10: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/10.jpg)
TuPy Online
● Graphviz○ Pacote de ferramentas de visualização de código aberto
○ Desenvolvido e publicado originalmente pela AT&T Labs Research em 1991
○ Usado em plugins de interfaces gráficas, aplicações de rede, bioinformática e outros
○ Especificação (linguagem DOT) → Visualização
digraph G { A -> B A -> C B -> D B -> E}
![Page 11: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/11.jpg)
TuPy Online
● Por padrão: Mesma visualização do Online Python Tutor
● Funções de visualização diversas inclusas no TuPy
![Page 12: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/12.jpg)
TuPy Online
● Estruturas de dados com visualizações predefinidas
![Page 13: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/13.jpg)
TuPy Online
● Visualização parametrizada
○ Destacar partes da estrutura durante a execução
![Page 14: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/14.jpg)
TuPy Online
● Customização
○ E se a visualização desejada não estiver nas opções predefinidas?
○ Funções que geram especificações DOT → Visualizações personalizadas
![Page 15: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/15.jpg)
Metodologia de Avaliação
● Experimento em sala de aula
● 85 alunos de 4 turmas (introdutórias e intermediárias)
● Um mês de conteúdo + Duas semanas de revisão com o TuPy
![Page 16: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/16.jpg)
Metodologia de Avaliação
● Questionário de percepção + Auto-avaliação
● Avaliação de Aprendizagem: Pré-teste e Pós-teste (com Grupo de Controle)
● Avaliação de Usabilidade: Questionário SUS
![Page 17: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/17.jpg)
Resultados - Questionário de Percepção
![Page 18: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/18.jpg)
Resultados - Auto-avaliação
![Page 19: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/19.jpg)
Resultados - Auto-avaliação
![Page 20: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/20.jpg)
Resultados - Avaliação de Aprendizagem
● Nível de confiança de 95%
Disciplina Resultado
Algoritmos e Estruturas de Dados I
Algoritmos e Estruturas de Dados II
Otimização em Grafos
Algoritmos (Mestrado)
Grupo Resultado
Todos os alunos
AED1 e ALG
AED2 e OTG
Rejeição da Hipótese Nula
Não-Rejeição da Hipótese Nula Cada turma foi dividida em dois grupos.
Hipótese Nula: “TuPy Online não influenciou no aprendizado”
![Page 21: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/21.jpg)
● Questionário SUS
● Próximo à média encontrada por [Sauro 2011] em 500 publicações: 68
Resultados - Avaliação de Usabilidade
Aspecto Média
Facilidade de Aprendizagem 64
Eficiência 72
Facilidade de Memorização 69
Satisfação 60
Minimização dos Erros 70
![Page 22: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/22.jpg)
● Ferramenta vista como relevante pelos alunos
● Aumento da percepção de compreensão, lembrança e aplicabilidade do conteúdo
● Os alunos gostariam de ter tido mais tempo para usar a ferramenta em aula
● Significância em turmas que lidam com abstrações mais complexas
● Feedbacks de usabilidade guiarão futuros desenvolvimentos
Conclusões
![Page 23: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/23.jpg)
● Melhorias de usabilidade
● Suporte para atender um público mais amplo:
○ Avaliar viabilidade do TuPy para o público mais jovem
○ Visualizações relevantes para outras disciplinas (ex. gráficos)
○ Internacionalização
Trabalhos futuros
![Page 24: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/24.jpg)
● Todos são bem-vindos para testar, sugerir melhorias e até desenvolver!
● http://tiny.cc/tupy
Código aberto no GitHub
![Page 25: Universidade do Estado do Rio de Janeiro (UERJ) TuPy ...walgprog.gp.utfpr.edu.br/assets/files/... · TuPy Online: Uma Ferramenta para Visualização de Algoritmos Giancarlo F. Roberto,](https://reader034.vdocuments.pub/reader034/viewer/2022042804/5f5a00dfe1a5dd02a34d7a77/html5/thumbnails/25.jpg)
Giancarlo F. [email protected]
Desenvolvimento do TuPy
ContatoJorge L. J. Goulart
[email protected]ção e Análise Estatística
Fabiano S. [email protected]
Professor Adjunto, Orientador
Paulo E. D. [email protected]
Professor Associado, Orientador
Vinicius [email protected]
Manutenção do Desenvolvimento do TuPyObrigado!