ALM (Application Lifecycle Management)
Dentresas ferramentas open sources utilzadas para alicar ALM
Redmine – Gestão de projetos, requisitos e bugs
Maven – Builder, construtor padrão da aplicação, independente de IDE
Nexus – Gestão de componenetes de software, não apenas de tela mais de negócio. Modularidade das aplicações e retulização.
Jenkins – Builder da aplicação, agendador de validação do builder, testes automatizados e inspeção de código integrado com o sonar.
Sonar – Inspeção de código, checkstyle, findbugs, etc. Chamado e integrado pelo Jenkins
Este artigo vai demostrar a utilização da ferramenta Redmine com foco na sua integração com o SVN, e ver como é bacana o desenvolvedor através do comentário do commit vincular suas atividades a uma Issue (Tarefa) e até mesmo apontar o número de horas trabalhadas nesta tarefa.
Uma descrição mais completa da ferramenta pode ser obtida no site http://www.redmine.org/
Esta é a tela inicial do Redmine.
Tudo no Redmine é organizado por projetos, ou seja, um projeto é bem independente do outro, talvez até por isso uma das primeiras coisas a se fazer quando entra na ferramenta é escolher um projeto.
No projeto há várias opções e a tela inicial (visão geral) já da uma visão de quantas tarefas estão abertas e fechadas para este projeto, tempo trabalhado
Em atividades mostra tudo o que foi trabalhado no projeto, entre tarefas abertas, fechadas alteradas e commits com seus comentários no SVN
Em tarefas mostra… as tarefas to projeto. Lembrando que a customização dos filtros de pesquisa no Redmine são extremamente flexíveis e pode até mesmo salvar uma consulta feita.
Com base nas tarefas do projeto, e das datas informadas nelas, pode-se obter um gráfico de Gantt.
Há um calendário para melhor visualização das atividades e seus prazos do projeto.
E aqui o mais legal, a visão do repositório. É possível ver as alterações realizadas no fonte, comparações entre versões do fonte e os comentários nos commits.
Lembrando que estes são as opções que vem na instalação padrão do Redmine, há um número vasto de plugins que podem ser instalados, como plugin http://www.redmine.org/plugins que podem complementar algumas funções e relatórios.
Como falei o Redmine deixa tudo personalizado por projeto, e por isso ele tem as suas opções em configurações. Lá podemos escolher quais os membros, categorias de tarefas, o repositório do projeto e quais as atividades para registro de horas estão habilitas para o projeto.
Todas as opções globais, são feitas na Administração, lá pode se criar os projetos, cadastras usuários, grupos, perfis, configurar o modo de autenticação como apontando para um servidor LDAP (geralmente MS AD) da empresa, os tipos de tarefas, as situações de tarefas.
E na configuração de repositórios nas configurações globais do Redmine, observa-se quais os clients estão instalados no servidor, no caso estão os git client e svn client. É necessários instalar as versões clients para que o Redmine possa acessar os repositórios de fontes.
Aqui pode se configurar as PALAVRAS DE REFERÊNCIA que encontradas no comentário do SVN automaticamente tem se uma atividade no redmine, como por exemplo se digitarmos no comentário:
refs #10 comentário do svn
Este comentário vai automaticamente ser vinculado à atividade 10. Assim como fixes pode fechar a atividade
fixes #10 atividade fechada.
E também pode-se habilitar o registro de horas pelo comentário do svn. Observa-se que pode ser definir qual a atividade padrão para registros de horas. Além de para qual situação a atividade é alterada quando encontrar a palava fixes.
Aqui é a referência no site oficial do redmine.
Agora vamos há um exemplo.
Primeiro criamos uma atividade no Redmine. Com um tempo estimado de 2 horas.
Quando o programador fazer o commit, ele pode associar a uma tarefa. Exemplo:
“refs #1 @1h30”
onde @1h30 vai informar que o programador trabalhou 1h30 nesta atividade.
E no menu atividades observa-se esta atividade do SVN.
E na tarefa, pode-se ver que ela já adicionou esta 1h30 de trabalho no registro de horas.
E a visão das atividades realizadas no código fonte que estão no repositório pelo redmine.
Agora vamos apontar para fechar a atividade.
“closes #1 @0:15”
Não esquecer de habilitar o registro de horas e para qual atividade será registrado as horas na configuração do Redmine.
Agora o comentário do svn irá encerrar a atividade, além de registrar 15 minutos de trabalho
“closes #1 @0h15”
E nas Atividades do projeto, visualiza-se tudo o que foi trabalhando no projeto, atente-se ao vínculo para SVN.
E a tarefa automaticamente fechada, somente pelo comentário do SVN.
E na visualização da tarefa observa-se todas as ações realizadas nesta tarefa como a alteração da situação e o registro de horas. Tudo isso feito apenas pelo desenvolvedor pelo comentário no SVN!
O registro de horas…
E para finalizar o envio automático do email para os envolvidos no projeto.