Agile Manifesto
O Agile Manifesto estabelece, dessa maneira, agile values e os agile principles fundamentais das metodologias ágeis. Este foi, desse modo, criado em 2001 por um conjunto de 17 signatários.
Na década de 1990 a indústria da criação de software enfrentava, dessa forma, graves problemas. Em outras palavras, os projectos eram normalmente entregues fora de tempo, fora do orçamento e desajustados.
Em Fevereiro de 2001, 17 pessoas juntaram-se no Utah, para discutirem, dessa maneira, a forma como trabalhavam. Contudo, estes 17 profissionais já usavam metodologias ágeis como XP, Kanban e Scrum. Por fim, todos perceberam que mesmo usando métodos diferentes tinham fundamentos em comum. Isso, levando-os, assim, a criar o manifesto.
Ainda que tenha sido criado a pensar na criação de software, cedo passou fronteiras e passou a ser usado noutras áreas. Hoje existem, dessa forma, poucas pessoas que possam dizer que não beneficiam de entregas mais rápidas, mais produtivas e informativas. Isto porque cada vez mais a relação com os clientes está mais próxima, pede-se mais vezes feedback e mostra-se mais vezes ao cliente o trabalho em progresso. Tudo consequências, dessa forma, da criação e adopção do manifesto por parte das equipas.
CURSOS AGILE
Valores do Manifesto Agile (Agile Values)
O Agile Manifesto estabelece quatro valores (agile values) orientadores. Eles são:
As pessoas e as relações são mais importantes que os procedimentos e as ferramentas
O desenvolvimento de produtos e serviços é, dessa forma feito, por pessoas. Assim, é importante que exista comunicação constante e clara. Isto irá permitir que os problemas sejam resolvidos de uma forma mais fácil. Os procedimentos e ferramentas também são importantes mas devem ser simples.
Ter o software a funcionar é mais importante do que ter a documentação completa
O objectivo do projeto é desenvolver um software e só está concluído se este funcionar. É isso que o cliente quer. A documentação é importante para ajudar a usar o software, mas se este não funciona, a documentação de pouco ou nada serve.
Colaborar com o cliente é mais importante do que negociar contratos
O cliente deve ser visto como um aliado que deve trabalhar de perto com a equipa para atingir o objectivo e chegar a bom porto. Pensar no cliente como um inimigo só pode dar maus resultados.
A capacidade de responder a alterações é mais importante que seguir um plano
O desenvolvimento de software é feito num ambiente muito incerto. Não vale a pena ter um plano muito detalhado e que tem de ser seguido à risca. Deve haver margem para recolher feedback e ajustar as mudanças sempre que necessário.
Em suma, estes valores não pretendem negar o valor dos procedimentos, ferramentas, documentação, contratos e planos. Antes, pretendem estabelecer uma escala de prioridades que introduza flexibilidade nos projetos. No fundo, se a equipa não se concentrar no essencial e estiver preocupada com o acessório, o projeto pode sair prejudicado.
Princípios do Manifesto Agile (Agile Principles)
O Agile Manifesto estabelece ainda 12 princípios (Agile principles) do método agile. Eles são:
-
- Em primeiro lugar, garantir a satisfação do cliente, através da entrega rápida e contínua de software funcional;
- Em segundo lugar, até mesmo mudanças ao âmbito do projecto que cheguem perto do final do projeto são bem-vindas;
- Para além disso, software funcional é entregue com frequência;
- Ainda mais, deve haver uma cooperação constante entre as pessoas que entendem do ‘negócio’ e a equipa;
- Assim como, os projectos devem ser criados em torno de indivíduos motivados. Ou seja, dê-lhes o ambiente e o apoio que necessitam, e confie porque eles vão conseguir ter o trabalho feito;
- Mais ainda, o método mais eficiente e eficaz de comunicar para a equipa e dentro da equipa é conversar cara-a-cara;
- Bem como, ter um software funcional é a principal medida de progresso do projecto;
- Ainda mais, os processos ágeis promovem o desenvolvimento sustentável. Ou seja, os patrocinadores, programadores e utilizadores devem ser capazes de manter um ritmo constante indefinidamente;
- Nesse sentido, a atenção contínua à excelência técnica e ao bom desenho aumenta a agilidade;
- Bem como, simplicidade – a arte de maximizar a quantidade de trabalho não feito – é essencial;
- Assim como, as melhores arquitecturas, requisitos e projectos emergem de equipas que se organizam por si;
- Por fim, regularmente, a equipa analisa como pode tornar-se mais eficaz, ajustando depois o seu comportamento.
Conclusão
Em suma, o manifesto foi sem dúvida um marco no desenvolvimento de software. Ele provou que desenvolver software não é seguir uma receita que é igual para todos. No Agile manigesto encontramos os Agile values e os Agile principles que ajudam a desenvolver produtos de forma iterativa e incremental com maior sucesso.
Há uns tempo surgiu uma novo manifesto, conhecido por modern agil. Mas como não é consensual deixamos para si fazer a avaliação desse manifesto.
Os signatários
Robert C. Martin idealizou uma reunião com várias pessoas do desenvolvimento de software para discutirem a forma como trabalhavam. O seu principal objectivo era tentar chegar a uma solução para ultrapassar os problemas que a indústria onde trabalhava estava a sofre. No fim apenas apareceram 17 pessoas. A realidade é que mesmo sendo pouco acabaram por mudar o rumo do desenvolvimento de software ao criarem o manifesto agile. Os 17 presentes que são conhecidos como os 17 signatários do manifesto são:
-
- Robert C. Martin
-
- Ken Schwaber, co-criador do Scrum.
-
- Jeff Sutherland, o inventor do Scrum.
-
- Kent Back, co-criador da eXtreme Programming (XP).
-
- Ron Jeffries, co-criador da eXtreme Programming (XP).
-
- Mike Beedle, co-autor de Desenvolvimento Ágil de Software com Scrum.
-
- Arie van Bennekum, da Integrated Agile.
-
- Alistair Cockburn, criador da Metodologia Agil Crystal.
-
- Ward Cunningham, criador do conceito wiki.
-
- Martin Fowler, desenvolvedor parceiro da Thoughtworks.
-
- James Grenning, autor de Test Driven Development.
-
- Jim Highsmith, criador do Adaptive Software Development (ASD).
-
- Andrew Hunt, co-autor de O Programador Pragmático.
-
- Jon Kern, actua até os dias de hoje em assuntos do ágil.
-
- Brian Marick, cientista da computação e autor de vários livros sobre programação.
-
- Steve Mellor, cientista da computação e um dos idealizadores da Análise de Sistema Orientado a Objetos (OOSA).
-
- Dave Thomas, programador e co-autor de The Pragmatic Programmer.