Você está na página 1de 11

Departamento de Matemática

Scrum

Cristina Melo, Miguel Tavares, Luís Almeida


IRM, cmelo@uac.pt, miguel_tavares@sapo.pt, asterix_d@hotmail.com

Resumo
Scrum é uma metodologia de gestão de projectos assente num Desenvolvimento ágil,
interactivo e incremental, focada no trabalho em equipa, e com a participação activa do
cliente.

A rotina começa com o “product backlog” que contém a lista ordenada por prioridades dos
requisitos do projecto. A partir desta lista é formado o “sprint backlog” – requisitos que
serão implementados no próximo sprint; cada sprint tem um tempo pré-determinado, e após
seu término, as funcionalidades desenvolvidas são validadas pelo “product owner”,
iniciando-se um novo ciclo.

Eventuais obstáculos que surjam durante são comunicados ao “scrum master”, que tem
como papel principal a sua resolução.

Palavras-chave: Scrum; Sprint; Scrum master; Backlog; Product owner; Desenvolvimento


ágil

1. Introdução

As metodologias ágeis destacam-se por reconhecer que mudanças acontecem no


decorrer do desenvolvimento de um projeto e que o cliente deve estar envolvido e
presente durante sua execução. Esta presença é necessária porque a interação entre as
pessoas será constante e o produto final deve ser amigável a ponto de, praticamente,
prescindir de documentação.
O cliente por seu lado fica mais satisfeito, pois constantemente lhe são entregues
funcionalidades desenvolvidas, e ele participa activamente no projecto, contribuindo
com o seu conhecimento de domínio do negócio.

1
Um princípio chave do Scrum é 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.

É uma metodologia que permite construir o melhor software possível, face à


disponibilidade de recursos, à qualidade aceitável e às datas de entrega exigidas, visa
controlar o caos provocado por interesses e necessidades de conflito, é uma forma de
melhorar as comunicações e maximizar a cooperação, promovendo o bem estar da
equipa.

O nome Scrum tem origem no jogo de rugby, mais


concretamente no acto efectuado pelos jogadores
aquando da reposição da bola após faltas ou
penalidades, em que oito jogadores de cada equipa se
posicionam frente à frente, formando um círculo. Um
jogador da equipa que não cometeu a infracção lança a
bola no espaço entre os jogadores alinhados que tentam, com os pés, ganhar a bola, para
isso, o grupo deve trabalhar em conjunto, como se fosse uma unidade.
O Scrum é uma metodologia genérica, pelo que possui um vasto leque aplicacional, não
se limitando apenas aos projectos de desenvolvimento de software.

2. Rotina do Scrum

Os requisitos do projecto são organizados numa lista de tarefas (“product backlog”), por
ordem decrescente de prioridade. Essa lista deve ser constantemente actualizada.
O scrum trabalha com desenvolvimento incremental, onde cada iteração é chamada de
sprint. Os sprints são curtos, tendo uma duração típica de 30 dias.

2
A equipa separa uma parte do topo do backlog para o sprint, formando o “sprint
backlog” (lista de tarefas do sprint). A equipa tem autonomia para decidir como as
tarefas serão implementadas durante o sprint.
As tarefas constantes no “sprint backlog” não podem ser trocadas por outras do
“product backlog”, garantindo que os requisitos mais importantes sejam implementados
primeiro e que a equipa mantenha o foco durante o sprint. O sprint possui um objectivo
claro e definido, conhecido por toda a equipa de desenvolvimento.

É comum que os requisitos finais do “product backlog”, com o tempo, percam sua
importância e acabem por ser removidos.

Durante o sprint, a equipa tem curtas reuniões diárias, sempre no mesmo horário, junto
com o “scrum master”. Nessas
reuniões é discutido o andamento do trabalho, onde cada membro da equipa responde
às questões:

- O que fiz desde ontem?


- O que pretendo fazer até amanhã?
- Existe algum obstáculo?

Sempre que surgir algum obstáculo ao progresso do trabalho, é tarefa do “scrum


master” a sua resolução.

