Filosofia do Desenvolvimento Ágil

O desenvolvimento ágil é um método de desenvolvimento centrado no ser humano, iterativo e gradual. No desenvolvimento ágil, a construção de um projeto de software é dividida em vários subprojetos, e os resultados de cada subprojeto foram testados e possuem as características de integração e operação.

Em outras palavras, um grande projeto é dividido em vários projetos pequenos que estão inter-relacionados, mas também podem ser executados de forma independente e concluídos separadamente. Durante este processo, o software está sempre em um estado utilizável.

Classificação de modelos de desenvolvimento ágil

Agile é uma mentalidade e é um conjunto de valores e princípios. Ágil é uma forma de pensar e agir. Agile tem tudo a ver com ciclos curtos, entrega iterativa e incremental, falha rápida, obtenção de feedback, entrega de valor de negócios aos clientes antecipadamente e sobre pessoas, colaboração e interação. Ágil é uma mentalidade que tem tudo a ver com transparência, inspeção e adaptação. Agile, no entanto, não consiste em  funções , eventos ou  artefatos . É uma mentalidade. Por exemplo,  o Scrum  é um dos frameworks amplamente utilizados sob o guarda-chuva do Agile, o que pode ajudá-lo a se tornar mais Agile, no entanto, existem muitos outros frameworks dentro do movimento Agile, como Kanban, XP, Crystal e muitos outros, conforme mostrado na Figura abaixo:

  • XP Extreme Programming (Programação eXtreme)
  • SCRUM
  • Kanban
  • Magro
  • Método de cristal
  • Método de desenvolvimento de sistema dinâmico

Entre eles, XP e SCRUM são os mais populares.

Scrum

Scrum é uma estrutura dentro da qual as pessoas podem lidar com problemas adaptativos complexos, enquanto entregam de forma produtiva e criativa produtos com o maior valor possível. É usado para gerenciar projetos de software e desenvolvimento de produtos ou aplicativos. Seu foco está em uma estratégia de desenvolvimento de produto adaptável, onde uma equipe multifuncional trabalha como uma unidade para alcançar um objetivo comum dentro de 2 a 4 semanas ( Sprint ). Consiste em uma coleção de valores, artefatos, papéis, cerimônias, regras e melhores práticas.

Estrutura Scrum

Magro

Lean originou-se com o Sistema Toyota de Produção, ou TPS, que revolucionou a fabricação de bens físicos nas décadas de 1950, 1960 e além. O Lean mantém sua presença na manufatura, mas também encontrou novas aplicações no trabalho do conhecimento, ajudando empresas de todos os setores a  eliminar desperdícios, melhorar processos e impulsionar a inovação . O desenvolvimento de software é uma aplicação natural da metodologia Lean porque, assim como a manufatura, geralmente segue um processo definido, tem algumas condições definidas de aceitação e resulta na entrega de valor tangível. Os principais conceitos que orientam toda a prática da metodologia Lean, que chamamos de Pilares do Lean. Eles estão:

  • Melhoria continua
  • Respeito pelas pessoas
  • Liderança Leve

Kanban

Kanban é um método de gerenciamento de fluxo de trabalho altamente visual que é popular entre as equipes Lean. De fato, 83% das equipes que praticam Lean usam Kanban para visualizar e gerenciar ativamente a criação de produtos com ênfase na entrega contínua, sem sobrecarregar a equipe de desenvolvimento. Assim como o Scrum, o Kanban é um processo projetado para ajudar as equipes a trabalharem juntas de forma mais eficaz.

Kanban é baseado em 3 princípios básicos:

  • Visualize o que você fará hoje (fluxo de trabalho): Ver todos os itens dentro do contexto um do outro pode ser muito informativo
  • Limitar a quantidade de trabalho em andamento (WIP): Isso ajuda a equilibrar a abordagem baseada em fluxo para que as equipes não comecem e se comprometam com muito trabalho de uma só vez
  • Melhorar o fluxo: Quando algo é concluído, o próximo item de maior prioridade da lista de pendências é colocado em jogo

O Kanban promove a colaboração contínua e incentiva o aprendizado e a melhoria ativos e contínuos, definindo o melhor fluxo de trabalho de equipe possível.

Método de Desenvolvimento de Sistemas Dinâmicos (DSDM)

O DSDM é uma estrutura composta por oito princípios, um ciclo de vida e produtos, funções e responsabilidades e várias técnicas de melhores práticas. Eles sustentam e apoiam uma filosofia de fornecer benefícios de negócios estrategicamente alinhados o mais cedo possível para dar a uma organização o melhor retorno sobre o investimento (ROI) possível.

O DSDM é uma metodologia que prioriza o cronograma e a qualidade sobre a funcionalidade, que fixa custo, qualidade e tempo no início e usa o método de priorização MoSCoW, que divide um projeto em quatro tipos diferentes de requisitos:

  • Deve ter (M)
  • Deveria ter (S)
  • Poderia ter ©
  • Não terá (W)

Existem oito princípios que sustentam o DSDM Atern. Esses princípios direcionam a equipe na atitude que devem tomar e na mentalidade que devem adotar para entregar de forma consistente.

  1. Foco na necessidade do negócio
  2. Entregue no prazo
  3. Colaborar
  4. Nunca comprometa a qualidade
  5. Construa incrementalmente a partir de fundações firmes
  6. Desenvolver iterativamente
  7. Comunique-se de forma contínua e clara
  8. Demonstrar controle

Programação extrema

Extreme Programming  (XP), originalmente descrito por Kent Beck, surgiu como uma das metodologias ágeis mais populares e controversas. XP é uma abordagem disciplinada para fornecer software de alta qualidade de forma rápida e contínua. Destina-se a melhorar a qualidade do software e a capacidade de resposta em face das mudanças nos requisitos do cliente. Promove alto envolvimento do cliente, ciclos de feedback rápidos, testes contínuos, planejamento contínuo e trabalho em equipe para entregar software funcional em intervalos muito frequentes, normalmente a cada 1-3 semanas.

Programação Extrema Explicada

Quais são os principais valores dos métodos ágeis?

O termo “Ágil” foi cunhado em 2001 no Manifesto Ágil. O manifesto se propôs a estabelecer princípios para orientar uma melhor abordagem ao desenvolvimento de software. O Manifesto Ágil consiste em 4 valores importantes. A maneira de ler o Manifesto Ágil não é que os itens do lado direito não tenham mais valor, mas o movimento Ágil valoriza mais os itens do lado esquerdo.

Existem quatro valores-chave que são os blocos de construção de cada componente em uma abordagem ágil. Eles enfatizam uma mudança de ênfase de práticas e processos para pessoas e colaboração.

Esses quatro valores informam as melhores práticas ágeis, concentrando-se na flexibilidade para que as equipes possam trabalhar melhor em conjunto para realizar as tarefas. As práticas ágeis elevam a importância do objetivo final em todo o processo. Se as pessoas podem trabalhar bem juntas, se adaptar a novas mudanças e produzir, não importa tanto como elas fazem isso.

12 boas práticas

Complementando o Manifesto Ágil, a Aliança Ágil também definiu um conjunto de 12 princípios subjacentes, que fornecem orientações e explicações mais detalhadas, além do Manifesto Ágil:

Desenvolvimento Ágil — 12 melhores práticas
  1. Nossa maior prioridade é satisfazer o cliente por meio da entrega antecipada e contínua de software valioso.
  2. Bem-vindo à mudança de requisitos, mesmo no final do desenvolvimento. Os processos ágeis aproveitam a mudança para a vantagem competitiva do cliente.
  3. Entregue o software funcional com frequência, de algumas semanas a alguns meses, com preferência à escala de tempo mais curta.
  4. Pessoas de negócios e desenvolvedores devem trabalhar juntos diariamente durante todo o projeto.
  5. Construir projetos em torno de indivíduos motivados. Dê a eles o ambiente e o suporte de que precisam e confie neles para fazer o trabalho.
  6. O método mais eficiente e eficaz de transmitir informações para e dentro de uma equipe de desenvolvimento é a conversa cara a cara.
  7. O software funcionando é a principal medida de progresso.
  8. Processos ágeis promovem o desenvolvimento sustentável.
  9. Os patrocinadores, desenvolvedores e usuários devem ser capazes de manter um ritmo constante indefinidamente.
  10. A atenção contínua à excelência técnica e ao bom design aumenta a agilidade.
  11. Simplicidade – a arte de maximizar a quantidade de trabalho não feito – é essencial.
  12. As melhores arquiteturas, requisitos e designs surgem de equipes auto-organizadas. Em intervalos regulares, a equipe reflete sobre como se tornar mais eficaz, depois ajusta e ajusta seu comportamento de acordo.

Resumo

Desenvolvimento Ágil é um dos grandes chavões da indústria de desenvolvimento de software, que é uma forma diferente de gerenciar projetos de desenvolvimento de software. Em vez de um método específico de desenvolvimento de software, é um termo abrangente para um conjunto de métodos e práticas baseados nos valores e princípios expressos no Manifesto Ágil. As soluções evoluem por meio da colaboração entre equipes auto-organizadas e multifuncionais, utilizando as práticas apropriadas para seu contexto.

Leitura de desenvolvimento ágil

Leave a Reply

O seu endereço de email não será publicado.