Metodos ageis

F
Fábio GiordaniGerente de Projetos e Programas, Professor, Revisor Técnico
Métodos Ágeis
26Jul2017 - Fontes consultadas:
http://www.projectbuilder.com.br/blog-home/entry/conhecimentos/quais-sao-os-principais-tipos-de-metodos-ageis
http://www.brq.com/metodologias-ageis/
https://pt.wikipedia.org/wiki/Desenvolvimento_%C3%A1gil_de_software
O que são?
• São processos de desenvolvimento iterativo e incremental para
gerenciamento de projetos. Muito utilizados para desenvolvimento ágil de
software, mas com conceitos e práticas aplicáveis a várias outras
indústrias. É utilizado para trabalhos complexos nos quais é impossível (ou
muito difícil) predizer tudo o que irá ocorrer.
• Via de regra, demandam aumento da comunicação e interação da equipe,
organização diária para o alcance da meta definida, buscando evitar falhas
na elaboração, respostas rápidas às mudanças e entregas em tempos
menores.
• Algumas vezes caracterizados como o oposto de metodologias guiadas
pelo planejamento ou disciplinadas. Uma distinção mais acurada é dizer
que os métodos existem em um contínuo do adaptativo até o preditivo.
Métodos ágeis existem do lado adaptativo deste contínuo.
Métodos adaptativos
• Métodos adaptativos buscam a adaptação rápida a mudanças da
realidade. Quando uma necessidade de um projeto muda, uma
equipe adaptativa mudará também. Um time adaptativo terá
dificuldade em descrever o que irá acontecer no futuro. O que
acontecerá em uma data futura é um item de difícil predição para um
método adaptativo. Uma equipe adaptativa pode relatar quais tarefas
se iniciarão na próxima semana. Quando perguntado acerca de uma
implantação que ocorrerá daqui a seis meses, uma equipe adaptativa
deve ser capaz somente de relatar a instrução de missão para a
implantação, ou uma expectativa de valor versus custo.
Métodos preditivos
• Métodos preditivos, em contraste, colocam o planejamento do futuro
em detalhe. Uma equipe preditiva pode reportar exatamente quais
aspectos e tarefas estão planejados para toda a linha do processo de
desenvolvimento. Elas porém tem dificuldades de mudar de direção.
O plano é tipicamente otimizado para o objetivo original e mudanças
de direção podem causar a perda de todo o trabalho e determinar
que seja feito tudo novamente. Equipes preditivas frequentemente
instituem um comitê de controle de mudança para assegurar que
somente as mudanças mais importantes sejam consideradas.
Princípios
• Garantir a satisfação do consumidor entregando rapidamente e continuamente
software funcionais;
• Até mesmo mudanças tardias de escopo no projeto são bem-vindas para garantir
a vantagem competitiva do cliente;
• Software funcionais são entregues frequentemente (semanas, ao invés de
meses);
• Cooperação diária entre pessoas que entendem do 'negócio' e desenvolvedores;
• Projetos surgem através de indivíduos motivados, entre os quais existe relação de
confiança.
• A maneira mais eficiente e efetiva de transmitir informações é conversar cara a
cara;
• Software funcionais são a principal medida de progresso do projeto;
Princípios
• Processos ágeis promovem desenvolvimento sustentável. Os
patrocinadores, desenvolvedores e usuários devem ser capazes para
manter um ritmo constante indefinidamente.
• Design do software deve prezar pela excelência técnica;
• Simplicidade é essencial;
• As melhores arquiteturas, requisitos e projetos emergem de equipes
auto-organizadas;
• Em intervalos regulares, a equipe reflete sobre como para tornar-se
mais eficaz, então sintoniza e ajusta seu comportamento
apropriadamente.
Métodos são ferramentas
• Métodos são meios para se chegar a um objetivo. São como
ferramentas que podem ser utilizadas em determinados contextos.
• Nem toda a ferramenta serve para toda a necessidade, e muitas
vezes, mais de uma ferramenta se faz necessária para resolver um
problema.
Alguns dos principais tipos de métodos ágeis
• Feature Driven Development (FDD)
• eXtreme Programming (XP)
• Microsoft Solutions Framework (MSF)
• Dynamic System Development Model (DSDM)
• Scrum
Feature Driven Development (FDD)
• Criado em Cingapura, entre 1997 e 1999, o FDD é um método ágil que reúne as melhores práticas de outros
métodos, como o Coad. Sua premissa básica é focada em funcionalidades, o que permite à equipe do
projeto realizar um planejamento incremental, isto é, por fases. Esse tipo de atuação ajuda a dar agilidade
ao desenvolvimento de soluções em ambientes de extrema incerteza, em que as mudanças são inevitáveis.
• A programação por FDD começa com a visão global do negócio, já que esse método considera a soma de
tudo mais importante do que cada uma das partes separadamente. Passa-se, então, para o detalhamento do
produto com a subdivisão por áreas a serem modeladas, culminando na descrição de cada funcionalidade.
• Por se tratar de uma ferramenta focada no desenvolvimento, o FDD pode ser perfeitamente integrado ao
Scrum, outro método ágil muito utilizado que também é focado no planejamento e na execução do projeto.
E assim como todos os demais métodos ágeis, o FDD também possui melhores práticas que visam criar o
ambiente ideal para o desenvolvimento de projetos. São elas:
• Desenvolvimento por funcionalidades;
• Um único programador é responsável pela funcionalidade desenvolvida;
• Controle de qualidade em todas as fases do projeto;
• Gerenciamento de configurações;
• Integração contínua das funcionalidades;
• Planejamento incremental;
• Teste de software.
eXtreme Programming (XP)
• Também criado em meados da década de 90, o eXtreme Programming,
carinhosamente chamado de XP, é um método ágil focado no desenvolvimento
de softwares que tem três pilares como base: agilidade no desenvolvimento da
solução, economia de recursos e qualidade do produto final.
• Para chegar à excelência nos serviços prestados, uma equipe XP deve se basear
em valores, isto é, um contrato de atitudes e comportamentos que levam ao
sucesso. Esses comportamentos e atitudes norteiam as ações da equipe XP em
cada atividade a ser desempenhada, garantindo a integração e a sinergia
necessárias para um bom desempenho. No caso, esses valores são:
• Comunicação;
• Simplicidade;
• Feedback;
• Coragem;
• Respeito.
eXtreme Programming (XP)
• Além dos valores, o método ágil XP também leva em consideração
melhores práticas de trabalho, que têm como objetivo garantir a
efetividade do trabalho da equipe XP, assim como a satisfação do cliente
durante todo o processo de desenvolvimento. São elas:
• Cliente sempre à disposição;
• Uso de metáforas;
• Reuniões de planejamento (planning game);
• Reuniões diárias, de 15 minutos, para alinhamento (stand up meeting);
• Integração contínua dos módulos desenvolvidos;
• Mudanças incrementais;
• Entregas frequentes ao cliente (small releases);
• Design simples e funcional;
• Testes de aceitação;
• Refatoração ou melhoria contínua.
Microsoft Solutions Framework (MSF)
• O MSF é um dos métodos ágeis mais usados por se destinar ao desenvolvimento de soluções tecnológicas por equipes reduzidas,
focando na diminuição de riscos para o negócio e no aumento da qualidade do produto final. O propósito é identificar as falhas
mais comuns em projetos de tecnologia, mitigando-as e aumentando as taxas de sucesso de cada iniciativa. Dessa forma, assim
como o Scrum, o MSF está mais focado na gestão do projeto do que no desenvolvimento da solução em si.
• Suas premissas são:
• Alinhamento da tecnologia desenvolvida aos objetivos de negócio do cliente;
• Escopo bem estruturado e detalhado;
• Desenvolvimento iterativo;
• Gerenciamento de riscos;
• Agilidade na resposta a mudanças.
• Assim como os outros métodos ágeis, o MSF também possui melhores práticas que devem ser observadas pela equipe para
atingirem os níveis de excelência buscados:
• Comunicação aberta e transparente entre todos os envolvidos;
• Visão compartilhada do negócio;
• Equipe capacitada;
• Atribuição de papéis e responsabilidades desde o início do projeto;
• Entregas incrementais;
• Flexibilidade para mudar sempre que necessário;
• Qualidade das entregas;
• Aprendizado constante com as experiências adquiridas;
• Parceria com clientes internos e externos.
Dynamic System Development Model (DSDM)
• O DSDM é um dos métodos ágeis mais antigos empregados não só no
desenvolvimento de projetos como no meio tecnológico. Um tanto quanto
diverso dos demais métodos ágeis, ele é destinado ao desenvolvimento de
projetos com orçamento fixo e prazos curtos, levando em consideração que o
cliente não tem como saber quanto custará a solução final.
• Entre suas melhores práticas estão o desenvolvimento incremental e iterativo, a
colaboração entre cliente e equipe, além da integração de funcionalidades, o que
também vemos nos demais métodos ágeis.
• Vale ressaltar que o DSDM diverge dos demais métodos ágeis tanto em sua
estrutura, que é composta por processos interligados de modelagem, concepção,
construção e implementação, assim como na gestão do tempo, que não é flexível,
até permitindo que as funcionalidades mudem, mas desde que os prazos de
execução continuem os mesmos.
Scrum
• O Scrum é, sem dúvida, o método ágil mais usado nos dias de hoje, principalmente
porque pode ser integrado a outros métodos ágeis com facilidade, aplicando-se não só
ao desenvolvimento de softwares como a qualquer ambiente de trabalho. Focado na
gestão do projeto, o Scrum tem como base o planejamento iterativo e incremental, que,
como você já sabe, se dá por fases, chamadas de sprints.
• Define-se, desde o início do projeto, a lista de funcionalidades a serem desenvolvidas,
também chamada, no caso, de product backlog. Dando andamento ao processo, cada
funcionalidade se torna um sprint, cujos detalhes a serem criados e desenvolvidos
passam do product backlog para o sprint backlog. Do sprint backlog as atividades são
distribuídas entre os membros do Scrum Team, que devem desenvolvê-las dentro de um
prazo que geralmente não leva mais que quatro semanas. Ao final de cada sprint é
realizada a sprint review meeting, uma reunião de alinhamento sobre o que foi entregue.
A partir daí, começa-se a planejar o próximo sprint. Essas etapas acontecem
sucessivamente até que o produto final esteja pronto para a entrega.
Scrum
• Diferentemente dos demais métodos ágeis, o Scrum possui pelo menos três
papéis muito bem definidos e absolutamente essenciais para o sucesso do
projeto:
• Product Owner: é o CEO do projeto, quem faz a ponte entre cliente e Scrum Team. É o
responsável pelos resultados do projeto e por gerar valor para o cliente.
• Scrum Master: é o coach do Scrum Team, a pessoa responsável por orientar os profissionais
em relação às melhores práticas Scrum, remover barreiras e motivar.
• Scrum Team: são os profissionais que efetivamente executam o desenvolvimento do projeto.
• As melhores práticas Scrum estão baseadas no Manifesto para o
Desenvolvimento Ágil de Softwares, levando em consideração atitudes e
comportamentos como:
• Indivíduos e interação mais do que processos e ferramentas;
• Software em funcionamento mais do que documentação;
• Colaboração com o cliente mais do que contratos e negociações;
• Respostas a mudanças mais do que planejamento.
Como funciona
• Product Backlog: 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 envolvidos) 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.
• Sprint: 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.
• Burn Down Chart: 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 e o eixo Y
os dias que representam o
tamanho do Sprint.
• Kanban (Quadro de Trabalho): O time também
pode possuir um “quadro de trabalho”, também
chamado de Kanban, 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 e Concluído. Esse “quadro” é muito
produtivo, pois basta olhar para ele para realizar a
leitura do progresso da Sprint.
• Daily Scrum: 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.
• Sprint Review Meeting: 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 e o que pode ser melhorado e a equipe inicia o planejamento do próximo
Sprint.
Papéis e Responsabilidades
• Product Owner
• Define os requisitos do produto, decide a data de release e o que deve conter
nela.
• É responsável pelo retorno financeiro (ROI) 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.
Papéis e Responsabilidades
• Scrum Master
• 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.
• Scrum Team
• 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
Principais características do Scrum
1 – Clientes devem estar definitivamente interessados nas entregas, desta
forma eles se tornam parte da equipe de desenvolvimento.
2 – No Scrum, os pacotes de trabalho do projeto são divididos em ciclos (que
podem estar divididos em semanas ou meses) denominados Sprints. O Sprint
significa um Time Box, dentro do qual um conjunto de tarefas deve ser
executado. Uma das grandes diferenças do Scrum para as metodologias
tradicionais é que seus desenvolvimentos são iterativos, ou seja, o trabalho é
dividido em iterações, o que estimula o constante feedback conforme as
entregas vão sendo realizadas. Com isso, o cliente passa a entender melhor o
produto e assim consegue evoluir com base em algo real.
Principais características do Scrum
3 – Torne as entregas frequentes e intermediárias. Não significa entregar
pela metade, significa que cada produto gerado deve entregar valor, ou seja,
estar 100% prontas.
4 – Evolução do projeto e da equipe devem ser discutidos diariamente e de
forma produtiva. No lugar de longas reuniões uma vez por semana, o Scrum
adota reuniões diárias, que devem começar sempre no mesmo horário e não
devem durar mais de 15 minutos. Nestas reuniões cada membro da equipe
deve responder:
O que fiz desde ontem?
O que estou planejando fazer até amanhã?
Existe algo me impedindo de atingir minha meta?
Principais características do Scrum
5 – A transparência é a alma do Scrum, tudo deve estar claro e bem
entendido, caso contrário não se trata de um requisito, logo não
poderá ser estimado, planejado ou desenvolvido. Os problemas
também não devem ser ignorados e ninguém é penalizado por
reconhecer ou descrever qualquer problema não visto. Esse foco ajuda
a torná-los naturais e visíveis, proporcionando que um pequeno
incidente seja descoberto e corrigido rapidamente.
6 – Locais e horas de trabalho devem ser energizadas, no sentido de
que “trabalhar horas extras” não necessariamente significa “produzir
mais”.
1 de 23