A saída do “sprint” é um conjunto de funcionalidades 100% desenvolvidas, que serão


aprovadas pelo “product owner” e entregues ao cliente. No final de cada iteração, toda a
equipa participa numa retrospectiva do sprint decorrido.

Após a conclusão do “sprint”, reinicia-se o ciclo, retirando-se a próxima “fatia” do


“product backlog” necessária para o próximo “sprint”.

3
3. Os Papéis do Scrum

Os principais papéis no scrum são:

- Equipa: é o grupo de pessoas que trabalha no desenvolvimento do produto.

- Product Owner (ou Dono do Projeto): representa a visão do negócio no projecto.

- Scrum Master: seria o líder da equipa, se esta não fosse auto-gerenciada.

3.1. A Equipa

A equipa é o grupo de pessoas que trabalha no desenvolvimento do produto. Deve ser


pequena (normalmente de 5 a 9 pessoas), multi-disciplinar e trabalhar em conjunto,
como uma unidade.

Fig. 1 A Equipa Scrum

• Equipa Scrum: equipa de projecto que possui autoridade de decidir sobre as acções
necessárias e de se organizar para poder atingir os objectivos pré estabelecidos.

A Equipa Scrum é envolvida, por exemplo, na estimativa de esforço, na criação e


revisão da lista de funcionalidade do produto, sugerindo obstáculos que precisam ser
removidos do projecto.

4
• Scrum Master: é responsável por garantir que o projecto esteja a ser conduzido de
acordo com as práticas, valores e regras definidas no Scrum e que o progresso do
projecto está de acordo com o desejado pelos Clientes. O Scrum Master interage tanto
com a Equipe Scrum, como com os Clientes. Ele também é responsável por remover e
alterar qualquer obstáculo ao longo do projecto, para garantir que a equipa trabalhe da
forma mais produtiva possível.

• Product Owner: é oficialmente responsável pela gestão do projecto, controle e por


tornar visível a lista de funcionalidade do produto. Ele é seleccionado pelo Scrum
Master, pela equipa e pelo dono da empresa de desenvolvimento, ou seja é eleito
internamente. Ele é também responsável por tomar as decisões finais referentes às
tarefas necessárias para transformar a lista de funcionalidades no produto final,
participando na estimativa do esforço de desenvolvimento necessário e é
responsável pelo detalhe das informações referentes à lista de funcionalidade
utilizada pela Equipe Scrum.

3.2. Product Owner

O papel do Product Owner, confere-lhe a responsabilidade pelo Retorno do


Investimento (ROI) do projecto, cabe-lhe a tarefa de atribuir prioridade aos itens no
Product Backlog (PB) de forma a obter o maior retorno possível, entre as suas
responsabilidades estão:

• Criar a visão

• Manter o Product Book em boas condições

• Gerir as prioridades do Product Book, com pelo menos 3 Sprints

• Criar as fronteiras (boundaries) que protegem a Equipa (Tempo, Orçamento,


Visão, Padrões, etc)

• Ser o elo de comunicação com os Stakeholders, e outros clientes internos e


externos

• Ajudar o ScrumMaster a proteger a Equipa

5
• Aceitar ou rejeitar uma funcionalidade no Sprint Review

É ainda responsabilidade do Product Owner realizar as reuniões de planeamento e dos


Sprints e de manter pelo menos 3 Sprints planeados, se o Product Owner não realizar
estas reuniões o ScrumMaster deve chamar a atenção do Product Owner e em casos
extremos assumir esta responsabilidade temporariamente. Cada reunião de planeamento
não deve durar mais do que 60 minutos (Timebox) e tem como objectivo manter todos
na Equipa informados sobre possíveis mudanças e ajustes de prioridades, além de
aumentar a precisão das estimativas feitas anteriormente.

3.3. Scrum Master

O papel do Scrum Master consiste em resolver conflitos, é responsável pela remoção de


