Não consigo obter uma descrição clara do que é Agile. Pode me ajudar?
Written by Washington Souza // July 26, 2010 // Engenharia // No comments
O “Manifesto Ágil” explica um pouco mas não existe uma definição clara que possa ser usada para esta tag, ou seja, continua um mito para a maioria de nós. Eu, por exemplo, acredito que Agile é uma palavra qualitativa que não deve ser usada para definir uma metodologia.

Resposta: Não á espaço suficiente para escrever algo que dê um pouco de sentido sobre o assunto, há muita coisa, mas vamos tentar passar um pouco.
“Agile” é um termo genérico que se refere a um conjunto disperso de métodos que incluem SCRUM, XP, Feature Driven Development e outros modelos iterativos e incrementais. Você esta correto quando fala que “nao é uma metodologia em si”.
Você frequentemente ouve descrições muito soltas como “confiança”, “iterativo”, “sem documentação” (essa é a mais comum), etc. Estes são os termos mais comuns para se “falar” sobre Agile, todavia como podemos perceber, são bastante nebulosas. Para ser mais preciso:
1- Métodos Agile são iterativos, onde o ciclo de vida completo do projeto (planejamento, requisitos, design, testes, código) acontece em ciclos de tempo de menor duração, tipicamente 30 dias ou menos. Essas atividades são geralmente não lineares, mas empíricas, e nem sempre ocorrem em uma sequencia específica.
2- Métodos Agile são incrementais, onde um pequeno conjunto de requisitos é desenvolvido, seguido pelo refinamento ou outro conjunto de requisitos. Os métodos Agile são contra o “Big Bang” e defendem o desenvolvimento de pedaços menores de cada vez (Dividir para conquistar).
3- Métodos Agile negociam escopo, não tempo e custo. Um projeto “cascata” geralmente tem um escopo fechado, orçamento definido e um prazo. Se uma grande alteração é solicitada, o cronograma e o orçamento são negociados. Os métodos Agile esperam mudanças, mas negociam cada release (ou iteração) para conter uma certa quantidade de features (ou funcionalidades). Se não tudo não estiver pronto, executa-se outra release.
4- O usuário final ou cliente tem “autoridade no caixa” em projetos ágeis, pois os tipo de negociações não é conduzido por TI ou engenharia de software, é para as necessidades de negócio.
Os diferentes métodos Ágeis tem outras especialidades (Pair Programming XP é utilizada como uma forma de validação real time e SCRUM tem reuniões em pé e Sprints por exemplo), mas estes são ornamentais, não essenciais ao conceito de Agile.
Para mais informações (e para uma discussão sobe métodos ágeis e CMMI), você pode ver os seguintes artigos:



