Engenharia Web
com IA Generativa
Do requisito ao protótipo validado. Como a IA muda o processo de desenvolvimento — sem eliminar a responsabilidade técnica.
PHP + MySQL Prompt Engineering Context Window Agentic Patterns
Problematização

A Pergunta que Muda Tudo

"Se eu pedir para uma IA criar um sistema de tarefas acadêmicas em PHP e MySQL, o sistema estará automaticamente correto?"
❌ O que a IA pode errar
Requisitos incompletos · Segurança · Conexão com BD · Organização de arquivos · Validação · Fluxo de navegação · Tratamento de erros · Testes
⚡ O que muda no seu papel
Você deixa de apenas codificar e passa a especificar · revisar · testar · auditar · documentar · avaliar riscos
✅ A resposta
Não. A IA acelera etapas, mas a responsabilidade técnica continua sendo humana. Engenharia Web não desaparece — ela muda de ênfase.
Ponto central: Desenvolver software não é apenas gerar código. É entender problema, definir requisitos, validar, testar, corrigir e manter.
Processo

Tradicional vs. Desenvolvimento com IA

Processo Tradicional
📌 Problema
📋 Requisitos
🔍 Análise
📐 Projeto
💻 Implementação
🧪 Testes
🚀 Implantação & Manutenção
Com IA Generativa
📌 Definir Problema
📋 Especificar Requisitos
✍️ Criar Prompt Estruturado
🤖 Gerar Proposta com IA
🔎 Auditar Código
🧪 Testar
🔧 Corrigir & Documentar
Com IA, o aluno não deixa de ser desenvolvedor. Ele passa a atuar também como especificador, revisor, testador e auditor.
Evolução

O Mundo Evoluiu — e Evoluiu MUITO Rápido!

A IA não exclui o que devemos saber. Ela gera novos paradigmas em cima dos fundamentos existentes.
ANTES — Fundamentos que se mantêm
DEPOIS — Novos paradigmas adicionados
Protocolos HTTP, WSe outros protocolos padrões
evolui para ▶
MCP / A2AProtocolos de integração com e entre agentes
12 Factor App2011 — Princípios cloud-native
evolui para ▶
12 Factor AgentsPrincípios operacionais para agentes
Design Patterns (GOF)1994 — Patterns clássicos de código
evolui para ▶
Agentic Design PatternsReAct, Plan, Tool Use, Routing
Microservices2014 — Decomposição em serviços
evolui para ▶
Multi-Agent ArchitectureDecomposição em agentes especializados
Habilidades

O que Muda nas Suas Habilidades com IA

Arquitetura de SoftwarePrecisa guiar o agente com controle e intencionalidade
▲ AUMENTA
Entendimento de DomínioAgente não tem contexto de negócio — você precisa fornecer
▲ AUMENTA
Especificação / PlanningSpec ruim = código ruim em escala. É o ponto mais crítico.
▲ AUMENTA (CRÍTICO)
Code ReviewRevisa output do agente + coordena agentes especializados
◆ TRANSFORMA
Digitação de CódigoO agente escreve o código — você revisa, não digita
▼ DIMINUI
O novo diferencial não é saber programar, mas saber especificar, auditar, testar e evoluir sistemas criados com IA.
Contexto

A Velocidade da Ruptura

Mundo anterior — ~10 padrões fundamentais

  • ~1 grande contribuição a cada 3–5 anos
  • Tempo para absorver, debater e consolidar
  • Currículo acadêmico acompanhava o mercado
  • Mudança incremental e previsível

Mundo com IA — mesma quantidade por trimestre

  • Múltiplos paradigmas novos por trimestre
  • Sem tempo para consolidar — aprende enquanto muda
  • Modelos novos a cada semanas
  • Padrões surgem antes da teoria estar madura
Essa é a velocidade da ruptura — e ela está acelerando.
⚠️ Risco 1
Aprender ferramenta sem aprender fundamento. A ferramenta muda; o fundamento fica.
⚠️ Risco 2
Confiar cegamente em código gerado por IA sem entender o problema subjacente.
✅ Estratégia
Dominar fundamentos + aprender a usar IA para acelerar. Não substituir um pelo outro.
Novos Problemas

