Leia o texto a seguir. Na engenharia de software, existem d...
Na engenharia de software, existem diferentes abordagens para o ciclo de vida nos processos de desenvolvimento de software, sendo as três mais comuns: sequencial, iterativo e incremental. Cada uma dessas abordagens tem suas próprias características e benefícios, adequadas para diferentes tipos de projetos e de requisitos.
PRESSMAN, Roger S. Engenharia de Software: Uma Abordagem Profissional. 7ª edição. Porto Alegre: AMGH Editora, 2016.
A diferença entre essas abordagens está descrita em:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a D.
A questão aborda o tema das abordagens do ciclo de vida nos processos de desenvolvimento de software, especificamente as abordagens sequencial, iterativa e incremental.
Justificando a alternativa correta (D):
A alternativa D está correta porque descreve adequadamente a diferença entre as abordagens sequencial, iterativa e incremental:
- Sequencial: Também conhecida como modelo em cascata, essa abordagem possui etapas de desenvolvimento que são realizadas em sequência, uma após a outra. Ou seja, cada fase deve ser concluída antes que a próxima comece.
- Iterativa e Incremental: Estas abordagens envolvem a repetição de ciclos de desenvolvimento, permitindo refinamentos e melhorias em cada iteração. Além disso, há a entrega incremental de funcionalidades completas, o que significa que cada iteração adiciona novas capacidades ao sistema de forma progressiva.
Analisando as alternativas incorretas:
Alternativa A: Está incorreta porque menciona que nos processos iterativo e incremental, as etapas são executadas em paralelo com entregas incrementais. Na realidade, as etapas são realizadas em ciclos repetidos, não em paralelo.
Alternativa B: Errada porque afirma que o sequencial é mais flexível e adaptável a mudanças de requisitos do que os processos iterativo e incremental. Na verdade, o modelo sequencial é conhecido por sua inflexibilidade, enquanto os modelos iterativo e incremental são mais adaptáveis e permitem ajustes durante o desenvolvimento.
Alternativa C: Incorreta porque afirma que o sequencial envolve a repetição de ciclos de desenvolvimento, enquanto os processos iterativo e incremental focam na entrega de funcionalidades completas. Na realidade, é o contrário: os processos iterativo e incremental é que envolvem ciclos de desenvolvimento repetidos e entregas incrementais.
Com isso, fica claro que a compreensão das abordagens do ciclo de vida nos processos de desenvolvimento de software é fundamental para responder corretamente à questão. Cada abordagem tem suas próprias características e é adequada para diferentes tipos de projetos e requisitos.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo