Aplicação de Scrum em Ambiente de
Desenvolvimento de Software
Educativo
Michele de Vasconcelos Leitão
Orientadora: Cristine Gusmão
Sumário
Motivação
Metas
Metodologias Ágeis
Caso de Estudo: Ambiente
Caso de Estudo: Scrum
Caso de Estudo: Resultados






2
eComp - POLI - UPE
Motivação
Aplicação de Scrum em
Ambiente de Desenvolvimento de Software Educativo
3
eComp - POLI - UPE
Motivação
Software nos negócios
Falta de gerenciamento nos processos





4
Atrasos na entrega do projeto
Produtos de baixa qualidade
Aumento significativo dos custos
eComp - POLI - UPE
Motivação
Emprego dos métodos tradicionais utilizados no
desenvolvimento
Os métodos ágeis tem recebido destaque




requisitos mutáveis e não totalmente esclarecidos; e
entrega do produto com valor tangível.
Dificuldades na implantação de métodos de
desenvolvimento:



5
característica comportamental: a resistência à mudança;
queda inicial na produtividade.
eComp - POLI - UPE
Metas
Aplicação de Scrum em
Ambiente de Desenvolvimento de Software Educativo
6
eComp - POLI - UPE
Metas
Metas específicas:




adaptar e implantar o método escolhido;
testar a eficiência, no que diz respeito a entrega do produto de
qualidade e em tempo hábil;
projetar melhorias no ambiente de desenvolvimento:



7
comunicação direta e sem falhas;
interatividade, independência e transparência na tomada de decisões
entre equipe e gerência;
otimização e homogeneidade do tempo de desenvolvimento da
equipe.
eComp - POLI - UPE
Metodologias Ágeis
Aplicação de Scrum em
Ambiente de Desenvolvimento de Software Educativo
8
eComp - POLI - UPE
Metodologia Ágeis
Desenvolvedores e consultores de software se juntaram
para compartilhar valores e princípios que eram utilizados
em suas práticas
 Agile Software Development Alliance

9
eComp - POLI - UPE
Manifesto Ágil

Princípios básicos de métodos ágeis:
 Honestidade ao código de
trabalho;
 Eficácia das pessoas que trabalham
em conjunto; e
 Foco no trabalho em equipe.

Características do grupo de desenvolvimento:
 Bem informado
 Competente
 Autorizado a considerar o eventual ajuste durante o processo
de ciclo de vida do desenvolvimento
10
eComp - POLI - UPE
Abordagens Ágeis

XP – EXtreme Programming



Crystal family of methodologies




Voltado para pequenas e médias equipes
Ambiente físico é fator crucial
Normas de política podem ser substituídas por práticas equivalentes
de outras metodologias.
Limitações de espaço físico e horário de trabalho são impeditivos
Incrementos possuem menor periodicidade
Scrum


11
Possui muitas das características do XP, exceto restrições quanto à
localização geográfica da equipe.
Melhor aplicada com equipes ainda menores que o delimitado pelo
XP e Crystal.
eComp - POLI - UPE
Caso de Estudo:
Ambiente
Aplicação de Scrum em
Ambiente de Desenvolvimento de Software Educativo
12
eComp - POLI - UPE
Caracterização do Ambiente

Processo de Desenvolvimento





Desenvolvimento de softwares educacionais
Grupos de equipes responsáveis por cada matéria
São produzidas em média 3 aulas por mês, por equipe
Não há uso de qualquer ferramenta ou metodologia
Direcionada individualmente para os coordenadores de cada
equipe




13
definição da distribuição e alocação de tarefas
definição e seleção de competências
definição da matriz de responsabilidades e canais de comunicação
geração dos artefatos durante o desenvolvimento
eComp - POLI - UPE
Impactos



Descentralização de informação
Responsabilidade de geração de artefatos para a
coordenação
Instabilidade no relacionamento da equipe:



14
Desmotivação, por não se sentir “parte do processo”;
Não reconhecimento da hierarquia do coordenador pela
equipe;
Forte dependência da equipe nas direções da coordenação.
eComp - POLI - UPE
Caso de Estudo:
Scrum
Aplicação de Scrum em
Ambiente de Desenvolvimento de Software Educativo
15
eComp - POLI - UPE
Scrum

As primeiras referências na literatura ao
termo “Scrum”



Artigo de Takeuchi e Nonaka: The New
Product Development Game [1986]
O termo “Scrum” deriva de uma
estratégia no jogo de rúgbi
Formalizado por Jeff Sutherland e Ken
Schwaber

16
Artigo The Scrum Development Process
[1994].
eComp - POLI - UPE
Scrum - Pilares