Problemas que Não Existiam e que a IA Nos Trouxe

🔐 Segurança & Confiabilidade
Jailbreaking
Comportamento não autorizado. O modelo é induzido a ignorar suas restrições.
Prompt Injection
Manipulação de instruções via input do usuário. Sequestro do comportamento do LLM.
Guardrails
Barreiras de segurança que precisam ser projetadas e mantidas ativamente.
Privacidade
Dados sensíveis no contexto. Risco de exposição em prompts e logs.
📊 Qualidade & Observabilidade
Evaluation (Evals)
Medir qualidade de outputs de LLMs. Não há compilador — o erro é semântico.
Tradeoffs: Latência / Qualidade / $
Análise e seleção de modelos. Cada caso exige uma decisão diferente.
Prompt / Context Eng.
Otimização de entradas e contexto. Nova disciplina de engenharia.
Arquitetura

Escolha 2 — o Terceiro Sempre Será Sacrificado

⚡ Rápido + Qualidade
GPT-4o, Claude Sonnet + prompt cache
= $$$$ (custo alto)
✅ Qualidade + Barato
Batch API, async processing, processamento em fila
= Lento (alta latência)
💰 Rápido + Barato
Haiku, Flash, modelos menores e especializados
= Qualidade inferior
Latência em LLM não é problema a eliminar — é tradeoff a ser gerenciado.
Estratégias Arquiteturais para Gerenciar o Tradeoff
Streaming (SSE)
Percepção de velocidade enquanto o modelo ainda gera. Não reduz latência — muda a percepção.
Model Routing
Modelo certo p/ tarefa certa. Haiku p/ simples, Opus p/ complexo.
Cache Semântico
Perguntas similares = cache hit. Reduz custo e latência drasticamente.
Async / Background
Processar e notificar quando pronto. Ideal p/ agentes de longa duração.
Optimistic UI
Resposta provisória imediata. Atualiza quando LLM responde.
Batch API
50% mais barato, sem pressa. Processamento offline / bulk.
Arquitetura

Arquitetura da Context Window

Uso de ferramentas externas: o modelo invoca APIs, cálculos ou sistemas externos
Structured Outputs: garante saídas em formatos previsíveis (JSON, Schema)
Gerenciamento dinâmico: decidir o que incluir, resumir ou descartar da janela
RAGDocs e vector search
Prompt engineeringSystem prompt e few-shot
State / historyConversa e tool results
MemoryPersistência entre sessões
Structured outputJSON schema e tools
Context window
O que saber
Como agir
O que rolou
O que lembrar
Em que formato
80%
Capacidade finita
LLM
Output
Legenda
O que saber
Como agir
O que rolou
O que lembrar
Em que formato
A context window é capacidade finita. Tudo que entra nela compete por espaço. Gerenciar o que entra é engenharia.
Prompt Engineering

Prompt Ruim vs. Prompt Bom

❌ Prompt Ruim
Faça um sistema de tarefas em PHP. (Sem contexto, sem tecnologia, sem campos, sem validação, sem critérios de aceite, sem estrutura esperada...)
Produz código incompleto, inseguro e desalinhado com o problema real.
✅ Prompt Bom
Atue como dev web PHP 7+ e MySQL. Crie sistema de controle de tarefas acadêmicas. Funcionalidades: 1. Cadastrar tarefa 2. Listar tarefas 3. Alterar status 4. Excluir tarefa 5. Dashboard por status/prioridade Campos: id, título, disciplina, descrição, prazo, prioridade (baixa/média/alta), status (pendente/em andamento/concluída), data_criação Requisitos técnicos: - PHP puro + HTML + CSS + MySQL - Conexão PDO - Validar campos obrigatórios - Prepared statements (sem SQLi) - Arquivos separados - Script SQL incluído Formato: estrutura de pastas → script SQL → código → instruções Critérios de aceite: - Cadastro salva no banco - Listagem mostra tarefas - Alteração de status funciona - Dashboard mostra totais
Boas Práticas

