105
UNIVERSIDADE ESTADUAL DO CEARÁ CENTRO DE CIÊNCIAS E TECNOLOGIA PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO MESTRADO ACADÊMICO EM CIÊNCIA DA COMPUTAÇÃO MARCOS DEVANER DO NASCIMENTO JAD – JAVA ACCESSIBLE DEBUGGER UMA METÁFORA VISUAL PARA APOIAR SURDOS E DEFICIENTES AUDITIVOS NO APRENDIZADO DE PROGRAMAÇÃO FORTALEZA – CEARÁ 2017

UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

UNIVERSIDADE ESTADUAL DO CEARÁ

CENTRO DE CIÊNCIAS E TECNOLOGIA

PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO

MESTRADO ACADÊMICO EM CIÊNCIA DA COMPUTAÇÃO

MARCOS DEVANER DO NASCIMENTO

JAD – JAVA ACCESSIBLE DEBUGGER

UMA METÁFORA VISUAL PARA APOIAR SURDOS E DEFICIENTES AUDITIVOS

NO APRENDIZADO DE PROGRAMAÇÃO

FORTALEZA – CEARÁ

2017

Page 2: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

MARCOS DEVANER DO NASCIMENTO

JAD – JAVA ACCESSIBLE DEBUGGER

UMA METÁFORA VISUAL PARA APOIAR SURDOS E DEFICIENTES AUDITIVOS NO

APRENDIZADO DE PROGRAMAÇÃO

Dissertação apresentada ao Curso de MestradoAcadêmico em Ciência da Computação doPrograma de Pós-Graduação em Ciência daComputação do Centro de Ciências e Tec-nologia da Universidade Estadual do Ceará,como requisito parcial à obtenção do título demestre em Ciência da Computação. Área deConcentração: Ciência da Computação

Orientador: Prof. PhD. Francisco C. deM. B. Oliveira

FORTALEZA – CEARÁ

2017

Page 3: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

Dados Internacionais de Catalogação na Publicação

Universidade Estadual do Ceará

Sistema de Bibliotecas

Nascimento, Marcos Devaner do . Java Acessible Debugger: Uma Abordagem deInterface Metafórica para Depuração de Código Java[recurso eletrônico] / Marcos Devaner do Nascimento.- 2017. 1 CD-ROM: il.; 4 ¾ pol.

CD-ROM contendo o arquivo no formato PDF dotrabalho acadêmico com 104 folhas, acondicionado emcaixa de DVD Slim (19 x 14 cm x 7 mm).

Dissertação (mestrado acadêmico) - UniversidadeEstadual do Ceará, Centro de Ciências e Tecnologia,Mestrado Acadêmico em Ciência da Computação,Fortaleza, 2017. Área de concentração: Ciência da Computação. Orientação: Prof. Dr. Francisco Carlos MatosBarbosa de Oliveira .

1. Surdos . 2. Depurador. 3. Acessibilidade. 4.Usabilidade. 5. Interfaces Metafóricas. I. Título.

Page 4: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

MARCOS DEVANER DO NASCIMENTO

JAD – JAVA ACCESSIBLE DEBUGGER

UMA METÁFORA VISUAL PARA APOIAR SURDOS E DEFICIENTES AUDITIVOS NO

APRENDIZADO DE PROGRAMAÇÃO

Dissertação apresentada ao Curso de MestradoAcadêmico em Ciência da Computação doPrograma de Pós-Graduação em Ciência daComputação do Centro de Ciências e Tec-nologia da Universidade Estadual do Ceará,como requisito parcial à obtenção do título demestre em Ciência da Computação. Área deConcentração: Ciência da Computação

Aprovado em: 16/03/2017

BANCA EXAMINADORA

Page 5: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

Dedico esse trabalho aos meus avós Luiza Soa-

res e Joaquim Gervásio (in memorian), por se-

rem meus exemplos de luta e coragem, dando-

me inspiração para seguir em frente.

Page 6: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

AGRADECIMENTOS

A Deus por estar sempre do meu lado, dando-me forças, proporcionando oportunidades e

colocando pessoas maravilhosas no meu caminho.

A meus avós Luiza Soares e Joaquim Gervásio, pelo seu exemplo de luta e dignidade e pela fé

em Deus que plantaram em meu coração.

A meus tios e pais de coração Lourdes Soares e Raimundo Ramos que me criaram, educaram e

me ensinaram a viver com dignidade superando todos as dificuldades que a vida pode oferecer.

A minha Mãe Maria Helena Soares, por me ensinar a ser forte, me apoiar em momentos tão

difíceis e pelo seu exemplo de superação e garra.

Ao meu Orientador Dr. Francisco Oliveira, que me acolheu com tanta bondade e respeito, me

guiando, ensinando, ajudando a me superar cada vez mais. Pelos momentos em que foi um

grande amigo além de orientador e pelo grande referencial que se tornou para mim.

A Lidiane Castro por toda a força que me deu para ingressar no mestrado, pelos petelecos nas

costas para que eu não dormisse na aula e sobretudo pelo grande carinho, ajuda e a confiança em

mim depositada.

A Shara Alves por me ajudar a materializar um sonho, sendo co-participante na construção do

Java Accessible Debugger, por ser uma grande companheira de trabalho tornando-se uma grande

amiga.

Aos meus amigos Fábio Lessa, José Alexandre, Solange Carneiro, Gleiciane Oliveira, Raquel

Farias, Tiago Bento, Alessandro Vieira e Wallace Franklin que sempre me deram todo apoio e

força nessa jornada.

Aos anjos que Deus colocou no meu caminho como Erivânia Queiroz, Lise Mary, Francisca

Monica Santanna, Mauro Oliveira, Eder Furtado, Bruno Queiroz, Adriano Freitas, Profa Telma e

Kassandra Ribeiro que me deram toda motivação e inspiração servindo de referência e mostrando

que seria possível.

E por fim, todos aqueles que não foram citados mas de forma direta ou indireta colaboraram para

que este sonho se tornasse realidade.

A todos vocês dedico todo meu amor, carinho e sobretudo o dever de repassar tudo de bom que

vocês investiram em mim, sempre compartilhando conhecimento, buscando proporcionar ao

próximo todas as oportunidades que me foram dadas.

Page 7: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

“Esforça-te, faz a obra que Eu te mandei, tem

bom ânimo, não pasmes, nem te espantes, e Eu

serei contigo por onde quer que andares.”

(Livro de Josué 1:9)

Page 8: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

RESUMO

O Laboratório de Educação a Distância para Pessoas com Deficiência - Le@d desenvolve e

aplica cursos EAD para formação de programadores, nos quais os conteúdos são adaptados para

Pessoas com Deficiência(PCD). Durante a aplicação do curso, foi possível perceber a dificuldade

que alunos surdos e deficientes auditivos (SDA) tinham para desenvolver e evoluir seus códigos.

Decidiu-se, então, analisar o desempenho de alunos SDA e ouvintes (não SDA) durante a tarefa

de depuração de um código Java. Os resultados mostraram que programadores SDA têm mais

dificuldade para desempenhar essa tarefa, sendo esta dificuldade atenuada quando utilizado um

depurador visual. Por esta razão, decidiu-se propor o Java Accessible Debugguer(JAD), um

depurador visual acessível. Ele, utiliza-se do conceito de interfaces metafóricas, apropriando-se

de simbolos e sinais do trânsito para auxiliar no processo de depuração e evolução de código.

Experimentos aplicados ao JAD, mostrou que sua utilização pode proporcionar as mesmas

oportunidades de aprendizado e evolução de código para SDA e não SDA, tornando SDA mais

competitivos para o mercado de trabalho.

Palavras-chave: Surdos. Deficientes auditivos. Depurador. Acessibilidade. Usabilidade.

Interfaces Metafóricas

Page 9: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

ABSTRACT

The Le @ d Distance Learning Laboratory develops and applies EAD courses for training

programmers, where content is adapted for People with Disabilities (PCD). During the application

of the course, it was possible to perceive the difficulty that deaf and hearing impaired students

(SDA) had to develop and evolve their codes. It was then decided to analyze the performance

of SDA students and listeners (not SDA) during the debugging task of a Java code. The results

showed that SDA programmers have more difficulty performing this task, and this difficulty is

attenuated when using a visual debugger. For this reason, it was decided to propose the Java

Accessible Debugger (JAD), an accessible visual debugger. It uses the concept of metaphorical

interfaces, appropriating symbols and traffic signals to aid in the process of code evolution and

debugging. Experiments applied to JAD have shown that their use can provide the same learning

opportunities and code evolution for SDA rather than SDA, making SDA more competitive for

the job market.

Keywords: Deaf. Hearing impaired. Debugger. Accessibility. Usability. Metaphorical

interfaces

Page 10: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

LISTA DE ILUSTRAÇÕES

Figura 1 – Modelo de Referência para Visualização. . . . . . . . . . . . . . . . . . 21

Figura 2 – Tabela de resultados da cobertura de código, ela mostra os resultados

da qualidade da cobertura de código disponível como uma porcenta-

gem e como uma barra de progresso. . . . . . . . . . . . . . . . . . . . 22

Figura 3 – Mapa cartográfico da distribuição dos pacotes, apresentando em verde

os resultados da qualidade da cobertura de código realizada pelo JCC. 23

Figura 4 – Visualização do Codmap para arquivos de classes visitados por progra-

madores durante o desenvolvimento de um sistema. . . . . . . . . . . . 24

Figura 5 – Perspectivas de visualização do Codmap. . . . . . . . . . . . . . . . . . 25

Figura 6 – Sublime Text. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

Figura 7 – WindowBuilder é um plug-in para Eclipsee permite criar interfaces

gráficas apenas arrastando componentes para a tela de edição. . . . . . 28

Figura 8 – Paralelo entre comunicação visual e verbal. . . . . . . . . . . . . . . . . 30

Figura 9 – Questionário System Usability Scale. . . . . . . . . . . . . . . . . . . . 32

Figura 10 – Gráfico de associação de percentuais à pontuação do SUS categori-

zando os graus em letras. . . . . . . . . . . . . . . . . . . . . . . . . . . 33

Figura 11 – Jeliot 3 Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

Figura 12 – Visualização com Diagrama de Objetos. . . . . . . . . . . . . . . . . . . 37

Figura 13 – Visualização com Diagrama de Sequência. . . . . . . . . . . . . . . . . 37

Figura 14 – JGrasp Interface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Figura 15 – Web Aula com vídeo em Libras. . . . . . . . . . . . . . . . . . . . . . . 40

Figura 16 – JLoad Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Figura 17 – Interface Gráfica do Java Accessible Debugger - JAD. . . . . . . . . . 42

Figura 18 – Habilidades Relevantes. . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Figura 19 – Classes Java. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Figura 20 – Resultados coletados. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

Figura 21 – Participante do Grupo 01 Utilizando o Eclipse. . . . . . . . . . . . . . . 49

Figura 22 – Participante do Grupo 02 Utilizando o JGrasp. . . . . . . . . . . . . . . 50

Figura 23 – Sinaléticas utilizadas durante a depuração. . . . . . . . . . . . . . . . . 55

Figura 24 – Visualização de dados no JAD . . . . . . . . . . . . . . . . . . . . . . . . 56

Figura 25 – Menu de funcionalidades do JAD . . . . . . . . . . . . . . . . . . . . . . 56

Page 11: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

Figura 26 – Erro de sintaxe em Libras. . . . . . . . . . . . . . . . . . . . . . . . . . 57

Figura 27 – Questões Adicionadas à Avaliação de Usabilidade. . . . . . . . . . . . . 62

Figura 28 – Layout e logística do experimento . . . . . . . . . . . . . . . . . . . . . 65

Figura 29 – Código 1 apresentado no JGRASP. . . . . . . . . . . . . . . . . . . . . 67

Figura 30 – Código 2 apresentado no JAD. . . . . . . . . . . . . . . . . . . . . . . . 68

Figura 31 – RM para o JAD com base nas respostas à escala likert para as questões

4 e 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

Figura 32 – RM para o JGrasp com base nas respostas à escala Likert para as ques-

tões 4 e 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

Figura 33 – Valores de RM submetidos ao teste T de Student. . . . . . . . . . . . . 76

Figura 34 – Contexto de depuração com JGrasp. . . . . . . . . . . . . . . . . . . . 77

Figura 35 – Participante utilizando o recurso de legenda no JAD. . . . . . . . . . . 78

Figura 36 – Participante surdo se beneficiando do recurso de erros em Libras. . . . 79

Figura 37 – Resultado da votação realizada pelos participantes. . . . . . . . . . . . 80

Page 12: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

LISTA DE TABELAS

Tabela 1 – Resultados do Teste t Não Pareado . . . . . . . . . . . . . . . . . . . . . 49

Tabela 2 – Recursos de acessiblidade e conformidade com a WCAG 2.0 . . . . . . 58

Tabela 3 – Recursos de Acessibilidade - Comparativo . . . . . . . . . . . . . . . . 58

Tabela 4 – Funcionalidades - Comparativo . . . . . . . . . . . . . . . . . . . . . . 59

Tabela 5 – Resultados para questões que não se utilizou a escala Likert . . . . . . 63

Tabela 6 – Análise crítica a partir do RM para questões com escala Likert . . . . . 64

Tabela 7 – Disponibilização do Código por Turma. . . . . . . . . . . . . . . . . . . 68

Tabela 8 – Média das métricas dos participantes ao utilizar o JAD . . . . . . . . . 70

Tabela 9 – Resultados do teste Mann-Whitney U . . . . . . . . . . . . . . . . . . . 71

Tabela 10 – Sujeitos que corrigiram com sucesso os Erros 01 e 02 . . . . . . . . . . 71

Tabela 11 – Média das Métricas de Tempo e Auxílios . . . . . . . . . . . . . . . . . 72

Page 13: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

SUMÁRIO

1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

1.1 MOTIVAÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

1.2 OBJETIVOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

1.2.1 Objetivo Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

1.2.2 Objetivos Específicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

1.3 ORGANIZAÇÃO DO TRABALHO . . . . . . . . . . . . . . . . . . . . . 17

2 FUNDAMENTAÇÃO TEÓRICA . . . . . . . . . . . . . . . . . . . . . . 19

2.1 O APRENDIZADO DE SURDOS . . . . . . . . . . . . . . . . . . . . . . 19

2.2 VISUALIZAÇÃO DA INFORMAÇÃO COMO ESTRATÉGIA PARA SUR-

DOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.3 VISUALIZAÇÃO DA INFORMAÇÃO APLICADA AMBIENTES DE DE-

SENVOLVIMENTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.3.1 Transformação de dados . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.3.2 Mapeamento Visual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

2.3.3 Transformações Visuais . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.3.3.1 Testes de Localização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2.3.3.2 Controles de Ponto de Vista . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2.3.3.3 Distorções da Imagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2.4 MANIPULAÇÃO DIRETA EM AMBIENTES DE DESENVOLVIMENTO 27

2.5 O USO DA SEMIÓTICA PARA CONSTRUÇÃO DE INTERFACES META-

FÓRICAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.6 TÉCNICAS E FERRAMENTAS PARA AVALIAÇÃO DE SOFTWARE . . 31

2.6.1 Análise de Desempenho . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

2.6.2 Avaliação de Usabilidade utilizando o System Usability Scale . . . . . . 31

2.6.3 Análise Competitiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3 TRABALHOS RELACIONADOS . . . . . . . . . . . . . . . . . . . . . 35

3.1 JELIOT 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

3.2 JAVA INTERACTIVE VISUALIZATION ENVIRONMENT - JIVE . . . . 36

3.3 JGRASP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

3.4 DELL ACCESSIBLE LEARNING E SEU AMBIENTE DE DESENVOLVI-

MENTO ACESSÍVEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

Page 14: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

4 ESTUDOS PRÉVIOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

4.1 COMO ALUNOS DE PROGRAMAÇÃO SDA E NÃO SDA EXECUTAM A

DEPURAÇÃO DE UM CÓDIGO . . . . . . . . . . . . . . . . . . . . . . . 43

4.1.1 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

4.1.2 Perfil dos participantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

4.1.3 O procedimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.1.4 O procedimento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.1.5 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4.1.6 Conclusões do estudo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

4.2 DEPURADORES VISUAIS E PROGRAMADORES SDA . . . . . . . . . 47

4.2.1 Participantes e Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . 48

4.2.2 Resultados e discussões . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5 JAVA ACCESSIBLE DEBUGGER -JAD . . . . . . . . . . . . . . . . . . 52

5.1 ARQUITETURA DA FERRAMENTA . . . . . . . . . . . . . . . . . . . . 52

5.2 A ENGENHARIA SEMIÓTICA APLICADA AO JAD POR MEIO DE

INTERFACES METAFÓRICAS E VISUALIZAÇÃO DA INFORMAÇÃO . 53

5.3 OS RECURSOS DE ACESSIBILIDADE DO JAD . . . . . . . . . . . . . . 57

6 EXPERIMENTOS APLICADOS AO JAD . . . . . . . . . . . . . . . . 60

6.1 TÉCNICAS E FERRAMENTAS UTILIZADAS . . . . . . . . . . . . . . . 60

6.2 PERFIL DOS PARTICIPANTES . . . . . . . . . . . . . . . . . . . . . . . 62

6.3 INFRAESTRUTURA E MÉTODO DE APLICAÇÃO . . . . . . . . . . . . 65

6.4 PROBLEMAS OCORRIDOS . . . . . . . . . . . . . . . . . . . . . . . . . 68

7 RESULTADOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

7.1 ANÁLISE QUANTITATIVA . . . . . . . . . . . . . . . . . . . . . . . . . 70

7.1.1 Comparativo de Desempenho SDA x não-SDA utilizando o JAD . . . . . 70

7.1.2 Comparativo de Desempenho JAD x JGrasp . . . . . . . . . . . . . . . . 71

7.1.3 Comparativo de Avaliação de Usabilidade JAD x JGrasp . . . . . . . . . 72

7.1.3.1 Análise das Questões 4 e 10 do Questionário SUS . . . . . . . . . . . . . . 73

7.1.3.2 Análise das Questões Acrescidas ao Questionário SUS . . . . . . . . . . . . 74

7.1.3.2.1 Resultados para o JAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

7.1.3.2.2 Resultados para o JGrasp . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

7.1.3.2.3 Comparativo JAD x JGasp . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

7.2 CAPTURA DE TELA E ANÁLISE CRÍTICA . . . . . . . . . . . . . . . . 77

Page 15: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

7.3 ANÁLISE QUALITATIVA . . . . . . . . . . . . . . . . . . . . . . . . . . 79

8 CONCLUSÕES E TRABALHOS FUTUROS . . . . . . . . . . . . . . . 81

REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

APÊNDICES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

APÊNDICE A – Depoimentos . . . . . . . . . . . . . . . . . . . . . . . . 89

A.1 FEEDBACK DOS PARTICIPANTES SOBRE O JAD . . . . . . . . . . . . 89

A.1.1 Participantes SDA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

A.1.2 Participantes não SDA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

A.2 FEEDBACK DOS PARTICIPANTES SOBRE O JGRASP . . . . . . . . . . 94

A.2.1 Participantes SDA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

A.2.2 Participantes não SDA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

APÊNDICE B – Formulário de Observação . . . . . . . . . . . . . . . . . 101

APÊNDICE C – Questionário de Perfil Socioeducativo . . . . . . . . . . . 102

APÊNDICE D – Termo de Consentimento Livre e Esclarecido . . . . . . . 104

Page 16: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

15

1 INTRODUÇÃO

1.1 MOTIVAÇÃO

O Censo de 2010 realizado pelo IBGE (Instituto Brasileiro de Geografia e Estatística)

aponta que 9,7 milhões de brasileiros possuem deficiência auditiva, representando 5,1% da

população brasileira (INSTITUTO BRASILEIRO DE GEOGRAFIA E ESTATíSTICA, 2010).

Entre a população de deficientes auditivos apontada pelo IBGE, estão os grupos de sujeitos

parcialmente surdos (pessoas com surdez leve e moderada) e os grupos de surdos (pessoas com

surdez severa e profunda). Segundo Oliveira (2001), os sujeitos com surdez severa e profunda

podem apresentar dificuldades na escrita, caso não possuam uma educação adequada.

Uma das grandes dificuldades enfrentadas por Pessoas com deficiência (PCD) é

o acesso ao mercado de trabalho. A contratação deles em postos de trabalho dentro de uma

empresa tem sido motivada pela mudança na legislação. Em um primeiro momento, o processo de

incorporação de um PCD por empresas é visto como um grande desafio, repleto de dificuldades