Transparência
Inspeção
Adaptação
Pontos de inspeção e adaptação em
Scrum:



17
Daily Scrum Meeting
Sprint Planning Meeting
Sprint Review e Sprint Retrospective
eComp - POLI - UPE
Scrum - Framework

Papéis




Artefatos





Product Owner
Scrum Master
Scrum Team
Product Backlog
Sprint Backlog
Scrum Board
Burndown Chart
Etapas





18
Release Planning Meeting
Sprint Planning Meeting
Daily Scrum Meeting
Sprint Review
Sprint Retrospective
eComp - POLI - UPE
Scrum - Papéis e Responsabilidades

Pigs x Chickens

19
Chickens não podem dizer aos pigs como fazer seu trabalho.
eComp - POLI - UPE
Scrum - Papéis e Responsabilidades

Product Owner:




Definir as características do produto e prioridade de
execução dos requisitos;
Gerenciar o ROI;
Garantir que os especialistas de domínio estejam
disponíveis para o time.
O Product Owner está representado pela alta
gerência da empresa, que é responsável pelo
contato com o cliente.
20
eComp - POLI - UPE
Scrum - Papéis e Responsabilidades

Scrum Master:





Garantir que o trabalho seja funcional e produtivo;
Acompanhar o desenvolvimento;
Remover os impedimentos;
Garantir o uso do Scrum de maneira correta.
O papel do Scrum Master equivale ao do
coordenador de equipe.
21
eComp - POLI - UPE
Scrum - Papéis e Responsabilidades

Scrum Team:




Responsável por atingir juntos os objetivos definidos
em cada sprint;
Selecionar os itens priorizados a ser executados em
cada iteração;
Demonstrar o trabalho desenvolvido ao Product
Owner.
A equipe é composta por 6 pessoas, entre
programadores, designers e pedagogo.
22
eComp - POLI - UPE
Scrum - Papéis e Responsabilidades

Correlação com o Ambiente


Aspecto Analisado
Distribuição e alocação de tarefas


e seleção de competências

Definição da matriz de
Ambiente
Executado pelo coordenador de

Scrum

Executado pelo Scrum Master

Inerentes à metodologia,
equipe

responsabilidades e os canais de
Executados pelo coordenador de
equipe
representados por ferramentas
comunicação

Geração dos artefatos
23

Executados sem pré-definição

Definidos pela metodologia,
sob a responsabilidade do
implementados e adaptados pelo
coordenador de equipe
Scrum Master
eComp - POLI - UPE
Scrum - Framework

Papéis




Artefatos





Product Owner
Scrum Master
Scrum Team
Product Backlog
Sprint Backlog
Scrum Board
Burndown Chart
Etapas





24
Release Planning Meeting
Sprint Planning Meeting
Daily Scrum Meeting
Sprint Review
Sprint Retrospective
eComp - POLI - UPE
Scrum - Artefatos e Ferramentas

Product Backlog:



Lista de itens priorizados elencando o que deve ser
desenvolvido.
Corresponde à matriz de temas de aulas.
Sprint Backlog:


25
Lista de tarefas extraídas do Product Backlog, com as quais a
equipe se compromete a fazer durante uma sprint.
É composto pelas aulas propriamente ditas.
eComp - POLI - UPE
Scrum - Artefatos e Ferramentas

Scrum Board





26
Stories: aulas divididas em
páginas.
To Do: tarefas listadas para
cada página por membro.
In Progress: tarefas em
execução.
Impediments: problemas
encontrados no
desenvolvimento.
Meetings: comunicação
interna da equipe.
eComp - POLI - UPE
Scrum - Artefatos e Ferramentas

Método Planning Poker

Montar o Burndown Chart
James Grenning, 2002

Mike Conh, 2005 - Agile Estimating and Planning


Cada tarefa é discutida de modo sucinto. Cada participante dá
sua nota de complexidade com base na escala definida para
cada tarefa.
27
eComp - POLI - UPE
Scrum - Artefatos e Ferramentas


Escala utilizada no baralho: 1, ½, 2, 3, 5, 8, 13, 21, 40 e 100.
Todas as tarefas listadas na seção To Do são mensuradas, de
forma que somadas preenchem o valor total de pontos no
gráfico.
28
eComp - POLI - UPE
Scrum - Artefatos e Ferramentas

O gráfico Burndown (Burndown Chart)
29
eComp - POLI - UPE
Scrum - Artefatos e Ferramentas

Correlação com o Ambiente



Nova realidade: a geração de artefatos.
Formalizar toda a documentação necessária.
Diagramas de estado de cada página da aula em execução
na sprint