Recomendados

Processos Ágeis por
Processos Ágeis Processos Ágeis
Processos Ágeis ProfThiagoAAlves
105 visualizações52 slides
Metodologia Ágil por
Metodologia ÁgilMetodologia Ágil
Metodologia ÁgilAlex Vieira, MBA
655 visualizações21 slides
Métodos ágeis de desenvolvimento de software por
Métodos ágeis de desenvolvimento de softwareMétodos ágeis de desenvolvimento de software
Métodos ágeis de desenvolvimento de softwareJerônimo Medina Madruga
984 visualizações33 slides
Msf microsoft solutions framework - Apresentação por
Msf  microsoft solutions framework -  ApresentaçãoMsf  microsoft solutions framework -  Apresentação
Msf microsoft solutions framework - Apresentaçãocesaraks
2.4K visualizações29 slides
O uso de metodos ageis no desenvolvimento de software por
O uso de metodos ageis no desenvolvimento de softwareO uso de metodos ageis no desenvolvimento de software
O uso de metodos ageis no desenvolvimento de softwareEverton vitor
20 visualizações12 slides
Scrum uma metodologia ágil paragestão e planejamento de projetos de software por
Scrum uma metodologia ágil paragestão e planejamento de projetos de softwareScrum uma metodologia ágil paragestão e planejamento de projetos de software
Scrum uma metodologia ágil paragestão e planejamento de projetos de softwareThiago Reis da Silva
3.1K visualizações13 slides