a serem enfrentadas.

O mercado de desenvolvimento de software cresce significativamente no Brasil e

apresenta grandes oportunidades para jovens programadores. O número de vagas aumentou

44,2% em 2015 e estima-se um aumento de 30% em 2016, apesar da atual crise econômica

(ZOGBI, 2016). Esse fato, mostra uma oportunidade para que PCDs ingressem no mercado de

trabalho, porém eles ainda têm como barreira a formação profissional.

Uma das grandes dificuldades das empresas consiste em captar PCD com uma

boa formação profissional, pois alguns tipos de deficiência, como a surdez, tornam o acesso à

informação e conteúdos didáticos restrito em razão da dificuldade de compreensão da língua

utilizada.Pessoas SDA têm como sua língua nativa a Língua Brasileira de Sinais (Libras).

Toscano, Dizeu e Caporali (2005), relatam que pessoas com níveis de surdez severa e profunda

adquirem desde criança a linguagem de sinais de forma natural e espontânea para se comunicar.

Como consequência, alunos SDA têm sua formação tradicional comprometida, já que os materiais

didáticos são, via de regra, aqueles preparados para alunos ouvintes.

O programador surdo Peter (2012) relata em seu artigo que encontrou inúmeras

dificuldades ao ingressar no Instituto Rochester de Tecnologia de Nova York. Logo ao tentar

aprender uma linguagem de programação, descobriu que grande parte dos tutoriais, vídeos

entre outras ferramentas não atendiam às suas necessidades, pois não eram adaptados a sua

Page 17: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

16

realidade, dessa forma seguir carreira de programador tornou-se uma árdua tarefa. Assim como

esse exemplo, diversos SDA possuem suas limitações para acessar a conteúdos específicos ainda

não adaptados à sua realidade.

Problemas como os apontados por Peter (2012) também foram identificados pelo

autor durante sua experiência com tutoria durante a aplicação do curso de Java Básico oferecido

pelo Laboratório de Educação a Distância para Pessoas com Deficiência (Le@d). O curso é uma

iniciativa de uma multinacional do ramo de informática e a Universidade Estadual do Ceará. Esta

parceria firmada entre instituição pública e privada tem como objetivo pesquisar e desenvolver

soluções de ensino a distância que aumentam a empregabilidade de pessoas com deficiência. O

Le@d produz e oferece cursos de Educação à Distância (EAD) acessíveis relacionados à área de

Tecnologia da Informação (TI) através de um Sistema de Gestão de Aprendizagem Acessível

(SGAA). Os cursos abrangem mais de 900 horas de formação (DELL INC., 2017). Foi percebido

que os alunos SDA apresentavam dificuldade para compreender e manipular um Ambiente de

Desenvolvimento Integrado (IDE do inglês integrated development environment), principalmente

em relação ao processo de depuração de código.

A experiência de trabalho vivida pelo autor, lhe possibilitou conhecer as barreiras

que SDA encontram para a formação profissional e o uso de tecnologias. Durante a aplicação

dos cursos de lógica de programação e Java, percebeu-se o alto grau de dificuldade no manuseio

de ferramentas e compreensão da abstração em algoritmos. Isso motivou a investigação dos

fatores críticos durante as atividades práticas de programação de durante o curso de Java.

Esta dissertação apresenta uma série de estudos experimentais, entre eles um estudo

comparativo entre SDA e não SDA, onde pode-se verificar que SDA possuem um desempenho

inferior a não SDA durante a depuração de código Java utilizando uma ferramenta tradicional

(Eclipse)(NASCIMENTO; OLIVEIRA; FREITAS, 2014). Com isto, buscou-se alternativas

para atenuar essa diferença, entre elas está o uso de depuradores visuais. A decisão de utilizar

depuradores visuais foi embasada em estudos que apontam o quanto representações visuais

causam impacto positivo no desempenho de resolução de problemas matemáticos para os alunos

SDA (BLATTO-VALLEE et al., 2007), com isto, tomamou-se como hipótese que o mesmo

poderia ocorrer na depuração de código, dada a necessidade de um raciocínio lógico, assim

como em problemas matemáticos. Foram realizadas análises situadas de grupos de alunos SDA

utilizando depurador visual e outro grupo com um depurador tradicional, identificou-se que

aqueles que utilizaram o depurador visual tiveram melhores resultados de desempenho em relação

ao grupo que utilizou o depurador tradicional. Realizou-se também uma avaliação de usabilidade,

Page 18: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

17

apontando resultados positivos e superiores para o depurador visual (NASCIMENTO et al.,

2015).

Os resultados motivaram a propor o Java Accessible Debugger (JAD), um depurador

acessível para código Java, criado com base nas análises experimentais entre grupos de SDA e

não SDA, propondo modelos de interação e ferramentas que auxilie alunos SDA a elevar seu

desempenho durante o processo de programação e depuração de código. A ferramenta proposta é

composta por uma série de recursos visuais metafóricos, fazendo uma analogia entre a depuração

de código e o trânsito, valorizando a experiência do usuário com objetivo de aliviar a carga

cognitiva durante a evolução de um código Java.

1.2 OBJETIVOS

1.2.1 Objetivo Geral

Desenvolver um depurador visual acessível, aplicando o conceito de interfaces

metafóricas, de forma que, SDA e não SDA possam ter o mesmo nível de aprendizado e

produtividade na depuração de código.

1.2.2 Objetivos Específicos

a) Realizar um estudo comparativo do desempenho de SDA e ouvintes durante a

depuração de um código Java.

b) Estudar os impactos nos indicadores de performance dos SDA quando esses se

utilizarem de depuradores visuais

c) Propor, construir e avaliar uma ferramenta de depuração de código acessível com

base nos estudos realizados.

1.3 ORGANIZAÇÃO DO TRABALHO

No capítulo 1 apresenta-se a introdução apontando a motivação e os objetivos

buscados. No capítulo 2 aborda-se a fundamentação teórica necessária para compreensão dos

conceitos abordados nos capítulos posteriores, nele apresentamos estudos sobre o aprendizado

de SDA, visualização da informação como uma estratégia para SDA, visualização da informação

aplicada a IDE, manipulação direta e IDE, o uso da semiótica para construção de interfaces

metafóricas e técnicas e ferramentas para avaliação de software. No capítulo 3 apresentam-se

Page 19: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

18

alguns trabalhos, mostrando técnicas e ferramentas importantes relacionadas a este trabalho.

No capítulo 4 apresentam-se os experimentos realizados durante a pesquisa, apresentando

metodologias, técnicas e resultados apontados pelos estudos. No capítulo 5 apresenta-se o JAD,

explorando sua arquitetura, funcionalidades e os recursos de acessibilidade. No capítulo 6 são

apresentadas as metodologias e técnicas utilizadas para o experimento aplicado ao JAD, e por fim

nos capítulos 7 e 8 são abordados os resultados para o experimento e conclusões deste trabalho,

respectivamente.

Page 20: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

19

2 FUNDAMENTAÇÃO TEÓRICA

Neste capítulo são apresentados os fundamentos para a realização da pesquisa,

levantando as problemáticas e as possíveis soluções para os problemas apontados. Serão

abordados os problemas em relação ao aprendizado de SDA, além de estudos que apontam

depuradores visuais como uma possibilidade para melhorar o desempenho no aprendizado e

desempenho durante o processo de depuração e desenvolvimento de códigos Java, durante as

oficinas de aprendizagem.

Na seção 2.1, é discutida a problemática do aprendizado de SDA em relação aos não

SDA. Na seção 2.2 aponta-se o uso de representações visuais como um forte preditor para que

SDA possam compreender melhor o comportamento de programas em tempo de execução. Nas

seções 2.3 e 2.4, são apresentados respectivamente os conceitos de visualização da informação e

manipulação aplicado à IDE. Por fim, na seção 2.6 são apresentadas as técnicas e ferramentas

para avaliação das ferramentas utilizadas para os estudos experimentais.

2.1 O APRENDIZADO DE SURDOS

Pesquisas apontam que alunos SDA possuem desempenho acadêmico inferior quando

comparados com os seus homólogos auditivos (não SDA) em todos os ambientes educacionais

(NOGUEIRA; ZANQUETTA, 2009). Bull, Blatto-Vallee e Fabich (2006) mostra que alunos

SDA apresentam maior dificuldade na absorção de conceitos matemáticos, quando comparados

aos não SDA. No entanto, a perda de audição pode não estar na origem do problema. Nunes

e Moreno (1998) argumentam que o mau desempenho matemático parte de um fator de risco

relacionado com o tempo, o tipo de instrução e oportunidades de aprendizagem oferecidas para o

aluno surdo. Para corroborar essa linha de pensamento, ??) mostraram que de 3 a 4 anos de idade,

as crianças SDA têm habilidades espaciais e temporais comparáveis com os seus colegas ouvintes

com a mesma idade e ainda melhores habilidades numéricas espaciais (??). Barbosa (2013)

argumenta que nas funções cognitivas menos dependentes de estímulos linguísticos, crianças

SDA e não SDA parecem ter desempenho similar. boroditsky2011language argumenta que

pessoas bilíngues mostram divergência sobre o mesmo assunto quando é necessário discuti-lo

nos dois idiomas. Essa mudança na língua também causa impacto na memória. Finalmente, o

autor postula que “a linguagem molda mesmo as dimensões mais fundamentais da experiência

humana como espaço, tempo, causalidade e relacionamentos com os outros”.

Muitos materiais didáticos e softwares foram pensados para uma cultura ouvinte,

Page 21: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

20

dessa forma, sujeitos SDA precisam de um esforço maior para entender um conteúdo ou até

mesmo para se adaptar ao funcionamento de um software. Para Perlin (2004), a “ cultura ouvinte

” é essencialmente composta de sinais auditivos que SDA não usam que, por sua vez, utilizam-se

de sinais visuais para compreender o mundo ao seu redor. Não é só a falta de material didático

adequado, a Língua Brasileira de Sinais (Libras) foi legalizada recentemente, e portanto algumas

expressões de áreas específicas ainda não foram convencionadas para tal língua.

2.2 VISUALIZAÇÃO DA INFORMAÇÃO COMO ESTRATÉGIA PARA SURDOS

Blatto-Vallee et al. (2007) apontam que o uso de representações esquemáticas visuais-

espaciais é um forte preditor positivo do desempenho de resolução de problemas matemáticos

para os alunos SDA. Para Pinto, Gomes e Nicot (2014), a visualização parece representar, para

o surdo, o principal canal de esquemas de pensamento e de processamento que naturalmente

permitem a aquisição, construção e expressão do conhecimento, valores e experiências que

de outra forma seria incomunicáveis. O canal visual permite a leitura do mundo surdo e é o

apoio do seu processamento mental. Os autores relatam melhora na auto estima, no interesse e

engajamento entre os SDA, quando desenhos, imagens manipuláveis e visuais foram usadas no

ensino de Ciências, Geografia, Artes e História .

Embora existam vários depuradores de Java visuais,não encontrou-se nenhum teste

realizado com os SDA. Antes de prosseguir com a discussão dos depuradores Java visuais

disponíveis, deve-se advertir que usuários SDA registram menos informação em sua memória

de curto prazo quando comparados aos não SDA (BAVELIER; DYE; HAUSER, 2006). Isso

pode ser parcialmente devido à natureza visual-espacial da informação necessária para o SDA

(WILSON; EMMOREY, 2006).

Em uma pesquisa recente, Sorva, Karavirta e Malmi (2013) apontam que nas últimas

três décadas, dezenas de sistemas de software foram desenvolvidos para programadores iniciantes

cujo objetivo é ilustrar o comportamento em tempo de execução de programas. Contudo, é

importante analisar alguns pontos quando se trata de usuários SDA: não sobrecarregar o modo

visual, oferecer ao programador a portabilidade e flexibilidade suficientes para ser usado em

diferentes configurações e locais de trabalho, além de oferecer interface intuitiva com recursos

de acessibilidade.

Page 22: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

21

2.3 VISUALIZAÇÃO DA INFORMAÇÃO APLICADA AMBIENTES DE DESENVOLVI-

MENTO

Segundo Nascimento (2012), visualização da informação (INFOVIS) trata-se da

construção de representações visuais de dados abstratos de forma a facilitar o entendimento e/ou

ajudar na descoberta de novas informações, além de auxiliar o entendimento de determinado

assunto, o qual, sem uma visualização, exigiria maior esforço cognitivo. Card, Mackinlay e

Shneiderman (1999) apresentam um modelo de referência para construir uma visulização da

informação. Como mostra a Figura 1, esse modelo é divido em três etapas para gerar uma imagem

a partir de um conjunto de dados:transformação de dados, mapeamento Visual e transformações

visuais, tais etapas são detalhadas nas subseções 2.3.1, 2.3.2, 2.3.3.

Figura 1 – Modelo de Referência para Visualização.

Fonte: Card, Mackinlay e Shneiderman (1999).

2.3.1 Transformação de dados

A Figura 2 apresenta uma tabela de dados do Java Code Coverage (JCC), sendo

esta uma ferramenta integrada ao Eclipse para cobertura de testes caixa branca (REITZ; CAS-

TIÑEIRA; SCHUHMACHER, 2015). É possível observar como os dados estão estruturados em

uma tabela, servindo como base para representações visuais. Essa é a etapa em que os dados

são organizados de forma lógica. Deve-se atentar para eliminação de redundâncias, além de

acréscimo de informações, como no caso de resultados estatísticos, entre outras informações que

podem ser geradas a partir dos dados coletados. A ferramenta JCC, embora apresente alguns

Page 23: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

22

Figura 2 – Tabela de resultados da cobertura de código, ela mostra os resultados da

qualidade da cobertura de código disponível como uma porcentagem e como

uma barra de progresso.

Fonte: Reitz, Castiñeira e Schuhmacher (2015).

gráficos, não da suporte para diferentes perspectivas de visualização, para isso, é necessário

utilizar outros tipos de plug-ins.

2.3.2 Mapeamento Visual

Alexandre e Tavares (2007) conceituam o mapeamento visual como a associação

entre os dados e representações gráficas adequadas, construindo uma estrutura visual que

represente os dados de uma tabela. Na Figura 3, é apresentado um exemplo desta técnica

aplicada à visualização da cobertura do JCC. Para isso é utilizado um plug-in chamado Codmap,

que tem como objetivo fornecer aos desenvolvedores um modelo mental compartilhado, espacial

e estável de projetos de software (KUHN; ERNI; NIERSTRASZ, 2010). Ele utiliza várias

técnicas para aliviar a carga cognitiva durante a visualização e navegação por pacotes e classes.

Esta fase é considerada crucial para uma visualização, pois nela são assinalados

os requisitos de percepção humana que deverão ser considerados. O grau de dificuldade do

mapeamento aumenta proporcionalmente ao número de atributos associados aos dados. A escolha

de representações gráficas que considerem adequadamente princípios de percepção humana não é

uma tarefa fácil, principalmente na visualização de dados abstratos (ALEXANDRE; TAVARES,

2007).

A visualização dos dados em forma de modelos representativos auxilia na percepção

da informação, porém, existe uma outra etapa da INFOVIS essencial para visualizar as diversas

Page 24: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

23

Figura 3 – Mapa cartográfico da distribuição dos pacotes, apresentando em verde os

resultados da qualidade da cobertura de código realizada pelo JCC.

Fonte: Kuhn, Erni e Nierstrasz (2010).

perspectivas de resultados que os dados podem nos dar. Esta etapa é chamada de transformações

visuais e possui várias técnicas de transformações que permitem ao usuário outras perspectivas

de resultados.

2.3.3 Transformações Visuais

Nessa etapa é possível modificar e estender as estruturas visuais de forma interativa

por meio de algumas operações. Para isso são utilizadas algumas técnicas mostradas a seguir.

Page 25: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

24

2.3.3.1 Testes de Localização

Os testes de localização possibilitam ao usuário obter informações adicionais sobre

um item. Na Figura 4, é apresentado um mapa de calor usado pelo Codmap para rastrear os

locais visitados pelo programador durante o desenvolvimento de seus códigos Java (KUHN;

ERNI; NIERSTRASZ, 2010). O arquivo atualmente ativo é indicado por um rótulo de texto

contendo o nome da classe e os arquivos abertos são marcados com um ícone que representa o

seu tipo. Ao clicar sobre a imagem de um arquivo, ele é aberto no editor de código do Eclipse.

Figura 4 – Visualização do Codmap para arquivos de classes visitados por

programadores durante o desenvolvimento de um sistema.

Fonte: Kuhn, Erni e Nierstrasz (2010).

2.3.3.2 Controles de Ponto de Vista

Com esta técnica é possível ampliar, reduzir e deslocar uma imagem para oferecer

diferentes tipos de visão para o usuário. Na Figura 5, a paisagem gerada pelo Codemap apresenta

diferentes perspectivas de visualização. Nela o mesmo projeto é exibido de 4 formas diferentes:

Page 26: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

25

a apresentação padrão é exibida no canto superior esquerdo; por pacotes, no canto superior

direito; mapa de calor, no canto inferior esquerdo; e por cobertura de testes, no canto inferior

direito.

Figura 5 – Perspectivas de visualização do Codmap.

Fonte: Kuhn, Erni e Nierstrasz (2010).

2.3.3.3 Distorções da Imagem

Como é possível observar na Figura 6, essa técnica consiste em ampliar uma região

específica em detrimento de outra sem a perda do contexto. A ferramenta Sublime Text é

utilizada para edição de códigos de HyperText Markup Language (HTML) e linguagens de

programação. Sua interface possui um recurso para visão geral do código no canto direito da

Page 27: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

26

tela permitindo ao desenvolvedor visualizar toda a estrutura de seu código sem perder o foco do

editor (SKINNER, 2013)

Page 28: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

27

Figura 6 – Sublime Text.

Fonte: Skinner (2013).

Os exemplos citados, mostram que as técnicas de INFOVIS estão cada mais vez

presentes em ambinetes de desenvolvimento, permitindo aos usuários uma experiência de

interação intuitiva e consequentemente diminuindo a demanda cognitiva. Desta forma, o usuário

poderá focar mais na ação de interesse e não na operação do sistema. Com os exemplos

citados neste capítulo, é possível observar que a INFOVIs tem se tornado um caminho para que

programadores tenham mais produtividade no desenvolvimento de sistemas. Na próxima seção

será abordado o conceito de manipulação direta, outra técnica da interação homem-máquina que

está muito ligada a INFOVIS, pois ambas tratam de objetos visuais em uma interface que auxilia

usuários a ter uma melhor experiência de uso do sistema. Elas são amplamente utilizadas em

IDE, com o objetivo de melhorar a produtividade e prevenção ao erro de programadores.

2.4 MANIPULAÇÃO DIRETA EM AMBIENTES DE DESENVOLVIMENTO

Rose, Plaisant e Shneiderman (1995) definem manipulação direta como uma técnica

para representar interfaces que apresentam representação contínua de objetos e ações físicas

sobre eles, possibilitando operações rápidas, incrementais e reversíveis em vez de comandos e

sintaxe complexa. Dessa forma, o usuário pode visualizar e acompanhar sua ação sobre o objeto

de forma rápida e intuitiva. De acordo com Hutchins, Hollan e Norman (1985), a manipulação

Page 29: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

28

direta consiste em interfaces visuais em que os usuários operam em uma representação de

objetos de interesse. Esse modelo usa a visibilidade e ações sobre os objetos produzindo

diferença significativa na produtividade em interação com os sistemas (ROSE; PLAISANT;

SHNEIDERMAN, 1995). Como mostrado na Figura 7, essa técnica é muito utilizada em IDE

para que programadores possam criar interfaces apenas arrastando os componentes para o campo

de edição, gerando o código automativamente, e assim, ter mais produtividade na construção de

seus código-fontes.

Figura 7 – WindowBuilder é um plug-in para Eclipsee permite criar interfaces gráficas

apenas arrastando componentes para a tela de edição.

Fonte: Skinner (2013).

Em alguns estudos realizados por Moreno e Joy (2007), os resultados mostram que

as interfaces com essas características permitem ao usuário um melhor domínio da interface,

melhor desempenho na realização de tarefas, facilidade de aprendizado em funções básicas ou

avançadas, confiança de que continuarão a dominar a interface mesmo ao parar de usá-la por um

tempo, satisfação do usuário, vontade de ensinar os outros e desejo de explorar funções mais

avançadas do sistema.

Algumas IDE têm aplicado não só o conceito de manipulação direta, mas também o

conceito de visualização da informação, fazendo com que tarefas complexas como depurar um

