O que iremos ver hoje para alguns é novidade já para outros nem tanto. Hoje vamos falar sobre Metodologia Ágil e SCRUM.

Mas o que é SCRUM? Abaixo você poderão ver uma descrição sucinta sobre SCRUM:

Scrum é um método ágil para Gerenciamento de Projetos.

O Scrum foi concebido como um estilo de gerenciamento de projetos em empresas de fabricação de automóveis e produtos de consumo, por Takeuchi e Nonaka no artigo “The New New Product Development Game” (Harvard Business Review, Janeiro-Fevereiro 1986). Eles notaram que projetos usando equipes pequenas e multidisciplinares (cross-functional) produziram os melhores resultados, e associaram estas equipes altamente eficazes à formação Scrum do Rugby (utilizada para reinício do jogo em certos casos). Jeff Sutherland, John Scumniotales, e Jeff McKenna documentaram, conceberam e implementaram o Scrum, como descrito abaixo, na empresa Easel Corporation em 1993, incorporando estilos de gerenciamento observados por Takeuchi e Nonaka. Em 1995, Ken Schwaber formalizou a definição de Scrum e ajudou a implantá-lo em desenvolvimento de software em todo o mundo.

Scrum é um mix de alguns conceitos tais como desenvolvimento iterativo e Lean além é claro do estudo de Hirotaka Takeuchi e Ikujiro Nonaka.

Podemos dizer que a função primária do Scrum é ser utilizado para o gerenciamento de projetos de desenvolvimento de software e nesse ponto, ele tem dado muito sucesso. No entanto, SCRUM pode ser aplicado em qualquer contexto no qual um grupo de pessoas necessitem trabalhar juntas para atingir um objetivo comum. Tal objetivo pode ser um projetos de pesquisa científica, a construção de um prédio ou de um carro e até mesmo pode ser aplicado ao planejamento de uma festa como um aniversário ou um casamento.

Como podem ver, SCRUM não está relacionado apenas com tecnologia, ele também pode ser usado para gerenciar equipes de manutenção ou como uma abordagem para gestão de programas, o que chamamos de “Scrum de Scrums”.

Alguns dos principais itens do Scrum

Sprint – É uma iteração (que pode ser parte de uma release)  que deve ser realizada entre 2 a 4 semanas, no qual a equipe do projeto deverá produzir um entregável de valor para o cliente (lembre-se dos Princípios do Manifesto Ágil).

Product Backlog – é uma lista contendo todas as funcionalidades desejadas para um produto.

Estória – é uma pequena descrição, que detalha um item do Product Backlog.

Planning Poker – é a “prática” que ajuda na estimativa de uma estória ou de uma tarefa.

Sprint Backlog – é uma lista de tarefas que equipe se compromete a fazer durante a Sprint.

Dentre estes itens ainda podemos destacar:

–  Scrum Master, que tem como função primária remover qualquer impedimento à habilidade de uma equipe de entregar o objetivo do sprint. O Scrum Master não é o líder da equipe (já que as equipes são auto-organizadas) mas atua como um firewall entre a equipe. Outra função extremamente importante de um Scrum Master é o de assegurar que a equipe esteja utilizando corretamente as práticas de Scrum, motivando-os e mantendo o foco na meta da Sprint.

Product Owner, que tem como função definir a visão do produto, elaborar e manter o Product Backlog, definir a prioridade do ROI, representar o cliente e aceitar ou rejeitar os entregáveis.

Por não haver um “chefe”, o Scrum permite a criação de equipes auto-organizadas, encorajando a comunicação verbal entre todos os membros da equipe e entre todas as disciplinas que estão envolvidas no projeto, isso faz com que um dos princípios chave do Scrum seja o reconhecimento de que, desafios fundamentalmente empíricos, não podem ser resolvidos com sucesso utilizando uma abordagem tradicional de “controle”. Assim, o Scrum adota uma abordagem empírica, aceitando que o problema não pode ser totalmente entendido ou definido, focando na maximização da habilidade da equipe de responder de forma ágil aos desafios emergentes.

Mas como nem tudo são flores, um dos grandes defeitos do Scrum, porém, é a abordagem de “receita de bolo” do gerenciamento de projetos exemplificado no Project Management Body of Knowledge ou Prince2, que tem como objetivos atingir qualidade através da aplicação de uma série de processos prescritos.

Com a adoção do Scrum, algumas boas práticas são colocadas em prática:

– Clientes se tornam parte da equipe de desenvolvimento (os clientes devem estar genuinamente interessados na saída);

–  Entregas frequentes e intermediárias de funcionalidades 100% desenvolvidas;

–  Planos frequentes de mitigação de riscos desenvolvidos pela equipe;

–  Discussões diárias de status com a equipe;

–  A discussão diária na qual cada membro da equipe responde às seguintes perguntas:
* O que fiz desde ontem?
* O que estou planejando fazer até amanhã?
* Existe algo me impedindo de atingir minha meta?

–  Transparência no planejamento e desenvolvimento;

–  Reuniões frequentes com os stakeholders (todos os envolvidos no processo) para monitorar o progresso;

–  Problemas não são ignorados e ninguém é penalizado por reconhecer ou descrever qualquer problema não visto;

–  Locais e horas de trabalho devem ser energizadas, no sentido de que “trabalhar horas extras” não necessariamente significa “produzir mais”.

Bem pessoal, vimos hoje um pouco de Scrum, sei que isso não é tudo pois não iria conseguir explanar tudo em um único post, sendo assim breve iremos dar continuidade ao nosso “estudo” sobre Metodologias Ágeis e SCRUM.

Espero que tenham apreciado, nos vemos nos próximos posts!

Enjoy!