Desenvolvimento àgil de software
Desenvolvimento ágil de software (do inglês Agile software development) ou Método ágil é um conjunto de metodologias de desenvolvimento de software. O desenvolvimento ágil, tal como qualquer metodologia de software, providencia uma estrutura conceitual para reger projetos de engenharia de software.
Princípios:
Garantir a satisfação do consumidor entregando rapidamente e continuamente softwares funcionais;
Softwares funcionais são entregues frequentemente (semanas, ao invés de meses);
Softwares funcionais são a principal medida de progresso do projecto;
Até mesmo mudanças tardias de escopo no projecto são bem-vindas.
Cooperação constante 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.
Design do software deve prezar pela excelência técnica;
Simplicidade;
Rápida adaptação às mudanças;
Indivíduos e interações mais do que processos e ferramentas;
Software funcional mais do que documentação extensa;
Colaboração com clientes mais do que negociação de contratos;
Responder a mudanças mais do que seguir um plano.
1. Metodologias Ágeis e o Manifesto Ágil
A expressão “Metodologias Ágeis” tornou-se conhecida em 2001, quando especialistas em processos de desenvolvimento de software representando entre outros, os métodos Scrum e Extreme Programming (XP), foram estabelecidos princípios e características comuns destes métodos. Assim foi criada a “Aliança Ágil” e efetuou-se o estabelecimento do “Manifesto Ágil”.
3. Extreme Programming (XP)
É uma Metodologia Ágil para equipes pequenas e médias que desenvolvem software baseado em requisitos vagos e que se modificam rapidamente. Entre as principais diferenças da XP em relação às Metodologias Clássicas estão o feedback constante, a abordagem incremental e o encorajamento da comunicação entre as pessoas.
A maioria das regras da XP causa surpresa no primeiro contato e muitas não fazem