Desenvolvimento

Ξ Deixe um comentário

Introdução ao Framework Scrum

publicado por Márcio Pulcinelli

Este artigo tem por objetivo apresentar ao leitor uma breve introdução ao mundo do Scrum e por consequência, das metodologias ágeis. O que apresento aqui, são os princípios básicos que devem ser seguidos na implementação do framework Scrum para qualquer projeto de software que deseje utilizar este framework.

Não poderia iniciar sem dizer que Scrum é baseado nas melhores práticas aceitas atualmente pelo mercado, utilizadas e provadas por décadas. Desta forma, podemos dizer que é definido através de uma teoria forjada por processos empíricos. Ao contrário do que muitos pensam, o Scrum vem sendo utilizado para o desenvolvimento de produtos complexos desde o início dos anos 90.

O que o Scrum NÃO é? Scrum NÃO é um processo ou uma técnica para o desenvolvimento de produtos.

O que o Scrum é, então? O Scrum considerado um framework dentro do qual você pode empregar diversos processos e técnicas. O papel do Scrum é fazer transparecer a eficácia relativa das suas práticas de desenvolvimento para que você possa melhorá-las, enquanto provê um framework dentro do qual produtos complexos podem ser desenvolvidos.

Abaixo apresento uma ilustração do Framework Scrum:

SNAGHTML9308b9

Sendo assim, o Scrum é fundamentado na teoria de controle de processos empíricos, empregando uma abordagem iterativa e incremental para otimizar a previsibilidade e controlar riscos.

Atualmente três pilares sustentam cada implementação de controle de processos empíricos. São eles:

O primeiro pilar é a transparência:

A transparência garante que aspectos do processo que afetam o resultado devem ser visíveis para aqueles que gerenciam os resultados.

O segundo pilar é a inspeção:

Os diversos aspectos do processo devem ser inspecionados com uma frequência suficiente para que variações inaceitáveis no processo possam ser detectadas.

O terceiro pilar é a adaptação:

Se for determinado, a partir da inspeção, que um ou mais aspectos do processo estão fora dos limites aceitáveis e que o produto resultante será inaceitável, ele deverá ajustar o processo ou o material sendo processado. Esse ajuste deve ser feito o mais rápido possível para minimizar desvios posteriores.

Segundo os pilares do Scrum, existem hoje, três pontos para inspeção e adaptação em Scrum:

A Daily Scrum é uma reunião utilizada para inspecionar o progresso em direção à Meta da Sprint e para realizar adaptações que otimizem o valor do próximo dia de trabalho.

As Reuniões de Revisão da Sprint e de Planejamento da Sprint são utilizadas para inspecionar o progresso em direção à Meta da Release e para fazer as adaptações que otimizem o valor da próxima Sprint.

Por fim, a Retrospectiva da Sprint é utilizada para revisar a Sprint passada e definir quais adaptações tornarão a próxima Sprint mais produtiva.

Dentro do framework Scrum existe um conjunto formado por Times de Scrum e seus papéis associados, Time-Boxes (eventos com duração fixa), Artefatos e Regras.

Times de Scrum: são projetados para otimizar flexibilidade e produtividade. São auto-organizáveis, multidisciplinares e trabalham em iterações. Dentro de cada um dos Times de Scrum existem três papeis (Scrum Master, Product Owner e os membros do Time).

Quem é o Scrum Master? É o responsável por garantir que o processo seja compreendido e seguido (não é necessariamente um gerente de projetos).

Quem é o Product Owner? É responsável por maximizar o valor do trabalho que o Time de Scrum executa.

Quem são os membros do Time? São as pessoas que executam o trabalho propriamente dito. O Time consiste em desenvolvedores com todas as habilidades necessárias para transformar os requisitos do Product Owner em um pedaço potencialmente entregável do produto ao final da Sprint.

Um fato relevante a ser aprestado sobre o Scrum é que o mesmo não utiliza cronogramas e sim eventos com duração fixa, que são chamados de “Time Boxs”, o que cria uma regularidade temporal. Exemplo disso são as reuniões de planejamento da release, a reunião de planejamento de Sprint, a Sprint em si, a Daily Scrum (reunião diária), a revisão da Sprint e a retrospectiva da Sprint. Todos estes itens citados fazem utilização de Time Box.

Estamos falando sobre Sprint, mas o que exatamente seria uma Sprint? A Sprint é o cerne do framework Scrum. É uma iteração de um mês ou menos (depende de cada projeto), de duração consistente com o esforço de desenvolvimento. Todas as Sprints devem utilizar o mesmo modelo de Scrum e devem ter como resultado um incremento do produto final que é potencialmente entregável. Sempre uma Sprint inicia imediatamente quando a anterior finaliza.

Os quatro principais artefatos são: Product Backlog, Sprint Backlog, Burndown da Release e o Burndown da Sprint. Abaixo vou explicar um pouco sobre cada um dos artefatos.

Product Backlog é uma lista priorizada de tudo que pode ser necessário no produto.

Sprint Backlog é uma lista de tarefas para transformar o Product Backlog, por uma Sprint, em um incremento do produto potencialmente entregável.

Um Burndown de Release mede o Product Backlog restante ao longo do tempo de um plano de release.

Um Burndown de Sprint mede os itens do Sprint Backlog restantes ao longo do tempo de uma Sprint.

No próximo artigo entrarei em maiores detalhes sobre cada um dos papeis dentro do framework Scrum.

Autor

Márcio Pulcinelli é consultor da área de Tecnologia a mais de dez anos. Os últimos oito anos foram voltados para projetos na área de gestão de sistemas em Gás & Energia e Petróleo junto aos clientes Petrobras S.A e Gas de France (GdF Suez E&P Norge AS) sendo o último, projeto no exterior (Noruega) ambos pela empresa Accenture do Brasil. Alguns anos em projetos de crédito junto ao cliente Caixa Econômica pela empresa UNISYS Outsourcing. Experiência em gestão de projetos de tecnologia, mapeamento de processos, modelagem organizacional de negócio, Implantação de Enterprise Project Management (EPM) com foco em gestão de projetos de manutenção de plataforma de petróleo e perfuração de poços exploratórios, modelagem de painéis de indicadores para CLPs (Computador Lógico Programável) em malha de gasodutos, responsável pela modelagem de sistemas de intervenções e paradas para malha de gasoduto, dentre outras áreas de atuação. Visite meu site: blog.marcio-pulcinelli.com

Márcio Pulcinelli

Comentários

You must be logged in to post a comment.

Busca

Patrocínio

Publicidade



Siga-nos!

Newsletter: Inscreva-se

Para se inscrever em nossa newsletter preencha o formulário.

Artigos Recentes