Page 30: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

29

código sejam mais simples e intuitivas. Moreno e Joy (2007) dizem que por causa da facilidade

de utilização desses instrumentos, eles são destinados para as fases iniciais de um processo

de aprendizagem de programação de computadores.A estratégia é fazer com que os objetos e

valores sejam visíveis e manipuláveis graficamente.

A manipulação direta é aplicada também à lógica de programação por meio da

programação visual. As linguagens que utilizam-se deste conceito se apropriam de componentes

gráficos que representam os comandos da linguagem, construindo a lógica arrastando os compo-

nentes e ajustando conforme a execução desejada. Esse tipo de programação pode minimizar

problemas como configuração de ambiente, sintaxe e compilação, sendo estes os problemas

mais enfrentados no ensino-aprendizagem de lógica de programação (BRANDÃO; BRANDÃO;

RIBEIRO, 2012).

Cypher e Halbert (1993) mostram em seu trabalho que os conceitos de manipulação

direta aplicada a IDE podem gerar produtividade para desenvolvedores, pois ajudam no desenvol-

vimento da lógica, materializam algo abstrato, diminuem a carga cognitiva para a interpretação

da lógica matemática e também permitem a implementação da lógica computacional para o

desenvolvimento de algoritimos. SDA são muito visuais (GESUELI; MOURA, 2006), e é

razoável assumir que uma IDE com essas características trará impactos positivos para esses

indivíduos.

2.5 O USO DA SEMIÓTICA PARA CONSTRUÇÃO DE INTERFACES METAFÓRICAS

Semiótica é a ciência que estuda a comunicação e cultura, apontando que conheci-

mento e cultura são manifestados e compartilhados em uma sociedade por meio de símbolos

(LEITÃO; SILVEIRA; SOUZA, 2013). Para Leite (1998), a metáfora utiliza-se do conceito de

semiótica para representações metafóricas utilizando convenções culturais.

Segundo Oliveira (2012), o uso de analogias e metáforas é algo bem recorrente no

ensino de ciências, facilitando o compreensão de conceitos com alto grau de abstração. Como

aponta Cury et al. (2008), o uso de metáforas aplicado às interfaces gráficas surgiu, à medida que

que os computadores foram se tornando aparelhos de uso pessoal, não mais voltado apenas para

o uso acadêmico, as dificuldades de interação com sistemas por meio de linguagens nativas como

linhas de comando tiveram que ser superadas por interfaces gráficas. “Interface é um dispositivo

físico ou lógico entre duas partes de um mesmo sistema, com características apropriadas que

permitem trocas de informação entre elas” (NIUZA, 2008). A partir de então, diversas analogias

Page 31: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

30

foram criadas com intuito de tornar a experiência de uso de sistemas interativos mais intuitiva e

mais próxima da realidade dos usuários.

Os elementos visuais possuem forte influência para comunicação entre o usuário e

máquina, sendo o processo de comunicação visual análogo à comunicação verbal. Niuza (2008)

apresenta em seu estudo os processos de comunicação visual e verbal, fazendo um paralelo entre

as duas, como é mostrado na Figura 8.

Figura 8 – Paralelo entre comunicação visual e verbal.

Fonte: Niuza (2008).

Na Figura 8 são apresentados os seguintes paralelos:

• Os ícones (imagem gráfica para representar uma função) correspondem aos vocábulos

(elementos que fazem parte de uma língua).

• O elemento visual (ícone) corresponde às palavras em um conversa.

• Ambos ícones e palavras possuem um conteúdo semântico.

• O conteúdo semântico está ligado a uma imagem metafórica, assim como o sentido

Page 32: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

31

figurado está para palavras.

• Imagens metafóricas são utilizadas para a abstração lógica, enquanto o sentido figurado é

utilizado para comparações implícitas.

Com isso, pode-se perceber o quão importante é o uso de elementos visuais metafó-

ricos na construção de uma interface, pois os mesmos estão diretamente ligados ao processo de

comunicação entre o homem e a máquina, tornando possível substituir comandos por elementos

visuais próximos à realidade do usuário, tornando a experiência de uso mais amigável e intuitiva.

2.6 TÉCNICAS E FERRAMENTAS PARA AVALIAÇÃO DE SOFTWARE

2.6.1 Análise de Desempenho

A análise de desempenho durante o uso de um sistema interativo é realizada com base

nos resultados obtidos a partir da observação de uso do sistema para realização de determinadas

tarefas. Durante o processo de observação, podem ser coletados os seguintes dados: tarefas

realizadas, total de erros cometidos, quantificar os tipos de erros separadamente, tempo necessário

para concluir a tarefa e o número de auxílios solicitados (BARBOSA; SILVA, 2010). Um exemplo

prático da aplicação dessa técnica, é o estudo de desempenho de usuários SDA e não SDA durante

a tarefa de evolução de um código Java, comparando os resultados de desempenho de uso do

JGrasp (IDE disponível no mercado) e JAD (ferramenta proposta neste trabalho, apresentada no

capítulo 5), sendo estas ferramentas utilizadas para o desenvolvimento de códigos Java.

2.6.2 Avaliação de Usabilidade utilizando o System Usability Scale

A Escala de Usabilidade System Usability Scale (do inglês, SUS) é uma ferramenta

utilizada para medição de usabilidade. Ela consiste em um questionário composto por 10

(dez) questões com cinco opções de resposta (SAURO; LEWIS, 2012). Para cada questão é

utilizada uma escala Likert variando de 1 (discordo fortemente) a 5 ( concordo fortemente) como

apresentado na Figura 9.

Esse questionário produz um único número que representa uma medida composta da

usabilidade geral do sistema a ser estudado. Note-se que os escores de itens individuais não são

significativos por conta própria. O cálculo deve ser realizado da seguinte forma:

• Para os itens 1, 3, 5, 7 e 9 e a pontuação é a posição na escala menos 1.

• Para os itens 2, 4, 6, 8 e 10, a pontuação é de 5 menos a posição na escala.

Page 33: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

32

Figura 9 – Questionário System Usability Scale.

Fonte: Brooke (1996).

• Você deve fazer um somatório das pontuações de cada item.

• Multiplicar a soma das pontuações por 2,5 para obter o valor global.

Pesquisas apontam que uma escala acima de 68 pode indicar que o grau de usabi-

lidade está acima da média, consequentemente números abaixo deste valor são considerados

abaixo da média (SAURO; LEWIS, 2012). É possível, por meio de normalização, dividir os

resultados em categorias, como é mostrado na Figura 10

Page 34: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

33

Figura 10 – Gráfico de associação de percentuais à pontuação do SUS categorizando os

graus em letras.

Fonte: Sauro e Lewis (2012).

Sauro e Lewis (2012) apontam que pode-se, com os resultados, chegar às seguintes

conclusões:

• 80.3 ou superior é um A: As pessoas adoram o site e recomendam aos seus amigos.

• 68 ou aproximado é um C: Está fazendo certo, mas poderia melhorar.

• 51 ou aproximado é um F: Deve-se fazer da usabilidade uma prioridade e corrigir os

problemas.

O SUS foi concebido para medir a facilidade de uso, ou seja, uma única dimensão,

porém, pesquisas mostram que ele fornece uma medida global de satisfação do sistema e pode

também fornecer subescalas de usabilidade e capacidade de aprendizado. Os itens 4 e 10 do

questionário fornecem a dimensão da capacidade de aprendizado e os outros 8 itens fornecem

a dimensão usabilidade. Com isso, é possível acompanhar os resultados para escala global e

também para as subescalas (LEWIS; SAURO, 2009).

2.6.3 Análise Competitiva

“A análise competitiva consiste em examinar produtos com funcionalidades seme-

lhantes ou complementares” (BARBOSA; SILVA, 2010). Essa análise está entre o conjunto de

atividades propostas por Nielsen e Landauer (1993) para engenharia de usabilidade.

A análise competitiva de sistemas, se dá pela inspeção de funcionalidades e questões

Page 35: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

34

de IHC em sistemas semelhantes com objetivo de obter um conjunto de informações sobre os

pontos fortes e fracos dos sistemas, analisando o que pode ser aperfeiçoado.

Essa técnica pode ser aplicada a protótipos, porém, segundo Barbosa e Silva (2010)

ela se torna mais eficaz quando aplicada a sistemas prontos, pois com as funcionalidades e

interface desenvolvidas será possível analisar tanto questões de interação como as questões

de designer junto ao usuário. Dessa forma será possível analisar o que funciona e o que não

funciona nos sistemas, apontando pontos importantes de aperfeiçoamento.

Para construção do JAD, realizou-se uma análise competitiva entre dois depuradores

de IDE disponíveis no mercado (Eclipse e Jgrasp). Além de validar a hipótese de que depuradores

visuais seriam uma saída para que alunos SDA pudessem depurar seus códigos com mais

produtividade,isso nos permitiu levantar requisitos para construção do JAD com base em análise

de problemas e acertos de cada ferramenta em relação à interface e à interação com o sistema

(NASCIMENTO et al., 2015).

Page 36: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

35

3 TRABALHOS RELACIONADOS

Depuradores visuais implementam, pela sua concepção, as estratégias de manipula-

ção direta. Nessa seção, apresentamos vários depuradores visuais, além de discutir brevemente

como a implementação dessas estratégias trouxe benefícios aos alunos e programadores.

3.1 JELIOT 3

O Jeliot 3 (MORENO; JOY, 2007) é uma ferramenta concebida para o aprendizado

de programação procedural ou orientada a objetos. Sua principal característica é a visão total

ou parcial de códigos-fonte e fluxos de controle. Com essa ferramenta, os estudantes podem

desenvolver e, ao mesmo tempo, ver a representação visual de um código em execução. Durante o

processo de depuração e visualização, os estudantes adquirem um modelo mental de computação

que ajuda a compreender melhor a construção do programa. O layout da ferramenta é dividido

em quatro partes: métodos, constantes, área para avaliação de expressão e área de ocorrência,

como apresentado na Figura 11.

Figura 11 – Jeliot 3 Interface.

Fonte: Moreno e Joy (2007).

Page 37: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

36

Esse programa procura ser o mais consistente possível, a fim de reduzir a carga

cognitiva dos alunos durante a aprendizagem (MORENO; JOY, 2007). Embora essa ferramenta

exiba uma depuração de objetos visuais, em uma avaliação crítica percebe-se que ela tem uma

série de representações e diagramas que poderiam confundir o usuário. Diagramas complexos

facilmente tornam-se confusos e difíceis de ler. Estudos mostram que as abordagens gráficas são

mais eficientes quando a tarefa requer o reconhecimento de padrões, mas não quando o campo

visual é muito cheio de objetos e a tarefa exige informação detalhada (GRACIANO, 2007).

3.2 JAVA INTERACTIVE VISUALIZATION ENVIRONMENT - JIVE

Segundo Cattaneo et al. (2004), o Jive é uma ferramenta de execução interativa,

desenvolvida pelo Departamento de Ciência e Engenharia da Computação pela Universidade

de Buffalo. Esse sistema é utilizado para a depuração de programas em Java com visualização

da estrutura do objeto e interações entre os métodos, facilitando a manutenção do software e

fornecendo informações sobre o comportamento dinâmico do programa. Ele foi originalmente

projetado como uma aplicação Java autônoma. Recentemente ele foi redesenhado para a

plataforma Eclipse e é composto por um conjunto de plug-ins e recursos. Sua distribuição é feita

por meio do gerenciador de atualização Eclipse. Ele oferece dois principais pontos de vista para

mostrar a execução de um código Java, sendo estes a exibição do diagrama de objeto e diagrama

de sequência, como apresentado nas Figuras 12 e 13.

Page 38: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

37

Figura 12 – Visualização com Diagrama de Objetos.

Fonte: Cattaneo et al. (2004).

Figura 13 – Visualização com Diagrama de Sequência.

Fonte: Cattaneo et al. (2004).

Page 39: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

38

A compreensão do processo de execução requer um conhecimento prévio dos dia-

gramas citados, o que pode gerar para os estudantes e programadores maior carga cognitiva e

tirar o foco da estrutura lógica para os conceitos relacionados aos diagramas.

3.3 JGRASP

JGRASP é uma IDE desenvolvida para fornecer visualizações dinâmicas e ilustrativas

de estruturas de dados e objetos em Java (CROSS; HENDRIX; UMPHRESS, 2004). Esses

pontos de vista são gerados automaticamente e sincronizados com as estruturas de dados do

código-fonte. O usuário pode percorrer o código no modo de depuração ou desenvolvimento.

Essa integração permite um único ambiente para o aprendizado. O uso dessa IDE em sala de

aula tem sido um fator importante para o ensino de alunos que lidam com programação orientada

a objetos e estruturas de dados. Estudos realizados com os alunos indicam que a ferramenta pode

ter um impacto positivo no aprendizado da lógica de programação (CROSS et al., 2007).

Os alunos foram mais produtivos e mais capazes de detectar e corrigir erros usando

JGrasp (LEAL, 2014). Ela utiliza Java Swing, que implementa partes do API Java Accessibility.

Isso permite que alguns elementos estejam disponíveis para as tecnologias assistivas. Os

elementos incluem: texto do código-fonte, texto de outros componentes de interface do usuário e

um texto alternativo para componentes gráficos. Ele também produz código-fonte e pontos de

vista em tempo de execução (CROSS; HENDRIX; UMPHRESS, 2004). Entre outros depuradores

visuais pesquisados, pode-se identificar que essa ferramenta utiliza a técnica de manipulação

direta, fazendo com que ela se destaque entre as demais citadas no presente trabalho.

A técnica de manipulação direta se aplica na forma de visualização dos objetos. Com

o mouse, é possível arrastar um objeto ou estrutura para uma tela de apresentação, ilustrando o

objeto de uma forma mais clara e próxima da realidade do usuário, como é mostrado na Figura

14. Essa ferramenta inspirou a construção do Java Accessible Degugger, proposto neste trabalho,

trazendo para o JAD os conceitos de manipulação direta e visualização da informação adotados

por ela. Os grandes diferenciais do JAD, em relação ao JGrasp são: a mobilidade da ferramenta,

pois se trata de uma aplicação web, a metáfora utilizada para o visual e processo depuração, os

recursos de acessibilidade e interatividade disponíveis para o usuário.

Page 40: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

39

Figura 14 – JGrasp Interface.

Fonte: Cross, Hendrix e Umphress (2004).

3.4 DELL ACCESSIBLE LEARNING E SEU AMBIENTE DE DESENVOLVIMENTO

ACESSÍVEL

A DELL Accessible Learning (DAL) é uma plataforma para gestão do aprendizado

inclusivo, em que pessoas com deficiência participam efetivamente dos processos de levan-

tamento de requisitos, testes e validação de conteúdos. Ela possui uma série de recursos de

acessibilidade para pessoas com deficiência física (motor), auditiva e baixa visão. Também

foram iniciados estudos para que o sistema esteja amplamente adaptado para cegos.

Compõem a DAL diferentes tipos de objetos de aprendizagem como web aulas,

fóruns, oficinas, exercícios, avaliações, conteúdos didáticos digitais (CDDs), videoaulas e um

glossário bilíngue, onde são dispostos os conceitos de mais de 400 termos técnicos em português

traduzidos para Libras.

Os objetos de aprendizagem foram produzidos utilizando a metodologia de modela-

gem e análise por redes de Petri coloridas para produção de objetos de aprendizagem acessíveis

(JÚNIOR et al., 2014). A adaptação das vídeoaulas para SDA levou à necessidade de criar um

processo específico, pois exige uma série de recursos e cuidados para produção e edição dos

vídeos (GONÇALVES et al., 2015).

As interações entre usuários são mediadas por ferramentas como chat, fórum e

correio interno, onde os alunos SDA podem gravar vídeos em Libras. O sistema também permite

que traduções em Libras sejam agregadas ao conteúdo da web aula.

Page 41: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

40

Recursos como comandos de voz, atalhos para acesso rápido, configuração de fonte

e modo de alto contraste são dispostos no topo da tela em um componente nomeado de barra de

acessibilidade. A Figura 15 mostra a web aula com vídeo libras, agregado com a tradução do

conteúdo.

Figura 15 – Web Aula com vídeo em Libras.

Fonte: Dell Inc. (2017)

Page 42: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

41

Para as atividades práticas nas quais os alunos desenvolvem seus códigos (Oficina),

é utilizado o Java Learning Object to Assist the Deaf (JLoad) (SILVA et al., 2014) mostrado na

Figura 16.

Figura 16 – JLoad Interface

Fonte: Silva et al. (2014).

O JLoad foi feito para ensinar as primeiras noções de Java a estudantes. Ele permite

que os alunos criem suas oficinas e submetam para avaliação de um tutor.

Uma oficina é composta por uma lista de atividades de programação, e cada atividade

tem seu próprio conjunto de instruções (exibido em Libras e português), uma atividade no JLoad

requer alguma codificação para ser compilada e executada. O aluno pode enviar o código-fonte,

pedir e receber ajuda de um tutor, tudo feito dentro do ambiente do JLoad. Essa abordagem

tudo-em-um possibilita ao aluno um ambiente integrado de aprendizado e codificação, trazendo

maior mobilidade, pois tudo está em um ambiente web. O estudante pode enviar perguntas ao

tutor sobre a tarefa de uma oficina, podendo destacar a parte do código em que consiste sua

dúvida. O código de destaque pode estar ancorado no chat e vice-versa (SILVA et al., 2014).

Page 43: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

42

O JAD é parte integrante dessa ferramenta. Utilizando o botão depurar, será aberta a

perspectiva de depuração do JAD, como é mostrado na Figura 17.

Figura 17 – Interface Gráfica do Java Accessible Debugger - JAD.

Fonte: Elaborada pelo autor.

Essa integração possibilita que, durante o processo de depuração, os usuários se

beneficiem de todos os recursos de interatividade disponíveis no JLoad criando um ambiente

integrado de desenvolvimento intuitivo, acessível e interativo. A arquitetura e funcionalidades

do JAD serão apresentadas no Capítulo 5 deste trabalho.

Page 44: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

43

4 ESTUDOS PRÉVIOS

Para entender o problema que os SDA enfrentam durante o desenvolvimento de

sistemas utilizando IDEs tradicionais, foram realizados alguns estudos com alunos SDA e

não SDA, para identificar as dificuldades encontradas durante a correção de erros de código

utilizando depuradores. Os códigos utilizados para depuração possuem erros propositais, sendo

eles escolhidos com base em estudos realizados por Gomes et al. (2015) que aponta os erros

mais cometidos por estudantes iniciantes de programação, sendo eles erros de token (falta de

chave ou ponto e vírgula), erros na declaração de variáveis e erros de conversão .

Os resultados dos experimentos apresentam um série de fatores relevantes para

compreensão dos problemas de usabilidade e acessibilidade, apontando caminhos para construção

de um depurador acessível que traga em sua interface analogias com o mundo real, assim

facilitando a compreensão de comandos e auxiliando no aprendizado.

Os experimentos foram realziados objetivando validar as seguintes hipóteses:

1. Alunos SDA de um curso Java têm desempenho inferior ao de seus homólogos não SDA

durante a depuração de um código Java;

2. Depuradores visuais podem ser uma alternativa para que alunos do curso de programação

SDA tenham melhor desempenho durante a construção e depuração de código Java.

Nas seções 4.1 e 4.2, são apresentadas a metodologia e resultados dos experimentos

aplicados, com isso, é possível verificar a validação das hipóteses.

4.1 COMO ALUNOS DE PROGRAMAÇÃO SDA E NÃO SDA EXECUTAM A DEPURA-

ÇÃO DE UM CÓDIGO

Em estudos realizados por Nascimento, Oliveira e Freitas (2014), buscou-se identifi-

car quão bons são alunos SDA em relação a não-SDA de um curso de Java básico em encontrar e

corrigir erros em um programa. Para isso, realizou-se uma análise da situação atual com alunos

SDA e não - SDA com objetivo de avaliar a performance e entender as barreiras encontradas por

SDA durante o processo de depuração de código. Nesta seção são apresentadas a metodologia e

os resultados de um estudo comparativo do desempenho de SDA e não SDA durante o processo

de evolução de um código Java.

Page 45: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

44

4.1.1 Metodologia

A técnica de análise da situação atual dá-se pelo estudo da interação usuário-sistema,

com objetivo de compreender os motivos pelos quais os usuários não utilizam como esperado os

sistemas computacionais (BARBOSA; SILVA, 2010). Utilizou-se essa técnica para compreender

as dificuldades e formas de interação dos usuários com a ferramenta utilizada.