Mais conteúdo relacionado

Mais procurados

Agile testing por
Agile testing Agile testing
Agile testing Rodrigo Oliveira, Msc, PMP
706 visualizações89 slides
Qualidade de software por
Qualidade de softwareQualidade de software
Qualidade de softwareRodrigo Oliveira, Msc, PMP
425 visualizações84 slides
Conhecendo o eXtreme Programming por
Conhecendo o eXtreme ProgrammingConhecendo o eXtreme Programming
Conhecendo o eXtreme ProgrammingDaniel Wildt
10.5K visualizações31 slides
Extreme programming (xp) - Resumo por
Extreme programming (xp) - ResumoExtreme programming (xp) - Resumo
Extreme programming (xp) - ResumoDaniel Brandão
11.4K visualizações14 slides
Extreme Programming por
Extreme ProgrammingExtreme Programming
Extreme ProgrammingMilfont Consulting
1.7K visualizações53 slides
Apresentação Scrum, Xp e Kanban por
Apresentação Scrum, Xp e KanbanApresentação Scrum, Xp e Kanban
Apresentação Scrum, Xp e KanbanManoela Oliveira
1.8K visualizações52 slides

Mais procurados(20)

Conhecendo o eXtreme Programming por Daniel Wildt
Conhecendo o eXtreme ProgrammingConhecendo o eXtreme Programming
Conhecendo o eXtreme Programming
Daniel Wildt10.5K visualizações
Extreme programming (xp) - Resumo por Daniel Brandão
Extreme programming (xp) - ResumoExtreme programming (xp) - Resumo
Extreme programming (xp) - Resumo
Daniel Brandão11.4K visualizações
Extreme Programming por Milfont Consulting
Extreme ProgrammingExtreme Programming
Extreme Programming
Milfont Consulting1.7K visualizações
Apresentação Scrum, Xp e Kanban por Manoela Oliveira
Apresentação Scrum, Xp e KanbanApresentação Scrum, Xp e Kanban
Apresentação Scrum, Xp e Kanban
Manoela Oliveira1.8K visualizações
Gerenciar projetos 10 formatos que todo gp precisa conhecer por AntonioBatista48
Gerenciar projetos  10 formatos que todo gp precisa conhecerGerenciar projetos  10 formatos que todo gp precisa conhecer
Gerenciar projetos 10 formatos que todo gp precisa conhecer
AntonioBatista4837 visualizações
Métodos Ágeis para Desenvolvimento de Software por alexandre_malaquias
Métodos Ágeis para Desenvolvimento de SoftwareMétodos Ágeis para Desenvolvimento de Software
Métodos Ágeis para Desenvolvimento de Software
alexandre_malaquias1.4K visualizações
Caminhos do Scrum por jrompkovski
Caminhos do ScrumCaminhos do Scrum
Caminhos do Scrum
jrompkovski452 visualizações
Scrum por dan_azevedo
ScrumScrum
Scrum
dan_azevedo791 visualizações
1 apresentacao metodologia rcp por Frank Coelho
1  apresentacao metodologia rcp1  apresentacao metodologia rcp
1 apresentacao metodologia rcp
Frank Coelho213 visualizações
Apresentação Scrum 2012 por Libia Boss
Apresentação Scrum 2012Apresentação Scrum 2012
Apresentação Scrum 2012
Libia Boss456 visualizações
Plano de Projeto de Software do​ Residents Control por azarael2607
Plano de Projeto de Software do​ Residents ControlPlano de Projeto de Software do​ Residents Control
Plano de Projeto de Software do​ Residents Control
azarael26071K visualizações
Artigo23 por mpaf00 mpaf00
Artigo23Artigo23
Artigo23
mpaf00 mpaf00212 visualizações
[Uff]qualidade agilidade por Sti Uff
[Uff]qualidade agilidade[Uff]qualidade agilidade
[Uff]qualidade agilidade
Sti Uff577 visualizações
Artigo Pós graduação_Caroline Seara (2) por Caroline Seara
Artigo Pós graduação_Caroline Seara (2)Artigo Pós graduação_Caroline Seara (2)
Artigo Pós graduação_Caroline Seara (2)
Caroline Seara57 visualizações
SCRUM Processo de Desenvolvimento de Software por elliando dias
SCRUM Processo de Desenvolvimento de SoftwareSCRUM Processo de Desenvolvimento de Software
SCRUM Processo de Desenvolvimento de Software
elliando dias1.2K visualizações
Feature Driven Development por Maurício Linhares
Feature Driven DevelopmentFeature Driven Development
Feature Driven Development
Maurício Linhares534 visualizações
Artigo por mpaf00 mpaf00
ArtigoArtigo
Artigo
mpaf00 mpaf00309 visualizações

