Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
br : :
Usando Redmine
como ferramenta de Bug Tracking
Uma ferramenta bugtracking open-source em Ruby on Rails
52
er o RedMine para gerenciar projetos é ter o poder de 5. Joãozinho já quase resolveu o bug, mas, por estar permanen-
criar as tarefas que precisam ser desenvolvidas, quando temente sendo interrompido por telefonemas e e-mails de
estas devem ser concluídas e informar quem tem que clientes reclamando por causa do bug, ainda não conseguiu
fazer. O destinatário da tarefa recebe um e-mail de notificação do solucioná-lo.
trabalho a ser feito e quando este deve ser iniciado. O status da 6. Joãozinho resolve o bug e faz uma nova versão da aplicação.
task (tarefa) permite manter todo o time atualizado. Ter o per- Claro que a nova versão não tem só a correção do botão, tem
centual do quanto já foi concluído de uma determinada tarefa outras correções que foram feitas recentemente. Ele tem que
ajuda outros membros da equipe técnica e até o próprio cliente compilar a lista de correções, ver os e-mails trocados entre os
saber como está progredindo determinada solicitação. Outros developers, telefonar para os outros developers etc.
membros (desenvolvedores, testadores, Team Leader podem in- 7. Zezinho já encontrou onde está o bug, entretanto, recebe um
serir um comentário em uma tarefa). Há um log de atualização telefonema de Joãozinho perguntando quais correções mais
no ticket que foi aberto, onde temos todo tracking de atualização, recentes foram feitas. Zezinho diz-lhe que está a resolver o
sabendo quando e quem fez o ultimo update. Ter a opção de usar problema do botão cancelar. Joãozinho responde-lhe que já
a ferramenta em português é uma vantagem, pois nem sempre foi resolvido. Zezinho se desespera. Os clientes continuam a
teremos clientes que vão se sentir confortáveis ao usar a ferra- telefonar.
menta em outro idioma (inglês, por exemplo) e esta característica
pode ser considerada um ponto positivo. Neste artigo veremos Com a ferramenta de bug tracking, teríamos algo assim:
a importância de uma ferramenta de bug tracking, em seguida 1. Joãozinho recebe um telefonema de um cliente informando
apresentaremos o RedMine e suas funcionalidades, e por último que está com problemas na aplicação, pois ao clicar no botão
a integração do RedMine com outras tecnologias que fazem parte cancelar retorna para uma página com a mensagem 500.
do ciclo de desenvolvimento de software. 2. Joãozinho introduz na ferramenta de bug tracking a descrição
do bug e comunica ao cliente o identificador (ticket) do bug
A importância de uma ferramenta de bug para que o cliente possa acompanhar a evolução do mesmo
através da web. Há projetos que o próprio cliente abre o cha-
tracking mado do problema, quando este tem acesso e permissão para
fazer isso na ferramenta.
Ter uma ferramenta de bug tracking em um projeto de desenvol-
3. Joãozinho já imagina como resolver e começa a corrigir, mas
vimento de software sem sombra de dúvidas é algo que tem se
primeiro marca esse bug como “Em Correção”, “Em Anda-
tornado requisito nos últimos tempos, porém, ainda é possível
mento” na ferramenta de bug tracking.
encontrar projetos que excluem ou desconhecem a importância
4. Zezinho que não está junto de Joãozinho recebe um telefo-
do uso da ferramenta. Os melhores bug trackers vão permitir sa-
nema de outro cliente com o mesmo problema. Claro que nós
ber quais atividades estão atrasadas, as que estão dentro do prazo,
sabemos que é o mesmo problema, mas o cliente não sabe e
quem é responsável pelo desenvolvimento e acompanhamento
muito menos Zezinho. E o nosso colega Zezinho, após pesqui-
de uma determinada tarefa, quem abriu o chamado etc. Um dos
sar na ferramenta de bug tracking antes de pensar no proble-
problemas, e que às vezes é bem comum para gerentes de proje-
ma, verá que já foi resolvido por Joãozinho.
tos, é saber quanto tempo foi gasto em um determinado projeto.
5. Joãozinho resolveu o bug rapidamente porque a maioria dos
Com o uso de uma ferramenta de bug tracking é possível ter uma
clientes, antes de telefonarem ou enviarem e-mail reclaman-
média de quantas horas já foram gastas e se essas horas estão de
do, pesquisaram no bugtracker e viram que o bug estava em
acordo com o planejado. Lembrando que horas gastas impactam
correção.
diretamente no capital de um produto. A seguir, é apresentado
6. Joãozinho faz uma nova versão da aplicação e consegue saber
um contexto com e sem o uso de uma ferramenta de bug tracking
todas as correções incluídas na versão com uma simples pes-
no projeto.
quisa “Bugs resolvidos na versão XXX”.
Quando não temos uma ferramenta de bug tracking, o cenário a
Observe o quanto a ferramenta de bug tacking ajudou não só resol-
seguir é bastante comum. Veja:
ver o problema e poupar o tempo de Zezinho, mas também a docu-
Joãozinho (Developer) / Zezinho (Developer) mentar um processo. Sem falar que as ferramentas de bug tracking
1. Joãozinho recebe um telefonema de um cliente informando que normalmente devem nos fornecer o tempo estimado a ser gasto e
está com problemas na aplicação, pois ao clicar no botão can- quanto foi consumido para aquela determinada tarefa/ticket.
celar retorna para uma página com a mensagem 500.
2. Joãozinho já sabe como resolver o problema e começa a imple- O RedMine
mentar a solução.
3. Zezinho, que não está junto de Joãozinho, recebe um telefone- O RedMine é um projeto para gerenciamento de aplicações via
ma de outro cliente com o mesmo problema. Claro que nós Web, escrito em Ruby on rails frameworks. O RedMine é um pro-
sabemos que é o mesmo problema, mas o cliente não sabe, jeto open-source sobre a license GNU General Public License V2
e muito menos Zezinho. Além disso, Zezinho nem imagina (GPL) que possui uma série de características, a saber:
onde esteja o bug porque ele não desenvolveu essa parte da t 4VQPSUBNÞMUJQMPTQSPKFUPT
aplicação, uma vez que entrou no time há duas semanas ape- t 4VQPSUFBP(BOUU DBMFOEÈSJPTFHSÈmDPT
nas. t 1PTTJCJMJEBEFEFBOFYBSEPDVNFOUPTFBEJDJPOBSOPUÓDJBTBPT
4. Zezinho começa a tentar descobrir onde está o bug, projetos
53
: : www.mundoj.com.br : :
t 8JLJFGØSVOTQPSQSPKFUP
t 'FFETFOPUJmDBÎÜFTWJBFNBJM
t 5JNF5SBDLJOH
t 1FSTPOBMJ[BÎÍPEPTmFMETQPSQSPKFUPT
t *OUFHSBÎÍPDPNGFSSBNFOUBTEFDPOUSPMFEFWFS-
são: SVN, CVS, Git, Mercurial, Bazaar and Darcs
t 4VQPSUFBVUFOUJDBÎÍP-%"1
t 4VQPSUFBEJWFSTPTJEJPNBT
JODMVTJWF1PSUVHVÐT
Brasil
t 4VQPSUFBNÞMUJQMPTCBODPTEFEBEPT
t $BEBVTVÈSJPQPEFUFSQBQÏJTEJGFSFOUFTFNDBEB
projeto
t 1PEFUFSQSPKFUPTQÞCMJDPTFQSJWBEPT
t .ØEVMPT XJLJ
SFQPTJUPSZ
JTTVFUSBDLJOHFUD
QP-
dem ser habilitados/desabilitados por projetos.
São apresentadas nas figuras 1, 2 e 3 o layout do Figura 3. Gráficos e calendário automático Gantt.
O link para ver a versão demo pode ser encontrado nas referências
do presente trabalho. Assim, você poderá tirar suas conclusões da
ferramenta antes de colocar em seu ambiente.
“Fico feliz quando eu abro um projeto e vejo o que foi feito nos
dias anteriores, o que há para ser feito no dia seguinte e ainda o
que está atrasado”. Essa é a sensação de um usuário do RedMine.
54
em PHP, trabalha com MySQL, MS SQL e PostgreSQL,
sincronizados na ferramenta de bugtrack. Então, será possível
sendo baseada em Web. O Mantis roda em Windows, Li-
saber quem e o que foi commitado sem precisar ir até o history da
nux, Mac OS, OS/2, dentre outros. Está sobre os termos
ferramenta de controle de versão. Além disso, é possível configu-
da licença GPL (http://www.mantisbt.org/).
rar um ticket com as ações no repositório, onde, através de tags,
t 5SBDoP5SBD
BMÏNEFTFSVNTJTUFNBEFHFSFODJBNFOUP
ações possam refletir na ferramenta. Exemplo: um desenvolvedor,
de bugs, possui a funcionalidade de wiki para documen-
ao finalizar uma task e efetuar o commit, pode usar no final do
tação. Sua interface é web e também está sobre a licença
comentário uma tag chamada 'done' e o redmine quando encon-
GPL. Dentre os seus usuários está o Laboratório de Pro-
trar essa tag automaticamente mudará o status do ticket que está
pulsão a Jato da NASA (http://trac.edgewall.org/).
associado para algo como 'concluído'.
t ;FQIZS o VNB BQMJDBÎÍP DPN JOUFSGBDF 8FC
GFJUB FN
Flash, especifica para equipes de Testes. Dentre suas
principais funcionalidades estão: criação de testes suites,
execução de testes, geração de relatórios e o gerencia-
mento de bugs. Sua licença é gratuita até três usuários
Para Saber Mais (http://www.getzephyr.com/).
No Google Groups há uma comunidade ativa em por-
tuguês para quem usa o RedMine. Então, se você tem
interesse em tirar dúvidas, ajudar etc., participe da co-
munidade e faça sua contribuição. Vale lembrar que não Considerações finais
é uma comunidade oficial da RedMine https://groups.
google.com/group/redmine-br
Neste artigo, foi apresentado um pouco sobre a ferramenta
A documentação do RedMine disponível no próprio site Redmine, ferramenta de bug tracking desenvolvida em Ruby on
do fabricante www.redmine.org está bem organizada e Rails, que tem sido amplamente usada no processo de desenvol-
possui bastantes informações sobre funcionalidades espe- vimento de software, na indústria etc. Apresentamos as principais
cíficas que não vêm como padrão ao instalar a ferramenta, funcionalidades e integração com outras ferramentas como SVN,
mas que podem ser ativadas. Git etc., bem como o suporte a múltiplos idiomas, incluindo o
português do Brasil e suporte a notificação via e-mail de forma
automática. E tudo isso é oferecido de forma open-source sobre a
licença GPL. Uma das vantagens do Redmine é que se pode testar
a ferramenta sem precisar instalar. Basta ir ao site da ferramenta e
Outras ferramentas de BugTracking ver a tecnologia em execução.
t #VH[JMMB o Ï B NBJT GBNPTB F VTBEB GFSSBNFOUB EF CVH
tracking open source. Baseada em Web, ela é mantida
por voluntários, sendo utilizada por diversos projetos e
empresas, dentre os principais: Mozilla, Gnome, Nasa,
NBC e Wikipédia. (http://www.bugzilla.org/).
t &WFOUVN o DSJBEB F EJTQPOJCJMJ[BEB HSBUVJUBNFOUF QFMB
MySQL, encontra-se atualmente na versão 2.1.1. Forne-
ce uma interface amigável e flexível sistema de emissão
de rastreamento que pode ser utilizado tanto por um de- GUJ – Discussões sobre o tema do artigo e
partamento de suporte técnico para monitorar solicita- assuntos relacionados
ções de suporte ou por uma equipe do desenvolvimento
de software, a fim de organizar tarefas e bugs. O Even- Discuta este artigo com 100 mil outros
tum é usado pela equipe de Suporte Técnico do MYSQL desenvolvedores em www.guj.com.br/MundoJ
Lab (http://dev.mysql.com/downloads/other/eventum/)
t 'PH#VH[ o P 'PH#VH[
BMÏN EF PGFSFDFS P DPOUSPMF EF
bugs, traz um sistema completo de gerência de projeto a
fim de auxiliar a comunicação nas equipes de software.
Um de seus diferenciais é a inclusão de uma wiki, onde
se pode criar documentos e especificações técnicas e fun-
cionais. Ponto este que já vem como default no redmine
(http://www.fogcreek.com). Referências
t +JSBoÏVNBBQMJDBÎÍP+&&EFBDPNQBOIBNFOUPFHFT- t IUUQXXXSFENJOFPSH
tão dos problemas. Possui funcionalidade de gestão de t IUUQEFNPSFENJOFPSH
projetos. O Jira pode ser baixado gratuitamente, porém t IUUQXXXCVH[JMMBPSH
t IUUQEFWNZTRMDPNEPXOMPBETPUIFSFWFOUVN
em versão Trial, que expira após 30 dias (http://www. t IUUQXXXGPHDSFFLDPN
atlassian.com/software/jira/). t IUUQXXXNBOUJTCUPSH
t .BOUJToÏVNBGFSSBNFOUBEFCVHUSBDLJOHMJWSF&TDSJUB t IUUQUSBDFEHFXBMMPSH
t IUUQXXXHFU[FQIZSDPN
55