(35 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 3: Linha 3:
Existem inúmeros frameworks de processos para desenvolvimento de software. A maioria dos métodos ágeis tenta minimizar o risco pelo desenvolvimento do software em curtos períodos, chamados de iteração, os quais gastam tipicamente menos de uma semana a até quatro. Cada iteração é como um projeto de software em miniatura de seu próprio, e inclui todas as tarefas necessárias para implantar o mini-incremento da nova funcionalidade: planejamento, análise de requisitos, projeto, codificação, teste e documentação. Enquanto em um processo convencional, cada iteração não está necessariamente focada em adicionar um novo conjunto significativo de funcionalidades, um projeto de software ágil busca a capacidade de implantar uma nova versão do software ao fim de cada iteração, etapa a qual a equipe responsável reavalia as prioridades do projeto.
Existem inúmeros frameworks de processos para desenvolvimento de software. A maioria dos métodos ágeis tenta minimizar o risco pelo desenvolvimento do software em curtos períodos, chamados de iteração, os quais gastam tipicamente menos de uma semana a até quatro. Cada iteração é como um projeto de software em miniatura de seu próprio, e inclui todas as tarefas necessárias para implantar o mini-incremento da nova funcionalidade: planejamento, análise de requisitos, projeto, codificação, teste e documentação. Enquanto em um processo convencional, cada iteração não está necessariamente focada em adicionar um novo conjunto significativo de funcionalidades, um projeto de software ágil busca a capacidade de implantar uma nova versão do software ao fim de cada iteração, etapa a qual a equipe responsável reavalia as prioridades do projeto.
<br>
<br>
= Metodologia =


'''Feature Driven Development (FDD)'''
'''Feature Driven Development (FDD)'''
Criado em Cingapura, entre 1997 e 1999, o FDD é um método ágil que reúne as melhores práticas de outros métodos, como o Coad. Sua premissa básica é focada em funcionalidades, o que permite à equipe do projeto realizar um planejamento incremental, isto é, por fases. Esse tipo de atuação ajuda a dar agilidade ao desenvolvimento de soluções em ambientes de extrema incerteza, em que as mudanças são inevitáveis.
Criado em Cingapura, entre 1997 e 1999, o FDD é um método ágil que reúne as melhores práticas de outros métodos, como o Coad. Sua premissa básica é focada em funcionalidades, o que permite à equipe do projeto realizar um planejamento incremental, isto é, por fases. Esse tipo de atuação ajuda a dar agilidade ao desenvolvimento de soluções em ambientes de extrema incerteza, em que as mudanças são inevitáveis.
A programação por FDD começa com a visão global do negócio, já que esse método considera a soma de tudo mais importante do que cada uma das partes separadamente. Passa-se, então, para o detalhamento do produto com a subdivisão por áreas a serem modeladas, culminando na descrição de cada funcionalidade.
A programação por FDD começa com a visão global do negócio, já que esse método considera a soma de tudo mais importante do que cada uma das partes separadamente. Passa-se, então, para o detalhamento do produto com a subdivisão por áreas a serem modeladas, culminando na descrição de cada funcionalidade.
 
Por se tratar de uma ferramenta focada no desenvolvimento assim como o XP, que veremos a segui, o FDD pode ser perfeitamente integrado ao Scrum, outro método ágil muito utilizado que também é focado no planejamento e na execução do projeto.
Por se tratar de uma ferramenta focada no desenvolvimento assim como o XP, que veremos a seguir —, o FDD pode ser perfeitamente integrado ao Scrum, outro método ágil muito utilizado que também é focado no planejamento e na execução do projeto. E assim como todos os demais métodos ágeis, o FDD também possui melhores práticas que visam criar o ambiente ideal para o desenvolvimento de projetos. São elas:
• Desenvolvimento por funcionalidades;
• Um único programador é responsável pela funcionalidade desenvolvida;
• Controle de qualidade em todas as fases do projeto;
• Gerenciamento de configurações;
• Integração contínua das funcionalidades;
• Planejamento incremental;
• Teste de software.


'''eXtreme Programming (XP)'''
'''eXtreme Programming (XP)'''
Também criado em meados da década de 90, o eXtreme Programming, carinhosamente chamado de XP, é um método ágil focado no desenvolvimento de softwares que tem três pilares como base: agilidade no desenvolvimento da solução, economia de recursos e qualidade do produto final.
Também criado em meados da década de 90, o eXtreme Programming, carinhosamente chamado de XP, é um método ágil focado no desenvolvimento de softwares que tem três pilares como base: agilidade no desenvolvimento da solução, economia de recursos e qualidade do produto final.
Para chegar à excelência nos serviços prestados, uma equipe XP deve se basear em valores, isto é, um contrato de atitudes e comportamentos que levam ao sucesso. Esses comportamentos e atitudes norteiam as ações da equipe XP em cada atividade a ser desempenhada, garantindo a integração e a sinergia necessárias para um bom desempenho. No caso, esses valores são:
Para chegar à excelência nos serviços prestados, uma equipe XP deve se basear em valores, isto é, um contrato de atitudes e comportamentos que levam ao sucesso.  
• Comunicação;
Além dos valores, o método ágil XP também leva em consideração melhores práticas de trabalho, que têm como objetivo garantir a efetividade do trabalho da equipe XP, assim como a satisfação do cliente durante todo o processo de desenvolvimento.  
• Simplicidade;
•Feedback;
• Coragem;
• Respeito.
 
Além dos valores, o método ágil XP também leva em consideração melhores práticas de trabalho, que têm como objetivo garantir a efetividade do trabalho da equipe XP, assim como a satisfação do cliente durante todo o processo de desenvolvimento. São elas:
• Cliente sempre à disposição;
• Uso de metáforas;
• Reuniões de planejamento (planning game);
• Reuniões diárias, de 15 minutos, para alinhamento (stand up meeting);
• Integração contínua dos módulos desenvolvidos;
• Mudanças incrementais;
• Entregas frequentes ao cliente (small releases);
• Design simples e funcional;
• Testes de aceitação;
• Refatoração ou melhoria contínua.


'''Microsoft Solutions Framework (MSF)'''
'''Microsoft Solutions Framework (MSF)'''
O MSF é um dos métodos ágeis mais usados por se destinar ao desenvolvimento de soluções tecnológicas por equipes reduzidas, focando na diminuição de riscos para o negócio e no aumento da qualidade do produto final. O propósito é identificar as falhas mais comuns em projetos de tecnologia, mitigando-as e aumentando as taxas de sucesso de cada iniciativa. Dessa forma, assim como o Scrum, o MSF está mais focado na gestão do projeto do que no desenvolvimento da solução em si.
O MSF é um dos métodos ágeis mais usados por se destinar ao desenvolvimento de soluções tecnológicas por equipes reduzidas, focando na diminuição de riscos para o negócio e no aumento da qualidade do produto final. O propósito é identificar as falhas mais comuns em projetos de tecnologia, mitigando-as e aumentando as taxas de sucesso de cada iniciativa.  
Suas premissas são:
• Alinhamento da tecnologia desenvolvida aos objetivos de negócio do cliente;
• Escopo bem estruturado e detalhado;
• Desenvolvimento iterativo;
• Gerenciamento de riscos;
• Agilidade na resposta a mudanças.
 
Assim como os outros métodos ágeis, o MSF também possui melhores práticas que devem ser observadas pela equipe para atingirem os níveis de excelência buscados:
Assim como os outros métodos ágeis, o MSF também possui melhores práticas que devem ser observadas pela equipe para atingirem os níveis de excelência buscados:


Comunicação aberta e transparente entre todos os envolvidos;
* Comunicação aberta e transparente entre todos os envolvidos
Visão compartilhada do negócio;
* Visão compartilhada do negócio
Equipe capacitada;
* Equipe capacitada
Atribuição de papéis e responsabilidades desde o início do projeto;
* Atribuição de papéis e responsabilidades desde o início do projeto
Entregas incrementais;
* Entregas incrementais
Flexibilidade para mudar sempre que necessário;
* Flexibilidade para mudar sempre que necessário
Qualidade das entregas;
* Qualidade das entregas
Aprendizado constante com as experiências adquiridas;
* Aprendizado constante com as experiências adquiridas
Parceria com clientes internos e externos.
* Parceria com clientes internos e externos


'''Dynamic System Development Model (DSDM)'''
'''Dynamic System Development Model (DSDM)'''
O DSDM é um dos métodos ágeis mais antigos empregados não só no desenvolvimento de projetos como no meio tecnológico. Um tanto quanto diverso dos demais métodos ágeis, ele é destinado ao desenvolvimento de projetos com orçamento fixo e prazos curtos, levando em consideração que o cliente não tem como saber quanto custará a solução final.
O DSDM é um dos métodos ágeis mais antigos empregados não só no desenvolvimento de projetos como no meio tecnológico. Um tanto quanto diverso dos demais métodos ágeis, ele é destinado ao desenvolvimento de projetos com orçamento fixo e prazos curtos, levando em consideração que o cliente não tem como saber quanto custará a solução final.
Entre suas melhores práticas estão o desenvolvimento incremental e iterativo, a colaboração entre cliente e equipe, além da integração de funcionalidades, o que também vemos nos demais métodos ágeis.
Entre suas melhores práticas estão o desenvolvimento incremental e iterativo, a colaboração entre cliente e equipe, além da integração de funcionalidades, o que também vemos nos demais métodos ágeis.
Vale ressaltar que o DSDM diverge dos demais métodos ágeis tanto em sua estrutura, que é composta por processos interligados de modelagem, concepção, construção e implementação, assim como na gestão do tempo, que não é flexível, até permitindo que as funcionalidades mudem, mas desde que os prazos de execução continuem os mesmos.
Vale ressaltar que o DSDM diverge dos demais métodos ágeis tanto em sua estrutura, que é composta por processos interligados de modelagem, concepção, construção e implementação, assim como na gestão do tempo, que não é flexível, até permitindo que as funcionalidades mudem, mas desde que os prazos de execução continuem os mesmos.


'''Scrum'''
'''Scrum'''
O Scrum é, sem dúvida, o método ágil mais usado nos dias de hoje, principalmente porque pode ser integrado a outros métodos ágeis com facilidade, aplicando-se não só ao desenvolvimento de softwares como a qualquer ambiente de trabalho. Focado na gestão do projeto, o Scrum tem como base o planejamento iterativo e incremental, que, como você já sabe, se dá por fases, chamadas de sprints.
O Scrum é, sem dúvida, o método ágil mais usado nos dias de hoje, principalmente porque pode ser integrado a outros métodos ágeis com facilidade, aplicando-se não só ao desenvolvimento de softwares como a qualquer ambiente de trabalho. Focado na gestão do projeto, o Scrum tem como base o planejamento iterativo e incremental, que, como você já sabe, se dá por fases, chamadas de sprints.
Define-se, desde o início do projeto, a lista de funcionalidades a serem desenvolvidas, também chamada, no caso, de product backlog. Dando andamento ao processo, cada funcionalidade se torna um sprint, cujos detalhes a serem criados e desenvolvidos passam do product backlog para o sprint backlog. Do sprint backlog as atividades são distribuídas entre os membros do Scrum Team, que devem desenvolvê-las dentro de um prazo que geralmente não leva mais que quatro semanas. Ao final de cada sprint é realizada a sprint review meeting, uma reunião de alinhamento sobre o que foi entregue. A partir daí, começa-se a planejar o próximo sprint. Essas etapas acontecem sucessivamente até que o produto final esteja pronto para a entrega.
As melhores práticas Scrum estão baseadas no Manifesto para o Desenvolvimento Ágil de Softwares, levando em consideração atitudes e comportamentos como:
* Indivíduos e interação mais do que processos e ferramentas
* Software em funcionamento mais do que documentação
* Colaboração com o cliente mais do que contratos e negociações
* Respostas a mudanças mais do que planejamento
= Software =
Os softwares usados nesta área são os citados anteriormente, que são divididos em: desenvolvimento, planejamento, acompanhamento e teste.
*Planejamento: Scrum, Feature Driven Development (FDD)
*Desenvolvimento: eXtreme Programming (XP), Microsoft Solutions Framework (MSF), Dynamic System Development Model (DSDM)
*Acompanhamento: Scrum, Feature Driven Development (FDD)
*Teste: eXtreme Programming (XP), Feature Driven Development (FDD)
= Diagrama de Blocos =
[[Arquivo:manifesto.jpg|600px]]


Define-se, desde o início do projeto, a lista de funcionalidades a serem desenvolvidas, também chamada, no caso, de product backlog. Dando andamento ao processo, cada funcionalidade se torna um sprint, cujos detalhes a serem criados e desenvolvidos passam do product backlog para o sprint backlog. Do sprint backlog as atividades são distribuídas entre os membros do Scrum Team, que devem desenvolvê-las dentro de um prazo que geralmente não leva mais que quatro semanas. Ao final de cada sprint é realizada a sprint review meeting, uma reunião de alinhamento sobre o que foi entregue. A partir daí, começa-se a planejar o próximo sprint. Essas etapas acontecem sucessivamente até que o produto final esteja pronto para a entrega.


Diferentemente dos demais métodos ágeis, o Scrum possui pelo menos três papéis muito bem definidos e absolutamente essenciais para o sucesso do projeto:


• Product Owner: é o CEO do projeto, quem faz a ponte entre cliente e Scrum Team. É o responsável pelos resultados do projeto e por gerar valor para o cliente.
um grupo de 17 renomados desenvolvedores de software, agruparam e aprimoraram os diversos conceitos de metodologias ágeis existentes e assinaram o “Manifesto para o Desenvolvimento Ágil de Software”, que passou então a ser muito difundido pelas comunidades de desenvolvimento
• Scrum Master: é o coach do Scrum Team, a pessoa responsável por orientar os profissionais em relação às melhores práticas Scrum, remover barreiras e motivar.
• Scrum Team: são os profissionais que efetivamente executam o desenvolvimento do projeto.


As melhores práticas Scrum estão baseadas no Manifesto para o Desenvolvimento Ágil de Softwares, levando em consideração atitudes e comportamentos como:


• Indivíduos e interação mais do que processos e ferramentas;
[[Arquivo:ciclo.png|600px]] Ciclo de desenvolvimento ágil
• Software em funcionamento mais do que documentação;
• Colaboração com o cliente mais do que contratos e negociações;
• Respostas a mudanças mais do que planejamento.


= Software =
Citar softwares usados para esse projeto. Sejam softwares para desenvolvimento, planejamento, acompanhamento ou teste.
<br>


= Diagrama de Blocos =
[[Arquivo:Desenvolvimento.png|600px]] Desenvolvimento ágil de software mais detalhado
Desenhar ou plotar  representações visuais estruturadas por meio de diagramas ou  esquemas, protocolos que exemplifiquem as fases desse sistema, logicamente colocando um rodapé explicativo
<br>


= Interações com as tecnologias =
= Interações com as tecnologias =
Incluir links (internos ou externos) temas que tem relação com este, explicando detalhes sobre. Limite de 3 internos e 2 externos.
 
Através destes links pode-se obter um conhecimento mais aprofundado sobre cada metodologia:
 
*[http://www.devmedia.com.br/introducao-ao-fdd-feature-driven-development/27971 FDD]
*[http://www.sourceinnovation.com.br/wiki/Projeto_Xtreme_Programming XP]
*[https://msdn.microsoft.com/pt-br/library/jj161047(v=vs.120).aspx MSF]
*[https://paginas.fe.up.pt/~aaguiar/es/artigos%20finais/es_final_14.pdf DSDM] (em PDF)
*[http://www.mindmaster.com.br/scrum/ Scrum]
<br>
<br>


= Informações adicionais =
= Informações adicionais =
Descrever detalhes a mais sobre esse tema.
'''Historia'''
<br>
 
As definições modernas de desenvolvimento de software ágil evoluíram a partir da metade de 1990 como parte de uma reação contra métodos "pesados", caracterizados por uma pesada regulamentação, regimentação e micro gerenciamento usando o modelo em cascata para desenvolvimento. O processo originou-se da visão de que o modelo em cascata era burocrático, lento e contraditório a forma usual com que os engenheiros de software sempre realizaram trabalho com eficiência.
Uma visão que levou ao desenvolvimento de métodos ágeis e iterativos era retorno a prática de desenvolvimento vistas nos primórdios da história do desenvolvimento de software
Inicialmente, métodos ágeis eram conhecidos como métodos leves. Em 2001, membros proeminentes da comunidade se reuniram em Snowbird e adotaram o nome métodos ágeis, tendo publicado o Manifesto ágil, documento que reúne os princípios e práticas desta metodologia de desenvolvimento. Mais tarde, algumas pessoas formaram a Agile Alliance, uma organização não lucrativa que promove o desenvolvimento ágil.


= Referências bibliográficas =
= Referências bibliográficas =
Relacionar aqui as referências bibliográficas no padrão ABNT.  
 
Bases de procura: Artigos, publicações acadêmicas, revistas e sites de fornecedores
B. Boehm (2004). Balancing Agility and Discipline: A Guide for the Perplexed 2 ed. Boston,MA: Addison-Wesley.
<br>
 
Cohen, D., Lindvall, M., & Costa, P. (2004). An introduction to agile methods. In Advances in Computers. New York: Elsevier Science.
 
Abrahamsson, P., Warsta, J., Siponen, M.T., & Ronkainen, J. (2003). New Directions on Agile Methods: A Comparative Analysis.
 
K. Beck (1999). Extreme Programming Explained: Embrace Change. Boston, MA: Addison-Wesley.
 
P. McBreen (2003). Questioning Extreme Programming. Boston, MA: Addison-Wesley.

Edição atual tal como às 03h02min de 14 de outubro de 2017

Conceito

Existem inúmeros frameworks de processos para desenvolvimento de software. A maioria dos métodos ágeis tenta minimizar o risco pelo desenvolvimento do software em curtos períodos, chamados de iteração, os quais gastam tipicamente menos de uma semana a até quatro. Cada iteração é como um projeto de software em miniatura de seu próprio, e inclui todas as tarefas necessárias para implantar o mini-incremento da nova funcionalidade: planejamento, análise de requisitos, projeto, codificação, teste e documentação. Enquanto em um processo convencional, cada iteração não está necessariamente focada em adicionar um novo conjunto significativo de funcionalidades, um projeto de software ágil busca a capacidade de implantar uma nova versão do software ao fim de cada iteração, etapa a qual a equipe responsável reavalia as prioridades do projeto.

Metodologia

Feature Driven Development (FDD) Criado em Cingapura, entre 1997 e 1999, o FDD é um método ágil que reúne as melhores práticas de outros métodos, como o Coad. Sua premissa básica é focada em funcionalidades, o que permite à equipe do projeto realizar um planejamento incremental, isto é, por fases. Esse tipo de atuação ajuda a dar agilidade ao desenvolvimento de soluções em ambientes de extrema incerteza, em que as mudanças são inevitáveis. A programação por FDD começa com a visão global do negócio, já que esse método considera a soma de tudo mais importante do que cada uma das partes separadamente. Passa-se, então, para o detalhamento do produto com a subdivisão por áreas a serem modeladas, culminando na descrição de cada funcionalidade. Por se tratar de uma ferramenta focada no desenvolvimento assim como o XP, que veremos a segui, o FDD pode ser perfeitamente integrado ao Scrum, outro método ágil muito utilizado que também é focado no planejamento e na execução do projeto.

eXtreme Programming (XP) Também criado em meados da década de 90, o eXtreme Programming, carinhosamente chamado de XP, é um método ágil focado no desenvolvimento de softwares que tem três pilares como base: agilidade no desenvolvimento da solução, economia de recursos e qualidade do produto final. Para chegar à excelência nos serviços prestados, uma equipe XP deve se basear em valores, isto é, um contrato de atitudes e comportamentos que levam ao sucesso. Além dos valores, o método ágil XP também leva em consideração melhores práticas de trabalho, que têm como objetivo garantir a efetividade do trabalho da equipe XP, assim como a satisfação do cliente durante todo o processo de desenvolvimento.

Microsoft Solutions Framework (MSF) O MSF é um dos métodos ágeis mais usados por se destinar ao desenvolvimento de soluções tecnológicas por equipes reduzidas, focando na diminuição de riscos para o negócio e no aumento da qualidade do produto final. O propósito é identificar as falhas mais comuns em projetos de tecnologia, mitigando-as e aumentando as taxas de sucesso de cada iniciativa. Assim como os outros métodos ágeis, o MSF também possui melhores práticas que devem ser observadas pela equipe para atingirem os níveis de excelência buscados:

  • Comunicação aberta e transparente entre todos os envolvidos
  • Visão compartilhada do negócio
  • Equipe capacitada
  • Atribuição de papéis e responsabilidades desde o início do projeto
  • Entregas incrementais
  • Flexibilidade para mudar sempre que necessário
  • Qualidade das entregas
  • Aprendizado constante com as experiências adquiridas
  • Parceria com clientes internos e externos

Dynamic System Development Model (DSDM) O DSDM é um dos métodos ágeis mais antigos empregados não só no desenvolvimento de projetos como no meio tecnológico. Um tanto quanto diverso dos demais métodos ágeis, ele é destinado ao desenvolvimento de projetos com orçamento fixo e prazos curtos, levando em consideração que o cliente não tem como saber quanto custará a solução final. Entre suas melhores práticas estão o desenvolvimento incremental e iterativo, a colaboração entre cliente e equipe, além da integração de funcionalidades, o que também vemos nos demais métodos ágeis. Vale ressaltar que o DSDM diverge dos demais métodos ágeis tanto em sua estrutura, que é composta por processos interligados de modelagem, concepção, construção e implementação, assim como na gestão do tempo, que não é flexível, até permitindo que as funcionalidades mudem, mas desde que os prazos de execução continuem os mesmos.

Scrum O Scrum é, sem dúvida, o método ágil mais usado nos dias de hoje, principalmente porque pode ser integrado a outros métodos ágeis com facilidade, aplicando-se não só ao desenvolvimento de softwares como a qualquer ambiente de trabalho. Focado na gestão do projeto, o Scrum tem como base o planejamento iterativo e incremental, que, como você já sabe, se dá por fases, chamadas de sprints. Define-se, desde o início do projeto, a lista de funcionalidades a serem desenvolvidas, também chamada, no caso, de product backlog. Dando andamento ao processo, cada funcionalidade se torna um sprint, cujos detalhes a serem criados e desenvolvidos passam do product backlog para o sprint backlog. Do sprint backlog as atividades são distribuídas entre os membros do Scrum Team, que devem desenvolvê-las dentro de um prazo que geralmente não leva mais que quatro semanas. Ao final de cada sprint é realizada a sprint review meeting, uma reunião de alinhamento sobre o que foi entregue. A partir daí, começa-se a planejar o próximo sprint. Essas etapas acontecem sucessivamente até que o produto final esteja pronto para a entrega. As melhores práticas Scrum estão baseadas no Manifesto para o Desenvolvimento Ágil de Softwares, levando em consideração atitudes e comportamentos como:

  • Indivíduos e interação mais do que processos e ferramentas
  • Software em funcionamento mais do que documentação
  • Colaboração com o cliente mais do que contratos e negociações
  • Respostas a mudanças mais do que planejamento

Software

Os softwares usados nesta área são os citados anteriormente, que são divididos em: desenvolvimento, planejamento, acompanhamento e teste.

  • Planejamento: Scrum, Feature Driven Development (FDD)
  • Desenvolvimento: eXtreme Programming (XP), Microsoft Solutions Framework (MSF), Dynamic System Development Model (DSDM)
  • Acompanhamento: Scrum, Feature Driven Development (FDD)
  • Teste: eXtreme Programming (XP), Feature Driven Development (FDD)

Diagrama de Blocos


um grupo de 17 renomados desenvolvedores de software, agruparam e aprimoraram os diversos conceitos de metodologias ágeis existentes e assinaram o “Manifesto para o Desenvolvimento Ágil de Software”, que passou então a ser muito difundido pelas comunidades de desenvolvimento


Ciclo de desenvolvimento ágil


Erro ao criar miniatura: Arquivo não encontrado Desenvolvimento ágil de software mais detalhado

Interações com as tecnologias

Através destes links pode-se obter um conhecimento mais aprofundado sobre cada metodologia:


Informações adicionais

Historia

As definições modernas de desenvolvimento de software ágil evoluíram a partir da metade de 1990 como parte de uma reação contra métodos "pesados", caracterizados por uma pesada regulamentação, regimentação e micro gerenciamento usando o modelo em cascata para desenvolvimento. O processo originou-se da visão de que o modelo em cascata era burocrático, lento e contraditório a forma usual com que os engenheiros de software sempre realizaram trabalho com eficiência. Uma visão que levou ao desenvolvimento de métodos ágeis e iterativos era retorno a prática de desenvolvimento vistas nos primórdios da história do desenvolvimento de software Inicialmente, métodos ágeis eram conhecidos como métodos leves. Em 2001, membros proeminentes da comunidade se reuniram em Snowbird e adotaram o nome métodos ágeis, tendo publicado o Manifesto ágil, documento que reúne os princípios e práticas desta metodologia de desenvolvimento. Mais tarde, algumas pessoas formaram a Agile Alliance, uma organização não lucrativa que promove o desenvolvimento ágil.

Referências bibliográficas

B. Boehm (2004). Balancing Agility and Discipline: A Guide for the Perplexed 2 ed. Boston,MA: Addison-Wesley.

Cohen, D., Lindvall, M., & Costa, P. (2004). An introduction to agile methods. In Advances in Computers. New York: Elsevier Science.

Abrahamsson, P., Warsta, J., Siponen, M.T., & Ronkainen, J. (2003). New Directions on Agile Methods: A Comparative Analysis.

K. Beck (1999). Extreme Programming Explained: Embrace Change. Boston, MA: Addison-Wesley.

P. McBreen (2003). Questioning Extreme Programming. Boston, MA: Addison-Wesley.