Similar a Metodos ageis

Métodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento por
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do ConhecimentoMétodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do ConhecimentoClaudia Hofart Guzzo
313 visualizações49 slides
Agile explicacao 18 por
Agile explicacao 18Agile explicacao 18
Agile explicacao 18Júlio Ferreira
267 visualizações29 slides
Introdução a Metodologia XP (E Xtreme Programming) por
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)Rennan Martini
12.6K visualizações40 slides
Trabalho pds libre office 2 por
Trabalho pds libre office 2Trabalho pds libre office 2
Trabalho pds libre office 2Edinaldo Mendes
435 visualizações21 slides
Vantagens agil 3 por
Vantagens agil 3Vantagens agil 3
Vantagens agil 3Júlio Ferreira
385 visualizações25 slides
Desenvolvimento ágil pensando além por
Desenvolvimento ágil   pensando alémDesenvolvimento ágil   pensando além
Desenvolvimento ágil pensando alémilegra
444 visualizações60 slides

Similar a Metodos ageis(20)

Métodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento por Claudia Hofart Guzzo
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do ConhecimentoMétodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Métodos Ágeis de Gestão de Projetos aplicados à Gestão do Conhecimento
Claudia Hofart Guzzo313 visualizações
Agile explicacao 18 por Júlio Ferreira
Agile explicacao 18Agile explicacao 18
Agile explicacao 18
Júlio Ferreira267 visualizações
Introdução a Metodologia XP (E Xtreme Programming) por Rennan Martini
Introdução a Metodologia XP (E Xtreme Programming)Introdução a Metodologia XP (E Xtreme Programming)
Introdução a Metodologia XP (E Xtreme Programming)
Rennan Martini12.6K visualizações
Trabalho pds libre office 2 por Edinaldo Mendes
Trabalho pds libre office 2Trabalho pds libre office 2
Trabalho pds libre office 2
Edinaldo Mendes435 visualizações
Vantagens agil 3 por Júlio Ferreira
Vantagens agil 3Vantagens agil 3
Vantagens agil 3
Júlio Ferreira385 visualizações
Desenvolvimento ágil pensando além por ilegra
Desenvolvimento ágil   pensando alémDesenvolvimento ágil   pensando além
Desenvolvimento ágil pensando além
ilegra444 visualizações
Gerenciamento de equipes no desenvolvimento de software por Roberto Brandini
Gerenciamento de equipes no desenvolvimento de softwareGerenciamento de equipes no desenvolvimento de software
Gerenciamento de equipes no desenvolvimento de software
Roberto Brandini6.4K visualizações
Sua Gestão é Ágil? por Teresa Maciel
Sua Gestão é Ágil?Sua Gestão é Ágil?
Sua Gestão é Ágil?
Teresa Maciel364 visualizações
Feature driven development por Izabel Rodrigues
Feature driven developmentFeature driven development
Feature driven development
Izabel Rodrigues1.1K visualizações
ageis2003.ppt por ssuser9a8135
ageis2003.pptageis2003.ppt
ageis2003.ppt
ssuser9a81356 visualizações
ageis2003.ppt por JAIMEMARTINS18
ageis2003.pptageis2003.ppt
ageis2003.ppt
JAIMEMARTINS187 visualizações
Texto de Apoio2_Síntese de Metodologias Ageis.ppt por HurgelNeto
Texto de Apoio2_Síntese de Metodologias Ageis.pptTexto de Apoio2_Síntese de Metodologias Ageis.ppt
Texto de Apoio2_Síntese de Metodologias Ageis.ppt
HurgelNeto2 visualizações
Metodologias Ágeis para Gestão e Planejamento de Projetos Scrum - XP - Kanban por Matheus Costa
Metodologias Ágeis para Gestão e Planejamento de Projetos Scrum - XP - KanbanMetodologias Ágeis para Gestão e Planejamento de Projetos Scrum - XP - Kanban
Metodologias Ágeis para Gestão e Planejamento de Projetos Scrum - XP - Kanban
Matheus Costa3K visualizações
Metodologias Ágeis por Profa Karen Borges
Metodologias ÁgeisMetodologias Ágeis
Metodologias Ágeis
Profa Karen Borges782 visualizações
Artigo corrigido por mpaf00 mpaf00
Artigo corrigidoArtigo corrigido
Artigo corrigido
mpaf00 mpaf00437 visualizações
Métodos ágeis de desenvolvimento2 por GrupoAlves - professor
Métodos ágeis de desenvolvimento2Métodos ágeis de desenvolvimento2
Métodos ágeis de desenvolvimento2
GrupoAlves - professor1.2K visualizações
Metodologia ágil das Desenvolvimento Adaptativo Software por Marilainny Martins da Silva
Metodologia ágil das   Desenvolvimento Adaptativo SoftwareMetodologia ágil das   Desenvolvimento Adaptativo Software
Metodologia ágil das Desenvolvimento Adaptativo Software
Marilainny Martins da Silva2.3K visualizações
Proposta De Um Protótipo Para Avaliação Da Maturidade em Gestão Da Inovação D... por Diógenes Almeida
Proposta De Um Protótipo Para Avaliação Da Maturidade em Gestão Da Inovação D...Proposta De Um Protótipo Para Avaliação Da Maturidade em Gestão Da Inovação D...
Proposta De Um Protótipo Para Avaliação Da Maturidade em Gestão Da Inovação D...
Diógenes Almeida85 visualizações
Scrum - Profº James Moreira Jr. por James Moreira
Scrum - Profº James Moreira Jr.Scrum - Profº James Moreira Jr.
Scrum - Profº James Moreira Jr.
James Moreira851 visualizações
Aplicando Scrum na prática para times ágeis por fayrusm
Aplicando Scrum na prática para times ágeisAplicando Scrum na prática para times ágeis
Aplicando Scrum na prática para times ágeis
fayrusm81 visualizações

