menu

SHARKLABS

Scrum e Redmine: É simples, é gratuito, mas ninguém contou a você

/
/
Scrum e Redmine: É simples, é gratuito, mas ninguém contou a você
bookmark Métodos Ágeis, Redmine access_time

Scrum: É simples

O Scrum é um framework que reuni práticas que facilitam o desenvolvimento e a gestão de projetos. Em 1986, Takeuchi e Nonaka publicaram uma pesquisa descrevendo que equipes pequenas e multidisciplinares produziam mais e melhor, semelhante ao Scrum das equipes rugby.

Desde então o Scrum é aperfeiçoado com o objetivo de deixar os processos de um projeto simples e eficientes.

Para você ter uma noção de como o Scrum é simples, basicamente ele é formado por papéis, Sprints, artefatos e cerimônias:

  • Os papéis designam as responsabilidades dos envolvidos.
  • Os Sprints são ciclos de trabalho, que respeitam as cerimônias definidas e onde os artefatos são implementados.
  • Os artefatos representam os requisitos ou funcionalidades do projeto.
  • E por fim, as cerimônias são eventos que servem para determinar o início ou fim das etapas do Sprint, normalmente são acompanhadas de uma reunião entre os integrantes.

Desta forma, o Scrum é composto por um conjunto de Sprints, onde os responsáveis (de acordo com seus papéis) seguem algumas cerimônias com o objetivo de desenvolver os artefatos.

Redmine: É gratuito (Open Source)

Redmine é um software voltado ao gerenciamento de projetos. Por meio de sua flexibilidade e de uma interface simples, a ferramenta rapidamente ganhou adeptos no mundo todo.

Com código aberto (Open Source), o Redmine pode ser utilizado por qualquer pessoa e de forma gratuita. Sua comunidade é extremamente ativa e todos dias novas funcionalidades são desenvolvidas e bugs são corrigidos.

Mais detalhes estão na página oficial do Redmine.

Os papéis do Scrum e como organizá-los no Redmine

A simplicidade do Scrum fica clara na sua definição de papéis, uma vez que são apenas três.

Embora sejam poucos, eles são bem definidos e não podem ser confundidos com cargos. Segue a definição de cada um:

  • Product Owner: Responsável por definir quais são os artefatos do projeto e as suas prioridades. Precisa compreender os requisitos do negócio com o objetivo de garantir o sucesso do produto junto ao mercado.
  • Scrum Master: É a pessoa que garante o cumprimento das regras e dos valores do Scrum. Pode ser considerado como um “facilitador”, pois organiza as cerimônias e procura remover os impedimentos do projeto.
  • Scrum Team: São os responsáveis por concluir as atividades, também conhecido como equipe de desenvolvimento. A equipe deve ser auto-organizada, multidisciplinar e tem autoridade técnica sobre os trabalhos realizados.

No Redmine existe um cadastro de papéis que fica disponível na área de administração.

Cadastro de Papéis do Redmine

Com os papéis cadastrados é possível relacioná-los com usuários e torná-los membros do projeto. O Redmine também permite que privilégios distintos sejam atribuídos a cada papel, ou seja, acesso restrito a algumas rotinas.

Cada Sprint pode ser considerado como uma versão no Redmine?

O Scrum precisa ser executado de forma iterativa e incremental, essa é uma de suas principais premissas.

Desta maneira, os Sprints são ciclos de trabalho com duração fixa e ao final de cada Sprint o produto precisa ser incrementado e um novo ciclo precisa ser iniciado, ou seja o projeto caminha de modo iterativo (frequente e executado mais de uma vez) e incremental (que aumenta gradualmente).

O cadastro de versão do Redmine pode ser utilizado para organizar os Sprints, uma vez que as versões também representam ciclos de trabalho e contém datas de início e fim.

Dentro do Redmine as versões ficam disponível nas configurações do projeto.

Cadastro de Versão do Redmine

É possível perceber que o cadastro de versão é bem simples. Você é livre para definir o nome de sua versão, podendo utilizar um número sequencial (mais tradicional) ou quem sabe batizar suas versões com nomes criativos, a exemplo do que acontece com o Android.

Caso você precise cadastrar alguma informação e não exista um campo específico, os campos personalizados são uma ótima solução. Mais detalhes estão na página oficial do Redmine

Organizando os artefatos

Quando o Product Owner inicia a definição dos requisitos ou das funcionalidades que o projeto precisa contemplar é fácil perceber que é preciso organizá-los para que não se torne uma grande bagunça.

Neste momento as pessoas se perguntam: Como fazer? Qual a melhor maneira?

