O ciclo de vida natural de um software abrange as seguintes fases: concepção, construção, implantação, implementações, maturidade, declínio, manutenção e descontinuidade. Estas fases são comumente descritas como fase de requisitos, projeto, implementação, teste e manutenção. Entre os vários ciclos de vida de software descritos, o mais relevante é:
- A)análise e especificação de requisitos, projeto e especificação de sistema, codificação e testes completos, testes e entrega.
Errada, porque termina em entrega e não em manutenção, além de não refletir a sequência clássica completa do ciclo de vida de software.
- B)análise e especificação de requisitos, projeto e especificação de sistema, projeto, codificação e testes completos, testes e manutenção.
Errada, porque repete a fase de projeto de forma incoerente e também troca a fase final esperada por teste e manutenção, embaralhando a ordem do ciclo.
- C)análise e especificação de requisitos, projeto e especificação de sistema, projeto, codificação e testes completos, testes e entrega.
Errada, porque coloca entrega como etapa final e não contempla corretamente a manutenção, que é parte essencial do ciclo de vida natural do software.
- D)análise e especificação de requisitos, projeto, codificação e testes unitários, testes e manutenção.
Certa, pois segue a lógica clássica do ciclo de vida: requisitos, projeto, codificação, testes unitários, testes e manutenção.
- E)análise e especificação de requisitos, projeto e especificação de sistema, projeto, codificação e testes unitários, testes e entrega.
Errada, porque termina em entrega e não em manutenção, além de reduzir o processo de testes a testes unitários, deixando o ciclo incompleto.
Gabarito: D
O ciclo de vida de software é a “linha do tempo” do sistema: começa quando a necessidade aparece, passa por requisitos e projeto, segue para codificação, testes e, depois, manutenção. Em provas, a banca costuma cobrar a sequência clássica do ciclo em cascata, que separa bem o que é definir o problema, desenhar a solução e implementar a solução. Na formulação tradicional, após a análise e especificação de requisitos, vem o projeto e a especificação do sistema, depois a codificação, seguida dos testes. Em geral, esses testes aparecem em camadas: primeiro os testes unitários, depois os testes de integração e validação do conjunto. A fase final, quando o sistema já está em uso, é a manutenção. O gabarito é a letra D porque ela é a única que apresenta uma sequência coerente com esse modelo clássico: requisitos, projeto, codificação, testes unitários, testes e manutenção. Ou seja, ela respeita a lógica natural de construir primeiro, testar depois, e manter por último. As demais alternativas misturam etapas fora de ordem ou trocam fases típicas do ciclo, como colocar entrega onde deveria haver manutenção, ou repetir projeto sem necessidade. Em concurso, isso é um prato cheio para pegadinha: a banca troca o nome da fase, embaralha a sequência e espera que você vá no “cheirinho de certo”.