certos obstáculos, incluindo as barreiras entre os diversos membros da equipa, entre os
engenheiros de testes e os membros da Equipa de Scrum (especialmente quando é a
primeira vez trabalham juntos), entre a equipa de desenvolvimento e o cliente.
Se o Scrum Master não possuir as habilidades necessárias para lidar com os conflitos
da equipa, deve ser integrado na equipa um membro para fazer a gestão destes conflitos.
Um Scrum Master deve trabalhar arduamente para ajudar a remover os obstáculos
relatados durante a reunião diária. Se um obstáculo exige mais do que um dia de
paragem, o Scrum Master deve comunicar essa informação á equipa para que eles
saibam o que Scrum Master está fazer um esforço em nome da equipe.

Outra função do Scrum Master é a de que deve proteger a equipe de rupturas ou


influências externas, deve também proteger a equipa de participar nas reuniões
desnecessárias. Conclusão equipas de Scrum sentem-se verdadeiramente fortalecidas
quando percebem que o Scrum Master faz tudo ao seu alcance para proteger a equipa de
influências externas que podem roubar á equipa o seu poder. Mais especificamente, o
Scrum Master deve limitar (ou reduzir bastante) "comando e controle" de práticas de
gestão para que as equipes possam executar suas próprias sessões de planeamento do
sprint nas áreas da estimativas de tarefas, sequência de tarefas e atribuições de tarefas,
bem como executar avaliações retrospectivas do sprint, abertamente e honestamente
para que as equipas façam a diferença.

6
Deve assegurar que os participantes da reunião disfuncionais são controlados, mesmo
que por terceiros, trabalhar com a equipa para remover obstáculos, mostrando um nível
de compromisso verdadeiro com a equipa.

3.4. A Equipa de Scrum

É um grupo inter-funcional de pessoas com experiencia e conhecimento em diferentes


domínios que são necessários para transformar os requisitos em produto final. Por
vezes, estas equipas são constituídas por um analista, designer, um programador, uma
pessoa das ciências da documentação, todas as áreas que são necessárias para
transformar os requisitos em algo de valor. Esta é a equipa que se compromete com o
Product Owner em realizar cada iteração e, em seguida cumpre. No final da iteração
apresentam ao Product Owner e resultado, e ele depois decide o que fazer a seguir.
Muitas vezes há centros de excelência nas organizações de engenharia de software que
têm grupos de pessoas altamente qualificadas, especializadas em engenharia de
usabilidade, em base de dados, em segurança e arquitectos de sistemas. Sempre que é
necessário recorrer a esses especialistas para um determinado projecto elas são
chamadas a fazer parte da equipa. Ou seja, eles não são peritos externos que
simplesmente dão conselhos, eles tornam-se parte da equipe nas iterações, nas tarefas de
construção de uma arquitectura, ou a trabalhar na base de dados. Eles trabalham ou
orientam as pessoas da equipa para um objectivo comum. Eles inciam o trabalho com a
equipa e comprometem-se da mesma forma para que algo seja feito até ao final de cada
iteração.

Função:
• Multidisciplinar
• De cinco a nove membros
• Seleccionam o objectivo de iteração e especificam os resultados
• Tem o direito de fazer tudo dentro dos limites das directrizes do projecto para
alcançar o objectivo da iteração
• Organizam-se a si e ao seu trabalho

7
4.Conclusões
A metodologia ágil de gerenciamento de projetos, que valoriza muito o trabalho em
equipa. É recomendada para equipas pequenas; equipas grandes, para adotar o scrum,
devem ser dividas em “sub-equipas” menores, dividindo-se também o projecto em sub
projetos, um para cada equipa.

Como o cliente faz parte da equipa de desenvolvimento e define a prioridade dos


requisitos, aliado à divisão destes em iterações com objectivo bem definido e conhecido
por todos, a equipa trabalha focada num objetivo, gerando ganho de produtividade.

O scrum não fica restrito à fase de desenvolvimento do software; na fase de


manutenção, os requisitos (novos requisitos ou alterações nos requisitos existentes),
podem ser agrupados em um sprint backlog, ou directamente num único sprint,
conforme o tamanho das alterações. Pode-se ainda encarar cada nova versão de software
como um projeto à parte, usando o scrum em sua totalidade.