Como Construir um Bom Prompt

🎯 1. Contexto e Papel
"Atue como dev PHP 7+ com MySQL." Definir o papel orienta o estilo e profundidade da resposta.
📋 2. Objetivo Claro
Descreva o problema, não a solução. Explique o que precisa ser feito e por quê.
⚙️ 3. Restrições Técnicas
Informe stack, versões, proibições (ex: "sem framework", "usar PDO"). Evita soluções incompatíveis.
📐 4. Formato da Resposta
Peça: estrutura de pastas → SQL → código → instruções. O formato organiza o output.
✅ 5. Critérios de Aceite
Liste o que precisa funcionar. A IA usa os critérios como checklist interno.
🔍 6. Exemplos Quando Necessário
Para correção de erros: cole a mensagem, o comportamento esperado e o comportamento real.
Um bom prompt tem: papel + problema + funcionalidades + campos + restrições + formato + critérios
Riscos

Riscos e Limitações do Uso de IA no Desenvolvimento

🔓
Falta de validação de entrada. IA não valida se você não pedir explicitamente.
💉
SQL Injection. Prepared statements precisam ser explicitamente requisitados.
💥
Ausência de tratamento de erros. Código sem try/catch e sem feedback ao usuário.
🔑
Credenciais expostas. Senhas e chaves hardcoded no código gerado.
🍝
Mistura de responsabilidades. Lógica, view e banco no mesmo arquivo.
🎭
Interface bonita, fluxo incorreto. A IA prioriza aparência sobre lógica.
🖥️
Código que não funciona no ambiente local. Incompatibilidade de versões e config.
🔲
Funcionalidades incompletas. A IA pode "assumir" que algo funciona sem implementar.
🧪
Ausência de testes. Nunca gera testes automatizados a menos que você peça.
🔗
Dependência excessiva. Perda de entendimento do que foi produzido.
Código aparentemente correto ≠ código correto. Auditoria é obrigatória, não opcional.
Projeto Prático

Sistema Web de Controle de Tarefas Acadêmicas

📌 O Problema
Estudantes perdem prazos por falta de organização. Criar sistema web simples para cadastrar, acompanhar e resumir tarefas acadêmicas.
🛠️ Stack Tecnológica
PHP 7+ MySQL HTML/CSS PDO — ambiente LAMP/XAMPP. Sem frameworks.
REQUISITOS FUNCIONAIS
Cadastrar tarefa acadêmica
Listar tarefas cadastradas
Alterar status da tarefa
Excluir tarefa
Dashboard: resumo por status e prioridade
CAMPOS DA TAREFA
id · título · disciplina
descrição · prazo
prioridade: baixa | média | alta
status: pendente | em andamento | concluída
data_criação
ENTREGÁVEIS
Prompt usado · Código gerado · Script SQL · Prints funcionando · Testes realizados · O que a IA acertou · O que precisou corrigir · Reflexão sobre riscos
Resumo

O que Você Precisa Levar Desta Aula

01
IA acelera, não substitui
O processo de Engenharia Web continua existindo. A IA acelera etapas, mas exige mais clareza na especificação, validação e testes.
02
Especificação é crítica
Spec ruim = código ruim em escala. Quanto melhor o prompt e os requisitos, melhor o código gerado. Lixo entra, lixo sai.
03
Auditoria é obrigatória
Nunca confie cegamente no código gerado. Teste cada funcionalidade, verifique segurança, valide dados, documente decisões.
04
O mundo evoluiu
Protocolos HTTP→MCP, 12FA→Agents, GOF→Agentic Patterns, Microservices→Multi-Agent. Fundamentos se mantêm, paradigmas evoluem.
05
Tradeoffs existem
Rápido+Qualidade+Barato: escolha 2. Latência não é problema a eliminar — é tradeoff a ser gerenciado com Streaming, Routing, Cache.
06
Novos riscos surgiram
Jailbreaking, Prompt Injection, Guardrails, Privacidade, Evals. São problemas que não existiam e exigem novas competências.
O novo diferencial: não é quem gera mais código — é quem especifica melhor, testa melhor e encontra mais falhas.