4.1.2 Perfil dos participantes

Foram selecionados para o estudo 10 (dez) estudantes, entre eles 5 (cinco) SDA e

5 (cinco) não SDA que tinham completado o curso básico de Java com 150 horas. Eles foram

divididos em dois grupos, cada um com cinco participantes: o grupo de SDA e o outro de não

SDA. A idade dos participantes varia de 23 a 38 e foram todos do sexo masculino. Na Figura

18, resumimos as informações sociodemográficas relevantes sobre os participantes. Como se

pode observar, os participantes SDA possuem um grau de formação um pouco melhor que os

não SDA, porém, em relação à experiência com o Eclipse, o grau é semelhante nos dois grupos.

Figura 18 – Habilidades Relevantes.

Fonte: Elaborada pelo autor.

Page 46: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

45

4.1.3 O procedimento

O estudo consiste em encontrar e corrigir erros em duas classes Java como ilustrado

na Figura 19. Todos os participantes (SDA e não SDA) usaram o Eclipse para executar algumas

tarefas de depuração. A ideia principal do experimento é comparar a maneira como os dois

grupos executam cada tarefa. Basicamente foi medido o tempo gasto para completar a tarefa, o

número de pedidos de assistência e se concluiu com êxito a tarefa.

Figura 19 – Classes Java.

Fonte: Elaborada pelo autor.

4.1.4 O procedimento

As sete tarefas estipuladas para os participantes no experimento são:

1. Modificar a perspectiva de depuração;

2. Corrigir os erros no código;

3. Adicionar ponto de interrupção em uma linha do código;

Page 47: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

46

4. Verificar os valores das variáveis;

5. Usar a funcionalidade stepover;

6. Loop através de todas as linhas de código;

7. Modificar para a perspectiva Java.

Essas são atividades típicas em um processo de depuração. Não houve restrição

de tempo para os participantes terminarem as tarefas. Nenhuma das tarefas era obrigatória.

Estava disponível uma orientação em vídeo fornecendo as instruções em LIBRAS e Português.

Os participantes contavam com o auxílio de um intérprete de LIBRAS e um especialista para

os apoiarem quando fosse solicitado. Foram gravados vídeos das ações do usuário durante a

execução das tarefas para que posteriormente fossem analisados e verificadas as variáveis de

medição.

4.1.5 Resultados

A Figura 20 apresenta a tabela dos dados coletados. Apesar de terem realizado o

mesmo curso de Java Básico, não SDA e SDA tiveram diferenças significativas no desempenho.

Há evidências de correlação entre a condição de audição e capacidade para executar as tarefas

relacionadas a Java depuração no Eclipse IDE — x2 (1, N = 70) = 17.43, p < 0, 001. Existem

também evidências que SDA demoraram mais tempo para concluir (quando completaram) as

tarefas — t(44) 2.54, p = 0.0153. Aplicou-se o teste t de Student com intervalo de confiança de

90% para mitigar o risco de cometer um erro tipo II, devido ao baixo número de participantes.

Curiosamente, não foi possível encontrar qualquer diferença relevante no número

de pedidos de ajuda, apesar do fato de que havia um intérprete de Libras e um especialista

em Java disponíveis. Na análise situada, verificou-se que em muitas ocasiões, os SDA ficaram

completamente perdidos, pareciam não entender o que lhes era pedido, apesar do fato de as

instruções estarem disponíveis em LIBRAS. Parece que eles não entenderam o contexto do

que era pedido. Muitas vezes participantes SDA não conseguiram compreender as mensagens

transmitidas pelo IDE. Os não SDA facilmente encontraram os ícones apropriados e tiveram

uma melhor compreensão das mensagens passadas pelo sistema. Eles também exploraram o IDE

com mais desenvoltura (NASCIMENTO; OLIVEIRA; FREITAS, 2014).

Page 48: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

47

Figura 20 – Resultados coletados.

Fonte: Elaborada pelo autor.

4.1.6 Conclusões do estudo

Com os resultados percebe-se que existe de fato uma diferença no desempenho entre

os SDA e não SDA. Os SDA tiveram pior desempenho e alguns não foram ainda capazes de

terminar as tarefas, apesar do fato de que não havia nenhuma restrição de tempo. Este é um

achado importante, uma vez que dificulta as chances de essas pessoas competirem por uma

vaga no mercado com pessoas sem nenhuma deficiência. Essa diferença deve-se a questões

de linguagem, uma vez que os SDA pensam de forma diferente, pois seus mecanismos de

pensamento são baseados em uma língua visual-espacial. Como resposta, discuti-se o uso

de depuradores visuais, os riscos de sobrecarga, levando em consideração o fato de que eles

absorvem menos informação em sua memória de curto prazo que se comparados aos não SDA.

Na seção 4.2 será apresentado um estudo comparativo, onde um grupo de alunos SDA utiliza um

depurador visual e outro grupo o depurador do Eclipse, dessa forma será possível avaliar qual

ferramenta melhor se adapta à realidade dos SDA, podendo gerar melhor desempenho, além de

ganhos de produtividade no aprendizado e na implementação de códigos.

4.2 DEPURADORES VISUAIS E PROGRAMADORES SDA

Verificou-se que depuradores visuais resultam em impactos positivos para SDA

durante a depuração de código, reforçando assim, a teoria de que o campo visual possui influência

na compreensão do mundo real e aprendizado de SDA. Realizou-se uma análise comparativa

Page 49: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

48

entre um grupo de SDA que utilizou o Eclipse (depurador tradicional) e outro, também de SDA,

que utilizou o JGrasp (depurador visual). Os resultados apresentaram impactos significativos,

motivando a proposta de um depurador visual integrado a um IDE que deve manter os ganhos de

um ambiente de aprendizagem Java acessível (NASCIMENTO et al., 2015).

4.2.1 Participantes e Metodologia

Foram recrutados dez participantes SDA, todos do sexo masculino, com idades

entre 25-36 anos, todos alunos do curso de Java básico. Os participantes foram aleatoriamente

distribuídos em dois grupos: o primeiro grupo realizou as tarefas usando a ferramenta Eclipse, e

o segundo grupo, usando JGrasp. Os participantes receberam um algoritmo de Java que simula

algumas transações bancárias: Sacar (Subtrair qualquer valor do saldo remanescente) e Depositar

(Adicione algum valor para o saldo existente). Foram incluídos alguns erros nos métodos para

que os participantes pudessem depurar o código, identificar os erros e corrigi-los, conforme

mostrado nas Figuras 21 e 22. Os dados foram recolhidos com base na análise dos vídeos de tela

e da reação dos utilizadores registrada durante a execução de tarefas.

Um script com quatro tarefas foi dado aos participantes para ajudá-los no processo:

1. Adicionando um ponto de interrupção nos métodos Sacar () e Depositar ();

2. Depurar para verificar se os valores de retorno são consistentes com o objetivo do método;

3. Correção dos problemas encontrados;

4. Depurar novamente para verificar se os cálculos estão corretos.

Os métodos, a análise e a avaliação foram aplicados a ambas as condições experimen-

tais. Usamos a técnica de análise situada para medir o desempenho dos participantes durante a

depuração da tarefa. Para essa análise, observamos as seguintes variáveis: tempo para completar

as tarefas (TCT), número de tarefas concluídas (NTC) e quantidade de auxílios (QA).

Além da análise, foi aplicado um questionário com base na Escala de Usabilidade

do Sistema (do inglês, SUS), de modo que os participantes pudessem avaliar a capacidade de

utilização das ferramentas. A Escala de Usabilidade do Sistema fornece uma maneira confiável

para medir a usabilidade. É um questionário com base nas Heurísticas de Nielsen com 5 (cinco)

opções de resposta, onde o usuário pode concordar fortemente ou discordar fortemente com as

declarações como uma escala de Likert (BROOKE, 1996).

Page 50: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

49

Figura 21 – Participante do Grupo 01 Utilizando o Eclipse.

Fonte: Elaborada pelo autor.

4.2.2 Resultados e discussões

Nesta seção são apresentados os resultados das variáveis observadas durante a

execução de tarefas de depuração em JGrasp e Eclipse. Para análise dos dados aplicou-se um

teste t não pareado, sendo este um teste estatístico utilizado para verificação e validação de

hipóteses. Ele foi aplicado para verificar se havia diferenças significativas nos resultados entre os

dois grupos experimentais. Comparou-se as seguintes variáveis: tempo para completar as tarefas

(TCT), número de tarefas concluidas (NTC) e quantidade de auxílios (QA), como mostradas na

Tabela 1.

Tabela 1 – Resultados do Teste t Não Pareado

t-value p-value alcanceTCT 1.011979 0.170587 Não significativo para p ≤ 0.10NTC 1.543033 0.080699 significativo para p ≤ 0.10QA 1.206045 0.131127 Não significativo para p ≤ 0.10

Fonte: Nascimento et al. (2015).

Page 51: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

50

Figura 22 – Participante do Grupo 02 Utilizando o JGrasp.

Fonte: Elaborada pelo autor.

Os resultados apresentados na tabela 1, apontam os seguintes resultados:

• Não existe diferença significativa em relação ao tempo para execução das tarefas no Eclipse

e no JGrasp.

• Existe uma diferença significativa entre Eclipse e JGrasp em relação ao número de tarefas

concluídas.

• Os participantes que utilizaram o JGrasp obtiveram mais sucessos em relação à conclusão

das tarefas.

• Não existe diferença significativa em relação à quantidade de pedidos de auxílio.

Realizou-se uma avaliação de usabilidade, aplicando o questionário System Usability

Scale - SUS, onde os grupos avaliaram os dois IDEs mencionadas. A pontuação SUS para

o JGrasp foi de 72 e 50 para Eclipse. Pesquisas indicam que uma pontuação acima de 68 é

considerada acima da média (SAURO; LEWIS, 2012). Também aplicou-se o teste t não pareado

para os escores SUS. O valor t obtido foi de 3,0291 e o valor de p foi 0,0163. O resultado é,

portanto, significativo para p 0.005. Em outras palavras, existe uma diferença significativa na

usabilidade das duas ferramentas. Sendo assim, os resultados indicam que, a ferramenta JGrasp

Page 52: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

51

tem uma melhor usabilidade na avaliação dos usuários.

Page 53: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

52

5 JAVA ACCESSIBLE DEBUGGER -JAD

O Java Accessible Debugger (JAD) consiste em um depurador acessível de código

Java com conceito de interfaces metafóricas aplicado, projetado com base estudos de experi-

mentação com usuário. Ele faz parte da plataforma plataforma de ensino a distância DELL

Accessible Learning, sendo o depurador atrelado ao Jload, que por sua vez , é utilizado para as

atividades práticas de programação.

5.1 ARQUITETURA DA FERRAMENTA

O JAD foi desenvolvido em linguagem Java, especificamente na versão 6, sob o

padrão arquitetural MVC (Modelo-Visão-Controle), o qual separa a aplicação em partes distintas.

A camada Modelo engloba as regras de manipulação e persistência dos dados. A camada de

Visão é a responsável por apresentar os dados ao usuário, assim como receber dados do usuário.

Por fim, a camada de Controle assume o papel de intermediadora entre as camadas de Modelo e

Visão, controlando e interpretando as solicitações realizadas entre a visão e o modelo (BARROS;

SILVA; ESPÍNOLA, 2007). Na camada de Modelo foi utilizado o padrão DAO (Data Access

Object) como o padrão que permite criar as classes de dados independentemente de a fonte

de dados ser um banco de dados relacional, um arquivo texto, um arquivo XML. Este padrão

encapsula os mecanismos de acesso a dados através de uma interface genérica que permite que

os mecanismos de acesso a dados sejam alterados independentemente do código que utiliza os

dados (CRUPI; MALKS; ALUR, 2001). Como mecanismo de acesso aos dados, foi utilizado o

Hibernate, que se trata de um framework para o mapeamento objeto-relacional. Esse framework

facilita o mapeamento dos atributos entre uma base tradicional de dados relacionais e o modelo

objeto de uma aplicação. Para realizar esse mapeamento, utilizou-se as anotações Java com a

versão 4.1.9 do Hibernate (LINHARES, 2012). Como sistema de gerenciamento de banco de

dados objeto-relacional, foi utilizado o PostgreSql 9.3.

Na camada de Visão foi utilizado JSTL, que é uma API que encapsula funcionali-

dades de controle de laços (for), controle de fluxo if else; além da tecnologia JSP (Java Server

Pages) que provê uma forma rápida e simples de criar conteúdo dinâmico para web. O Tomcat

versão 6 foi utilizado como servidor web Java e container de servlets. Outros recursos utilizados

foram Ajax, JSON, JQuery e códigos em Javascript.

Na camada de Controle, os Servlets, que são as classes capazes de tratar as requisi-

ções recebidas de clientes Web, foram utilizados para tratar as requisições do navegador, além

Page 54: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

53

da regra de negócio da aplicação. A depuração dos códigos foi viabilizada pelo uso do JDB

(Java Debugger), que é um depurador de linha de comando para classes Java. O JDB é uma

demonstração da arquitetura de depuração da plataforma Java que disponibiliza inspeção e

depuração de uma máquina virtual Java remota ou local. Vale ressaltar que o mesmo é utilizado

na ferramenta de depuração do Eclipse. A biblioteca do JQuery e códigos em Javascript foram

utilizados para tratar das interações do usuário com os componentes da interface do JAD.

O JDB é uma biblioteca em Java que funciona em linha de comando, o que inicial-

mente inviabilizou a sua utilização em uma aplicação WEB. Para contornar essa situação, foi

adicionada uma classe, que através da herança, herda as funcionalidades de depuração, as quais

foram sobrescritas em sua maioria para que as informações de depuração fossem armazenadas

em variáveis, ao invés de apresentadas na saída padrão. A partir disto, a depuração dos códigos

foi realizada da seguinte maneira:

1. Uma requisição Ajax é enviada para o servlet de depuração com a opção de iniciar

depuração;

2. O referido servlet compila a classe indicando a opção de depuração para que seja possível

realizar a depuração da classe através do JDB;

3. A depuração total do código é realizada por completo no lado servidor;

4. Uma estrutura em JSON é criada para armazenar as informações de depuração de cada

linha do código, suas variáveis e valores, erros de compilação ou execução;

5. Essa estrutura JSON, denominada retorno_depuracao, é então enviada como resposta da

requisição Ajax do passo 1;

6. A estrutura recebida é mantida no lado do cliente através de códigos Javascript;

7. À medida que o usuário interage com a aplicação solicitando comandos para pausar,

depurar próxima linha ou linha anterior, ao invés destas solicitações serem processadas no

servidor, os componentes visuais do JAD são atualizados refletindo a linha de depuração

atual. Os dados da linha de depuração atual são carregados da estrutura retorno_depuracao.

Quando alguma alteração é realizada no código, volta-se então para o passo 1.

5.2 A ENGENHARIA SEMIÓTICA APLICADA AO JAD POR MEIO DE INTERFACES

METAFÓRICAS E VISUALIZAÇÃO DA INFORMAÇÃO

A engenharia semiótica - ES é uma teoria de IHC que aborda os processos de

significação e comunicação envolvendo designers, usuários e sistemas interativos (LEITÃO;

Page 55: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

54

SILVEIRA; SOUZA, 2013). Leitão, Silveira e Souza (2013), apontam que a ES visa resolver

como o conhecimento que o usuário precisa adquirir pode ser melhor passado de forma mais

intuitiva, possibilitando uma melhor interpretação do modelo de interação e da funcionalidade.

O JAD se utiliza do conceito da engenharia semiótica aplicando interfaces meta-

fóricas, na analogia de depuração a situações do mundo real vividas no trânsito.Utilizou-se a

metáfora do trânsito para que durante o processo de depuração o usuário tenha a sensação de

estar no controle de um carro navegando sobre uma estrada de código, seguindo as sinalizações

de forma que estas possam lhe ajudar a alcançar seu objetivo e compreender melhor os caminhos

percorridos (linhas de código). Nos apropriamos da sinalização vertical de trânsito (CONSE-

LHO NACIONAL DE TRâNSITO, 2007) para indicar os comportamentos do código durante a

depuração. A Figura 23 apresenta os sinais utilizados para o JAD e seus significados durante a

depuração.

Page 56: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

55

Figura 23 – Sinaléticas utilizadas durante a depuração.

Fonte: Conselho Nacional de Trânsito (2007).

Page 57: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

56

Aliados aos símbolos, tem-se as representações de variáveis, objetos e estruturas de

dados aplicando a técnica de INFOVIS para visualização de dados abstratos como é mostrado na

Figura 24, a qual ilustra um array e seus valores em cada índice.

Figura 24 – Visualização de dados no JAD .

Fonte: Elaborada pelo autor.

Com essas representações, os usuários poderão acompanhar o comportamento do

código durante a depuração, evitando problemas de mapeamento e controle. Esses problemas

são comuns em sistemas interativos. O problema de mapeamento inviabiliza o usuário de mapear

e acompanhar suas ações, enquanto o de controle impossibilita o usuário controlar os estados

do sistema (BARBOSA; SILVA, 2010). Tratou-se os problemas de mapeamento e controle,

permitindo que o usuário acompanhe o comportamento do sistema por meio de artefatos visuais,

podendo navegar pelas linhas de código com as opções de incluir ponto de parada, avançar linha,

voltar linha e parar a depuração, como é mostrado na Figura 25.

Figura 25 – Menu de funcionalidades do JAD .

Fonte: Elaborada pelo autor.

À medida que os artefatos vão aparecendo na tela, o usuário tem total controle para

ocultar e abrir. Toda a estrutura de design e analogias foi pensada para que os usuários possam se

Page 58: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

57

sentir confortáveis e engajados na tarefa de depuração, dando todas as sinalizações e caminhos

necessários para que eles tenham o controle da tarefa e se sintam confiantes durante a interação

com o JAD para a depuração de código.

O JAD foi projetado para que atenda SDA e não SDA, com o objetivo de tornar o

acesso e a forma de aprendizado igualitários sem barreiras para ambos os grupos. Durante sua

construção, foi pensada em uma série de recursos de acessibilidade para que a interação e o

acesso fossem universais. Esses recursos são apresentados na seção 5.3.

5.3 OS RECURSOS DE ACESSIBILIDADE DO JAD

Durante o processo de interação com sistemas, os usuários utilizam-se de seus

sentidos (visão, audição e tato). Para pessoas com algum tipo de deficiência, a interação pode

ser prejudicada, caso o sistema não possua algum recurso de acessibilidade que possibilite

a interação. Barbosa e Silva (2010) definem como critério de acessibilidade, interfaces que

possibilitem o usuário a interagir com o sistema sem que imponha obstáculos.

O JAD possui mecanismos de lançamento de erros e exceções do Java em Libras

para auxiliar programadores surdos na compreensão dos erros, como é mostrado na Figura 26.

Figura 26 – Erro de sintaxe em Libras.

Fonte: Elaborada pelo autor.

O World Wide Web Consortium (W3C) é um consórcio de empresas e instituições

que definem os padrões para a Web (W3C, 2008). Algumas diretrizes para acessibilidade na web

foram propostas e disponibilizadas pela W3C por meio do Web Content Accessibility Guidelines

Page 59: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

58

(WCAG). Ela segue alguns níveis de abordagem que incluem princípios, recomendações gerais

e critérios de sucesso. Todos esses níveis de abordagem funcionam em conjunto para fornecer

orientações sobre como tornar o conteúdo mais acessível. Os utilizadores são encorajados a

observar e a aplicar todos os níveis que conseguirem, incluindo as técnicas aconselhadas, para

satisfazer as necessidades do maior número possível de usuários. São 3 os níveis de conformidade:

A, AA e AAA, que são mapeados conforme os critérios de sucesso convencionados pela WCAG,

sendo A (o mais baixo) e o AAA (o mais elevado) (W3C, 2008).

O JAD possui alguns dos recursos de acessibilidade propostos pela WCAG 2.0,

sendo alguns deles herdados do JLOAD (IDE à qual ele está integrado) que visa atender não

somente a SDA, mas outros tipos de deficiência, buscando o uso amplo e eficaz por diversos

tipos de usuário com ou sem deficiência. Na Tabela 2, são classificamos os recursos conforme os

níveis de conformidade da WCAG.

Tabela 2 – Recursos de acessiblidade e conformidade com a WCAG 2.0

Recurso Conformidade WCAGLançamento de Exceções do Java em Libras AAutocontraste AARedimensionamento de fonte ATeclas de atalho AColocar em Pausa, Parar, Ocultar AEtiquetas ou Instruções AAdaptável (apresentação padrão e visual) A

