Cap 03: As Atividades do Processo
🎯 Objetivo do Capítulo
Dominar as quatro atividades universais da engenharia de software, compreendendo como cada uma se traduz em tarefas técnicas e ferramentas no dia a dia de um desenvolvedor moderno.
🏢 O Cenário Corporativo (TecProExpress)
Na TecProExpress, um novo projeto de Rastreamento de Carga em Tempo Real foi aprovado. Antes de começar a codificar, a diretoria exige saber como o time vai garantir que o sistema não quebre após cada atualização.
"Seu papel é estruturar o ciclo de vida deste projeto, garantindo que as etapas de Especificação, Implementação, Validação e Evolução estejam conectadas através de uma esteira automatizada de CI/CD."
🧠 As Quatro Atividades Fundamentais
Segundo Sommerville (2011), todo processo de software de sucesso roda estas 4 engrenagens essenciais:
| Atividade | Descrição Corporativa e Tecnológica |
|---|---|
| Especificação | O cliente define o que o sistema faz. Criamos a lista de Requisitos Funcionais e Não-Funcionais. |
| Projeto e Implementação | O software ganha vida. Planejamento de Entities, Interfaces REST e codificação pura em Java. |
| Validação | Garantia de que o sistema funciona e não tem bugs. Uso de JUnit 5, Mockito e Testes de Integração. |
| Evolução | Adição de novas funcionalidades e correções, mantendo o sistema vivo e atualizado na Nuvem. |
📊 Visualizando a Interação
🔍 Detalhamento das Atividades
1. Especificação (Requisitos)
É o "Contrato" do que será construído. Na TecProExpress, uma falha aqui pode custar milhões. Se o requisito diz "A API deve suportar 10.000 requests/s", o arquiteto precisa planejar a infraestrutura para isso.
2. Projeto e Implementação
Aqui definimos as camadas do sistema (Controller, Service, Repository). O foco é transformar a lógica de negócio em código limpo (Clean Code) e escalável.
3. Validação (Testes)
Não basta o código rodar na máquina do desenvolvedor. Ele precisa passar por testes automatizados que provam que o sistema é resiliente.
4. Evolução (Manutenção)
O software nunca está "pronto". Ele está sempre em evolução para atender novas leis, novas tecnologias ou novas necessidades do mercado.
🚀 Rumo à Agilidade
Embora as atividades sejam as mesmas, a forma como as executamos muda. No modelo Ágil, essas atividades acontecem em ciclos muito curtos (Sprints), permitindo correções de rota rápidas.
💡 Checkpoint de Lógica
Cap 02: Modelos de Processo de Software
Um modelo de processo de software é uma representação abstrata e simplificada de um processo real. Na engenharia moderna, esses modelos ditam como o código sai da IDE do desenvolvedor e chega com segurança à nuvem. 🛡️🧩
Cap 04: Metodologias Ágeis
As metodologias ágeis surgiram como uma alternativa às abordagens tradicionais, focando em flexibilidade, redução de burocracia e adaptação contínua. Em um mercado onde um microsserviço precisa ir ao ar em semanas, a agilidade é a alma do negócio. 🛡️🧩