Buscar

Engenharia de Software - metodo agil

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 36 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 36 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 36 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

Profa. Fabrícia Damando Santos
fabriciadamando@gmail.com
1
Engenharia de SW 
Metodologia ágil
Introdução
Métodos ágeis
2
Acelerar o 
desenvolvimento 
do SW 
Melhoria do 
processo de 
desenvolvimento 
de SW
Comunicação e 
interação entre a 
equipe
Organização 
diária
Aumento de 
produtividade
SCRUM
3
 É uma abordagem Lean (enxuta) para gerenciar projetos, 
principalmente de desenvolvimento de software.
 O Scrum é um framework que segue a linha das chamadas 
metodologias ágeis. Ele permite usar diversos processos e 
técnicas.
 As características de maior valor são implantadas primeiro. 
 Se mudanças são necessárias, a equipe ágil pode facilmente 
mudar as prioridades
 Gerência de Projetos – PMBOK do PMI
4
O Scrum é um processo de 
desenvolvimento iterativo e 
incremental para gerenciamento 
de projetos e desenvolvimento 
ágil de software. 
É utilizado para trabalhos 
complexos nos quais é 
impossível predizer tudo o 
que irá ocorrer.
Visão 
Geral
5
Como funciona?
 Projetos são divididos em ciclos (tipicamente mensais) 
chamados de Sprints. 
 O Sprint representa um tempo em que 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 a 4 
semanas.
6
Visão geral
Sprint
Product Sprint
Backlog
Kanban (Quadro 
de Trabalho)
Daily Scrum
Sprint Review
Meeting
Burn Down 
Chart
Papéis e 
Responsabilidades
Product Owner
Scrum Master Scrum Team
7
Os papéis
8
9
Product Owner
• Líder do Projeto
• Define os requisitos do produto, 
decide a data de release e o que 
deve conter nela.
• É responsável pelo retorno 
financeiro do produto.
• Prioriza os requisitos de acordo 
com o seu valor de mercado.
• Pode mudar os requisitos e 
prioridades a cada Sprint.
• Aceita ou rejeita o resultado de 
cada Sprint.
Scrum Team
• Garante que o time esteja 
totalmente funcional e produtivo.
• Facilita a colaboração entre as 
funções e áreas e elimina os 
impedimentos do time.
• Protege o time de interferências 
externas.
• Garante que o processo está 
sendo seguindo. 
• Participando das reuniões diárias, 
revisão da Sprint, e planejamento.
• É quem decide como serão feitas 
cada meta. A equipe deve ser 
organizar para cumprir a meta do 
produc owner.
Scrum Master
• Apoia a equipe
• Facilitador 
• Multifuncional, entre 5-9 
membros.
• Seleciona, entre os itens 
priorizados, os que irão ser 
executados durante a Sprint.
• Tem todo o direito de realizar o 
que quiser dentro da Sprint
 Product Owner
 Apresenta uma visão geral do produto.
 Divide-o em funcionalidades (product backlog).
 Elenca prioridades entre as funcionalidades ou estórias - uma lista de 
requisitos priorizados
 O projeto é planejado em Sprints
 Antes de cada sprint começar é feita uma reunião de planejamento 
dos sprints – sprint planning – para a criação do backlog. 
 Define-se quantas funcionalidades ou estórias podem ser feitas no tempo de 
um sprint.
10
Sprint
11
No Scrum, os projetos são divididos 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 a 4 semanas.
Sprint backlog
12
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),
O Product Owner (quem representa os envolvidos) prioriza todos os itens do Product Backlog
As funcionalidades alocadas em um Sprint são transferidas do Product Backlog para o Sprint Backlog.
A equipe seleciona as funcionalidades que ela será capaz de implementar durante o Sprint que se inicia. 
13
Exemplo: http://www.ft.unicamp.br/liag/Gerenciamento/monografias/monogafia_metodos_ageis.pdf
Lista de tarefas do Sprint Backlog – produto entregável
Perguntas básicas por Sprint
 Em cada reunião diária:
 O que fiz ontem?
 O que vou fazer hoje?
 Existe algum impedimento?
14
Quadro Sprint - Kanban
15
 O time também pode possuir um “quadro de trabalho”, também 
chamado de Kanban,
 Usado para organizar as atividades dos itens de Backlog da Sprint, 
separando-as em basicamente em quatro estados (isso pode variar 
de projeto a projeto): 
 A fazer, 
 Em andamento, 
 Em Testes 
 Concluído. 
 Esse “quadro” é muito produtivo, pois basta olhar para ele para 
realizar a leitura do progresso da Sprint.
Kanban
16
17
18
Dicas
 Em cada um dos post-it:
 Responsável: “Sprint – backlog”
 Tipo de tarefa: (você decide)
 Cliente > Projeto “Dev Sprints > Sprint X –
(dd/mm/aaaa)”
 Tags: (a funcionalidade)
19
Burndown chart
20
 O Burndown é um simples gráfico, com dois eixos X e Y.
 Baseado nas atividades que não ultrapassem um dia de trabalho. 
 O eixo X indica o número de tarefas existentes no Sprint 
 O eixo Y os dias que representam o tamanho do Sprint.
Daily Scrun
21
 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 
 se existe algum impedimento que está atrapalhando o seu 