Fonte: Elaborada pelo autor.

A WCAG utiliza alguns validadores de código para verificação de conformidade

geral de páginas web. Utilizou-se o validador TAW (TECNOLóGICO, 2017) para fazer a

validação do JAD, obtendo nível AA. A WCAG não recomenda fixar o Nível AAA como

requisito normativo para todas as páginas, pois em alguns casos, não é possível satisfazer todos

os critérios de Sucesso de Nível AAA (W3C, 2008).

As tabelas

Tabela 3 – Recursos de Acessibilidade - ComparativoRecursos de Acessiblidade JAD JGrasp JIVE CodemapAtalhos x xAutocontraste xRedimencionamento de fonte x xVídeos pré-gravados de Libras xSuporte para leitores de tela x x

Page 60: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

59

Tabela 4 – Funcionalidades - ComparativoFuncionalidades JAD JGrasp JIVE CodemapPortabilidade xVoltar linha de código x xTécnicas Infovis para construir e manipular objetos x x x xCHAT com opção de gravação de vídeo em Libras xSolicitação de tradução em Libras para Exceções Java xPerfil Administrador para solicitações de tradução xVersões de código xMarcação de código para revisão x

As funcionalidades e recursos presentes no JAD foram implementados para atender

não somente a SDA, mas também a pessoas que possuam outras ou nenhuma deficência. Espera-

se que o uso do JAD para tarefas de depuração de código auxilie no aprendizado e na evolução

de códigos, tornando o processo de depuração mais fácil e inutitivo.

Page 61: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

60

6 EXPERIMENTOS APLICADOS AO JAD

Os estudos realizados e apresentados neste trabalho no Capítulo 4 permitiram identi-

ficar as seguintes situações:

1. Na Seção 4.1, os resultados da análise comparativa de performance entre SDA e não SDA,

utilizando o Eclipse para evolução de um código, mostraram que os participantes não SDA

obtiveram melhor desempenho sobre os SDA.

2. Na Seção 4.2, o estudo situado utilizando método Between Subjects (onde grupos de

uma população são submetidos a tratamentos diferentes) identificou que o grupo de SDA

que utilizou o depurador visual JGrasp obteve-se melhor desempenho sobre o grupo que

utilizou o Eclipse. Um teste de usabilidade também foi aplicado e verificou-se que o JGrasp

foi melhor avaliado em relação ao Eclipse. Com isso, verificou-se que um depurador visual

pode ter impacto positivo na performance de alunos SDA.

Verificou-se nos experimentos que participantes SDA obtiveram bons resultados com

uso do JGrasp. Tais resultados motivaram a formulação das seguintes hipóteses:

1. Não existe nenhuma diferença significativa de desempenho entre SDA e não SDA durante

a tarefa de evolução de um código utilizando o JAD;

2. SDA e não SDA possuem um desempenho melhor utilizando o JAD comparado ao JGrasp;

3. O JAD obteve melhores resultados para avaliação de usabilidade quando comparado com

JGrasp.

Para verificar as hipóteses e analisar a eficácia do JAD em relação ao JGrasp, realizou-

se um experimento aplicando as mesmas técnicas e métricas dos experimentos anteriores,

mostrados no Capítulo 4. Todas as técnicas, métricas e ferramentas utilizadas são apresentadas

na Seção 2.6.

6.1 TÉCNICAS E FERRAMENTAS UTILIZADAS

Para aplicação do experimento, buscou-se na literatura, algumas técnicas para análise

e avaliação da interação de usuários com sistemas computacionais. A aplicação delas nos

possibilita o levantamento de dados para análises quantitativas e qualitativas da experiência de

uso do JAD.

Para obtenção de resultados mais rigorosos e válidos, utilizou-se a técnica de tri-

angulação, que permite a análise dos dados de diferentes perspectivas com objetivo de afirmar

descobertas (BARBOSA; SILVA, 2010). Para aplicá-la, utilizou-se as técnicas de análise de

Page 62: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

61

desempenho, teste de usabilidade e análise competitiva, dessa forma, tem-se uma visão dos

resultados dos usuários, do sistema e do desempenho do sistema proposto em relação ao existente

no mercado.

• Análise de Desempenho: A análise de desempenho consiste na coleta dos seguintes

dados: tarefas realizadas, tempo necessário para concluir a tarefa e o número de auxílios

solicitados. Os dados foram catalogados pelo observador enquanto o usuário realizava a

tarefa de evolução e depuração de um código Java. Ela foi aplicada ao uso das ferramentas

JAD e JGrasp, possibilitando comparar o desempenho de SDA e não SDA em ambas as

ferramentas.

• Teste de Usabilidade: Para avaliação de usabilidade, utilizou-se o System Usability Scale.

Algumas questões foram acrescentadas ao questionário de forma complementar, não

fazendo parte da contagem para os escores gerados pelo SUS. Elas foram elaboradas com

base nas heurísticas de Nielsen (1994) para avaliar algumas questões de usabilidade não

abordadas diretamente pelo SUS, sendo assim, totaliza-se 15 questões a serem respondidas

pelos participantes. As respostas às questões seguem o mesmo modelo utilizado pelo

SUS, onde o avaliador seleciona em uma escala Likert de 1 (Discordo fortemente) a 5

(Concordo fortemente) seu grau de concordância. Foram acrescentadas 5 (cinco) questões

apresentadas na Figura 27. O teste de usabilidade foi aplicado logo após a conclusão da

tarefa, e os usuário SDA contaram com o auxílio de intérpretes de Libras para compreensão

dos textos.

• Análise Competitiva: Com os resultados da análise de performance e do teste de usabili-

dade foi possível fazer uma análise competitiva entre as ferramentas e os perfis SDA e não

SDA. A análise foi realizada comparando os resultados dos testes aplicados com objetivo

de verificar diferenças significativas de uso entre as ferramentas. As variáveis a serem

comparadas foram as seguintes: tempo de conclusão das tarefas, quantidade de auxílios

referente ao código que está sendo depurado, quantidade de auxílios referente ao uso da

ferramenta escore SUS, correspondências com mundo real, controle e mapeamento das

tarefa, facilidade de identificação dos estados do sistema, reconhecimento das funções,

além de diagnosticar e recuperar-se de erros.

Page 63: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

62

Figura 27 – Questões Adicionadas à Avaliação de Usabilidade.

Fonte: Nielsen (1994).

6.2 PERFIL DOS PARTICIPANTES

Foram convidados a participar do experimento 14 participantes SDA e 14 não SDA.

Dada a dificuldade para captação de participantes SDA, optou-se por estender os critérios de

inclusão para participação no experimento, sendo eles:

• Ter o conhecimento de lógica de programação;

• Ter participado do minicurso para nivelamento.

Os participantes responderam um questionário com perguntas referentes ao seu perfil

socioeducativo (Apêndice C). Com esse questionário, tornou-se possível fazer uma análise dos

perfis dos participantes e mapear suas competências. Disponibilizou-se o questionário online

com tradução em Libras para os participantes surdos.

Durante o processo de seleção e aplicação do experimento houve as desistências de

3 (três) ouvintes e 1 (um) surdo. Os 24 participantes tiveram um minicurso de nivelamento com

as seguintes temáticas: arrays, tipos de dados e depuração de código Java. Além dos conceitos,

Page 64: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

63

também apresentou-se as ferramentas JAD e JGrasp. Informou-se para os participantes que tais

ferramentas seriam utilizadas posteriormente para as atividades práticas e consequentemente

para avaliação de usabilidade.

Com os dados dos perfis coletados, realizou-se uma análise quantitativa com objetivo

de verificar o perfis dos grupos de SDA e não SDA. Na Tabela 5, são apresentados os dados os

quais não se utilizou de escala Likert para medir os resultados.

Tabela 5 – Resultados para questões que não se utilizou a escala LikertQuestão SDA não SDA Análise Crítica

1. Sexo Masculino: 11Feminino: 02

Masculino: 9Feminino: 2

Os dois grupos são compostosem sua maioria por participantes

do sexo masculino.

5. Grau deSurdez

Leve: 0Moderada: 2

Severa: 2Profunda: 9

Nãose aplica

Dos 13 participantes, 11 apresentamgrau de surdez severa ou profunda,

impossibilitando a audição de sons defala em nível de conversação natural.

6. Oralizado? Sim: 5Não: 8

Nãose aplica

Sujeitos surdos oralizadosnormalmente possuem domínio da

escrita e/ou leitura labial. Apenas 5 dosparticipantes possuem essa habilidade.

Fonte: Elaborada pelo autor.

Para algumas questões utilizou-se opções onde as respostas poderiam variar em uma

escala Likert de 1 a 5. Essa foi uma estratégia utilizada para medição dos resultados em forma

de Ranking Médio (RM), assim, geraram-se números RM que apontam em que faixa da escala

está a maior parte da amostra para cada grupo de participantes (OLIVEIRA, 2005). A análise

crítica de tais questões é apresentada na Tabela 6.

Page 65: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

64

Tabela 6 – Análise crítica a partir do RM para questões com escala LikertQuestão Análise Crítica

2. Idade

Embora o grupo não SDA possua uma tendência de idadesuperior aos SDA, os dois grupos estão no intervalo entre2 (de 20 a 30 anos) e 3 (de 31 a 40 anos). Isso mostra que osdois grupos não apresentam diferenças significativas emrelação à faixa etária.

3. Grau deInstrução

Para o grau de escolaridade, apresentou-se para o grupo deSDA um nível mais elevado de escolaridade em relaçãoao não SDA. O grupo de SDA está no intervalo entre3 (superior incompleto) e 4 (superior completo), enquanto ogrupo de ouvintes está entre 2 (ensino médio completo) e3 (superior incompleto).

4. Conhecimentoem Java

Os resultados apontam que o grupo de SDA possui umconhecimento maior da linguagem Java em relação aonão SDA. O grupo de SDA indicou um intervalo entre3 (Médio) e 4 (Bom), enquanto o grupo de não SDA estáentre 2 (Pouco) e 3 (Médio).

7. Domínio deLibras Os resultados apontam que o nível de domínio da Libras

entre os SDA está entre Médio e Bom. O mesmo resultadotambém ocorre para o domínio do português.

8. Domínio dePortuguês

Fonte: Elaborada pelo autor.

Page 66: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

65

6.3 INFRAESTRUTURA E MÉTODO DE APLICAÇÃO

Foram disponibilizadas duas salas, onde os participantes tinham acesso a um compu-

tador com os programas necessários instalados como mostrado na Figura 28.

Figura 28 – Layout e logística do experimento

Fonte: Elaborada pelo autor.

Como apresentado na Figura 28, foram divididos 3 (três) subgrupos em horários

Page 67: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

66

distintos, onde os participantes foram distribuídos de forma aleatória. Para melhor identificar

a transição dos participantes entre os laboratórios destacaram-se as duplas que iniciaram o

experimento com JAD na cor verde e aquelas que iniciaram com JGrasp em azul. Os horários

foram definidos e divulgados para os participantes previamente. Solicitou-se que viessem apenas

no horário agendado para evitar a espera e fadiga durante o experimento.

Nos laboratórios estavam dispostos 1 (um) observador, 1 (um) intérprete de libras

para auxiliar participantes SDA na compreensão das tarefas e possíveis dúvidas e 1(um) entrevis-

tador responsável pelo preenchimento do questionário de avaliação da usabilidade. Definiu-se

que cada observador deveria acompanhar 2 (dois) participantes por vez. Após a conclusão da

tarefa, os participantes eram direcionados para o preenchimento do questionário de usabilidade

com auxílio de um entrevistador. No intervalo entre a transição do Lab-JAD para o Lab-JGrasp

ou o contrário, os participantes tinham um intervalo de 15 minutos, com lanche à disposição. Ao

final, por meio do voto secreto, cada participante pôde votar na ferramenta de sua preferência.

Algumas condições para o experimento foram estabelecidas e seguidas:

1. Termo de Consentimento: Todos os participantes assinaram um termo de consentimento

com objetivo de esclarecer e formalizar sua participação no experimento. Neste termo,

foram expostas as condições de uso e divulgação dos dados coletados.

2. Nivelamento: Realizou-se um nivelamento com as seguintes temáticas: Arrays, tipos

de dados e depuração de código Java. Além dos conceitos, também apresentou-se as

ferramentas JAD e JGrasp. O nivelamento aconteceu no dia 13 de Janeiro de 2017 na

Universidade do Trabalho Digital em Fortaleza-Ce. A participação neste evento foi uma

condição para a participação no experimento ocorrido na semana seguinte, nos dias 16 e

17 de Janeiro de 2017.

3. Acompanhamento: Os participantes foram acompanhados por 1 (um) observador para

tirar dúvidas e registrar o tempo de cada participante na execução da tarefa, pedidos de

auxílio e registrar se o mesmo obteve sucesso ou não;

4. Avaliação de usabilidade: Ao final de cada tarefa os participantes responderam ao

questionário de usabilidade, com auxílio de um atendente previamente treinado. Os

participantes SDA tiveram o auxílio de intérpretes para a interpretação das perguntas e

respostas ao questionário.

5. Intervalo: Foi disponibilizada uma sala com lanche para que pudessem descansar entre o

uso de uma ferramenta e outra. Durante esse intervalo foi pedido que os participantes não

conversassem sobre o uso das ferramentas para que não influenciassem os resultados.

Page 68: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

67

6. Votação: Ao final do uso das duas ferramentas, foi pedido para que os participantes

votassem de forma secreta na ferramenta de sua preferência. Foram disponibilizados papel

e caneta para que pudessem escrever o nome da ferramenta e depositar no envelope.

7. Formulários aplicados: Questionário de Perfil Socioeducativo (Apêndice C); Termo de

Consentimento (Apêndice D); Questionário de Usabilidade (Seção 2.6.2); e Ficha de

Observação (Apêndice B).

Esse formato de aplicação corresponde ao método Whithin-subjects, onde um par-

ticipante é submetido a dois contextos (o uso do JAD e JGrasp). Foram disponibilizados dois

códigos com duas classes JAVA com 2 erros cada, um sintático e outro semântico. No Código 1,

mostrado na Figura 29, foi incluído um erro de compilação: compiler.err.cant.resolve.location,

onde o Java tenta encontrar o tipo “Int”. Como esse tipo não existe ou, se existe, não foi incluído

no import, esse tipo de erro é gerado, já que não é possível encontrar a localização do tipo.

No Código 2, mostrado na Figura 30, é gerado um erro de compilação referente à

incompatibilidade de tipos: compiler.err.prob.found.req.

O erro de execução java.lang.ArrayIndexOutOfBoundsException foi incluído em

ambos os códigos. Esse erro indica que um vetor foi acessado por um índice ilegal. O erro ocorre

pois o índice acessado é negativo, ou maior ou igual ao tamanho do vetor.

Figura 29 – Código 1 apresentado no JGRASP.

Fonte: Elaborada pelo autor.

Page 69: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

68

Figura 30 – Código 2 apresentado no JAD.

Fonte: Elaborada pelo autor.

Foi pedido aos participantes que depurassem os códigos mostrados nas Figuras 29 e

30 e corrigissem os erros das classes. Foi feito o "quadrado latino"para contrabalançar e evitar os

carry on effects (aprendizada e fadiga) e a alocação dos participantes às condições experimentais

foi randomizado conforme Tabela 7.

Tabela 7 – Disponibilização do Código por Turma.Código Turma 1 Turma 2

SDA não SDA SDA não SDACódigo 1 JAD JAD JGrasp JGraspCódigo 2 JGrasp JGrasp JAD JAD

Fonte: Elaborada pelo autor.

Toda interação foi gravada com captura de tela e webcam do participante, assim

foi possível analisar pontos críticos da interação. Durante a aplicação do experimento, os

participantes podiam contar com um suporte especializado e auxílio de intérprete de Libras para

os participantes SDA.

6.4 PROBLEMAS OCORRIDOS

Durante a aplicação, ocorreram alguns problemas que resultaram em alterações no

processo:

1. Mesmo preenchendo o questionário de perfil, alguns participantes não compareceram para

o treinamento de nivelamento, ficando assim o número de 13 participantes SDA e 11 não

SDA;

Page 70: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

69

2. Durante a aplicação do experimento, aconteceram alguns problemas que nos levaram a

eliminar participantes da análise de desempenho como: o mesmo código ser utilizado no

JAD e no JGrasp por falta de atenção da equipe de suporte, a rede de internet ficar fora do

ar e não ser possível para um dos participantes fazer o teste com o JAD. Com isso, foram

eliminados da contagem quantitativa para a análise de desempenho 3 participantes SDA e

2 não SDA, ficando assim 10 SDA e 9 ouvintes para análises válidas;

3. Apenas um participante surdo, foi eliminado da contagem para avaliação de usabilidade,

pois em razão de problema de rede de internet o mesmo não pôde realizar o teste com o JAD.

Embora tenham acontecidos alguns problemas que impossibilitaram incluir o resultado

de alguns participantes para a análise de desempenho, 4 dos participantes utilizaram as

duas ferramentas. Com isso, achou-se por bem incluir a avaliação de usabilidade realizada

por eles nos resultados válidos, pois os problemas ocorridos não causam impacto direto

sobre a avaliação de usabilidade da interface. Assim, o número de participantes para esta

avaliação foram 12 SDA e 11 ouvintes.

Durante o planejamento e a aplicação do experimento, buscou-se rigorosamente evi-

tar que os dados coletados fossem corrompidos por problemas de logística. Algumas adaptações

de metodologia de testes foram necessárias, pois as restrições de infraestrutura e adaptações para

o perfil de SDA não nos permitiram seguir rigorosamente algumas boas práticas recomendadas

para os tipos de testes aplicados.

Page 71: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

70

7 RESULTADOS

Neste capítulo, são apresentados os resultados quantitativos e qualitativos obtidos a

partir dos dados coletados durante a aplicação do experimento. Além disso, foi realizada uma

análise crítica dos resultados com intuito de verificar a veracidade das hipóteses e identificar os

impactos da intervenção (JAD) sobre a performance de alunos surdos durante a depuração de um

código Java.

7.1 ANÁLISE QUANTITATIVA

A seguir, são mostrados os resultados quantitativos obtidos a partir dos testes estatís-

ticos. Cada uma das seções a seguir está relacionada com uma das hipóteses citadas no Capítulo

6.

7.1.1 Comparativo de Desempenho SDA x não-SDA utilizando o JAD

Os participantes, divididos nos grupos SDA e não-SDA, foram analisados quanto à

utilização da ferramenta JAD por meio das métricas de tempo, número de auxílios de código

e número de auxílios de ferramenta. O objetivo é verificar se existe diferença de desempenho

entre SDA e não-SDA ao utilizar o JAD.

Na Tabela 8, pode-se observar as médias das métricas obtidas por SDA e não-SDA.

Nota-se que o primeiro grupo, em média, finalizou em menos tempo, mas também realizou mais

solicitações de auxílio.

Tabela 8 – Média das métricas dos participantes ao utilizar o JADMétrica SDA não-SDATempo 14min 54s 15min 20s

Auxílios - Código 1,30 1Auxílios - Ferramenta 1,30 1,22

Fonte: Elaborada pelo autor.

Dada a quantidade da amostra, fez-se necessária a aplicação do teste de Normalidade

Shapiro Wilk (SHAPIRO; WILK, 1965) para verificar a normalidade dos dados. Esse teste

verifica se a distribuição de probabilidade em um conjunto de dados pode ser aproximada pela

distribuição normal. Essa aproximação da normalidade é pré-requisito para aplicação de um

teste paramétrico. Visto que a normalidade dos dados não pode ser assumida, os resultados

individuais dos participantes foram submetidos ao teste Mann-Whitney U (MANN; WHITNEY,

Page 72: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

71

1947). Trata-se de um teste não-paramétrico apropriado para avaliação de dois grupos distintos

(SDA e não-SDA) ao utilizar uma certa condição de teste. A Tabela 9 resume os resultados

obtidos.

Tabela 9 – Resultados do teste Mann-Whitney UMétrica Resultado Valor Crítico

para UDiferença

SignificativaTempo U=44,5, p=1 20 Não

Auxílios - Código U=40,5, p=0,7414 20 NãoAuxílios - Ferramenta U=42,5, p=0,87288 20 Não

Fonte: Elaborada pelo autor.

Nenhuma das métricas apresenta diferença significativa, visto que o valor de U

obtido em todos os casos é maior que o valor crítico.

Portanto, pode-se afirmar que a ferramenta permite que pessoas SDA e não-SDA