Último

As tendências educacionais contemporâneas estão em constante evolução para se... por
As tendências educacionais contemporâneas estão em constante evolução para se...As tendências educacionais contemporâneas estão em constante evolução para se...
As tendências educacionais contemporâneas estão em constante evolução para se...liliandlm20
8 visualizações3 slides
Análise crítica: A importância de ler os rótulos dos alimentos A leitura dos ... por
Análise crítica: A importância de ler os rótulos dos alimentos A leitura dos ...Análise crítica: A importância de ler os rótulos dos alimentos A leitura dos ...
Análise crítica: A importância de ler os rótulos dos alimentos A leitura dos ...taynaradl79
9 visualizações9 slides
O Livreiro de Cabul - Cópia (2).pptx por
O Livreiro de Cabul - Cópia (2).pptxO Livreiro de Cabul - Cópia (2).pptx
O Livreiro de Cabul - Cópia (2).pptxivanzeco05
5 visualizações10 slides
ATIVIDADE 1 - PSICOLOGIA ORGANIZACIONAL - 54/2023 por
ATIVIDADE 1 - PSICOLOGIA ORGANIZACIONAL - 54/2023ATIVIDADE 1 - PSICOLOGIA ORGANIZACIONAL - 54/2023
ATIVIDADE 1 - PSICOLOGIA ORGANIZACIONAL - 54/2023AcademiaDlassessoria
8 visualizações3 slides
A prática docente nos coente nos coloca inúmeros desafios a serem superados d... por
A prática docente nos coente nos coloca inúmeros desafios a serem superados d...A prática docente nos coente nos coloca inúmeros desafios a serem superados d...
A prática docente nos coente nos coloca inúmeros desafios a serem superados d...dll878820
25 visualizações6 slides
(CSCW) O estado da arte dos modelos de maturidade na colaboração organizacional por
(CSCW) O estado da arte dos modelos de maturidade na colaboração organizacional(CSCW) O estado da arte dos modelos de maturidade na colaboração organizacional
(CSCW) O estado da arte dos modelos de maturidade na colaboração organizacionalAlexandre Cysne Esteves
9 visualizações21 slides