30
Elaborados pelo Scrum Master;
Detalham o fluxo de ocorrência dos eventos e animações
definidas para cada página;
Aceleram o desenvolvimento e reduzem o número de
manutenções e alterações feitas por página.
eComp - POLI - UPE
Scrum - Framework

Papéis




Artefatos





Product Owner
Scrum Master
Scrum Team
Product Backlog
Sprint Backlog
Scrum Board
Burndown Chart
Etapas





31
Release Planning Meeting
Sprint Planning Meeting
Daily Scrum Meeting
Sprint Review
Sprint Retrospective
eComp - POLI - UPE
Scrum - Etapas da Sprint

Release Planning Meeting


Estabelecer plano e metas que a equipe Scrum e o resto das
organizações possam compreender e se comunicar.
Questões que guiam a reunião:
 “Como podemos transformar essa visão em um produto vencedor
da melhor maneira possível?”
 “Como podemos atender ou exceder a satisfação do cliente e o
Retorno sobre o Investimento?”
32
eComp - POLI - UPE
Scrum - Etapas da Sprint

Sprint Planning Meeting

A iteração é planejada, sendo selecionadas as estórias a serem
implementadas durante a sprint baseando-se num Product Backlog
pré-definido e priorizado.

Sprint Planning 1:



Sprint Planning 2:


33
Decidir o que será feito na sprint.
O Product Owner e o Scrum Master selecionaram as estórias da matriz
contendo as aulas pré-selecionadas do Product Backlog.
Decidir como serão construídas as funcionalidades selecionadas no
Product Backlog.
A equipe definiu como construir a aula no Sprint Backlog durante a sprint.
eComp - POLI - UPE
Scrum - Etapas da Sprint

Daily Scrum Meetings






Melhorar a comunicação
Eliminar outras reuniões
Identificar e remover obstáculos ao desenvolvimento
Destacar e promover a rápida tomada de decisões
Melhorar o nível de conhecimento de todos sobre projeto
Três questões que guiam a reunião:




34
“O que tem realizado desde a última reunião?”
“O que pretende fazer antes da próxima reunião?”
“Quais são os impedimentos para realizar seu trabalho com eficácia?”
Se mostraram as mais complicadas de adaptar, devido às divergências de
horários entre os membros da equipe.
eComp - POLI - UPE
Scrum - Etapas da Sprint

Sprint Review Meeting





35
Ponto de inspeção ao fim de cada iteração.
Mostrar o produto da sprint;
Servir como estímulo para a continuação de mais sprints.
Somente uma Sprint Review Meeting foi realizada, resumindo os
release de duas sprints.
Ausência do Product Owner, que obteve a ata da reunião
posteriormente.
eComp - POLI - UPE
Scrum - Etapas da Sprint

Sprint Retrospective

Vantagens
Manter o controle das tarefas a serem feitas, evitando



esquecimento.
Organizar as etapas do desenvolvimento, auxiliando

Prover uma visão do projeto todo para a equipe
inteira.
Alterar as dimensões das áreas de To Do e Done no
Scrum Board.

determinar o início, meio e fim.

Definir um padrão para determinar as dependências
entre as tarefas nos post-its.

Permitir maior flexibilidade nos horários das Daily
Scrum Meetings.
Permitir toda a equipe de ter noção da complexidade

de todas as tarefas.
Inserir uma melhor divisão do desenvolvimento,

permitindo detectar um padrão.
Perceber o andamento do projeto, através do

Burndown Chart.
36
Melhorias
eComp - POLI - UPE
Scrum - Ciclo de Desenvolvimento
37
eComp - POLI - UPE
Scrum - Ciclo de Desenvolvimento

Correlação com o Ambiente


38
Escolha de uma metodologia simples de ser rapidamente
assimilada e aplicada pelos coordenadores.
Devido à sua adaptabilidade, atende essas exigências de
simplicidade e rápida aplicabilidade.
eComp - POLI - UPE
Caso de Estudo:
Resultados
Aplicação de Scrum em
Ambiente de Desenvolvimento de Software Educativo
39
eComp - POLI - UPE
Coleta e Análise de Dados

Análise Comportamental da Equipe

Máximo de aceitação da metodologia






40
interesse pelas reuniões diárias
participação ativa na Sprint Planning Meeting
comprometimento com as Sprint Review e Sprint Retrospective
Scrum Board: “uma ferramenta que fornece uma visão global do
projeto”.
Planning Poker: cumplicidade gerada entre os membros da
equipe.
Violet UML Editor: responsabilidade do Scrum Master, tendo a
equipe acesso às imagens e arquivos fonte gerados dos
diagramas de estado.
eComp - POLI - UPE
Coleta e Análise de Dados

