O documento apresenta ferramentas de apoio ao desenvolvimento de software, incluindo Redmine para gerenciamento de projetos, Git para controle de versões e Read the Docs para documentação. Exemplos e exercícios são fornecidos para demonstrar o uso de cada ferramenta.
Aula 04 - Injeção de código (Cross-Site Scripting)
Ferramentas apoio software
1. Ferramentas de apoioFerramentas de apoio
Prof. Alex Dias Camargo
alexcamargo@ifsul.edu.br
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA
SUL-RIO-GRANDENSE
CAMPUS BAGÉ
QUALIDADE DE SOFTWARE
2. 2
I. Plano de aula
Na aula anterior foi visto:
Conceitos básicos, verificação e tipos de teste
Ferramentas de apoio ao teste de software
QDS - Ferramentas de apoio
3. 3
I. Plano de aula
Nesta aula serão apresentadas algumas ferramentas de apoio ao
software:
Gerenciamento de projeto
Gerenciamento de configuração
Gerenciamento de documentação
QDS - Ferramentas de apoio
4. 4
2. Introdução
Ferramentas de apoio ao software são utilizadas para definir,
mensurar, analisar e propor soluções aos problemas que interferem
no desempenho e no resultado das organizações.
Gerenciamento de projetos: Redmine
https://redmine.org/
Gerenciamento de configuração: Git
https://git-scm.com/
Gerenciamento de documentação: Read the Docs
https://readthedocs.org/
QDS - Ferramentas de apoio
5. 5
3. Redmine
O Redmine é uma ferramenta web e open source para controle de
tarefas voltado à gestão de projetos.
Ágil e colaborativa, além de permitir modificações.
QDS - Ferramentas de apoio
6. 6
2. Redmine
QDS - Ferramentas de apoio
Figura. Site oficial: https://redmine.org
7. 7
3. Redmine
QDS - Ferramentas de apoio
Figura. Exemplo: Registro na versão online
8. 8
2. Redmine
QDS - Ferramentas de apoio
Figura. Exemplo: Novo projeto
Desmarcar!
10. 10
3. Redmine
O Redmine é uma ferramenta web e open source para controle de
tarefas voltado à gestão de projetos.
Ágil e colaborativa, além de permitir modificações.
Melhor organização de arquivos: Gráfico de Gantt, notícias,
Wiki, documentos, etc.
QDS - Ferramentas de apoio
20. 20
3. Redmine
QDS - Ferramentas de apoio
Figura. Exemplo: Registro automático das atividades
21. 21
3. Redmine
O Redmine é uma ferramenta web e open source para controle de
tarefas voltado à gestão de projetos.
Ágil e colaborativa, além de permitir modificações.
Melhor organização de arquivos: Gráfico de Gantt, notícias,
Wiki, Fóruns, etc.
Gerenciamento de tempo e múltiplos projetos: projetos
de ensino, implementação de software, infraestrutura e
serviços, etc.
Quem usa: DataSUS, IFSertão - Pernambuco, UFPA, Ministério
do Planejamento, Embrapa, dentre outros.
QDS - Ferramentas de apoio
26. 26
4. Exercícios
1. Com base no cronograma do Componente Curricular: Práticas
em Análise e Desenvolvimento de Sistemas, crie um projeto do seu
trabalho final de curso utilizando a versão online de demonstração
do Redmine (http://demo.redmine.org/ ). É esperado que o aluno
explore ao máximo as funcionalidades da ferramenta, entretanto,
alguns requisitos mínimos serão considerados:
- 2 tarefas
- 2 documentos (arquivos TXT com até 100 KB)
- 1 artigo de wiki
- 1 notícia
Na versão online do Redmine é possível adicionar outros membros
ao projeto. Para esta atividade, adicione o usuário: Alex Camargo
(alexcamargoweb).
QDS - Ferramentas de apoio
27. 27
5. Git
Sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas pode ser
adotado para registrar o edições de qualquer tipo de arquivo.
Inicialmente projetado e desenvolvido por Linus Torvalds para
o desenvolvimento do kernel Linux.
QDS - Ferramentas de apoio
28. 28
5. Git
QDS - Ferramentas de apoio
Figura. Git: Esquema de funcionamento local
29. 29
5. Git
Sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas pode ser
adotado para registrar o edições de qualquer tipo de arquivo.
Inicialmente projetado e desenvolvido por Linus Torvalds para
o desenvolvimento do kernel Linux.
Permite que um arquivo possa ser editado ao mesmo tempo
por pessoas diferentes.
QDS - Ferramentas de apoio
30. 30
5. Git
QDS - Ferramentas de apoio
Figura. Git: Esquema de funcionamento compartilhado
31. 31
5. Git
Sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas pode ser
adotado para registrar o edições de qualquer tipo de arquivo.
Inicialmente projetado e desenvolvido por Linus Torvalds para
o desenvolvimento do kernel Linux.
Permite que um arquivo possa ser editado ao mesmo tempo
por pessoas diferentes.
Repositórios amplamente utilizados: GitHub e BitBucket.
QDS - Ferramentas de apoio
38. 38
5. Git
Sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas pode ser
adotado para registrar o edições de qualquer tipo de arquivo.
Inicialmente projetado e desenvolvido por Linus Torvalds para
o desenvolvimento do kernel Linux.
Permite que um arquivo possa ser editado ao mesmo tempo
por pessoas diferentes.
Repositórios amplamente utilizados: GitHub, BitBucket.
Quem usa: Google, Facebook, Microsoft, Twitter, Netflix,
dentre outros.
QDS - Ferramentas de apoio
39. 39
5. Git
QDS - Ferramentas de apoio
Figura. Google no GitHub: https://github.com/google
40. 40
5. Git
Sistema de controle de versões distribuído, usado
principalmente no desenvolvimento de software, mas pode ser
adotado para registrar o edições de qualquer tipo de arquivo.
Inicialmente projetado e desenvolvido por Linus Torvalds para
o desenvolvimento do kernel Linux.
Permite que um arquivo possa ser editado ao mesmo tempo
por pessoas diferentes.
Repositórios amplamente utilizados: GitHub, BitBucket.
Quem usa: Google, Facebook, Microsoft, Twitter, Netflix,
dentre outros.
Guia prático: a seguir é exibido um passo a passo simplificado
para a utilização do Git.
Disponível em: https://rogerdudler.github.io/git-guide/
QDS - Ferramentas de apoio
41. 41
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
42. 42
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
43. 43
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
44. 44
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
45. 45
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
46. 46
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
47. 47
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
48. 48
5. Git
QDS - Ferramentas de apoio
Figura. Guia prático do git: https://rogerdudler.github.io/git-guide/
50. 50
6. Exercícios
2. Com base no cronograma do Componente Curricular: Práticas
em Análise e Desenvolvimento de Sistemas, crie um repositório da
implementação do seu trabalho final de curso, utilizando o
repositório de códigos Bitbucket (https://bitbucket.org ). É esperado
que o aluno explore ao máximo as funcionalidades da ferramenta,
entretanto, alguns requisitos mínimos serão considerados:
- cadastro na plataforma e criação de um repositório privado
- obtenção de uma cópia local: git clone
- adição e confirmação de mudanças: git add e git commit
- envio e atualização das mudanças: git push e git pull
No Bitbucket é possível adicionar outros membros ao projeto. Para
esta atividade, adicione o usuário: Alex Camargo
(alexcamargoweb).
QDS - Ferramentas de apoio
51. 51
7. Read the Docs
Plataforma gratuita e open source que visa a elaboração de
documentação técnica de software, automatizando a criação, o
versionamento e a hospedagem do código.
Atualmente possui ~270.758 projetos cadastrados.
Webhooks: sincronização automática de projetos Git ou outros
versionadores.
Financiado pela comunidade: hospedagem do projeto
fornecida pela Microsoft Azure.
Quem usa: Python, Mozilla, Cloudflare, dentre outros.
ReStructuredText (.rst): linguagem de marcação
simplificada utilizada para documentação via Read the Docs.
Disponível em: https://www.sphinx-doc.org
QDS - Ferramentas de apoio
52. 52
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
53. 53
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
54. 54
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
55. 55
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
56. 56
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
57. 57
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
58. 58
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
59. 59
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
60. 60
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
61. 61
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
62. 62
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
63. 63
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
64. 64
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
65. 65
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
66. 66
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
67. 67
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Online Sphinx editor: https://livesphinx.herokuapp.com/
68. 68
7. Read the Docs
QDS - Ferramentas de apoio
Figura. Read the Docs: https://readthedocs.org
69. 69
8. Exercícios
3. Com base em um projeto “Teste” criado no GitHub, crie uma
conta gratuita no Read the Docs e faça a sua importação. É
esperado que o aluno explore ao máximo as funcionalidades da
ferramenta, entretanto, alguns requisitos mínimos serão
considerados:
- criação de um repositório público e cadastro na ferramenta
- importação do projeto
- criação de um index.rst customizado via git
- visualização dos resultados com base no link disponibilizado
No Read the Docs é possível adicionar outros membros
(mantededores) ao projeto. Para esta atividade, adicione o usuário:
Alex Camargo (alexcamargoweb).
QDS - Ferramentas de apoio
70. 70
Referências básicas
CHRISSIS, M.B., KONRAD, M., SHRUM, S., CMMI for development:
guidelines for process integration and product improvement, 3rd
edition, Addison Wesley Professional, 2011.
DELAMARO, M.E.; MALDONADO, J.C.; JINO, M. Introdução ao Teste de
Software. Elsevier Editora, ISBN 978-8535226348. 2007.
MYERS, G.; BADGETT, T.; THOMAS, T.; SANDLER, C.; The Art of Software
Testing. Wiley, 3rd Edition, ISBN 978-1118031964. 2011.
PRESSMAN, Roger, MAXIM, Bruce. Engenharia de Software, 8º edição.
AMGH, 01/2016.
PAULA FILHO, W. de P., Engenharia de Software: fundamentos,
métodos e padrões. 3.ed. Rio de Janeiro. LTC. 2008.
ROCHA, A.R.C., SOUZA, G.S., BARCELLOS, M.P., Medição e Controle
Estatístico de Processos. MCTi: Série de Livros PBQP. 2012.
QDS - Ferramentas de apoio