quinta-feira, 9 de dezembro de 2010

Scrum Master x Gerente de Projetos

Um assunto que aparece com frequência nas discussões sobre Scrum é a comparação entre as funções de Scrum Master e Gerente de Projetos.
O Scrum Master trabalha com e para a equipe, ele é um facilitador que lida diretamente com o lado humano, já que as principais características esperadas de um ScrumMaster são responsabilidade, colaboração, humildade, comprometimento, influência e conhecimento, diferentemente do papel estratégico de comando, controle e atribuição de tarefas exercido por um Gerente de Projeto.

Responsabilidades de um ScrumMaster:
  • Permitir o auto-gerenciamento da equipe;
  • Garantir a comunicação da equipe de forma clara e objetiva;
  • Garantir o uso correto das práticas do Scrum;
  • Proteger a equipe de interferências externas;
  • Facilitar as reuniões do projeto;
  • Transformar divergências em convergências.
Responsabilidades de um Gerente de Projeto:
  • Distribuir recursos de forma eficiente entre a equipe;
  • Avaliar as contribuições individuais e coletivas;
  • Utilizar métricas que ajudem na performance do time;
  • Tomar decisões de projeto baseadas não somente no prazo e orçamento.
Enfim, o Gerente de Projeto deve ter muito mais o papel estratégico do que operacional deixando o papel facilitador para o ScrumMaster e dando suporte e autonomia para que ele remova qualquer impedimento.

Mercado de gerenciamento de projetos


As empresas estão se organizando e investindo nas gerências de gestão de projetos numa escala e velocidade impressionante. Devido a concorrência, surgimento de novas tecnologias e/ou interesse dos consumidores, novos serviços e produtos surgem a cada momento. Essa demanda exige uma maior importância na gestão de projetos para as empresas que querem acompanhar o mercado. É uma realidade em contínua expansão e essas empresas já enxergam a gestão de projetos como o principal pilar para sustentar seus planos sejam eles de curto, médio ou longo prazos.

Um fato que, por mais incrível que pareça, ajudou o ramo de gerenciamento, aconteceu após o fim da crise financeira internacional. O mercado de gestão de projetos abriu as portas (e janelas) para novos profissionais. Diversas vagas estão surgindo e para que sejam ocupadas a capacitação é fundamental. A situação de mercado dinâmico em que vivemos é exigente e os profissionais precisam acrescentar competências e possuir capacidade de expandir a competitividade das empresas.

Princípios do desenvolvimento ágil de software

Por Alexsandro Marques (ScrumMaster):

  1. Nossa maior prioridade é satisfazer ao cliente mediante entregas de software de valor e em tempo hábil e continuamente;
  2. Receber bem mudanças de requisitos, mesmo em uma fase mais avançada no desenvolvimento. Os processos ágeis direcionam mudanças para obter vantagens competitivas para o cliente;
  3. Entregar softwares em funcionamento com frequência de algumas semanas e alguns meses, de preferência na menor escala de tempo;
  4. As equipes de negócios e de desenvolvimento devem trabalhar juntas diariamente durante todo o projeto;
  5. Construa projetos ao redor de indivíduos motivados. Dê-lhes o ambiente e apoio de que eles precisam e confie neles para realizar o trabalho;
  6. O método mais eficiente de levar informações para uma equipe de desenvolvimento é fazê-las circular e conversar cara a cara;
  7. Ter o software funcionando é a principal medida de progresso;
  8. Processos ágeis promovem o desenvolvimento sustentável. Os patrocinadores, desenvolvedores e usuários deveriam ser capazes de manter um ritmo constante indefinidamente;
  9. Atenção contínua a excelência técnica e a um bom projeto aumentam a agilidade;
  10. Simplicidade - a arte de maximizar a quantidade de trabalho não-realizado é essencial;
  11. As melhores arquiteturas, requisitos e projetos provem de equipes organizadas;
  12. Em intervalos regulares a equipe deve refletir sobre como se tornar mais eficaz e então se ajustar e adaptar seu comportamento.

Dica: Scrum no projeto de games

Uma área que vem crescendo bastante em território nacional é o desenvolvimento de jogos. Começaram a surgir novas empresas e plataformas interessadas nesse ramo. Porém surgiram também os problemas para se organizar os projetos de seus jogos, por ser um pouco diferente do desenvolvimento de softwares mais comuns (jogos podem conter matemática, geometria, física, artes mais elaboradas e etc).

Por não ter nenhuma metodologia ágil focada no gênero, o Scrum foi adaptado também para esse tipo de projeto. O ScrumMaster Clinton Keith lançou o livro Agile Game Development with Scrum. Keith já gastou mais de 15 anos em desenvolvimento de jogos, 7 deles só dedicados ao Scrum e metodologias ágeis. Com base nessa experiência adquirida, ele mostra no livro como se pode usar o Scrum para produzir os jogos de modo mais eficiente, rápida e econômica, e, ao mesmo tempo, facilitando a vida de toda a equipe.
Equipe recebendo agilidade no jogo Ragnarök
O livro (que por ser recente só está disponível em inglês) pode ser adquirido na Livraria Cultura ou em formato digital na Livraria Saraiva. Mais informações de desenvolvimento ágil de jogos podem ser obtidas no próprio blog do autor do livro: http://blog.agilegamedevelopment.com/

