Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

⚙️ CAPÍTULO 03: AS ATIVIDADES DO PROCESSO

Para que um software seja produzido e mantido em escala corporativa, são necessárias diversas etapas coordenadas chamadas de Processo de Software. Independente do modelo escolhido (Ágil ou Tradicional), as engrenagens fundamentais permanecem as mesmas. 🛡️🧩


🎯 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:

AtividadeDescrição Corporativa e Tecnológica
EspecificaçãoO cliente define o que o sistema faz. Criamos a lista de Requisitos Funcionais e Não-Funcionais.
Projeto e ImplementaçãoO software ganha vida. Planejamento de Entities, Interfaces REST e codificação pura em Java.
ValidaçãoGarantia de que o sistema funciona e não tem bugs. Uso de JUnit 5, Mockito e Testes de Integração.
EvoluçãoAdição de novas funcionalidades e correções, mantendo o sistema vivo e atualizado na Nuvem.

📊 Visualizando a Interação

flowchart LR
    A["📋 Especificação"] --> B["📐 Projeto & Implementação"]
    B --> C["🧪 Validação"]
    C --> D["🚀 Evolução"]
    D --> A

🔍 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.

[!TIP] Dica Sênior: Nunca envie um Pull Request sem testes unitários. Na TecProExpress, a Validação automatizada é o que impede que um erro de estagiário derrube o faturamento da empresa. 🛡️

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.

graph LR
    A["Caos Ad-hoc"] -->|Engenharia| B["Modelos Estruturados"]
    B --> C["Esteira de CI/CD Automatizada"]
    C --> D["Entrega Contínua de Valor"]

💡 Checkpoint de Lógica

[!IMPORTANT] Reflexão Profissional: Se você pular a etapa de Validação para entregar o código mais rápido para o cliente, o que acontecerá na etapa de Evolução daqui a 6 meses? (Resposta: A Evolução será lenta e perigosa, pois cada mudança nova poderá quebrar partes do sistema que você não testou antes). 🧠🛡️