Scrum? O que é? Como funciona?

O que é o Scrum?

O Scrum é um método ágil para gerenciamento de projetos de desenvolvimento de software. Porém, teoricamente, pode ser aplicado em qualquer contexto no qual um grupo de pessoas com conhecimentos multidisciplinares necessitem trabalhar juntas para atingir um objetivo comum, como iniciar uma escola pequena, projetos de pesquisa científica ou até mesmo o planejamento de um casamento.

O Scrum junta conceitos de Lean, desenvolvimento iterativo e do estudo de Hirotaka Takeuchi e Ikujiro Nonaka no artigo The New Product Development Game.

Como funciona? (em vídeo, em inglês)

O vídeo abaixo explica em menos de 10 minutos praticamente todo o funcionamento do Scrum (por alto obviamente) de uma maneira muito didática. O único “problema” é que é todo falado em inglês, não possuindo legenda em português nem em inglês (pra quem tem dificuldade em entender o que é dito).

Como funciona? (em slides, em português)

Segue uma apresentação utilizada aqui na MJV para apresentar o Scrum para os clientes.

Como funciona? (em texto, em português)

No Scrum, os projetos são dividos em ciclos (tipicamente mensais) chamados de Sprints. O Sprint representa um tempo definido dentro do qual um conjunto de atividades deve ser executado. Metodologias ágeis de desenvolvimento de software são iterativas, ou seja, o trabalho é dividido em iterações, que no Scrum são chamadas de Sprints e geralmente duram de 2-4 semanas.

As funcionalidades a serem implementadas no projeto são mantidas em uma lista que é conhecida como Product Backlog. No início de cada Sprint, faz-se um Sprint Planning Meeting (uma reunião de planejamento), na qual o Product Owner (quem representa os stakeholders) prioriza todos os itens do Product Backlog e a equipe seleciona as funcionalidades que ela será capaz de implementar durante o Sprint que se inicia. As funcionalidades alocadas em um Sprint são transferidas do Product Backlog para o Sprint Backlog.

Diariamente, em uma Sprint, a equipe faz uma breve reunião de no máximo 15 minutos, com todos os participantes em pé, chamada Daily Scrum. O objetivo é cada integrante dizer o que fez no dia anterior, o que pretende fazer no dia que se inicia e se existe algum impedimento que está atrapalhando o seu trabalho.

Ao final de um Sprint, a equipe apresenta as funcionalidades implementadas em uma Sprint Review Meeting onde o time mostra o que foi alcançado neste sprint. Finalmente, faz-se uma Sprint Retrospective para identificar o que funcionou bem, o que pode ser melhorado e que ações serão tomadas para melhorar e a equipe parte para o planejamento do próximo Sprint.

Assim reinicia-se o ciclo como pode ser visto na ilustração abaixo:

"Ciclo Scrum"

Scrum Master

O Scrum é facilitado por um 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 e qualquer influência desestabilizadora.

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.

Outras características importantes do Scrum

  • Clientes se tornam parte da equipe de desenvolvimento (os clientes devem estar genuinamente interessados na saída);
  • Entregas freqüentes de funcionalidades 100% desenvolvidas;
  • Planos freqüentes de mitigação de riscos desenvolvidos pela equipe;
  • Problemas não são ignorados e ninguém é penalizado por reconhecer ou descrever qualquer problema não visto;
  • Sprints para corrigir bugs são feitos de tempos em tempos;
  • O Burn Down Chart é um dos artefatos mais importantes do Scrum;

Aprendendo mais

Existe um livro gratuito na web sobre Scrum que é muito bom: Scrum and XP from the Trenches que inclusive foi traduzido para o português.

A palestra do Guilherme Chapiewski sobre Desenvolvimento Ágil com XP e Scrum também é muito interessante. Alguns outros links úteis: Improve It e Wikipedia.

O que é CMMI?

O CMMI (Capability Maturity Model Integration) é um modelo de qualidade, criado e mantido pelo SEI (Software Engineering Institute), um centro de pesquisa e desenvolvimento patrocinado pelo Departamento de Defesa dos EUA.