Análise de Eficiência da Metodologia Scrum no
Desenvolvimento das Tarefas




Critérios: prazo, qualidade e custos.
Prazo
 As aulas, a priori desenvolvidas numa média de 3 por semana,
passaram a ser produzidas 2 semanalmente.
Qualidade
 Produto com menos erros, adequado ao uso (cumprindo as
requisições de usabilidade) e satisfazendo os requisitos do Product
Owner.
Custos
 Aspectos:
 de tempo de produção; e
 de aquisição de ferramentas.
41
eComp - POLI - UPE
Coleta e Análise de Dados


Ambiente Pré-Implantação
Hierarquia da equipe composta pelas três instâncias:


alta gerência, coordenador de equipe, equipe.


Papel da alta gerência: gerenciar os coordenadores
Ambiente Pós-Implantação
Hierarquia da equipe composta pelas três instâncias:
Product Owner, Scrum Master e Scrum Team.

Papel do Product Owner: colaborar com Scrum Master
de equipe e contatar os clientes. A alta gerência não
e equipe na seleção e manutenção das prioridades de
participa do desenvolvimento em nenhuma etapa.
acordo com o valor de negócio da empresa.
Papel do coordenador de equipe: líder. Responsável

Papel do Scrum Master: facilitador. É responsável por
por guiar a equipe para obter resultados de acordo
remover os impedimentos da equipe no processo de
com suas próprias definições do produto e premissa
desenvolvimento, não sendo responsável por definir
básicas determinadas pela empresa. Responsável
esse processo, mas por assegurar que a metodologia
por remover as dúvidas frequentes da equipe quanto
Scrum seja seguida quanto às etapas, aos artefatos e
ao processo de desenvolvimento, visto que este é
papéis.
definido pela experiência do coordenador.
42
eComp - POLI - UPE
Coleta e Análise de Dados



Ambiente Pré-Implantação
Papel da equipe: desenvolver os objetos de


Papel do Scrum Team: É responsável por ser auto-
aprendizagem de acordo com a documentação de
organizada e por selecionar os itens priorizados que
roteiro gerada e as instruções do coordenador e
irão ser executados em cada sprint, com total
reportar todas as dúvidas e problemas ao
liberdade e comprometimento para desenvolver os
coordenador, sempre que surgirem. Possui total
objetos de aprendizagem de acordo com as etapas
dependência do coordenador para sua organização.
definidas pela metodologia Scrum.
Processo de desenvolvimento: iterações sem etapas

definidas ou delimitadas.

Ambiente Pós-Implantação
Ciclo de desenvolvimento: produção do roteiro,
Processo de desenvolvimento: sprints com etapas
pré-definidas e obrigatórias.

Ciclo de desenvolvimento: produção do roteiro,
seguida do desenvolvimento (com testes periódicos,
seguida da Sprint Planning Meeting (para validação do
mas sem padronização) e publicação do objeto de
roteiro com equipe e Product Owner) e do
aprendizagem.
desenvolvimento (com verificações diárias – Daily
Scrum Meetings). O fim do desenvolvimento é
seguido pela execução da Sprint Review (para
validação do Product Owner) e a publicação do objeto
de aprendizagem.
43
eComp - POLI - UPE
Conclusão e Trabalhos Futuros

Falta de gerenciamento nos processos


Justifica a necessidade da adoção de processos que utilizem
práticas ágeis.
Metodologia ágil Scrum: adequada para o uso em
ambientes de desenvolvimento de softwares educativos


44
Sua aplicação engloba todas as etapas do desenvolvimento,
através de pequenas e médias adaptações.
Remove a obrigatoriedade de geração de vasta documentação.
eComp - POLI - UPE
Conclusão e Trabalhos Futuros


As etapas definidas fornecem importantes dados relativos à
produtividade das equipes.
Aspecto comportamental

45
Boa adaptabilidade e aceitação da equipe à metodologia.
eComp - POLI - UPE
Conclusão e Trabalhos Futuros

Dificuldades Encontradas



Daily Scrum Meetings ficaram comprometidas;
Atrasos e interferências causadas pelo Product Owner.
Trabalhos Futuros



46
Implantação do processo de Gerenciamento de Qualidade;
Desenvolvimento do artifício de indicação de dependências;
Implantação do método em todas as equipes da empresa.
eComp - POLI - UPE
Aplicação de Scrum em Ambiente de
Desenvolvimento de Software
Educativo
Michele de Vasconcelos Leitão
Orientadora: Cristine Gusmão
Download

Aplicação de Scrum em Ambiente de Desenvolvimento de Software