O fato da equipa ser auto-gerenciada exige alto grau de responsabilidade, organização e


comprometimento por parte da equipa. Essa ausência da figura do líder de equipa pode
representar uma barreira para a adoção do scrum por parte das organizações, temendo o
caos pela falta de coordenação.

Glossário

Desenvolvimento ágil - Metodologia dinâmica e flexível de desenvolvimento de projectos,


privilegiando o trabalho de equipa e a produção frequente de resultados para validação por
parte do cliente;

Backlog - Conjunto de requisitos, priorizado pelo “Product Owner”;

Product owner - Representante dos “stakeholders” do projecto (muitas vezes o próprio


cliente);

8
Scrum master - Figura com responsabilidade de proporcionar os elementos necessários
para que a equipa tenha o melhor desempenho possível;

Sprint - Iteração que segue um ciclo de melhoria contínua PDCA (plan, do, check, act) e
entrega fracções de software pronto;

Índice
Resumo.............................................................................................................................1

1. Introdução....................................................................................................................1

2. Rotina do Scrum..........................................................................................................2

3. Os Papéis do Scrum.....................................................................................................4

3.1. A Equipa...............................................................................................................................4
3.2. Product Owner.....................................................................................................................5
3.3. Scrum Master.......................................................................................................................6
3.4. A Equipa de Scrum ..............................................................................................................7
4. Conclusões....................................................................................................................8

Glossário...........................................................................................................................8

Bibliografia.....................................................................................................................10

Anexo A (Alguns aspectos a ter em conta)..................................................................10

9
Bibliografia

Dicas-L. Disponível em http://www.dicas-l.com.br/brod/brod_20061031.php.


Acesso em 01 de 11 de 2010

Scrum em 2 Minutos. Disponível em


http://dojofloripa.wordpress.com/2007/02/07/scrum-em-2-minutos/.
Acesso em 01 de 11 de 2010.

Scrum in 5 Minutes. Disponível em


http://www.softhouse.se/Uploades/Scrum_eng_webb.pdf.
Acesso em 06 de 11 2010.

Scrum with XP. Disponível em


http://www.informit.com/articles/article.aspx?p=26057&rl=1.
Acesso em 06 de 11 2010.

Wikipédia (Desenvolvimento Ágil de Software). Disponível em


http://pt.wikipedia.org/wiki/Desenvolvimento_%C3%A1gil_de_software.
Acesso em 07 de 11 de 2010

Wikipédia (Scrum). Disponível em http://pt.wikipedia.org/wiki/Scrum.


Acesso em 07 de 11 de 2010

Anexo A (Alguns aspectos a ter em conta)

Os Anexos devem incluir trabalho feito pelos autores ou não, que não necessita de estar
intercalado no texto (e.g., tabelas, quadros, organogramas, código de programas) ou
outra informação
A qualidade da redacção é um aspecto imprescindível a terem conta na escrita do
trabalho. O discurso deve ser simples, claro, preciso e sucinto. Deve ser escrito na

10
terceira pessoa do singular e respeitar as regras gramaticais estabelecidas, para que seja
mantida uma permanente concordância relativamente aos sujeitos e tempos verbais
utilizados.
Todos os termos em língua estrangeira devem ser escritas em itálico. As siglas devem
ser definidas da primeira vez que ocorrem no texto. Abreviaturas comuns: e.g. (exempli
gratia) – por exemplo; et al. (et aliae) – e outros (pessoas); etc (et cetera) – e outros
(coisas); i.e. (id est) – isto é.
As figuras, tabelas, programas e outros textos intercalados no corpo do relatório, devem
ser numerados por capítulo, estar centrados e com o número e a legenda na parte
inferior. A sua referência no texto deve ser feita usando as abreviaturas usuais (e.g., Fig.
1.1, Tab. 1.1). Quando não houver espaço para serem colocados numa página, devem
ser colocados na página seguinte, devendo o espaço da página anterior ser preenchido
com texto.

11

Você também pode gostar