Inicialmente o Scrum define que as funcionalidades do projeto precisam ser separada em três grupos:

  • Product Backlog: Lista de funcionalidades que precisa ser desenvolvida e o Product Owner é o responsável pela elaboração, só ele pode inserir ou cancelar os itens. Também é sua função deixar claro a prioridade de cada requisito.
  • Sprint Backlog: Lista de funcionalidades que serão desenvolvidas durante o Sprint, ou seja, a cada novo Sprint um novo Sprint Backlog é formado. É responsabilidade do Scrum Team selecionar os requisitos mais importantes do Product Backlog.
  • Product Increment: Lista de funcionalidades que foram desenvolvidas no Sprint Backlog e estão concluídas.

Para organizar todas essas informações é necessário convencionar que todos os requisitos ou funcionalidades serão cadastrados como atividades do Redmine.

Várias informações podem ser adicionadas nas atividades do Redmine, proporcionando uma documentação bem completa.

Nova Tarefa Redmine

Para organizar tudo isso no Redmine é muito simples e mais uma vez utilizaremos o cadastro de versão:

  • Product Backlog: Criar uma versão com o nome Product Backlog.
  • Sprint Backlog: No capítulo anterior convencionamos que Sprint será uma versão e portanto utilizaremos o mesmo cadastro.
  • Product Increment: Será formado pelas versões concluídas. O campo situação no cadastro de versão do Redmine indica se a versão está fechada (concluída).

A partir de agora é só relacionar as atividades (funcionalidades) com o cadastro de versão.

Conselho: Documente as cerimônias do Scrum

O Scrum define algumas cerimônias que funcionam como eventos e determinam marcos importantes do Sprint. Ao todo são 4 cerimônias:

  • Sprint Planning Meeting: É a reunião de planejamento do Sprint. O objetivo é decidir quais serão os itens do Sprint Backlog. Fazem parte desta reunião o Product Owner, Scrum Master e o Scrum Team.
  • Daily Scrum: É a reunião diária do Scrum Team e deve ser discutivo o que foi realizado, o que será realizado e se existe algum impedimento. Esta cerimônia acontece todos os dias com horário e duração fixa (preferencialmente curta). O Product Owner e o Scrum Master, podem participar, mas a reunião não deve ser vista como um Status Report.
  • Sprint Review Meeting: Nesta Reunião o Scrum Team demonstra as funcionalidades desenvolvidas e o Product Owner valida ou não a entrega. O objetivo da reunião é revisar atividades realizadas.
  • Sprint Retrospective: Acontece logo após ao Sprint Review Meeting e seu objetivo é discutir e melhorar o processo. Refletir quais foram as práticas e ferramentas que funcionaram e o que precisa ser revisado. Momento ideal para o Scrum Master fazer observações das regras e dos valores do Scrum.

Recomendo que cada cerimônia seja documentada no Redmine como uma atividade. É importante criar um tipo de tarefa para separar as cerimônias das funcionalidades do produto.

Conforme as cerimônias sejam executadas as atividades precisam ser concluídas. Também é interessante registrar as datas previstas, tempo das reuniões e descrever o que foi discutido. Seguindo estes passos você terá um ótimo histórico de projeto.

Caso seja necessário algo mais formal você pode criar Wikis para documentar as cerimônias, mas recomendo também manter a documentação em atividades.

Redmine: Download e Instalação

Você pode baixar o Redmine no site oficial, onde você também encontra os passos de instalação: http://www.redmine.org/projects/redmine/wiki/download http://www.redmine.org/projects/redmine/wiki/redmineinstall

Alguns detalhes relevantes é que você precisará do instalador do Ruby e é importante você instalar em algum servidor, uma vez que ele pode ser acessado por meio da internet (on-line).

Algumas pessoas preferem instalar em suas próprias máquinas, utilizando o banco de dados SQLite. É opção que o Redmine lhe dá, mas recomendamos que isso somente feito para testes. Planos de hospedagem não são caros e alguns inclusive são gratuitos, vale ressaltar que você terá sua aplicação on-line e pode acessá-la de qualquer lugar.

Scrum é um Framework

O Scrum é um framework, ou seja, um conjunto de técnicas que visam ajudar em projetos complexos e com alta imprevisibilidade.

Um dos maiores benefícios do Scrum é que você é livre para adaptá-lo a sua necessidade, mas tome cuidado para que a essência não seja perdida.

Conclusão

O objetivo deste artigo é mostrar que o Redmine pode ser utilizado com o Scrum de forma nativa e sem plugins de terceiros.

Muitas pessoas procuram uma ferramenta gratuita e Open Source para aplicar o Scrum e com certeza o Redmine é uma ótima opção.

Para dúvidas ou sugestões deixe seu comentário ou entre em contato.

Autor
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." Martin Fowler