trabalho.
Sprint Review Meeting
22
 Ao final de um Sprint, a equipe apresenta as funcionalidades 
implementadas em uma Sprint Review Meeting 
 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 
 A equipe inicia o planejamento do próximo Sprint.
Product Backlog
23
Product Backlog é 
uma lista contendo todas 
as funcionalidades 
desejadas para um 
produto
O Product Backlog não 
precisa estar completo 
no início de um projeto
O conteúdo desta lista é 
definido pelo Product 
Owner. 
Pode-se começar com 
tudo aquilo que é mais 
óbvio em um primeiro 
momento. 
Com o tempo, o Product
Backlog cresce e muda à 
medida que se aprende 
mais sobre o produto e 
seus usuários.
24
Sprint Planning Meeting
 No início de cada Sprint:
 faz-se um Sprint Planning Meeting:
 uma reunião de planejamento.
 O Product Owner prioriza os itens do Product Backlog e a equipe 
seleciona as atividades que ela será capaz de implementar durante o Sprint 
que se inicia. 
 As tarefas alocadas em um Sprint são transferidas do Product 
Backlogpara o Sprint Backlog.
25
Sprint Backlog 
 O Sprint Backlog é uma lista de tarefas que o Scrum 
Team se compromete a fazer em um Sprint. 
 Os itens do Sprint Backlog são extraídos do Product 
Backlog, pela equipe, com base nas prioridades definidas 
pelo Product Owner e a percepção da equipe sobre o 
tempo que será necessário para completar as várias 
funcionalidades.
 Cabe a equipe determinar a quantidade de itens do Product 
Backlog que serão trazidos para o Sprint Backlog, já que é 
ela quem irá se comprometer a implementá-los.
26
 Durante um Sprint, o Scrum Master mantém o Sprint 
Backlog atualizando-o para refletir que tarefas são 
completadas e quanto tempo a equipe acredita que será 
necessário paracompletar aquelas que ainda não estão 
prontas. 
 A estimativa do trabalho que ainda resta a ser feito no Sprint 
é calculada diariamente e colocada em um gráfico, resultando 
em um Sprint Burndown Chart.
27
 o final de um Sprint, a equipe apresenta as funcionalidades 
implementadas em uma Sprint Review Meeting.
 Finalmente, faz-se uma Sprint Retrospective e a equipe 
parte para o planejamento do próximo Sprint. 
 Assim reinicia-se o ciclo
28
Dicas
29
As reuniões diárias são fundamentais
Acompanhar, via planilha / Sw o andamento do projeto. 
Atualizar diariamente essa planilha.
Resumindo...
30
Manifesto Ágil – Princípios
31
 Nossa maior prioridade é satisfazer o cliente
através da entrega contínua e adiantada
de software com valor agregado.
 Mudanças nos requisitos são bem-vindas,
mesmo tardiamente no desenvolvimento.
Processos ágeis tiram vantagem das
mudanças visando vantagem competitiva para o cliente.
 Entregar frequentemente software funcionando,
de poucas semanas a poucos meses,
com preferência à menor escala de tempo.
32
 Pessoas de negócio e desenvolvedores devem trabalhar
diariamente em conjunto por todo o projeto.
 Construa projetos em torno de indivíduos motivados.
Dê a eles o ambiente e o suporte necessário
e confie neles para fazer o trabalho.
 O método mais eficiente e eficaz de transmitir
informações para e entre uma equipe de desenvolvimento
é através de conversa face a face.
 Software funcionando é a medida primária de progresso.
 Os processos ágeis promovem desenvolvimento
sustentável. Os patrocinadores, desenvolvedores e
usuários devem ser capazes de manter um ritmo
constante indefinidamente.
33
 Contínua atenção à excelência técnica e bom design
aumenta a agilidade.
 Simplicidade--a arte de maximizar a quantidade de
trabalho não realizado--é essencial.
 As melhores arquiteturas, requisitos e designs
emergem de equipes auto-organizáveis.
 Em intervalos regulares, a equipe reflete sobre como
se tornar mais eficaz e então refina e ajusta seu
comportamento de acordo
http://www.agilemanifesto.org/iso/ptbr/
Outros métodos ágeis
34
 Extreme Programming (XP), 
 Lean Development, 
 Feature-Driven Development (FDD), 
 Kanban, 
 RUP 
 OpenUP.
 SCRUM - o framework mais utilizado por ser o mais simples 
e de fácil adoção e adaptação
Atividades
 Ler o artigo: 
 A utilização do Scrum em um sistema web: um 
estudo de caso
1. Observe o exemplo de Product Backlog apresentado no 
artigo e dos sprints realizados.
2. Agora elabore uma proposta de SW, apresentando o Product 
Backlog desenvolvido.
35
Referências
3
6
 Pressman – Engenharia de Software
 Ivar Jacobson, GradBooche James Rumbaugh
 http://agilemanifesto.org/
 http://www.desenvolvimentoagil.com.br/scrum/
 https://www.youtube.com/watch?v=XfvQWnRgxG0
 http://www.brq.com/metodologias-ageis/
 https://www.ibm.com/developerworks/community/blogs
/rationalbrasil/entry/mas_o_que_s_c3_a3o_essas_tais_de_
metodologias__c3_a1geis?lang=en
 http://www.mindmaster.com.br/scrum/

Outros materiais