aprendam atividades de depuração de forma mais isonômica. Desta forma, visando oferecer

oportunidades iguais para o público SDA.

7.1.2 Comparativo de Desempenho JAD x JGrasp

Os grupos SDA e não-SDA utilizaram as ferramentas JAD e JGrasp. Foi verificado

inicialmente quantos sujeitos finalizaram com êxito as atividades em ambas as ferramentas.

Esses dados bem como os resultados do teste estatístico McNemar (MCNEMAR, 1947) são

resumidos na Tabela 10.

Tabela 10 – Sujeitos que corrigiram com sucesso os Erros 01 e 02

Erro Perfil JAD JGraspResultadoMcNemar

(valor de p)

DiferençaSignificativa

Erro 01Geral 19/19 14/19 0,0736 NãoSDA 10/10 8/10 0,4795 Não

não-SDA 9/9 6/9 0,2482 Não

Erro 02Geral 12/19 10/19 0,7893 NãoSDA 5/10 5/10 0.7237 Não

não-SDA 7/9 5/9 0,6831 Não

Fonte: Elaborada pelo autor.

Como pode ser visto na Tabela 10, os resultados favorecem o JAD. Uma maior

quantidade de participantes SDA e não-SDA conseguiu corrigir os erros usando o JAD do que

usando o JGrasp. Os dados foram submetidos ao teste estatístico McNemar (MCNEMAR, 1947),

próprio para dados categóricos. Contudo, nenhuma diferença significativa foi identificada.

Page 73: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

72

Os participantes também foram avaliados nas métricas de tempo, número de auxílios

de código e número de auxílios de ferramenta. Como pode ser visto na Tabela 11, o JAD obtém

melhores médias em todas as métricas: os participantes terminaram em menor tempo; solicitaram

menos auxílio de código, o que sugere que a ferramenta apresenta a informação de maneira

que facilita o entendimento; e, por fim, também solicitaram menos auxílios sobre a ferramenta,

mostrando que o JAD é mais intuitivo na sua utilização. Para cada métrica, um sujeito de

pesquisa possui dois valores (um para cada ferramenta). As diferenças desses valores foram

submetidas ao teste de normalidade Shapiro Wilk (SHAPIRO; WILK, 1965). Em alguns casos, a

normalidade dos dados pode ser assumida. Nesses casos, foi utilizado o teste paramétrico teste T

de Student pareado. Quando a normalidade dos dados não pode ser assumida, o teste Wilcoxon

Signed-rank (WILCOXON, 1945) é utilizado. Contudo, como pode ser visto na tabela, nenhuma

diferença significativa foi encontrada.

Tabela 11 – Média das Métricas de Tempo e AuxíliosErro Perfil JAD JGrasp Resultado

EstatísticoDiferença

Significativa

TempoGeral 15min 07s 16min 41s

W=35,5, p>,05(valor crítico = 21) Não

SDA 14min 54s 17min 36s t(9)=0,979, p=0,353 Nãonão-SDA 15min 20s 15min 40s t(8)=0,142, p=0,890 Não

Auxíliode Código

Geral 1,16 1,53 t(18)=0,741, p=0,467 NãoSDA 1,30 1,60 t(9)=0,330, p=0,748 Não

não-SDA 1 1,44 * *

Auxílio deFerramenta

Geral 1,26 2,32W=27, p>,05

(valor crítico = 21) Não

SDA 1,30 1,90 t(9)=0,874, p=0,404 Não

não-SDA 1,22 2,78W=6, p>,05

(valor crítico = 2) Não

Nota: *Amostra reduzida devido ao alto número de empates.Fonte: Elaborada pelo autor.

7.1.3 Comparativo de Avaliação de Usabilidade JAD x JGrasp

Os dados foram submetidos ao teste de normalidade Shapiro-Wilk (SHAPIRO;

WILK, 1965). Após esse passo, assumimos a normalidade dos dados e submetemos os escores

SUS ao teste T de Student pareado, este teste foi utilizado em razão do design Within Subjects,

onde o mesmo sujeito é exposto a duas situações experimentais. O objetivo consiste em verificar

se existe diferença significativa entre a usabilidade do JAD e JGrasp.

A ferramenta JAD apresenta melhor resultado com um escore médio de 65,543

contra 48,152 do JGrasp, mostrando uma melhor avaliação de usabilidade dos participantes para

Page 74: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

73

a ferramenta. Além disso, o resultado do teste T de Student pareado para toda a amostra (SDA

e não-SDA) aponta diferença significativa em relação à usabilidade: t(24)=-3,0267, p=0,0062.

Resultados com valor de p ≤ 0,05 apresentam diferença significativa.

7.1.3.1 Análise das Questões 4 e 10 do Questionário SUS

Analisaram-se também, os resultados individuais das questões 4 e 10 do questionário

SUS. Segundo Lewis e Sauro (2009), elas apontam o nível de aprendizado. O ranking médio

(RM) foi utilizado para analisar como os participantes SDA e não-SDA respondem a cada questão

em relação às ferramentas.

A Figura 31 apresenta os resultados referente ao JAD. Eles apontam uma discordância

de SDA e não-SDA em relação à necessidade de auxílio para operar o sistema. A maioria dos

sujeitos SDA optou por concordar ou concordar fortemente, enquanto a maioria dos não-SDA

optou por discordar ou discordar fortemente. Com isso, suspeita-se que o resultado tenha

refletido problemas culturais vividos por SDA, onde o auxílio de pessoas para certas tarefas faz

parte de seu cotidiano. Os resultados para essa questão tornam evidente a necessidade de aplicar

melhorias na ferramenta com objetivo de torná-la mais intuitiva para que ambos os grupos, SDA

e não-SDA, sintam-se seguros para executar uma tarefa sem necessidade de auxílio.

Figura 31 – RM para o JAD com base nas respostas à escala likert para as questões 4 e

10.

Fonte: Elaborada pelo autor.

Os resultados referentes ao JGrasp são mostrados na Figura 32. Para a questão que

trata de conhecimentos prévios para operar o sistema, o grupo de SDA optou por concordar e

concordar fortemente, enquanto o grupo de não-SDA permaneceu entre a indiferença e concordar.

Observou-se que, por se tratar de uma ferramenta que envolve conhecimento prévio de uma

Page 75: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

74

linguagem de programação, os participantes podem ter sido motivados a concordar com essa

questão, embora tenha sido explicado que o conhecimento deles não estaria sendo avaliado e sim

a usabilidade da ferramenta.

Figura 32 – RM para o JGrasp com base nas respostas à escala Likert para as questões 4

e 10.

Fonte: Elaborada pelo autor.

7.1.3.2 Análise das Questões Acrescidas ao Questionário SUS

Para as cinco questões acrescidas ao questionário de avaliação de usabilidade foram

aplicadas diferentes métricas, por se tratar de um questionário com questões extras a respeito de

usabilidade. O método de ranking médio (RM) foi utilizado. Por se tratar apenas de questões

positivas, o valor maior na escala significa uma boa avaliação.

7.1.3.2.1 Resultados para o JAD

Q1 - É possível identificar facilmente os estados do sistema, permitindo maior controle e

mapeamento das tarefas.

Para esta questão, os grupos de não SDA com RM = 4,0 e SDA com RM= 4,3

demonstram tecnicamente a mesma opinião, com diferença de 0,3 de avaliação positiva por parte

do grupo de SDA. Esses resultados demonstram que os participantes de forma geral se sentiram

satisfeitos em relação ao mapeamento de controle das tarefas.

Q2 - O sistema possui correspondências com mundo real.

Os resultados dos não SDA com RM = 4,2 e SDA com RM = 4,1, mostram tecnica-

mente o mesmo grau de concordância entre os dois grupos, avaliando o nível de correspondência

dos elementos da interface com mundo real satisfatório.

Page 76: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

75

Q3 - É possível controlar facilmente as tarefas.

Os resultados dos não SDA com RM = 4,5 e SDA com RM=4,2, mostram tecnica-

mente o mesmo grau de concordância entre os dois grupos para uma avaliação satisfatória no

que se refere ao fácil controle das tarefas.

Q4 - É possível reconhecer as funções sem esforço para lembrar o que elas executam.

Os resultados dos não SDA com RM = 4,5 e SDA com RM = 3,6, mostram divergên-

cia entre os dois grupos. Enquanto o grupo de não SDA apresenta resultados positivos a respeito

da questão, o grupo de SDA apresenta indiferença sobre o assunto com uma certa tendência

a concordar. Tal fato pode se dar em razão de que SDA precisam de um esforço maior para

entender um conteúdo ou até mesmo para se adaptar ao funcionamento de um software(PERLIN,

2004).

Q5 - O sistema fornece ajuda para reconhecer, diagnosticar e recuperar-se de erros.

Os resultados dos não SDA com RM = 4,7 e SDA com RM=4,8, mostram tecni-

camente o mesmo grau de concordância entre os dois grupos para uma avaliação satisfatória

reconhecer, diagnosticar e recupera-se de erros.

7.1.3.2.2 Resultados para o JGrasp

Q1 - É possível identificar facilmente os estados do sistema permitindo maior controle e mapea-

mento das tarefas.

Para esta questão os grupos de não SDA com RM = 3,5 e SDA com RM= 2,7,

demonstram divergências, onde o grupo de não SDA se demonstram indiferentes com tendência

a concordar com a questão, enquanto o grupo de SDA demonstra insatisfação no que diz respeito

a controle e mapeamento.

Q2 - O sistema possui correspondências com mundo real.

Os resultados dos não SDA com RM = 2,8 e SDA com RM = 3,1, mostram tecnica-

mente o mesmo grau de concordância em relação à correspondência da ferramenta com o mundo

real, demonstrando que ambos os grupos não se sentiram confiantes para afirmar tal questão.

Entre os dois grupos existe uma pequena tendência de discordância por parte dos não SDA no

que se refere à questão.

Page 77: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

76

Q3 - É possível controlar facilmente as tarefas.

Para esta questão, os grupos de não SDA com RM = 3,3 e SDA com RM= 3,5,

demonstram tecnicamente o mesmo grau de indiferença com leve tendência a concordar com a

questão. Isso, mostra que ambos os grupos não se sentiram confiantes para avaliar positivamente

esta questão.

Q4 - É possível reconhecer as funções sem esforço para lembrar o que o que elas executam.

Os resultados dos não SDA com RM = 2,9 e SDA com RM=3,4, apontam uma

pequena divergência entre os dois grupos, porém, pelos valores é possível perceber que ambos

os grupos tendem a ser indiferentes com a questão, com certa inclinação para discordância por

parte dos não SDA e concordância dos SDA.

Q5 - O sistema fornece ajuda para reconhecer, diagnosticar e recuperar-se de erros.

Os resultados dos não SDA com RM = 4,3 e SDA com RM=3,4, apontam divergência

entre os dois grupos, onde o grupo de não SDA inclina-se para concordância com a questão e o

grupo de SDA inclina-se para indiferença, isso mostra que o grupo não se sentiu confiante ao

concordar com a questão.

7.1.3.2.3 Comparativo JAD x JGasp

O teste T de Student pareado foi aplicado para os resultados de RM das duas

ferramentas para cada grupo (Figura 33), a fim de verificar se existem diferenças significativas

na avaliação de usabilidade referente às questões acrescidas.

Figura 33 – Valores de RM submetidos ao teste T de Student.

Fonte: Elaborada pelo autor.

Inicialmente aplicamos o teste para o grupo de não-SDA. O resultado t (5) 4,2208,

p=0,0135 aponta que para o grupo de não-SDA existe uma diferença significativa para uma

Page 78: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

77

avaliação positiva do JAD em relação ao JGrasp. Quando aplicado o mesmo teste para o grupo

de SDA, o resultado t(5) = 3,9231, p = 0,0172 aponta que para o grupo de SDA também existe

uma diferença significativa para uma avaliação positiva do JAD em relação ao JGrasp.

7.2 CAPTURA DE TELA E ANÁLISE CRÍTICA

Foram capturadas aproximadamente 5h de vídeos com 48 interações, sendo 24 delas

utilizando o JAD e 24 para o JGrasp. Com a análise de vídeo como é mostrado nas Figuras 34 e

35, foi possível perceber que para os usuários SDA alguns ícones eram confusos, tanto no JAD

como no JGrasp. Em alguns momentos eles clicaram nos ícones apenas para saber qual ação

seria executada, como se não tivessem segurança sobre qual ação seria executada. Foi possível

perceber que SDA e não-SDA utilizaram muitas vezes recurso de legenda para identificar a

funcionalidade de um botão em ambas as ferramentas, como é mostrado nas Figuras 34 e 35.

Figura 34 – Contexto de depuração com JGrasp.

Fonte: Elaborada pelo autor.

A leitura da legenda foi outra barreira encontrada pelos participantes SDA e não-

Page 79: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

78

SDA, pois o texto para os tooltip encontrados no JGrasp estava escrito em inglês. Foi possível

observar que em ambas as ferramentas esse foi um recurso bem utilizado pelos participantes

para compreender os ícones e encontrar funcionalidades. No JAD, como é mostrado na Figura

35, os ícones e botões possuem legendas em português.

Figura 35 – Participante utilizando o recurso de legenda no JAD.

Fonte: Elaborada pelo autor.

Na Figura 36, é mostrado um participante surdo utilizando-se do recurso de erros

em Libras. É possível perceber a atenção do usuário para compreensão do vídeo. Na análise

de vídeo verificou-se que o participante visualizou duas vezes o vídeo em Libras e logo após

conseguiu corrigir o erro, obtendo sucesso na tarefa.

Para alguns surdos, as caixas de diálogos do JAD eram compreendidas como diálogos

de erro mesmo estando na cor azul; demorou para que alguns compreendessem que era apenas

uma caixa de diálogo com os valores das variáveis e objetos. No JGrasp a quantidade de

funcionalidades dispostas fez com que os participantes tanto surdos como ouvintes encontrassem

a função desejada, levando os usuários a passear pelos ícones e ler a legenda de cada um para

identificar a função que gostariam de realizar.

Page 80: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

79

Figura 36 – Participante surdo se beneficiando do recurso de erros em Libras.

Fonte: Elaborada pelo autor.

7.3 ANÁLISE QUALITATIVA

Durante a aplicação do questionário SUS, os participantes relataram de forma livre,

caso tivessem interesse, sobre o porquê de suas escolhas para cada questão do questionário.

Estes relatos geraram um documento disponível no Apêndice A, no qual são mostrados os

comparativos dos feedbacks dados pelos participantes SDA e não-SDA para cada ferramenta.

Foram relatados pelos dois grupos de usuários vários feedbacks positivos e negativos, em relação

ao JAD e ao JGrasp.

Alguns dos pontos fortes citados pelos participantes são a interatividade, simplicidade

, navegação intuitiva, e, para o grupo de SDA, o vídeo em libras para os erros de código foi um

diferencial, embora tenha sido indicado que ainda é preciso aplicar algumas melhorias na forma

como o vídeo é apresentado. Para alguns usuários o JAD pareceu confuso no início da interação

e, ao longo da tarefa, o participante foi se adaptando à interface.

Para o JGrasp, embora, para alguns participantes, a ferramenta tenha parecido simples

e fácil, foram relatadas muitas dificuldades para identificar as funcionalidades necessárias para

execução da tarefa. No grupo de surdos, surgiram alguns relatos sobre a falta de intérpretes de

Page 81: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

80

Libras para o JGrasp, mostrando que este é um recurso realmente necessário e importante para

esse público. Os relatos mostram que, embora o JGrasp seja uma boa opção para a depuração e

desenvolvimento de código Java, ainda possui alguns desafios de usabilidade a ser vencidos.

Ao final de uso das duas ferramentas, os participantes eram convidados a votar

na ferramenta de sua preferência. Foi dado um papel para que eles escrevessem o nome da

ferramenta de sua preferência. Ao final, obteve-se o resultado de 16 votos para o JAD, 4 para

JGrasp, e 4 participantes não participaram da votação. Na Figura 37 são mostrados os papéis

com as opções dos participantes.

Figura 37 – Resultado da votação realizada pelos participantes.

Fonte: Elaborada pelo autor.

Page 82: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

81

8 CONCLUSÕES E TRABALHOS FUTUROS

O JAD foi concebido a partir da necessidade identificada, inicialmente pela obser-

vação de como alunos SDA se comportavam durante a codificação e depuração de um código

Java, onde estes encontram várias barreiras, entre elas a dificuldade de compreensão da lógica e

complexidade das IDEs de desenvolvimento. Foram traçados e realizados alguns experimentos

para atestar e apontar as dificuldades encontradas por SDA. Partiu-se da hipótese de que alunos

SDA egressos de um curso Java teriam desempenho inferior ao de seus homólogos ouvintes

durante a depuração de um código Java. Realizou-se um estudo experimental com objetivo de

verificar se esta seria uma hipótese válida. Aplicou-se a técnica de análise da situação para SDA

e não SDA, assim, fez-se possível analisar como os grupos realizavam as tarefas de depuração e

quais os problemas encontrados por eles. Os resultados apontaram que não SDA encontravam

menos barreiras de usabilidade e compreensão das tarefas, levando-os a um melhor desempenho

durante a depuração em relação aos SDA. Os resultados tornam válido o argumento de que SDA

de um curso Java teriam desempenho inferior ao de seus homólogos ouvintes (NASCIMENTO;

OLIVEIRA; FREITAS, 2014).

Dada a problemática identificada, buscou-se na literatura estudos e intervenções

que poderiam mitigar o problema vivido por SDA, removendo as barreiras de usabilidade e

performance encontradas para que os mesmos pudessem igualar seu desempenho ao de seus

homólogos não SDA. Encontrou-se na literatura que o uso de representações e esquemas visuais

é um forte preditivo para auxiliar SDA na compreensão de coisas abstratas. Com isso, realizou-se

um estudo experimental sobre a hipótese de que depuradores visuais poderiam atenuar a diferença

de desempenho entre SDA e não SDA durante a depuração de um código Java. Realizou-se

um estudo comparativo entre duas ferramentas de depuração (IDE Eclipse e outra o JGrasp que

possui mais recursos visuais). A comparação foi realizada sobre a perspectiva de uso dos usuários

SDA, onde um grupo de SDA realiza a tarefa de depuração no Eclipse, enquanto outro utiliza

o JGrasp. Os resultados apontaram que, embora não haja diferenças significativas em relação

ao tempo gasto na tarefa de depuração e evolução de código pelos dois grupos, os participantes

tiveram maior êxito utilizando o JGrasp, além disso em uma avaliação de usabilidade realizada, o

JGrasp obteve melhores resultados sobre o Eclipse. Esses resultados tornam evidentes o potencial

e impactos que uma ferramenta que utiliza-se de esquemas interativos e visuais pode gerar sobre

a performance de SDA durante a depuração de um código (NASCIMENTO et al., 2015).

O JAD foi projetado a partir dos estudos realizados previamente. Suas funcionali-

Page 83: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

82

dades e design são resultados dos estudos experimentais, onde foi realizada ampla pesquisa de

interação, além de coleta e análise dos feedbacks dos usuários. Espera-se que o JAD, aliado

ao JLOAD (Objeto de aprendizado citado em 3.4 ), com seus recursos de acessibilidade, possa

atenuar ainda mais as dificuldades encontradas por SDA durante o processo de evolução de

um código. Para tais constatações, realizaram-se experimentos com o objetivo de validar as

hipóteses de que SDA e não SDA teriam desempenho similar utilizando o JAD e que o JAD

teria melhor avaliação de usabilidade em relação ao JGrasp. Identificou-se que o JAD pode ser

um boa alternativa para SDA e não SDA, tendo bons resultados para ambos os grupos. Não

houve diferença significativa de desempenho no uso das ferramentas por parte de ambos os

grupos( SDA e não SDA). Embora os participantes não tenham alcançado melhores resultados de

desempenho no JAD, a ferramenta cumpre seu papel equiparando SDA e não SDA no processo

de evolução de um código Java.

Os resultados ratificam que representações esquemáticas, interativas e acessíveis

podem quebrar barreiras de usabilidade e compreensão encontradas por SDA e não SDA, tendo

em vista os bons resultados alcançados por ambos os grupos com a utilização do JAD. Espera-se

que o JAD, como ferramenta de depuração integrada a um objeto de aprendizagem (JLOAD),

possa auxiliar nas primeiras lições de codificação, sendo um forte auxílio para o aprendizado

de Java. Busca-se em trabalhos futuros realizar a validação da ferramenta aplicando testes

experimentais com uma população maior de SDA e, assim, validar a eficácia da ferramenta e sua

