Modelo De TCC Para O Curso De Ciência Da Computação Da UNIVALI
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO SISTEMA INTEGRADO PARA GERENCIAMENTO DE TESTES DE SOFTWARE Narcizo Thiago Maniçoba São José, Dezembro de 2015 Orientador: Marcello Thiry, Dr Co-Orientadora: Anita Maria da Rocha Fernandes, Dra Área de Concentração: Engenharia de software Linha de Pesquisa: Qualidade e teste de software Palavras-chave: testes, defeitos, usabilidade Número de páginas: 132 i UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO SISTEMA INTEGRADO PARA GERENCIAMENTO DE TESTES DE SOFTWARE Narcizo Thiago Maniçoba São José, Dezembro de 2015 Orientador: Marcello Thiry, Dr Co-Orientadora: Anita Maria da Rocha Fernandes, Dra Área de Concentração: Engenharia de software Linha de Pesquisa: Qualidade e teste de software Palavras-chave: testes, defeitos, usabilidade Número de páginas: 132 RESUMO Os testes são parte fundamental para garantir a qualidade de um software antes que ele seja usado pelo cliente, e documentar os planos de teste e os relatos de defeitos encontrados é tão importante quanto executá-los, pois dessa forma, dentre muitas vantagens, garante-se a padronização dos testes e a disseminação do conhecimento. Considerando as ferramentas para gestão de testes e as ferramentas para gestão de defeitos gratuitos mais utilizados atualmente, percebe-se que não há uma solução integrada e com boa usabilidade (considerando as 10 heurísticas de Nielsen (1993)) para documentar, na mesma ferramenta, os testes que foram executados e os defeitos que foram encontrados durante os testes de software. Além disso, essas ferramentas não empregam conceitos de usabilidade, então a equipe tende a não documentar ou documentar apenas uma parte dos testes e defeitos pois tem que usar, no mínimo, duas ferramentas e a usabilidade não é boa. Diante desses fatos, o objetivo deste trabalho foi desenvolver uma única ferramenta que contemple as funcionalidades essenciais presentes nas ferramentas gratuitas de gestão de testes e nas ferramentas gratuitas de gestão de defeitos disponíveis no mercado utilizando-se conceitos de usabilidade. Com uma ferramenta integrada, acredita-se que o cruzamento dos testes x defeitos fiquem mais evidentes e os dados sejam melhor aproveitados para análise posterior. Tendo uma ferramenta com boa usabilidade, busca-se despertar o interesse na equipe em documentar os testes e defeitos de maneira correta. ii LISTA DE FIGURAS Figura 1. Custo relativo para corrigir um defeito. ................................................................................... 20 Figura 2. Relação do custo da qualidade para prevenir e corrigir defeitos. ............................................ 21 Figura 3. Definição de defeito, erro e falha. ........................................................................................... 22 Figura 4. Causas de defeitos durante o desenvolvimento do software. .................................................. 23 Figura 5. Dimensões dos testes. .............................................................................................................. 25 Figura 6. Modelo V: paralelismo entre as atividades de desenvolvimento e teste de software. ............. 32 Figura 7. Relação entre coisas óbvias e coisas que fazem o usuário pensar. .......................................... 35 Figura 8. Exemplo de elementos aninhados visualmente. ...................................................................... 36 Figura 9. Exemplo de correta aplicação da heurística Visibilidade do Estado do Sistema .................... 37 Figura 10. Exemplo de correta aplicação da heurística Compatibilidade entre Sistema e Mundo Real 37 Figura 11. Exemplo de correta aplicação da heurística Liberdade e Controle do Usuário. .................... 38 Figura 12. Exemplo de violação da heurística Consistência e Padrões. ................................................. 38 Figura 13. Exemplo de violação da heurística Prevenção de Erro. ......................................................... 39 Figura 14. Exemplo de violação da heurística Ênfase no Reconhecimento. .......................................... 40 Figura 15. Exemplo de violação da heurística Flexibilidade e Eficiência no Uso. ................................. 40 Figura 16. Exemplo de violação da heurística Auxílio, Diagnóstico e Recuperação de Erros. .............. 41 Figura 17. Popularidade das ferramentas bug trackers open source. ...................................................... 45 Figura 18. Popularidade das ferramentas bug trackers open source e comerciais. ................................. 46 Figura 19. Comparativo Bloodhound, Bug-A-Boo, BugNET, BugTracker e Bugzilla. ......................... 47 Figura 20. Comparativo Eventum, Flyspray, Fossil, JTrac e Kwok bug tracker. ................................... 48 Figura 21. Comparativo Mantis, oops-easytrack, phpBugTracker, Redmine e Request Tracker. .......... 48 Figura 22. Comparativo Roundup, RTH, Scarab, Trac e WebIssues. .................................................... 49 Figura 23. Comparativo zenTrack. ......................................................................................................... 50 Figura 24. Popularidade das ferramentas de gestão de testes open source. ............................................ 52 Figura 25. Comparativo QATraq, Radi-testdir, RTH e Sitechco. ........................................................... 53 Figura 26. Comparativo Tesly, Test Case Web, Testia Tarantula e Testitool. ....................................... 54 Figura 27. Comparativo TestLink, Testmaster e Testopia. ..................................................................... 54 Figura 28. TestLink: página principal. .................................................................................................... 56 Figura 29. TestLink: links do menu superior representados por ícones pequenos e sem labels. ............ 59 Figura 30. TestLink: campo de pesquisa na barra superior é somente para casos de teste..................... 60 Figura 31. TestLink: botão criar usuário posicionado após a tabela. ...................................................... 61 Figura 32. TestLink: usuário precisa digitar um ID único ao cadastrar um novo projeto. ..................... 62 Figura 33. TestLink: página de pesquisa de requisitos. .......................................................................... 63 Figura 34. TestLink: página de pesquisa de casos de teste. .................................................................... 63 Figura 35. TestLink: página de pesquisa de casos de teste criados por usuário. .................................... 64 Figura 36. TestLink: é necessário clicar no ícone para mostrar as opções da Suíte e Caso de teste. ..... 64 Figura 37. TestLink: é necessário saber o id do caso de teste antes de criar a relação. .......................... 65 Figura 38. Testopia: página de visualização do estado das execuções dos testes. .................................. 66 Figura 39. Testopia: menu com as operações para gestão de defeitos e testes. ...................................... 67 Figura 40. Testopia: é necessário pressionar Enter após digitar o termo de pesquisa no campo. .......... 68 Figura 41. Testia Tarantula: página de execução de casos de teste. ....................................................... 69 Figura 42. Testia Tarantula: página de visualização dos usuários cadastrados. ..................................... 71 Figura 43. Testia Tarantula: página de adição de casos de teste ao plano de teste. ................................ 72 Figura 44. Mantis: página principal. ....................................................................................................... 73 Figura 45. Mantis: formulários não apresentam a opção Cancelar. ........................................................ 75 iii Figura 46. Mantis: permite anexar apenas um arquivo por vez no relato de defeito. ............................. 75 Figura 47. Mantis: ações “Monitorar” e “Marcar como Pegajoso” não são óbvias para o usuário. ..... 75 Figura 48. Mantis: relação entre relatos de defeito obriga o usuário a saber o número do caso. ........... 76 Figura 49. Bugzilla: página de pesquisa de relatos de defeito. ............................................................... 77 Figura 50. Bugzilla: página de seleção de projeto para pesquisa de defeitos. ........................................ 79 Figura 51. Bugzilla: página de seleção do componente do projeto para pesquisa dos defeitos. ............. 80 Figura 52. Bugzilla: permite anexar apenas um arquivo por vez no relato de defeito. ........................... 80 Figura 53. Bugzilla: histórico de modificações do relato de defeito. ..................................................... 81 Figura 54. Bugzilla: títulos das páginas são apresentadas acima do menu superior. .............................. 81 Figura 55. BugNET: Página principal..................................................................................................... 82 Figura 56. BugNET: permite anexar apenas um arquivo por vez no relato de defeito. .......................... 84 Figura 57. Ferramenta proposta: tela de pesquisa de projetos cadastrados. ........................................... 96 Figura 58. Ferramenta proposta: tela de execução dos casos de teste. ................................................... 97 Figura 59. Ferramenta proposta: tela de cadastro de relato de defeito. .................................................