Engenharia de software
Métodos Clássicos: O método de desenvolvimento clássico geralmente tem etapas bem definidas e separadas em cada iteração (planejamento, análise de requisitos, projeto, codificação, teste e documentação). Este método gera uma documentação extensa, e cada etapa é feita por seu departamento separadamente. São geralmente métodos guiadas pelo planejamento (executado na primeira iteração: planejamento).
Métodos Ágeis: Os métodos Ágeis geralmente tentam minimizar o risco pelo desenvolvimento de softwares em curtos períodos (iterações), tipicamente levando de 1 a 4 semanas cada. Enfatiza a comunicação pessoal ao invés de e-mails e outros meios. Os métodos ágeis procuram trazer a maioria dos envolvidos em um projeto ágil em uma mesma sala, no mínimo os desenvolvedores e os clientes (cliente é quem define o produto, podem ser o gerente, o analista de negócios, ou o cliente propriamente dito).
Prós e Contras: Os métodos clássicos geram um software com uma documentação detalhada e extensa, em contrapartida, suas iterações não se focam em adicionar novas funcionalidades ao software. Os Métodos Ágeis por sua vez geram pouca documentação, devido a grande parte da comunicação e decisões são feitas pessoalmente consequentemente rapidamente, tornando possível a sua intenção “ser ágil”. Outro ponto importante é em relação à predição de prazos de entrega entre os métodos clássicos e os métodos ágeis. Os métodos ágeis por serem altamente adaptativos, não conseguem dar um prazo exato de quando finalizará o projeto, apenas dizer a missão do projeto. Já os métodos clássicos, preditivos, colocam o planejamento futuro em detalhe, e tem pessoas analisando quais funcionalidades entraram no projeto para assegurar que apenas as mais importantes sejam implantadas.
Ambiente ideal para métodos clássicos: Altos critérios; Baixa mudança nos requisitos; Grande número de desenvolvedores; Cultura que procura a ordem. Ambiente ideal para métodos