Pode-se dizer que é um modelo de referência que contém boas práticas para os processos de desenvolvimento de software. O modelo possui uma listagem de melhores práticas para todas as áreas de processo melhorando drasticamente a qualidade dos projetos.

Deixando claro que o CMMI não é uma metodologia, ele diz o que você deve fazer mas não diz como; por isso é possível utilizar o CMMI com metodologias ágeis de gerenciamento de projetos.

Onde utilizar o CMMI?

Os processos (negócio) e o desenvolvimento de soluções com engenharia de software são o foco do CMMI. Porém, por ser bem abrangente e ter uma estrutura mais aberta, muitas de suas práticas podem ser utilizadas em outros tipos de projetos.

Por que utilizar o CMMI?

Esse conjunto de práticas contribui para o aprimoramento dos processos de uma organização tornando-a mais madura e eficiente.

O CMMI ajuda a organização a conhecer a si própria e a sua performance, melhorando a precisão do planejamento. Permite também um melhor monitoramento dos processos, possibilitando que o gerente de projetos saiba se o projeto dará certo ou não.

Com o tempo, adquirindo maturidade, a empresa vai identificando o que realmente tem valor e foca nisso, otimizando cada vez mais os processos. E é justamente isso que o CMMI é: um modelo que possibilita uma melhoria contínua nos processos, amadurecendo as organizações e tornando-as mais competitivas.

Níveis CMMI

O CMMI possui 5 níveis de capacidade, é necessário passar em uma avaliação oficial do SEI para adquirir os níveis de 2 a 5; o nível 1 é o nível que as empresas não certificadas se encontram. Atualmente existem apenas 107 empresas no Brasil que passaram na avaliação do CMMI.

Em breve postaremos um post falando especificamente sobre os níveis do CMMI.

Fonte: Blog CMMI, What’s this e Wikipedia.

MJV, pioneira no uso de CMMI com Metodologias ágeis

A MJV é a mais nova empresa certificada com o modelo CMMI (Capability Maturity Model Integrated) e a primeira empresa no Brasil a ser certificada utilizando o método de gerenciamento de projeto ágil Scrum.

A MJV recebeu em maio de 2009 a aprovação oficial pelo SEI (Software Engineering Institute) sobre a avaliação CMMI na Fábrica de Software da MJV. Passamos a fazer parte de um grupo extraordinário de 107 empresas certificadas oficialmente pelo SEI no modelo CMMI.

Sobre CMMI

O modelo é uma evolução dos conceitos do modelo de capabilidade, estabelecido pelo SEI da Universidade Carnegie Mellon. O CMMI foi projetado para a melhoria contínua dos processos de desenvolvimento, aquisição e manutenção de produtos e serviços. O modelo compreende disciplinas de engenharia de sistemas, engenharia de software, processo de desenvolvimento integrado de produto, gestão de processos e de projetos.

Sobre a MJV

A MJV é uma empresa de consultoria em tecnologia e inovação, com instalações de última geração, mais de 13 anos de mercado, especializada nas mais recentes tecnologias e metodologias na área de desenvolvimento de produtos e serviços.

Ao longo desses anos a MJV vem agregando valor para clientes de grande porte, principalmente nos setores de telecomunicações, seguros e varejo, construindo uma extensa lista de serviços especializados de alta tecnologia e qualidade.

Entre os principais clientes da MJV estão VIVO, Claro, TIM, Nextel, Embratel, Atento, Brasil Center, PontoFrio, Casa & Vídeo, Dufry, Brasif, Bradesco Seguros, Banco do Brasil e Icatu Hartford.

Especial CMMI e Scrum

Durante a próxima semana, faremos posts sobre CMMI, Scrum e a junção dos dois; abordando estes temas mais a fundo. Caso tenha alguma dúvida específica sobre algum dos temas acima, escreva-a abaixo para que possamos abordá-la em um dos posts.

Não esqueça de assinar o feed do blog para saber quando os posts saírem. Atualização: o post explicando o que é o CMMI e suas vantagens já está no ar; assim como o post sobre Scrum.

Promoção

Capa dos livros

Para comemorar esta novidade, sortearemos dois livros aqui no blog, um sobre CMMI e outro sobre desenvolvimento ágil: A Arte do Desenvolvimento Ágil e CMMI: Integração dos Modelos de Capacitação e Maturidade de Sistemas.

Será um sorteio e existem três formas de participar, você pode deixar o seu comentário neste post, linkar este post ou o blog no seu próprio blog/ site ou simplesmente twittar o post citando o @inovatividade.

Regras do sorteio: limite de uma participação, por pessoa, via comentário e uma via link ou tweet. O sorteio será realizado via random.org. Lembrando que funcionários da MJV (e seus parentes) não podem participar do sorteio. O sorteio ocorrerá dia 17/07/09.

Atualização: O resultado do sorteio já saiu.

Nike+, a Nike mudou a forma de fazer exercícios

A história começa no dia 6 de junho de 2008, quando Veronica Noone colocou um pequeno sensor em seus tênis de corrida, apertou o play no seu iPod e começou a gravar cada passo que dava. A corrida foi pequena, apenas 1,67 milhas em 18 minutos mas era apenas o começo.

Desde esse dia, ela correu 95 vezes mais, um total de 283,8 milhas em 48 horas de corrida, queimando um total de 28.672 calorias. Seu peso diminuiu e sua saúde melhorou.

Veronica sabe tudo isso graças ao sensor que, desde aquele dia, passou a usar sempre que corria com o Nike+. Depois de cada corrida, ela sincronizava o seu iPod com o site do Nike+ onde podia ver uma representação gráfica do seu desempenho em uma simples linha verde.

Correr passou a ser muito mais divertido pra mim”, diz Noone. “Existe algo sobre ver o que você fez, como o seu ritmo muda ao subir e descer ladeiras, isso me motivou ainda mais.”

Noone agora corre 4 vezes na semana e está treinando para uma meia-maratona já pensando em correr uma maratona completa no final do ano. “Quando comecei, estava correndo menos e mais devagar. Mas agora posso ver o meu progresso, não tenho dúvidas quanto ao que fiz. A informação está toda lá em branco e verde.”

Noone agora faz parte dessa legião de pessoas que utilizam essas novas ferramentas e tecnologias para coletar facilmente informações sobre suas vidas, como o que comem, quanto dormem, etc. E elas não só coletam a informação como também a analisam para melhorar sua qualidade e expectativa de vida.

Todos nós podemos viver mais e melhor aplicando, em uma escala menor e pessoal, a mentalidade quantitativa que move o Google e o desenvolvimento da medicina. Chamam de “viver pelos números“, a habilidade de reunir e analisar a informaçao sobre si mesmo, criando um loop que pode ser usado para melhorar nossas vidas, em termos de saúde, hábitos e/ou performance.

Esse sistema criado pela Nike já atraiu mais de 1,2 milhões de corredores ao redor do mundo, criando então a maior comunidade de corredores que já existiu. Mais de 130 milhões de milhas já foram monitoradas e mais de 13 bilhões de calorias foram queimadas.

Com um grupo tão grande, a Nike está descobrindo diversas coisas, como por exemplo:

  • no inverno, as pessoas dos Estados Unidos correm com mais frequência que as pessoas da Europa ou da África mas com uma distância menor
  • a duração média, mundial, de uma corrida é de 35 minutos
  • a música que os corredores mais ouvem para se motivarem é “Pump It” do Black Eyed Peas.

A empresa não teria conseguido toda essa informação, e adquirido tantos insights, se não tivesse recriado a maneira que os corredores entendem o seu esporte. A Nike criou muito mais que um produto de sucesso, ela mudou a maneira que milhões de pessoas vêem os exercícios físicos.

Fonte: Wired Magazine