A chegada do Scrum

Uma matéria da INFO de 2009, "Pronto para o Scrum?", faz uma abordagem do cresimento do Scrum no Brasil. As metodologias ágeis se tornaram o mantra das equipes de desenvolvimento.

Em entrevista com o paulista Alexandre Magno, 32 anos, que já estava desmotivado com o Gerenciamento de Projeto, fala que encontrou uma luz quando conheceu as metodologias ágeis e passou a ser diretor da consultoria AdaptWorks, que ajuda a implementar o Scrum, a mais badalada metodologia ágil do momento, em times de desenvolvimento de grandes empresas do Brasil e da Europa.

O Scrum já faz parte do dia a dia de grandes empresas como Microsoft, Citibank, Globo e já virou presença obrigatória para quem desenvolve para web.

Um ponto legal citado na matéria é o uso do Scrum no site do BBB... Calma, não é legal porque é o site do Big Brother, legal é a experiência dos caras da Globo.com junto ao scrum. "Tínhamos um prazo extremamente apertado para a criação do site do BBB em 2007. Trabalhando como linha de produção não daríamos conta." Foi o que disse Jacques Varaschim, diretor de tecnologia do Globo.com, quando viu o prazo apertado, a equipe pequena e a chefia com grandes expectativas. "Precisávamos quebrar paradigmas e decidimos que aquela equipe trabalharia com Scrum." O que deu certo, o Scrum atacou os problemas e colaborou para a conclusão do site no prazo. De lá pra cá o Globo.com adotou o Scrum em todas as suas 18 equipes de desenvolvedores. No total, 150 profissionais seguem uma rotina mais ágil.

Não se esqueçam, as informações deste post são de uma matéria de 2009, portanto não estão atualizadas, a intenção foi mostrar como o Scrum se tornou tão importante para uma empresa tão grande.

sábado, 4 de dezembro de 2010

Papéis dentro do Scrum


No Scrum, papéis são papéis no processo, e não posição ou cargos na hierarquia corporativa. São eles: Product Owner, Scrum Master e Team.


Product Owner


O Product Owner, ou simplesmente PO, representa o cliente, patrocinadores e/ou financiadores do projeto. Muitas vezes, pode ser um representante do cliente dentro da empresa, ou um analista de negócio. É quem vai definir, gerenciar e priorizar os requisitos, gerenciar o ROI (Return over investment – Retorno sobre investimento). O Product Owner trabalha como parte do time que realiza a entrega. É responsabilidade do PO:


· Definir e manter uma visão compartilhada do projeto

· Gerenciar o ROI

· Apresentar requisitos iniciais e incrementais ao time

· Priorizar cada requisito em relação ao valor de negócio (Business Value)

· Gerenciar e priorizar o Product Backlog

· Gerenciar novos requisitos e sua priorização

· Fazer o planejamento de entregas (Release Planning)

· Agir como mediador quando houver mais de um cliente

· Garantir que especialistas no domínio do negócio estarão

disponíveis para o time quando necessário

· Aceitar ou rejeitar o resultado dos trabalhos


Scrum Master

O Scrum Master, ou simplesmente SM, representa a gestão do projeto, mas não no sentido de gestão tradicional. Na realidade, o SM funciona mais como um mediador e líder coach (em sentindo de coaching, como um técnico de time de futebol). O Scrum Master trabalha com e para o time. É responsabilidade do SM:


· Permitir que o time se auto-organize para realizar o trabalho

· Garantir que as vias de comunicação estejam livres e acessíveis

· Garantir e ajudar que o time siga o processo do Scrum

· Cuidar e proteger a equipe de interferências externas, de modo a garantir que a produtividade do time não seja a afetada

· Remover impedimentos (obstáculos) que o time encontrar

· Garantir a colaboração entre os papéis


Team (Equipe)


A equipe é composta por indivíduos que estão comprometidos em realizar o trabalho proposto. Os times são cross-functional. Mas o que isso quer dizer? Nos métodos tradicionais, nós temos papéis distintos, por exemplo, arquitetos, testadores, etc. Num time Scrum, temos pessoas com habilidades de arquitetura que podem ter uma habilidade secundária para ajudar nos testes. Ou seja, colaboração é a palavra de ordem. Cada membro do time é responsável por:


· Definir a meta da Sprint (Sprint Goal)

· Se comprometer com o trabalho, e fazê-lo com o máximo de qualidade

· Trabalhar tendo em mente a visão do produto e o objetivo da Sprint

· Colaborar com demais membros do time e ajudar o time a se auto-organizar

· Comparecer às reuniões de Daily Scrum

· Levantar impedimentos

· Estimar requisitos

· Manter seu próprio progresso (com ajuda do Scrum Master)

domingo, 14 de novembro de 2010

Apresentação do Mestre do Scrum


Este blog foi criado pelos alunos Anderson de Oliveira, Marcelo Freire e Sergio Ribeiro, da Universidade de Pernambuco, com a intenção de compartilhar informações sobre a gerência de projetos utilizando o Scrum.
O blog faz parte de um trabalho realizado para a disciplina de Engenharia de Software com o tema de escrever sobre alguma profissão dentro dessa área. Então optamos pelo gerente de projetos que se baseia no Scrum, e escolhemos como foco o Scrum Master, daí o nome do blog.