Último(7)

As tendências educacionais contemporâneas estão em constante evolução para se... por liliandlm20
As tendências educacionais contemporâneas estão em constante evolução para se...As tendências educacionais contemporâneas estão em constante evolução para se...
As tendências educacionais contemporâneas estão em constante evolução para se...
liliandlm208 visualizações
Análise crítica: A importância de ler os rótulos dos alimentos A leitura dos ... por taynaradl79
Análise crítica: A importância de ler os rótulos dos alimentos A leitura dos ...Análise crítica: A importância de ler os rótulos dos alimentos A leitura dos ...
Análise crítica: A importância de ler os rótulos dos alimentos A leitura dos ...
taynaradl799 visualizações
O Livreiro de Cabul - Cópia (2).pptx por ivanzeco05
O Livreiro de Cabul - Cópia (2).pptxO Livreiro de Cabul - Cópia (2).pptx
O Livreiro de Cabul - Cópia (2).pptx
ivanzeco055 visualizações
ATIVIDADE 1 - PSICOLOGIA ORGANIZACIONAL - 54/2023 por AcademiaDlassessoria
ATIVIDADE 1 - PSICOLOGIA ORGANIZACIONAL - 54/2023ATIVIDADE 1 - PSICOLOGIA ORGANIZACIONAL - 54/2023
ATIVIDADE 1 - PSICOLOGIA ORGANIZACIONAL - 54/2023
AcademiaDlassessoria8 visualizações
A prática docente nos coente nos coloca inúmeros desafios a serem superados d... por dll878820
A prática docente nos coente nos coloca inúmeros desafios a serem superados d...A prática docente nos coente nos coloca inúmeros desafios a serem superados d...
A prática docente nos coente nos coloca inúmeros desafios a serem superados d...
dll87882025 visualizações
(CSCW) O estado da arte dos modelos de maturidade na colaboração organizacional por Alexandre Cysne Esteves
(CSCW) O estado da arte dos modelos de maturidade na colaboração organizacional(CSCW) O estado da arte dos modelos de maturidade na colaboração organizacional
(CSCW) O estado da arte dos modelos de maturidade na colaboração organizacional
Alexandre Cysne Esteves9 visualizações
Vertiport Broker 1.1.ppt por Igor Rafailov
Vertiport Broker 1.1.pptVertiport Broker 1.1.ppt
Vertiport Broker 1.1.ppt
Igor Rafailov24 visualizações

Metodos ageis

  • 1. Métodos Ágeis 26Jul2017 - Fontes consultadas: http://www.projectbuilder.com.br/blog-home/entry/conhecimentos/quais-sao-os-principais-tipos-de-metodos-ageis http://www.brq.com/metodologias-ageis/ https://pt.wikipedia.org/wiki/Desenvolvimento_%C3%A1gil_de_software
  • 2. O que são? • São processos de desenvolvimento iterativo e incremental para gerenciamento de projetos. Muito utilizados para desenvolvimento ágil de software, mas com conceitos e práticas aplicáveis a várias outras indústrias. É utilizado para trabalhos complexos nos quais é impossível (ou muito difícil) predizer tudo o que irá ocorrer. • Via de regra, demandam aumento da comunicação e interação da equipe, organização diária para o alcance da meta definida, buscando evitar falhas na elaboração, respostas rápidas às mudanças e entregas em tempos menores. • Algumas vezes caracterizados como o oposto de metodologias guiadas pelo planejamento ou disciplinadas. Uma distinção mais acurada é dizer que os métodos existem em um contínuo do adaptativo até o preditivo. Métodos ágeis existem do lado adaptativo deste contínuo.
  • 3. Métodos adaptativos • Métodos adaptativos buscam a adaptação rápida a mudanças da realidade. Quando uma necessidade de um projeto muda, uma equipe adaptativa mudará também. Um time adaptativo terá dificuldade em descrever o que irá acontecer no futuro. O que acontecerá em uma data futura é um item de difícil predição para um método adaptativo. Uma equipe adaptativa pode relatar quais tarefas se iniciarão na próxima semana. Quando perguntado acerca de uma implantação que ocorrerá daqui a seis meses, uma equipe adaptativa deve ser capaz somente de relatar a instrução de missão para a implantação, ou uma expectativa de valor versus custo.
  • 4. Métodos preditivos • Métodos preditivos, em contraste, colocam o planejamento do futuro em detalhe. Uma equipe preditiva pode reportar exatamente quais aspectos e tarefas estão planejados para toda a linha do processo de desenvolvimento. Elas porém tem dificuldades de mudar de direção. O plano é tipicamente otimizado para o objetivo original e mudanças de direção podem causar a perda de todo o trabalho e determinar que seja feito tudo novamente. Equipes preditivas frequentemente instituem um comitê de controle de mudança para assegurar que somente as mudanças mais importantes sejam consideradas.
  • 5. Princípios • Garantir a satisfação do consumidor entregando rapidamente e continuamente software funcionais; • Até mesmo mudanças tardias de escopo no projeto são bem-vindas para garantir a vantagem competitiva do cliente; • Software funcionais são entregues frequentemente (semanas, ao invés de meses); • Cooperação diária entre pessoas que entendem do 'negócio' e desenvolvedores; • Projetos surgem através de indivíduos motivados, entre os quais existe relação de confiança. • A maneira mais eficiente e efetiva de transmitir informações é conversar cara a cara; • Software funcionais são a principal medida de progresso do projeto;
  • 6. Princípios • Processos ágeis promovem desenvolvimento sustentável. Os patrocinadores, desenvolvedores e usuários devem ser capazes para manter um ritmo constante indefinidamente. • Design do software deve prezar pela excelência técnica; • Simplicidade é essencial; • As melhores arquiteturas, requisitos e projetos emergem de equipes auto-organizadas; • Em intervalos regulares, a equipe reflete sobre como para tornar-se mais eficaz, então sintoniza e ajusta seu comportamento apropriadamente.
  • 7. Métodos são ferramentas • Métodos são meios para se chegar a um objetivo. São como ferramentas que podem ser utilizadas em determinados contextos. • Nem toda a ferramenta serve para toda a necessidade, e muitas vezes, mais de uma ferramenta se faz necessária para resolver um problema.
  • 8. Alguns dos principais tipos de métodos ágeis • Feature Driven Development (FDD) • eXtreme Programming (XP) • Microsoft Solutions Framework (MSF) • Dynamic System Development Model (DSDM) • Scrum
  • 9. Feature Driven Development (FDD) • Criado em Cingapura, entre 1997 e 1999, o FDD é um método ágil que reúne as melhores práticas de outros métodos, como o Coad. Sua premissa básica é focada em funcionalidades, o que permite à equipe do projeto realizar um planejamento incremental, isto é, por fases. Esse tipo de atuação ajuda a dar agilidade ao desenvolvimento de soluções em ambientes de extrema incerteza, em que as mudanças são inevitáveis. • A programação por FDD começa com a visão global do negócio, já que esse método considera a soma de tudo mais importante do que cada uma das partes separadamente. Passa-se, então, para o detalhamento do produto com a subdivisão por áreas a serem modeladas, culminando na descrição de cada funcionalidade. • Por se tratar de uma ferramenta focada no desenvolvimento, o FDD pode ser perfeitamente integrado ao Scrum, outro método ágil muito utilizado que também é focado no planejamento e na execução do projeto. E assim como todos os demais métodos ágeis, o FDD também possui melhores práticas que visam criar o ambiente ideal para o desenvolvimento de projetos. São elas: • Desenvolvimento por funcionalidades; • Um único programador é responsável pela funcionalidade desenvolvida; • Controle de qualidade em todas as fases do projeto; • Gerenciamento de configurações; • Integração contínua das funcionalidades; • Planejamento incremental; • Teste de software.
  • 10. eXtreme Programming (XP) • Também criado em meados da década de 90, o eXtreme Programming, carinhosamente chamado de XP, é um método ágil focado no desenvolvimento de softwares que tem três pilares como base: agilidade no desenvolvimento da solução, economia de recursos e qualidade do produto final. • Para chegar à excelência nos serviços prestados, uma equipe XP deve se basear em valores, isto é, um contrato de atitudes e comportamentos que levam ao sucesso. Esses comportamentos e atitudes norteiam as ações da equipe XP em cada atividade a ser desempenhada, garantindo a integração e a sinergia necessárias para um bom desempenho. No caso, esses valores são: • Comunicação; • Simplicidade; • Feedback; • Coragem; • Respeito.
  • 11. eXtreme Programming (XP) • Além dos valores, o método ágil XP também leva em consideração melhores práticas de trabalho, que têm como objetivo garantir a efetividade do trabalho da equipe XP, assim como a satisfação do cliente durante todo o processo de desenvolvimento. São elas: • Cliente sempre à disposição; • Uso de metáforas; • Reuniões de planejamento (planning game); • Reuniões diárias, de 15 minutos, para alinhamento (stand up meeting); • Integração contínua dos módulos desenvolvidos; • Mudanças incrementais; • Entregas frequentes ao cliente (small releases); • Design simples e funcional; • Testes de aceitação; • Refatoração ou melhoria contínua.
  • 12. Microsoft Solutions Framework (MSF) • O MSF é um dos métodos ágeis mais usados por se destinar ao desenvolvimento de soluções tecnológicas por equipes reduzidas, focando na diminuição de riscos para o negócio e no aumento da qualidade do produto final. O propósito é identificar as falhas mais comuns em projetos de tecnologia, mitigando-as e aumentando as taxas de sucesso de cada iniciativa. Dessa forma, assim como o Scrum, o MSF está mais focado na gestão do projeto do que no desenvolvimento da solução em si. • Suas premissas são: • Alinhamento da tecnologia desenvolvida aos objetivos de negócio do cliente; • Escopo bem estruturado e detalhado; • Desenvolvimento iterativo; • Gerenciamento de riscos; • Agilidade na resposta a mudanças. • Assim como os outros métodos ágeis, o MSF também possui melhores práticas que devem ser observadas pela equipe para atingirem os níveis de excelência buscados: • Comunicação aberta e transparente entre todos os envolvidos; • Visão compartilhada do negócio; • Equipe capacitada; • Atribuição de papéis e responsabilidades desde o início do projeto; • Entregas incrementais; • Flexibilidade para mudar sempre que necessário; • Qualidade das entregas; • Aprendizado constante com as experiências adquiridas; • Parceria com clientes internos e externos.
  • 13. Dynamic System Development Model (DSDM) • O DSDM é um dos métodos ágeis mais antigos empregados não só no desenvolvimento de projetos como no meio tecnológico. Um tanto quanto diverso dos demais métodos ágeis, ele é destinado ao desenvolvimento de projetos com orçamento fixo e prazos curtos, levando em consideração que o cliente não tem como saber quanto custará a solução final. • Entre suas melhores práticas estão o desenvolvimento incremental e iterativo, a colaboração entre cliente e equipe, além da integração de funcionalidades, o que também vemos nos demais métodos ágeis. • Vale ressaltar que o DSDM diverge dos demais métodos ágeis tanto em sua estrutura, que é composta por processos interligados de modelagem, concepção, construção e implementação, assim como na gestão do tempo, que não é flexível, até permitindo que as funcionalidades mudem, mas desde que os prazos de execução continuem os mesmos.
  • 14. Scrum • O Scrum é, sem dúvida, o método ágil mais usado nos dias de hoje, principalmente porque pode ser integrado a outros métodos ágeis com facilidade, aplicando-se não só ao desenvolvimento de softwares como a qualquer ambiente de trabalho. Focado na gestão do projeto, o Scrum tem como base o planejamento iterativo e incremental, que, como você já sabe, se dá por fases, chamadas de sprints. • Define-se, desde o início do projeto, a lista de funcionalidades a serem desenvolvidas, também chamada, no caso, de product backlog. Dando andamento ao processo, cada funcionalidade se torna um sprint, cujos detalhes a serem criados e desenvolvidos passam do product backlog para o sprint backlog. Do sprint backlog as atividades são distribuídas entre os membros do Scrum Team, que devem desenvolvê-las dentro de um prazo que geralmente não leva mais que quatro semanas. Ao final de cada sprint é realizada a sprint review meeting, uma reunião de alinhamento sobre o que foi entregue. A partir daí, começa-se a planejar o próximo sprint. Essas etapas acontecem sucessivamente até que o produto final esteja pronto para a entrega.
  • 15. Scrum • Diferentemente dos demais métodos ágeis, o Scrum possui pelo menos três papéis muito bem definidos e absolutamente essenciais para o sucesso do projeto: • Product Owner: é o CEO do projeto, quem faz a ponte entre cliente e Scrum Team. É o responsável pelos resultados do projeto e por gerar valor para o cliente. • Scrum Master: é o coach do Scrum Team, a pessoa responsável por orientar os profissionais em relação às melhores práticas Scrum, remover barreiras e motivar. • Scrum Team: são os profissionais que efetivamente executam o desenvolvimento do projeto. • As melhores práticas Scrum estão baseadas no Manifesto para o Desenvolvimento Ágil de Softwares, levando em consideração atitudes e comportamentos como: • Indivíduos e interação mais do que processos e ferramentas; • Software em funcionamento mais do que documentação; • Colaboração com o cliente mais do que contratos e negociações; • Respostas a mudanças mais do que planejamento.
  • 16. Como funciona • Product Backlog: 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 envolvidos) 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. • Sprint: 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.
  • 17. • Burn Down Chart: 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 e o eixo Y os dias que representam o tamanho do Sprint. • Kanban (Quadro de Trabalho): O time também pode possuir um “quadro de trabalho”, também chamado de Kanban, 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 e Concluído. Esse “quadro” é muito produtivo, pois basta olhar para ele para realizar a leitura do progresso da Sprint.
  • 18. • Daily Scrum: 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. • Sprint Review Meeting: 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 e o que pode ser melhorado e a equipe inicia o planejamento do próximo Sprint.
  • 19. Papéis e Responsabilidades • Product Owner • Define os requisitos do produto, decide a data de release e o que deve conter nela. • É responsável pelo retorno financeiro (ROI) 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.
  • 20. Papéis e Responsabilidades • Scrum Master • 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. • Scrum Team • 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
  • 21. Principais características do Scrum 1 – Clientes devem estar definitivamente interessados nas entregas, desta forma eles se tornam parte da equipe de desenvolvimento. 2 – No Scrum, os pacotes de trabalho do projeto são divididos em ciclos (que podem estar divididos em semanas ou meses) denominados Sprints. O Sprint significa um Time Box, dentro do qual um conjunto de tarefas deve ser executado. Uma das grandes diferenças do Scrum para as metodologias tradicionais é que seus desenvolvimentos são iterativos, ou seja, o trabalho é dividido em iterações, o que estimula o constante feedback conforme as entregas vão sendo realizadas. Com isso, o cliente passa a entender melhor o produto e assim consegue evoluir com base em algo real.
  • 22. Principais características do Scrum 3 – Torne as entregas frequentes e intermediárias. Não significa entregar pela metade, significa que cada produto gerado deve entregar valor, ou seja, estar 100% prontas. 4 – Evolução do projeto e da equipe devem ser discutidos diariamente e de forma produtiva. No lugar de longas reuniões uma vez por semana, o Scrum adota reuniões diárias, que devem começar sempre no mesmo horário e não devem durar mais de 15 minutos. Nestas reuniões cada membro da equipe deve responder: O que fiz desde ontem? O que estou planejando fazer até amanhã? Existe algo me impedindo de atingir minha meta?
  • 23. Principais características do Scrum 5 – A transparência é a alma do Scrum, tudo deve estar claro e bem entendido, caso contrário não se trata de um requisito, logo não poderá ser estimado, planejado ou desenvolvido. Os problemas também não devem ser ignorados e ninguém é penalizado por reconhecer ou descrever qualquer problema não visto. Esse foco ajuda a torná-los naturais e visíveis, proporcionando que um pequeno incidente seja descoberto e corrigido rapidamente. 6 – Locais e horas de trabalho devem ser energizadas, no sentido de que “trabalhar horas extras” não necessariamente significa “produzir mais”.