O que é metodologia ágil?
Visão geral do desenvolvimento de software ágil e modelos ágeis
Agile 101
Visão Geral de Metodologia Ágil
Aplicação da Metodologia Ágil
“A agilidade é principalmente uma questão de mentalidade, não de práticas”. — Jim Highsmith
Click To Tweet Tweet
O que é o Manifesto Ágil?
Source: LynneCazaly
4 Valores Centrais do Manifesto Ágil
“A inteligência é a capacidade de se adaptar à mudança”. — Stephen Hawking
Click To Tweet Tweet
12 Princípios do Manifesto Ágil
-
Nossa maior prioridade é satisfazer o cliente através da entrega antecipada e contínua de software valioso.Nossa maior prioridade é satisfazer o cliente através da entrega antecipada e contínua de software valioso.
-
Acolher as mudanças de requisitos, mesmo atrasados no desenvolvimento. Processos Agile aproveitam a mudança para a vantagem competitiva do cliente.Acolher as mudanças de requisitos, mesmo atrasados no desenvolvimento. Processos Agile aproveitam a mudança para a vantagem competitiva do cliente.
-
Entregue software funcional com frequência, de algumas semanas a alguns meses, com preferência para o menor prazo.Entregue software funcional com frequência, de algumas semanas a alguns meses, com preferência para o menor prazo.
-
Empresários e desenvolvedores devem trabalhar em conjunto diariamente durante todo o projeto.Empresários e desenvolvedores devem trabalhar em conjunto diariamente durante todo o projeto.
-
Construir projetos em torno de indivíduos motivados. Dê-lhes o ambiente e o apoio de que precisam, e confie neles para que o trabalho seja feito.Construir projetos em torno de indivíduos motivados. Dê-lhes o ambiente e o apoio de que precisam, e confie neles para que o trabalho seja feito.
-
O método mais eficiente e eficaz de transmitir informações para e dentro de uma equipe de desenvolvimento é a conversação frente a frente.O método mais eficiente e eficaz de transmitir informações para e dentro de uma equipe de desenvolvimento é a conversação frente a frente.
-
Software funcional é a principal medida de progresso.Software funcional é a principal medida de progresso.
-
Os processos Agile promovem o desenvolvimento sustentável. Os patrocinadores, desenvolvedores e usuários devem ser capazes de manter um ritmo constante indefinidamente.Os processos Agile promovem o desenvolvimento sustentável. Os patrocinadores, desenvolvedores e usuários devem ser capazes de manter um ritmo constante indefinidamente.
-
A atenção contínua à excelência técnica e ao bom projeto aumenta a agilidade.A atenção contínua à excelência técnica e ao bom projeto aumenta a agilidade.
-
Simplicidade — a arte de maximizar a quantidade de trabalho não concluído — é essencial.Simplicidade — a arte de maximizar a quantidade de trabalho não concluído — é essencial.
-
As melhores arquiteturas, requisitos e projetos emergem de equipes auto-organizadas.As melhores arquiteturas, requisitos e projetos emergem de equipes auto-organizadas.
-
Em intervalos regulares, a equipe reflete sobre como se tornar mais eficaz, depois afina e ajusta seu comportamento de acordo.Em intervalos regulares, a equipe reflete sobre como se tornar mais eficaz, depois afina e ajusta seu comportamento de acordo.
Principais Metodologias Ágeis
-
Scrum
-
Programação Extrema (XP)
-
Desenvolvimento de Software Adaptativo (ASD)
-
Método de Desenvolvimento Dinâmico de Software (DSDM)
-
Feature Driven Development (FDD)
-
Kanban
-
Behavior Driven Development (BDD)
Metodologia Scrum
“Enquanto você navega pelo resto de sua vida, esteja aberto à colaboração. Outras pessoas e as ideias de outras pessoas são muitas vezes melhores do que as suas”. — Amy Poehler
Click To Tweet Tweet
Programação Extrema (XP)
Desenvolvimento de Software Adaptativo (ASD)
-
Especular: Esta é a fase inicial do projeto, onde é necessário estabelecer os principais objetivos e metas do projeto, compreendendo as limitações (áreas de risco) com as quais o projeto opera.
-
Colaborar: Esta é a fase em que a maior parte do desenvolvimento é centralizada, mantendo a coordenação entre as equipes que assegura que o que é aprendido por uma equipe seja comunicado ao resto e não tenha que ser aprendido novamente por outras equipes a partir do zero.
-
Aprender: A última fase termina com uma série de ciclos de colaboração — o trabalho é capturar o que foi aprendido, tanto positivo como negativo. Esta etapa é fundamental para a eficácia do projeto.
“Em um projeto Agile, a equipe se encarrega das tarefas e o líder do projeto se encarrega da equipe”. — Jim Highsmith
Click To Tweet Tweet
Metodologia de Desenvolvimento de Sistemas Dinâmicos (DSDM)
Feature Driven Development (FDD)
Metodologia Kanban
O ciclo de sprint de 2-3 semanas tornou-se muito longo para esperar por muitos contextos empresariais, as mudanças necessárias na estrutura organizacional (novas funções e responsabilidades) e um gerenciamento de projetos/processos de planejamento colocaram muita pressão sobre as organizações, e muitas equipes se viram sem cumprir nem mesmo os compromissos de alcance e qualidade do nível de sprint. Para a maioria das organizações, a implementação destas metodologias tornou-se muito perturbadora.
A Metodologia Kanban foi definida como o oposto disso — uma metodologia evolutiva sem interrupções para melhorias, que finalmente permite às equipes entregar continuamente em vez de em períodos de 2-3 semanas, obter feedback mais rápido e reduzir o tempo de entrega de valor ao cliente.
O Kanban é um sistema visual para gerenciar o trabalho à medida que ele se move através de um processo. O Kanban visualiza tanto o processo (o fluxo de trabalho) quanto o trabalho real que passa por esse processo. O objetivo do Kanban é identificar potenciais gargalos em seu processo e corrigi-los, para que o trabalho possa fluir através dele de forma rentável a uma velocidade ou rendimento otimizados.
O Kanban é definido como um sistema de produção altamente eficaz e eficiente. A origem da metodologia Kanban está nos processos de produção “just-in-time” (JIT) concebidos pela Toyota, nos quais os cartões foram utilizados para identificar as necessidades de material na cadeia de produção. Você pode aprender mais sobre o Kanban aqui: https://www.digite.com/kanban/what-is-kanban/
Behavior Driven Development (BDD)
Source: Johnfergusonsmart.com
“A comunicação eficaz é 20% do que você sabe e 80% do que você sente sobre o que você sabe”. — Jim Rohn
Click To Tweet Tweet
