Você está na página 1de 2

Ao longo do tempo, houve uma clara evolução das práticas de Engenharia de Software.

Os
modelos tradicionais, como o Cascata e o em Espiral, foram os primeiros a serem adotados em
larga escala, mas foram limitados em sua capacidade de lidar com mudanças nos requisitos.
Como resposta a essas limitações, surgiram os métodos ágeis, como Scrum e XP, que
promovem a flexibilidade, a adaptação contínua e a entrega incremental de software funcional.

1/

Atividade do Processo Modelos Tradicionais Métodos Ágeis


Especificação Requisitos detalhados são Requisitos são capturados em
documentados no início do histórias de usuário e
projeto. detalhados conforme
necessário durante o
desenvolvimento.
Projeto Design detalhado é realizado O design é adaptativo e evolui
antes da implementação. ao longo do tempo com base
nas necessidades do cliente.
Implementação Desenvolvimento de software Desenvolvimento iterativo e
em fases sequenciais. incremental em iterações
curtas.
Verificação e Validação Testes realizados após a Testes automatizados e
implementação de cada fase contínuos integrados ao
do projeto. desenvolvimento.
Evolução Atualizações e melhorias são Adaptação contínua às
aplicadas após a entrega do mudanças nos requisitos do
produto final. cliente ao longo do
desenvolvimento do projeto.

2/

Modelos Tradicionais na Engenharia de Software

Os modelos tradicionais na Engenharia de Software, como o Modelo Cascata e o Modelo em


Espiral, foram os pioneiros na abordagem estruturada e sequencial do desenvolvimento de
software.

1. Modelo Cascata:

O Modelo Cascata é caracterizado por uma sequência linear de fases, onde cada fase
depende da conclusão da anterior. As principais etapas do Modelo Cascata incluem:

- Especificação: Nesta fase inicial, os requisitos do sistema são levantados e documentados.


Por exemplo, uma empresa de software que desenvolve um sistema de gerenciamento de
estoque pode realizar entrevistas com os clientes para identificar suas necessidades específicas
de controle de estoque.

- Projeto: Após a especificação, o design do sistema é elaborado com base nos requisitos
estabelecidos. Por exemplo, os engenheiros de software podem criar diagramas de fluxo de
dados e diagramas de estrutura de dados para representar a arquitetura do sistema.
- Implementação: Com o design completo, a implementação do sistema ocorre, onde o
código-fonte é desenvolvido com base nas especificações e no design elaborado. Por exemplo,
os desenvolvedores escrevem o código para implementar as funcionalidades do sistema de
gerenciamento de estoque conforme definido no design.

- Verificação e Validação: Após a implementação, o sistema é testado para garantir que


atenda aos requisitos especificados. Isso envolve testes de unidade, testes de integração e
testes de sistema para verificar a funcionalidade e a qualidade do software desenvolvido.

- Manutenção: Uma vez que o sistema é entregue e implantado, é necessário realizar


manutenção contínua para corrigir erros, adicionar novas funcionalidades e realizar melhorias
conforme necessário ao longo do tempo. Por exemplo, a empresa pode lançar atualizações
periódicas para melhorar a performance ou corrigir bugs relatados pelos usuários.

2. Modelo em Espiral:

O Modelo em Espiral é caracterizado por ciclos de desenvolvimento iterativos, onde cada


ciclo passa por várias fases. As principais etapas do Modelo em Espiral incluem:

- Determinação de Objetivos: Nesta fase inicial, os objetivos do projeto são estabelecidos e


os requisitos são levantados. Por exemplo, uma equipe de desenvolvimento de software pode
definir o objetivo de desenvolver um sistema de gestão de projetos para uma empresa de
consultoria.

- Análise de Riscos: Após a determinação de objetivos, os riscos associados ao projeto são


identificados e avaliados. Por exemplo, a equipe pode identificar o risco de mudanças nos
requisitos do cliente durante o desenvolvimento do sistema.

- Desenvolvimento e Teste: Com os riscos identificados, o desenvolvimento do sistema


ocorre em múltiplas iterações, cada uma seguida por testes para verificar a funcionalidade e a
qualidade do software. Por exemplo, a equipe pode desenvolver e testar incrementos do
sistema de gestão de projetos em ciclos de duas semanas.

- Avaliação do Cliente: Após cada ciclo de desenvolvimento, o cliente avalia o sistema e


fornece feedback. Por exemplo, a empresa de consultoria pode revisar os incrementos do
sistema de gestão de projetos e fornecer feedback sobre sua usabilidade e adequação às suas
necessidades.

- Planejamento: Com base no feedback do cliente e nos resultados da avaliação, o plano de


desenvolvimento é revisado e atualizado para a próxima iteração. Por exemplo, a equipe pode
ajustar o cronograma do projeto ou priorizar novos requisitos com base no feedback recebido.

Você também pode gostar