Metodologias ágeis versus Tradicionais
Kathiani Elisa de Souza
Invictos Tecnologia Ltda
Dourados/MS, 16 de Julho de 2013
Resumo: Este trabalho apresenta os conceitos de processo de software bem como as metodologias que regem esses processos. As metodologias apresentadas são a Metodologia Tradicional – Modelo Cascata e as Metodologias Ágeis SCRUM e Extreme Programming.
1. Processos de Software
Um processo de software é um conjunto de atividades e resultados necessários para a produção de software. Existem vários processos para o desenvolvimento de software, mas segundo SOMMERVILLE existem atividades fundamentais comuns a todos os processos:
Especificação de Software: Especificação dos requisitos e da definição de software. Fase de conversa com o cliente;
Projeto e implementação de Software: São propostos modelos através de diagramas que depois serão codificados em alguma linguagem de programação;
Validação de Software: o software é validado para ver se todas as funcionalidades requeridas pelo cliente foram implementadas;
Evolução de Software: o software precisa evoluir para continuar sendo útil ao cliente;
“Muitas organizações desenvolvem software sem usar nenhum processo. Geralmente isso ocorre porque os processos tradicionais não são adequados às realidades das organizações. Em particular, as organizações pequenas e médias não possuem recursos suficientes para adotar o uso de processos pesados. Por esta razão, muitas organizações não utilizam nenhum processo. O resultado desta falta de sistematização na produção de software é a baixa qualidade do produto final, além de dificultar a entrega do software nos prazos e custos pré-definidos e inviabilizar a futura evolução do software.” (SOARES)
“Dentre os vários processos de software existentes, existem as Metodologias Tradicionais, que são orientadas a documentação e as Metodologias Ágeis que procuram desenvolver software com o mínimo de documentação.” (SOARES)
2. Metodologias