importância para o ensino e aprendizado de Java, levando para SDA as mesmas oportunidades de

aprendizado que possuem os não SDA, equiparando o desempenho de ambos para que possam

concorrer em mesmo nível de competência no mercado de trabalho.

Por fim, a presente pesquisa permitiu a publicação de três artigos em conferências:

• How do deaf or hearing impaired programmers perform in debugging java code?

(NASCIMENTO; OLIVEIRA; FREITAS, 2014);

• Visual deguggers and the deaf: paving the way to workplace

(NASCIMENTO et al., 2015);

• Visual Debuggers and Deaf Programmers

(NASCIMENTO et al., 2016).

Page 84: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

83

REFERÊNCIAS

ALEXANDRE, D. S.; TAVARES, J. Factores da percepção visual humana na visualizaçãode dados. In: CONGRESSO IBERO LATINO-AMERICANO SOBRE MÉTODOS COMPU-TACIONAIS EM ENGENHARIA, ABMEC, 28., 2007, Porto. Anais... Porto, Portugal, 2007.p. 211.

BARBOSA, H. H. Habilidades matemáticas iniciais em crianças surdas e ouvintes. RevistaCadernos Cedes, v. 33, n. 91, p. 333–347, 2013.

BARBOSA, S.; SILVA, B. Interação humano-computador. Rio de Janeiro: Elsevier Brasil,2010.

BARROS, T.; SILVA, M.; ESPÍNOLA, E. State mvc: Estendendo o padrão mvc para usono desenvolvimento de aplicações para dispositivos móveis. In: CONFERÊNCIA LATINO-AMERICANA EM LINGUAGENS DE PADRÕES PARA PROGRAMAÇÃO, SBC, 6., 2007,Rio de Janeiro. Anais... Rio de Janeiro, Brasil, 2007. p. 123.

BAVELIER, D.; DYE, M. W.; HAUSER, P. C. Do deaf individuals see better? Trends inCognitive Sciences Journal, v. 10, n. 11, p. 512–518, 2006.

BLATTO-VALLEE, G.; KELLY, R. R.; GAUSTAD, M. G.; PORTER, J.; FONZI, J. Visual-spatial representation in mathematical problem solving by deaf and hearing students. Journal ofDeaf Studies and Deaf Education, v. 12, n. 4, p. 432–448, 2007.

BRANDÃO, L. de O.; BRANDÃO, A. A. F.; RIBEIRO, R. da S. ivprog, uma ferramentade programaçao visual para o ensino de algoritmos. In: CONGRESSO BRASILEIRO DEINFORMÁTICA NA EDUCAÇÃO, SBC, 1., 2012, Uberlândia. Anais... Uberlândia, Brasil,2012. p. 19.

BROOKE, J. Sus, a quick and dirty usability scale. Usability Evaluation in Industry Journal,v. 189, n. 194, p. 4–7, 1996.

BULL, R.; BLATTO-VALLEE, G.; FABICH, M. Subitizing, magnitude representation, andmagnitude retrieval in deaf and hearing adults. Journal of Deaf Studies and Deaf Education,v. 11, n. 3, p. 289–302, 2006.

CARD, S. K.; MACKINLAY, J. D.; SHNEIDERMAN, B. Readings in information visualiza-tion: using vision to think. Burlington: Morgan Kaufmann, 1999.

CATTANEO, G.; FARUOLO, P.; PETRILLO, U. F.; ITALIANO, G. F. Jive: Java interactivesoftware visualization environment. In: CONFERENCE ON VISUAL LANGUAGES ANDHUMAN CENTRIC COMPUTING, IEEE, 8., 2004, Rome. Proceedings... Rome, 2004. p.41–43.

CONSELHO NACIONAL DE TRâNSITO. Manual Brasileiro de Sinalização de Trânsito:Sinalização vertical de regulamentação. 2007. Disponível em: <http://www.denatran.gov.br/images/Educacao/Publicacoes/MANUAL_VOL_I.pdf>. Acesso em: 20 set. 2016.

CROSS, J. H.; HENDRIX, D.; UMPHRESS, D. A. Jgrasp, an integrated development envi-ronment with visualizations for teaching java in cs1, cs2, and beyond. In: FRONTIERS INEDUCATION CONFERENCE, IEEE, 34., 2004, Savannah. Proceedings... Savannah, USA,2004. p. 1466–1467.

Page 85: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

84

CROSS, J. H.; HENDRIX, T. D.; JAIN, J.; BAROWSKI, L. A. Dynamic object viewers fordata structures. Special Interest Group on Computer Science Education Bulletin, v. 39, n. 1,p. 4–8, 2007.

CRUPI, J.; MALKS, D.; ALUR, D. Core J2EE Patterns. Houston: Gulf Professional Pu-blishing, 2001.

CURY, R. F. et al. Interfaces gráficas referencialmente claras e sua utilização na criaçãode laboratórios para a aprendizagem a distância on-line. Tese (Doutorado em EngenhariaElétrica) — Universidade Federal de Uberlândia, Uberlândia, 2008.

CYPHER, A.; HALBERT, D. C. Watch what I do: programming by demonstration. Cambridge:MIT press, 1993.

DELL INC. Laboratório de Educação a Distância para Pessoas com Deficiência. 2017.Disponível em: <http://www.projetolead.com.br>. Acesso em: 16 jan. 2017.

GESUELI, Z. M.; MOURA, L. de. Letramento e surdez: a visualização das palavras. Jornal daEducação Temática Digital, v. 7, n. 2, p. 110–122, 2006.

GOMES, M.; BECKER, L.; GESTARO, L.; AMARAL, E.; TAROUCO, L. M. R. Um estudosobre erros em programação: Reconhecendo as dificuldades de programadores iniciantes. In:CONGRESSO BRASILEIRO DE INFORMÁTICA NA EDUCAÇÃO, SBC, 4., 2015, Maceió.Anais... Maceió, 2015. p. 1398.

GONÇALVES, E.; VILELA, J.; PEIXOTO, M.; OLIVEIRA, F.; CASTRO, J. Produção de vide-oaulas de programação em java acessíveis no contexto de um projeto de capacitação profissionalpara pessoas surdas. In: BRAZILIAN SYMPOSIUM ON COMPUTERS IN EDUCATION,SBC, 26., 2015, Maceió. Proceedings... Maceió, Brazil, 2015. p. 877.

GRACIANO, A. B. V. Rastreamento de objetos baseado em reconhecimento estrutural depadroes. Dissertação (Mestrado em Ciências da Computação) — Universidade de São Paulo,São Paulo, 2007.

HUTCHINS, E. L.; HOLLAN, J. D.; NORMAN, D. A. Direct manipulation interfaces. Human-Computer Interaction Journal, v. 1, n. 4, p. 311–338, 1985.

INSTITUTO BRASILEIRO DE GEOGRAFIA E ESTATíSTICA. Censo demográfico do Brasilde 2010. 2010. Disponível em: <http://www.censo2010.ibge.gov.br/>. Acesso em: 18 out. 2015.

JÚNIOR, C. G. F.; SOARES, J. M.; BARROSO, G. C.; CASTRO, L.; SOARES, M. I. da S.;JOYE, C. R.; FREITAS, A. T. de; SOARES, É. F. Um modelo para a produção de objetos deaprendizagem acessíveis: Modelagem e análise por redes de petri coloridas. In: BRAZILIANSYMPOSIUM ON COMPUTERS IN EDUCATION, SBC, 25., 2014, Dourados. Proceedings...Dourados, Brazil, 2014. p. 1143.

KUHN, A.; ERNI, D.; NIERSTRASZ, O. Towards improving the mental model of softwaredevelopers through cartographic visualization. In: INTERNATIONAL CONFERENCE ONSOFTWARE ENGINEERING, ACM/IEEE, 32., 2010, Cape Town. Proceedings... Cape Town,South Africa, 2010. p. 45–54.

LEAL, A. V. d. A. Ensino de Programação no Ensino Médio Integrado: Uma abordagemutilizando padrões e jogos com materiais concretos. Dissertação (Mestrado em Ciência daComputação) — Universidade Federal de Goiás, Goiânia, 2014.

Page 86: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

85

LEITÃO, C. F.; SILVEIRA, M. S.; SOUZA, C. S. de. Uma introdução à engenharia semiótica:conceitos e métodos. In: BRAZILIAN SYMPOSIUM ON HUMAN FACTORS IN COMPU-TING SYSTEMS, SBC, 12., 2013, Manaus. Proceedings... Manaus, Brasil, 2013. p. 356–358.

LEITE, J. C. Modelos e formalismos para a engenharia semiótica de interfaces de usuário.Tese (Doutorado em Ciências em Informática) — Pontifícia Universidade Católica do Rio deJaneiro, Rio de Janeiro, 1998.

LEWIS, J. R.; SAURO, J. The factor structure of the system usability scale. In: INTERNATIO-NAL CONFERENCE ON HUMAN CENTERED DESIGN, SPRINGER, 1., 2009, San Diego.Proceedings... San Diego, USA, 2009. p. 94–103.

LINHARES, M. Introdução ao Hibernate 3. 2012. Disponível em: <http://www.guj.com.br/content/articles/hibernate/intruducao\_hibernate3\_guj.pdf>. Acesso em: 31 out. 2016.

MANN, H. B.; WHITNEY, D. R. On a test of whether one of two random variables is stochasti-cally larger than the other. The Annals of Mathematical Statistics Journal, v. 6, n. 3, p. 50–60,1947.

MCNEMAR, Q. Note on the sampling error of the difference between correlated proportions orpercentages. Psychometrika Journal, v. 12, n. 2, p. 153–157, 1947.

MORENO, A.; JOY, M. S. Jeliot 3 in a demanding educational setting. Electronic Notes inTheoretical Computer Science Journal, v. 178, n. 8, p. 51–59, 2007.

NASCIMENTO, H. A. D. D. Uma introdução à visualização de informações. Revista Visuali-dades, v. 9, n. 2, p. 13–43, 2012.

NASCIMENTO, M. D. do; OLIVEIRA, F. C. d. M. B.; FREITAS, A. T. de. How do deaf orhearing impaired programmers perform in debugging java code? In: BRAZILIAN SYMPOSIUMON COMPUTERS IN EDUCATION, SBC, 25., 2014, Dourados. Proceedings... Dourados,Brazil, 2014. p. 593.

NASCIMENTO, M. D. do; OLIVEIRA, F. C. d. M. B.; FREITAS, A. T. de; SILVA, L. C.Visual debuggers and deaf programmers. In: INTERNATIONAL CONFERENCE ON UNIVER-SAL ACCESS IN HUMAN-COMPUTER INTERACTION, SPRINGER, 10., 2016, Toronto.Proceedings... Athens, Greece, 2016. p. 26–37.

NASCIMENTO, M. do; OLIVEIRA, F.; FREITAS, A.; SILVA, L. C. Visual debuggers and thedeaf: paving the way to workplace. In: BRAZILIAN SYMPOSIUM ON COMPUTERS INEDUCATION, SBC, 26., 2015, Maceió. Proceedings... Maceió, Brazil, 2015. p. 792.

NIELSEN, J. Usability engineering. Amsterdam: Elsevier, 1994.

NIELSEN, J.; LANDAUER, T. K. A mathematical model of the finding of usability problems.In: CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS, ACM, 1., 1993,New York. Proceedings... New York, USA, 1993. p. 206–213.

NIUZA, L. Metáforas e Interfaces Gráficas: Contribuições para uma aprendizagem significa-tiva da informática. Dissertação (Mestrado em Educação Tecnológica) — Centro Federal deEducação Tecnológica de Minas Gerais, Belo Horizonte, 2008.

NOGUEIRA, C. M. I.; ZANQUETTA, M. E. M. Surdez, bilingüismo eo ensino tradicionalde matemática: uma avaliação piagetiana. Revista de Educação Matemática Zetetiké, v. 16,n. 30, p. 219–237, 2009.

Page 87: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

86

NUNES, T.; MORENO, C. Is hearing impairment a cause of difficulties in learning mathe-matics? In: DONLAN, C. (Ed.). The development of mathematical skills. United Kingdom:Psychology Press Hove, 1998. cap. 10, p. 227–254.

OLIVEIRA, H. R. d. Argumentação no Ensino de Ciências: O uso de analogias como recursopara a construção do conhecimento. Dissertação (Mestrado em Educação) — UniversidadeFederal de Juiz de Fora, Juiz de Fora, 2012.

OLIVEIRA, L. A. de. A escrita do surdo: relação texto e concepção. 2001. Disponível em:<http://www.afirse.com/archives/cd3/tematica1/048.pdf>. Acesso em: 03 jun. 2016.

OLIVEIRA, L. H. d. Exemplo de Cálculo de Ranking Médio para Likert. 2005. Disponívelem: <www.administradores.com.br/producao-academica/ranking-medio-para-escala-de-likert/28/download>. Acesso em: 18 nov. 2016.

PERLIN, G. O lugar da cultura surda. In: THOMA, A. da S.; LOPES, M. C. (Ed.). A invençãoda surdez: cultura, alteridade, identidade e diferença no campo da educação. Santa Cruz do Sul:Edunisc, 2004. cap. 3, p. 73–82.

PETER, D. Being deaf. 2012. Disponível em: <http://www.davidpeter.me/stories/being-deaf>.Acesso em: 31 set. 2015.

PINTO, M. A. d. S.; GOMES, A. M. d. S.; NICOT, Y. E. A experiência visual como elementofacilitador na educação em ciências para alunos surdos. Revista Amazônica de Ensino deCiências, v. 5, n. 09, p. 110–118, 2014.

REITZ, L. P.; CASTIÑEIRA, M. I.; SCHUHMACHER, V. R. Testes automatizados comferramentas de software livre: um estudo de caso. In: CONGRESSO SUL BRASILEIRO DECOMPUTAÇÃO, SBC, 7., 2015, Criciúma. Anais... Criciúma, Brasil, 2015. p. 79–83.

ROSE, A.; PLAISANT, C.; SHNEIDERMAN, B. Using ethnographic methods in user interfacere-engineering. In: SYMPOSIUM ON DESIGNING INTERACTIVE SYSTEMS, ACM, 1.,1995, Miami. Proceedings... Miami, USA, 1995. p. 115–122.

SAURO, J.; LEWIS, J. R. Quantifying the user experience: Practical statistics for user research.Amsterdam: Elsevier, 2012.

SHAPIRO, S. S.; WILK, M. B. An analysis of variance test for normality (complete samples).Biometrika Journal, v. 52, n. 3/4, p. 591–611, 1965.

SILVA, L. C.; OLIVEIRA, F. C. de M.; OLIVEIRA, A. C. de; FREITAS, A. T. de. Introducingthe jload: A java learning object to assist the deaf. In: INTERNATIONAL CONFERENCE ONADVANCED LEARNING TECHNOLOGIES, IEEE, 14., 2014, Athens. Proceedings... Athens,Greece, 2014. p. 579–583.

SKINNER, J. Sublime Text: Editor de texto sofisticado para códigos html, css e javascript. 2013.Disponível em: <https://www.sublimetext.com>. Acesso em: 29 jun. 2016.

SORVA, J.; KARAVIRTA, V.; MALMI, L. A review of generic program visualization systemsfor introductory programming education. Transactions on Computing Education Journal,v. 13, n. 4, p. 15, 2013.

TECNOLóGICO, C. TAW: Ferramenta para análise de acessiblidade conforme a w3c. 2017.Disponível em: <http://www.tawdis.net>. Acesso em: 10 jan. 2017.

Page 88: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

87

TOSCANO, L. C.; DIZEU, B.; CAPORALI, S. A. A língua de sinais constituindo o surdo comosujeito. Revista Educação & Sociedade, v. 26, n. 91, p. 583–597, 2005.

W3C. Web Content Accessibility Guidelines 2.0. 2008. Disponível em: <https://www.w3.org/TR/WCAG20/>. Acesso em: 17 jun. 2016.

WILCOXON, F. Individual comparisons by ranking methods. Biometrics Bulletin, v. 1, n. 6, p.80–83, 1945.

WILSON, M.; EMMOREY, K. Comparing sign language and speech reveals a universal limit onshort-term memory capacity. Psychological Science Journal, v. 17, n. 8, p. 682–683, 2006.

ZOGBI, P. Conheça o setor que tem mais vagas que profissionais no Brasil.2016. Disponível em: <http://www.infomoney.com.br/carreira/emprego/noticia/4447259/conheca-setor-que-tem-mais-vagas-que-profissionais-brasil>. Acesso em: 25 ago. 2016.

Page 89: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

88

APÊNDICES

Page 90: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

89

APÊNDICE A – Depoimentos

Feedback dos participantes a respeito das ferramentas JAD e JGRASP

A.1 FEEDBACK DOS PARTICIPANTES SOBRE O JAD

A.1.1 Participantes SDA

1. Eu gostaria de usar este sistema com frequência.

• Porque na primeira vez no JAD me fez entender todo o processo, mas precisa

conhecer o sistema e as setas facilitaram

• Porque o sistema é maravilhoso

• Sim, pois o modo de visualização é agradável e gosto de java

• O sistema é um pouco confuso

• Pois é mais rápido encontrar o erro, e ajuda muito, e também dá pra identificar a

certeza.

2. O sistema é desnecessariamente complexo.

• Porque não tem muita interação

• O sistema é bem interativo.

• Porque em relação as palavras são muito detalhadas e são muitas informações, mas

com esforço é possível conseguir.

• Porque é difícil

• Um pouco, por causa da resolução, que faz ficar um pouco complexo.

3. O sistema foi fácil de usar.

• Porque é um sistema adaptável aos surdos. Mas a relação quando ele começa não

mostra que ele começou, se tiver a opção avançar ficaria melhor.

• Em relação as setas não são muito acessíveis e a sugestão seria mudar para o botão

"avançar” para identificar melhor.

• Foi difícil de utilizar.

• É fácil, mas por ser o primeiro uso não teve muito interação, entretanto com o tempo

consegue desenvolver e utilizar a ferramenta.

• Porque a dificuldade com relação ao contexto do vídeo.

• Sim, pois é adequado a forma das cores.

• Sim, pois pra mim que já tenho o conhecimento ficou mais claro.

Page 91: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

90

4. Eu acho que eu iria precisar de ajuda técnica de alguém para ser capaz de usar este sistema.

• Porque o sistema não é muito complexo e tem pouca interação.

• Porque se por exemplo ele não consegue resolver o problema precisaria chamar

alguém para auxiliar.

• Pois o sistema possibilita um bom entendimento.

• Depende de cada pessoa com seu desenvolvimento.

• Porque preciso de mais experiência e junto com o técnico o conhecimento se abrange,

por isso cada funcionalidade se evolui.

• Sim, pois para alunos novatos são bem importantes pois eles não tem um conheci-

mento profundo, diferente dos que já tem.

5. As diversas funções deste sistema são bem integradas.

• Porque ele já conhece a área de informática e já tem contato com essa técnica e ele já

tem conhecimento nessa área.

• Elas são bem integradas, porque me ajudam a encontrar o erro.

• Pois cada função é diferente no entendimento.

6. Existem muitas coisas despadronizadas no sistema.

• Os ícones precisam mudar.

• É um pouco confuso, porque na imagem o intérprete avisa mas não consegue identi-

ficar o erro.

• O sistema possui muitas regras e ajuda a desenvolver facilmente o que se pede.

• Pois o sistema é bem visível, mas atrapalha um pouco a estrada no lado da tela.

7. Muitas pessoas aprenderiam usar rapidamente o sistema

• O JAD é mais fácil de usar se comparado com o JGRASP.

• Vai variar de pessoa para pessoa

• Depende do conhecimento do usuário, pois antes no Java não tinha essa interação

mas agora é possível obter.

• Porque as pessoas precisam ter a prática antes, pois se tiverem elas conseguem

responder.

• Depende de cada pessoa

• Pois cada função tem um certo tempo de aprendizado.

• Depende de cada pessoa, e também depende do interesse que a pessoa dá ao assunto

referente.

8. O sistema é muito complicado de usar.

Page 92: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

91

• No começo é bem complicado

• Na hora de começar a utilizar não consegue entender bem mais com o uso adquiri

conhecimento sobre a ferramenta.

• Porque não está acostumado coma interação com o JAD.

• Porque falta o contexto e estratégia a interpretação do intérprete.

• Pois faltam algumas adequações na janela de libras

9. Eu me senti muito confiante com o sistema.

• Pode variar de usuário para usuário.

• Pois não tem afinidade com o sistema.

• Porque o sistema proporciona cada ação para o entendimento seja mais claro.

• Pois avisa cada erro e assim ajuda para resolver o código.

• Pois cada linha tem um certo tipo de visualidade, mas a estrada ao lado, não é

agradável.

10. É preciso aprender muitas coisas antes usar o sistema.

• Porque muitas pessoas usam a programação e não se sabe como vão utilizar, mas o

sistema ajuda a encontrar a linha do erro.

• Porque precisa ter um conhecimento prévio.

• Sim, pois é bom ter como base o assunto prévio.

A.1.2 Participantes não SDA

1. Eu gostaria de usar este sistema com frequência.

• É fácil utilizar e ele faz com simplicidade o que promete.

• Porque o sistema facilita o aprendizado em Java, principalmente para os iniciantes.

• Por conta da facilidade online e objetivo.

• Pois a interface é fácil e o idioma em português.

• Porque o JAD é simples e prático.

• Porque é bem intuitivo e fácil, em termo de usabilidade

• Porque o layout é agradável, o gráfico do processo também é bom e ele é prático de

utilizar.

• Ele auxilia na construção e validação do código.

• Na questão de cada vez mais de se capacitar.

2. O sistema é desnecessariamente complexo.

Page 93: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

92

• Ele não é complexo e sim intuitivo.

• Porque o sistema de visualização na estrada facilita.

• É facilmente compreensível.

• Não achou complexo.

• Acho o sistema intuitivo.

• Porque a ferramenta é bastante simples.

• Ele só seria complexo para quem não tem o conhecimento.

3. O sistema foi fácil de usar.

• Foi intuitivo, a ferramenta é bem prática.

• Faltou mais orientações sobre o real trabalho que iria executar.

• Ele atende de maneira objetiva a proposta ofertada.

• A interface e ícones são fáceis de entender.

• Poucas funcionalidades e as funcionalidades eram intuitivas.

• Não foi encontrada dificuldade na utilização da ferramenta.

• A dificuldade de utilização foi a pouca habilidade em programação.

• Por ele mostrar onde tem o erro do código

4. Eu acho que eu iria precisar de ajuda técnica de alguém para ser capaz de usar este sistema.

• Ele é simples.

• Porque se tiver comandos explícitos será mais fácil.

• Que o ponto de partida não ficou claro em primeiro momento.

• Acho fácil de usar.

• Talvez possa surgir pontos de dúvidas no decorrer do processo.

• Pelo o conhecimento ser básico.

• As dúvidas podem ser consultadas pela internet, em tutoriais e etc.

5. As diversas funções deste sistema são bem integradas.

• Não utilizou todas as funções.

• Por ele ser de fácil utilização.

• A princípio as funções são bem integradas.

6. Existem muitas coisas despadronizadas no sistema.

• inicialmente foi fácil identificar a função de cada item.

• Porque não encontrou nada que pudesse chamar atenção de forma negativa.

• Não utilizou todas as funções.

Page 94: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

93

7. Muitas pessoas aprenderiam usar rapidamente o sistema

• Mas teria que ter um conhecimento da linguagem.

• Porque vai depender do comando inicial que a pessoa vai ter.

• Pois é facilmente intuitivo e o feedback da aplicação é claro e compreensivo.

• Devido a interface ser fácil de usar

• Por conta da simplicidade da ferramenta.

• Vai depender do grau de conhecimento em programação.

• Porque os usuários ao utilizar a ferramenta já podem ter experiência em outros

programas semelhantes

• Por conta da ferramenta ser fácil

• Pra quem ta iniciando não teria nenhuma dificuldade de usar a ferramenta

8. O sistema é muito complicado de usar.

• A ferramenta é simples.

• Não utilizou todas as funções.

• A ferramenta segue o mesmo padrão das que já existem no mercado, porém tem

incrementos gráficos e técnicos mais modernos.

• Por conta da ferramenta ser fácil de usar.

9. Eu me senti muito confiante com o sistema.

• Porque nós conseguimos executar e logo ao lado visualizar a aplicação do código.

• Permite o controle de cada etapa.

• A interface permite uma fácil visualização dos itens.

• A ferramenta com o decorrer do uso deixou o confiante.

• Por conta do conhecimento e do treinamento ajudou bastante com a ferramenta.

• Por ele identificar o erro e tenha mais confiança em elaborar o código.

10. É preciso aprender muitas coisas antes usar o sistema.

• A ferramenta é simples.

• Aprender a linguagem JAVA

• Como observação é necessário ter o conhecimento em introdução à programação.

• Só precisaria aprender a linguagem Java.

• A linguagem de programação.

• Ter um conhecimento básico em lógica e programação.

• Saber o básico sobre programação.

Page 95: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

94

A.2 FEEDBACK DOS PARTICIPANTES SOBRE O JGRASP

A.2.1 Participantes SDA

1. Eu gostaria de usar este sistema com frequência.

• Não, eu não uso muito, minha área de trabalho é diferente.

• Sim, gostei do uso.

• A interface é difícil e não tem auxílio, ela não auxilia em nada.

• Achei ótimo.

• É muito difícil.

• Discordo, pois o nível de programação é profunda, e isso atrapalha, pois o erro só é

reconhecido na outra linha.

2. O sistema é desnecessariamente complexo.

• Sim, no começo é bastante difícil mas depois com a prática se tornou fácil.

• Sim , no começo, mas depois ficou mais fácil.

• Sim, a aba que fica em baixo onde identifica o erro é de difícil o entendimento.

• Porque falta acessibilidade, intérprete e vídeos.

• Porque o interface é boa.

• Sim, é muito difícil entendi pouca coisa.

• É muito difícil a usabilidade dele.

• Pois o ícone é muito extenso.e também o compilador é muito difícil de entender.

3. O sistema foi fácil de usar.

• Os símbolos ajudaram a entender.

• Achei muito fácil

• Não consegui entender muita coisa.

• Muito difícil de usar, linguagem é muito pesada

• Eu tive bastante dificuldade de usar .

• Depende de cada pessoa com seu nível de aprendizagem.

4. Eu acho que eu iria precisar de ajuda técnica de alguém para ser capaz de usar este sistema.

• Sim , no começo para conhecer as etapas e depois começar a utilizar.

• Sim, no começo.

• Sim, se eu não tiver ajuda vou demorar mais para resolver os erros.

• É preciso porque a usabilidade do sistema é bem difícil.

Page 96: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

95

• Precisa, pois o sistema é complexo mas a linguagem é bastante técnica e por isso é

preciso ter um técnico auxiliando.

• Sim, no caso de dúvidas o técnico poderia me ajudar.

• Precisa de muita ajuda, pois é bem difícil de localizar as funções.

• Como ainda não tenho muita experiência, precisaria de alguém para me auxiliar e

tirar minhas dúvidas.

• Sim, pois dependendo da programação precisa de ajuda para esclarecer algumas

dúvidas.

5. As diversas funções deste sistema são bem integradas.

• Como eu já utilizo se tornou mais fácil para eu usar, como já tenho convívio com

com outras ferramentas para mim se tornou mais fácil

• Sim , porque as etapas são claras, minha experiência é que foi complicada

• Sim, o sistema avisa onde está o erro

• É bem integrada, porém o entendimento não é claro.

• Pois falta acessibilidade.

• Não são bem integradas

• Sim, pois dá pra entender bem, mas precisa de prática.

6. Existem muitas coisas despadronizadas no sistema.

• Achei pouco acessível para pessoas com deficiência visual e usuários iniciantes, pois

a interface apresenta ícones pequenos.

• Sim, não é acessível.

• Falta acessibilidade no sistema.

• É ruim de utilizar

• É muito despadronizado.

• Sim existem, porque o ambiente é diferente.

7. Muitas pessoas aprenderiam usar rapidamente o sistema

• Com a prática o usuário se acostuma.

• Não, porque o sistema é bastante complexo, principalmente para pessoas que não

tem conhecimento na área.

• Depende de cada pessoa, o aprendizado de cada um é diferente.

• Vai depender de cada usuário.

• Só aprenderiam rápido as pessoas que tivessem alguma prática.

• Porque o visual é fácil de aprender.

Page 97: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

96

• Depende de cada pessoa.

• Acho que demorariam a aprender.

• No meu caso eu não aprenderia rápido, precisaria de tempo para conhecer o sistema

melhor , pois ele é bastante difícil.

• Depende de cada pessoa, por exemplo se for um aluno novo, ele não sabe como

proceder, mas já o profissional sim.

8. O sistema é muito complicado de usar.

• Na minha opinião ele não é difícil, pois a interface é familiarizada para pessoas

envolvidas com a área de informática, por conta da usabilidade e design pois já tem

ícones sugestivos que facilitam a compreensão.

• Sim, para mim foi complicado.

• Sim, é complexo.

• O sistema não aponta exatamente onde está erro, na linha do teste eu não sabia onde

estava o erro.

• Não consigo ver complicação em nada, é fácil de operar.

• Sim, achei complicado.

• Achei simples o sistema, só eu que não sabia utilizar.

9. Eu me senti muito confiante com o sistema.

• Por ser da área.

• Não, não me senti confiante.

• Por que o sistema me proporcionou uma segurança.

• É bem complicado.

• Por falta de acessibilidade e linguagem em Inglês, causa insegurança.

• Não senti segurança com sistema, pois não senti afinidade.

• Me senti pouco confiante.

10. É preciso aprender muitas coisas antes usar o sistema.

• Porque precisa de instruções para saber como fazer o teste, necessita de uma versão

em português para facilitar quem não sabe o inglês e não conhece o sistema.

• Sim, precisa de muita prática para utilizar.

• Sim, se não tiver conhecimento a pessoa não vai conseguir usar o sistema.

• Se a pessoa conhecer antes o java, fica mais fácil da pessoa operar.

• Precisaria aprender para ter mais conhecimento e dominar melhor a ferramenta.

• Sim, precisa ter conhecimento antes de usar.

Page 98: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

97

• Sim, é necessário, até mesmo eu que passei por um treinamento foi difícil resolver

os erros.

• Precisa muito, precisa de treinamento.

• Sim, pois precisa saber antes cada função, pois a programação é diferente.

A.2.2 Participantes não SDA

1. Eu gostaria de usar este sistema com frequência.

• Porque aparentemente ela tem muitas ferramentas mas ela não é muito intuitiva, e eu

gostaria de aprender mais.

• Não, eu já tenho outra ferramenta na própria IDE que já utilizo.

• Sim, porque tem o controle de todo o processo e fica tudo documentado.

• Sim, o sistema é um pouco complexo mas depois que entendemos sua aplicabilidade

se torna prático.

• Não fiquei muito familiarizado com o sistema.

• Sim, se eu programasse com frequência.

• Porque a ferramenta é complicada e pouco intuitiva.

• Mesmo sendo complexo ele fácil de operar.

• Porque é bom para relembrar o que estudou antes

2. O sistema é desnecessariamente complexo.

• Quando estou usando não facilita na compreensão, existem muitos ícones que execu-

tam a mesma função e quando é identificado o erro, é mostrado com muita informação

onde deixa o usuário confuso com tanta informação, poderia ser direto.

• Não, é intuitivo

• Não, as ferramentas não ficaram claras, parecem ambíguas pois apresentam a mesma

funcionalidade, não tem como fazer a diferenciação a primeira contato, provavel-

mente testando de outra forma ela apresenta uma funcionalidade diferente, mas

dentro desse código apresentam a mesma função, mas não é claro o que cada uma

faz.

• Sim, por falta de comandos iniciais para entendermos sua usabilidade.

• Como foi meu primeiro contato não sabia das funcionalidades, precisei de ajuda.

• Porque o JGRASP é muito complexo e o idioma é em inglês.

• Como não explorei muito o sistema, não achei coisas muito complexas.

Page 99: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

98

• Que desenvolveu essa ferramenta deu uma complexidade desnecessária, pois o

mesmo é simples.

3. O sistema foi fácil de usar.

• Mesmo com pouco tempo eu consegue fazer teste, apesar de ter identificado dificul-

dades com sistema

• Sim, é intuitivo e funcionalidades já estão bem definidas.

• Sim, é fácil mas é carente de informação do uso básico, não tem ícones intuitivos

para facilitar o desenvolvimento do código em primeiro momento, mas é confuso

quanto a sua real funcionalidade, o símbolo de soma, é usado para compilar sendo

que sua representação remete a adicionar algo

• A organização da área de trabalho é um pouco confusa.

• No primeiro contato não sabia das funcionalidade e depurar o código, não estava

intuitivo.

• Os ícones da ferramenta não ajuda muito. E também tem muita informação sendo

apresentada: ícones em excesso.

• Por eu já ter conhecimento em programação, usar e encontrar os erros se tornaram

mais fáceis.

• É pouco didático e intuitivo.

• O sistema é fácil, eu que não tenho conhecimento.

4. Eu acho que eu iria precisar de ajuda técnica de alguém para ser capaz de usar este sistema.

• Nos primeiros contatos eu precisaria da ajuda de uma pessoa que conhecesse, para

poder me mostrar o sistema.

• Não, já tenho experiência com esse tipo de ferramenta.

• Não, a própria prática facilita a aprendizagem sem danificar o código testado.

• Sim, pelo menos até entender sua sistemática.

• Tive dúvidas referente as mensagens de erro do que deveria ser feito.

• Mesmo explorando o sistema ainda estava confuso quanto sua sistemática.

• Por conta das inúmeras informações apresentadas que deixam a ferramenta complexa.

• Para operar de forma mais avançada precisaria de ajuda, pois meu conhecimento é

básico.

• E fácil de operar por conta da sua simplicidade.

• Quem não sabe precisaria sim.

5. As diversas funções deste sistema são bem integradas.

Page 100: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

99

• Não, pois não são intuitivas.

• Não, suas funções são difíceis compreensão devido está em outro idioma.

• Existem similaridade com outros sistemas.

• Por conta das inúmeras informações apresentada na tela confundem um pouco e o

fato de quando apertamos o ícone apresenta outra tela em cima da anterior.

• Como não explorei muito o sistema, não posso fazer julgamento sobre o mesmo.

6. Existem muitas coisas despadronizadas no sistema.

• Sim, o excesso de ferramentas que não mostra sua finalidade.

• Não, a padronização do sistema atende a sua proposta.

• Não, acredito que seja um padrão java, mas para um iniciante é um pouco complexo.

• Consegui identificar alguns ícones padrões, que já tinha visto em outros sistemas.

• Como não utilizei as ferramentas não tenho como ter noção da padronização.

7. Muitas pessoas aprenderiam usar rapidamente o sistema

• Sim, mas com auxílio de uma pessoa para ensinar.

• Não, tem muitas funcionalidades onde um iniciante ficaria perdido.

• Sim, mas a pessoa precisa ter o conhecimento básico de programação.

• Sim, depois que você entende sua sistemática você consegue desempenhar todas suas

funções.

• Não, sem o auxílio de um pessoa qualificada iria demorar.

• Em frequente contato, sim.

• Por conta da complexidade.

• Depende do nível de conhecimento de cada um que for usar, se torna mais rápido ou

mais lento.

• Por ser simples facilita o aprendizado.

• Para quem tem conhecimento em java seria fácil de aprender, mas para quem nunca

teve contato, talvez tivesse um pouco de dificuldade.

• Se pessoa souber programar aprende sim, se tiver conhecimento, caso contrário seria

bastante lento.

8. O sistema é muito complicado de usar.

• Não, a única coisa que o usuário precisa saber um pouco, é inglês para facilitar na

hora da depuração.

• Sim, é difícil sua compreensão e entender suas regras.

• Não achei tão difícil mas encontrei dificuldade na usabilidade.

Page 101: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

100

• Não é muito complicado, só não é tão intuitivo.

• Por conta da grande quantidade de ícones e também as informações são em inglês.

• Como não explorei ele como um todo, não tenho uma opinião formada.

• Por ser simples facilita o uso.

9. Eu me senti muito confiante com o sistema.

• Apesar do excesso de informação existem alguns ícones que facilitam a compreensão

e não deixa o usuário perdido.

• Sim, não tive dificuldade, testei dois tipos de soluções para saber se era flexível.

• Não, pois aparece muitos códigos que não são aplicados na ocasião.

• Como não tive experiência anterior não tinha como ter confiança.

• Como foi o primeiro contato não foi intuitivo, fiquei inseguro.

• Por conta das inúmeras informações apresentadas na tela.

• Dentro do que foi visto me senti confiante, pro nível de conhecimento que eu tenho

em programar.

• Por ser simples facilita o uso.

• Pelo fato de eu conhecer um pouco de programação não senti dificuldade.

• Não me senti pela falta de conhecimento.

10. É preciso aprender muitas coisas antes usar o sistema.

• Não, apesar da complexibilidade eu consegui fazer o teste.

• Não, basta saber um pouco de inglês.

• Sim, é necessário conhecer os erros básico dos comandos na linguagem de progra-

mação, já que o registro não deixa claro o erro, oferecendo apenas a exceção.

• Sim, para quem não tem um aprendizado prático em Java é difícil a compreensão.

• Sim, precisa de um pré conhecimento em códigos e idioma inglês.

• Precisa ter noções básicas de lógica de programação, para entender suas funcionali-

dades.

• Primeiro é preciso analisar a ferramenta.

• Precisaria aprender muito código, java e inglês.

• Por ser simples facilita o uso.

• Tem conhecer outras ferramentas do eclipse, ter noção de programação e um básico

de inglês

• Precisa saber programar para poder utilizar o sistema de forma eficiente.

Page 102: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

101

APÊNDICE B – Formulário de Observação

1) Observador:

2) Participante:

3) Hora de inicio:

4) Hora de conclusão:

5) Perfil: SDA( ) não-SDA( )

6) Conseguiu corrigir o primeiro erro?

Sim ( )

Não ( )

Horário:

7) Conseguiu corrigir o segundo erro ?

Sim ( )

Não ( )

Horário:

8) Quantidade de pedidos de auxilio sobre a ferramenta:

9) Quantidade de pedidos de auxilio sobre o código

10) Feedback do observador

11) Feedback do participante

Page 103: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

102

APÊNDICE C – Questionário de Perfil Socioeducativo

1. Gênero

a) Masculino

b) Feminino

2. Indique sua idade

a) Menos de 20 anos

b) De 20 a 30 anos

c) De 31 a 40 anos

d) De 41 a 50 anos

e) Mais de 51 anos

3. Indique seu grau de escolaridade

a) Ensino médio incompleto

b) Ensino médio completo

c) Superior incompleto

d) Superior completo

e) Pós-graduação incompleta/Completa

4. Nível de conhecimento de Java

a) Muito pouco

b) Pouco

c) intermediário

d) Bom

e) Muito bom

5. Qual seu grau de surdez?

a) Leve

b) Moderada

c) Severa

d) Profunda

6. Como você avalia seu domínio de LIBRAS?

a) Muito pouco

b) Pouco

c) intermediário

d) Bom

Page 104: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

103

e) Muito bom

7. Como você avalia seu domínio de Português?

a) Muito pouco

b) Pouco

c) intermediário

d) Bom

e) Muito bom

8. Você é Oralizado?

a) Sim

b) Não

Page 105: UNIVERSIDADE ESTADUAL DO CEARÁ PROGRAMA DE PÓS … · Java Acessible Debugger: Uma Abordagem de Interface Metafórica para Depuração de Código Java [recurso eletrônico] / Marcos

104

APÊNDICE D – Termo de Consentimento Livre e Esclarecido

Eu (Nome do participante) , estou participando de uma pesquisa sob supervisão do Mestrando

em Ciência da computação Marcos Devaner do Nascimento, cujo objetivo é a validação de uma

ferramenta acessível para depuração de código Java (Java Accessible Debugger - JAD). Minha

participação envolve um minicurso de nivelamento, participar de um teste de usabilidade da

ferramenta proposta e de uma ferramenta utilizada amplamente no mercado (JGrasp).

A minha participação nesse estudo é voluntária e se você decidir não participar ou quiser desistir

de continuar em qualquer momento, tenho absoluta liberdade de fazê-lo. Na publicação dos

resultados desta pesquisa, minha identidade será mantida no mais rigoroso sigilo. Serão omitidas

todas as informações que permitam me identificar. Mesmo não tendo benefícios diretos em

participar, indiretamente estarei contribuindo para a compreensão do fenômeno estudado e para

a produção de conhecimento científico.

Consinto em participar deste estudo e declaro ter recebido uma cópia deste termo de consenti-

mento.

Atenciosamente,

Assinatura do Participante

Assinatura do Pesquisador

Local:

Data: