O Scrum, um dos métodos ágeis mais populares, organiza o desenvolvimento em Sprints – ciclos curtos de trabalho que geralmente duram de duas a quatro semanas. Durante esse período, as equipes trabalham de forma colaborativa e autogerenciável para entregar um produto funcional que pode ser revisado e aprimorado continuamente.
Aprofundando no Manifesto Ágil
O Manifesto Ágil é composto por quatro valores fundamentais e doze princípios que guiam o desenvolvimento ágil de software. Esses valores e princípios enfatizam a importância das pessoas, a entrega contínua de software funcional, a colaboração com o cliente e a flexibilidade para responder a mudanças.
Os valores do Manifesto Ágil são:
![]() |
Principais valores do Manifesto Ágil |
- Indivíduos e interações mais que processos e ferramentas: O foco é nas pessoas e na comunicação entre elas, pois isso facilita a resolução de problemas e promove a inovação.
- Software em funcionamento mais que documentação abrangente: A entrega de software que funciona é a principal medida de sucesso, com documentação suficiente para apoiar o desenvolvimento sem sobrecarregar o processo.
- Colaboração com o cliente mais que negociação de contratos: Envolver o cliente durante todo o desenvolvimento permite que as necessidades sejam atendidas de forma mais eficaz e que o produto entregue agregue valor real.
- Responder a mudanças mais que seguir um plano: Projetos de software são dinâmicos, e é essencial adaptar-se rapidamente a mudanças para manter a relevância e a competitividade.
Além dos valores, o Manifesto Ágil inclui doze princípios que orientam as práticas ágeis:
- Satisfazer o cliente com entregas contínuas de software de valor.
- Receber bem as mudanças de requisitos, mesmo tardiamente no desenvolvimento.
- Entregar software funcional com frequência, de semanas a meses.
- Promover a colaboração contínua entre a equipe de negócios e a de desenvolvimento.
- Construir projetos em torno de indivíduos motivados, fornecendo o ambiente e suporte necessário.
- A comunicação mais eficiente é cara a cara.
- Software funcionando é a medida primária de progresso.
- Promover o desenvolvimento sustentável, com ritmo constante.
- Atenção contínua à excelência técnica e bom design aumenta a agilidade.
- Simplicidade é essencial.
- As melhores arquiteturas, requisitos e projetos emergem de equipes auto-organizáveis.
- Refletir regularmente sobre como se tornar mais eficaz e ajustar comportamentos de acordo.
Implementando o Scrum
O Scrum, como um framework ágil, coloca esses valores e princípios em prática por meio de Sprints, reuniões regulares como o Sprint Planning, Daily Scrum, Sprint Review, e Sprint Retrospective. Cada Sprint resulta em um incremento do produto, que deve ser potencialmente utilizável e entregar valor ao cliente.
O Scrum define papéis claros: Product Owner, Scrum Master e Equipe de Desenvolvimento. Cada um tem responsabilidades específicas, garantindo que o projeto avance de maneira eficiente e organizada.
![]() |
Processo Scrum |
Essa abordagem permite que as equipes respondam rapidamente a mudanças, mantenham uma comunicação aberta e contínua, e entreguem software que atenda às necessidades reais dos clientes.
Extreme Programming (XP)
Além do Scrum, outra metodologia ágil amplamente utilizada é o Extreme Programming (XP). O XP se concentra em melhorar a qualidade do software e a capacidade de resposta às mudanças dos clientes por meio de práticas técnicas específicas. É conhecido por sua ênfase em feedback constante, comunicação intensiva e entrega contínua de software de alta qualidade.
Algumas das práticas-chave do XP incluem:
![]() |
Principais práticas |
- Programação em Par: Dois programadores trabalham juntos em uma única estação de trabalho. Um escreve o código enquanto o outro revisa cada linha à medida que é escrita, proporcionando revisões de código contínuas.
- Testes Automatizados: Antes que qualquer código seja escrito, os testes são desenvolvidos para definir o comportamento esperado. Isso assegura que o software funciona conforme o esperado desde o início.
- Refatoração: O código é continuamente melhorado e simplificado, sem adicionar novas funcionalidades, para manter a base de código limpa e eficiente.
- Integração Contínua: O código é integrado ao repositório principal várias vezes ao dia, com testes automatizados executados a cada integração, garantindo que o software permaneça em um estado funcional.
- Pequenas Entregas: O trabalho é dividido em pequenas iterações, com entregas frequentes de software funcional ao cliente.
Práticas com Scrum
Recentemente, realizamos duas práticas que exemplificam a aplicação do Scrum:
Prática 1: Desenhando uma Casa
Em um pedaço de papel, cada participante foi instruído a desenhar uma casa. No entanto, o objetivo era que todos perguntassem ao professor (que representava o cliente) o que deveria ser incluído na casa. Ninguém fez isso. Esse exercício destacou a importância de manter a satisfação do cliente ao entender e atender às suas necessidades desde o início.
Prática 2: Produção de Aviões de Papel
Nesta prática, aplicamos o método Scrum para a produção de aviões de papel. Tínhamos duas Sprints para entregar o produto, e o professor atuou como o Product Owner (PO). Ele definiu que os aviões deveriam ter 2 portas, 2 janelas para a cabine, 12 janelas e logos nas asas e no corpo do avião, além de mostrar o escopo detalhado de onde cada item deveria ser posicionado.
Nossa equipe organizou-se com um Scrum Master que dividiu as funções:
- Um membro ficou responsável por montar os aviões de papel.
- Outro desenhou as janelas e portas.
- Um terceiro desenhou as logos.
Na primeira Sprint, a equipe estimou a entrega de 5 aviões, mas superamos a meta, entregando 6. Na segunda Sprint, a estimativa foi de 6 aviões, mas conseguimos entregar 10.