Atualmente é quase impossível prever como será a evolução de um software, isto é, as mudanças que ocorrem em nosso cotidiano estão cada vez mais constantes, e desenvolver ou gerir softwares que acompanham estas mudanças acaba por ser um desafio cada vez maior para o mercado de software.

Claro que há exceções, mas em alguns contextos uma completa análise de requisitos antes do início do projeto já acabaria por ser um processo a qual o tempo gasto não representaria um abordagem eficiente para a resolução de tal problema.

Tais circunstancias acabam por exigir dos profissionais de software uma postura diferente, uma postura ágil o suficiente para responder a este ambiente de negócio cada vez mais exigente e mutante.

Diante das questões apontadas acima, entre outras, durante o inverno de 2001, 17 notáveis desenvolvedores de software, produtores e consultores de software se reuniram para discutir sobre os novos processos do desenvolvimento de software. A qual deu origem ao “Manifesto para o desenvolvimento Ágil de software”. Em que estes declararam:

Estamos descobrindo melhores modos de desenvolvimento de software fazendo-o e ajudando outros a fazê-lo. Por meio desse trabalho passamos a valorizar:

  • Indivíduos e interações em vez de processos e ferramentas.
  • Softwares funcionando em vez de documentação abrangente.
  • Colaboração do cliente em vez de negociação de contratos.
  • Resposta a modificações em ve de seguir um plano.

Isto é, ainda que haja valor nos itens da direita, valorizamos mais os itens da esquerda.

Em outras palavras, a metodologia ágil busca encorajar a satisfação do cliente realizando pequenas entregas incrementais de software, com equipes pequenas e altamente motivadas, utilizando-se de métodos informais. O que acaba por enfatizar as entregas ao cliente ao invés de um projeto bem estruturado.

Embora as ideias que guiam o movimento ágil tenham estado conosco por muitos anos, foi só durante a década de 1990 que estas ideias começaram a ganhar força.

De certa forma os métodos ágeis foram desenvolvidos em um esforço para vencer as fraquezas reais identificadas na engenharia de software convencional, sendo esta uma alternativa razoável para certas categorias de software e de projetos, mas que não nos obriga a descartar princípios, conceitos, métodos e ferramentas da engenharia de software convencional.

Mais informações podem ser encontradas no site do manifesto.

Categorized in: