Desenvolvimento de Software Apoiado por IA — 2026.2

Aula 1
Apresentacao da Disciplina

👨‍🏫 Prof. Gustavo Pinto 🏛️ UFPA 📅 1 de setembro de 2026 🕐 20h

Agenda de hoje

A tese da disciplina

Se o agente escreve o codigo, o que sobra para o engenheiro de software?

O que esta disciplina NAO e

O agente e o instrumento. O produto e o sistema de software que voce entrega.

Tres estudos, tres respostas diferentes

Peng et al. 2023

Copilot acelerou uma tarefa controlada de forma significativa.

arXiv:2302.06590

METR 2025

Devs experientes ficaram 19% mais lentos em bases que conheciam bem.

metr.org

Anthropic 2026

400 mil sessoes reais de Claude Code, com taxas de sucesso que variam com a expertise.

anthropic.com/research

Sua primeira tarefa da disciplina e explicar por que os tres podem estar certos ao mesmo tempo.

Quem decide o que

Compreensao do dominio pesa mais que anos de codigo. O agente trabalha melhor quando bem dirigido.

Um papel que nasceu disso: Forward Deployed Engineer

Engenheiro que se instala dentro do time do cliente: participa da daily, commita no repositorio dele, e responde pela solucao ate ela estar em producao.

Por que o FDE importa para voces

O projeto desta disciplina e um exercicio de FDE: achar um usuario real, entender o problema dele, e publicar algo que funcione.

O criterio que organiza o semestre

Toda dupla termina com um sistema funcionando, publicado, em uma URL que qualquer pessoa abre.

Estrutura da disciplina

Parte I · Fundamentos

01/09 a 15/10
  • 10 aulas e 2 laboratorios
  • Especificar, dirigir, revisar
  • Testar e publicar

Parte II · Projeto

20/10 a 10/12
  • 3 portoes de entrega
  • Clinicas e seminarios
  • Aplicacao no ar

Fechamento

10/12 a 22/12
  • Demo Day
  • Defesa oral
  • Buffer

Revisao e teste vem antes de o projeto comecar. Quem so aprende a gerar codigo, e nao a julgar o codigo gerado, acumula divida sem perceber.

Cronograma · Parte I

#DataDiaConteudo
101/09TerApresentacao. Quem decide o que
203/09QuiComo um assistente de codigo funciona por dentro
08/09TerCBSoft 2026, sem aula
10/09QuiCBSoft 2026, sem aula
L115/09TerLab: dirigindo o agente numa funcionalidade real
317/09QuiDecomposicao de tarefas e engenharia de contexto
L222/09TerLab: AGENTS.md e smells de configuracao. Entrega AP1
424/09QuiSpec-Driven Development, e a evidencia contraria
529/09TerTestes como contrato
601/10QuiRevisao de codigo gerado
706/10TerCodigo legado
808/10QuiQualidade e seguranca do codigo gerado
913/10TerMedicao e entrega. Entrega AP2
1015/10QuiCusto, limites e o que continua humano

Cronograma · Parte II

#DataDiaConteudo
KO20/10TerKickoff do projeto: duplas e escolha do problema
22/10QuiOficina: SPEC.md e primeira publicacao
G127/10TerPortao 1: SPEC.md, testes em CI e aplicacao no ar
29/10QuiClinica de codigo: revisao coletiva de PRs
S103/11TerSeminario critico de artigos
S205/11QuiSeminario critico de artigos
10/11 e 12/11Acompanhamento dos projetos
G217/11TerPortao 2: sistema completo, legado e revisao
19/11QuiAcompanhamento dos projetos
24/11TerClinica de seguranca: auditoria cruzada
26/11QuiAcompanhamento dos projetos
DO01/12 e 03/12Defesa oral individual
08/12TerNossa Senhora da Conceicao, sem aula
G310/12QuiPortao 3: Demo Day
15, 17 e 22/12Buffer, fechamento e notas

Avaliacao

💻 Atividades PraticasAP1 em 22/09, AP2 em 13/1030 pts
🏗️ ProjetoTres portoes: 27/10, 17/11, 10/1250 pts
📝 Diario de usoUma entrada por aula, no repositorio10 pts
🎤 Defesa oralIndividual, em 01/12 e 03/1210 pts

As duas atividades praticas

AP1 · do spec ao deploy

Escrever o SPEC.md antes do codigo, conduzir o agente ate funcionar, e publicar.

Entrega em 22/09

AP2 · brownfield e revisao

Receber o repositorio de outra dupla, adicionar funcionalidade e entregar uma revisao critica.

Entrega em 13/10

Na AP2, a nota vem do rigor da revisao, nao do tamanho da funcionalidade.

O projeto e os tres portoes

Portao 1 · 27/10

10 pontos
  • SPEC.md versionado
  • Testes em CI
  • Aplicacao no ar
  • Sem URL, nao passa

Portao 2 · 17/11

15 pontos
  • Sistema completo
  • Marco em codigo legado
  • Relatorio de revisao
  • Custo medido

Portao 3 · 10/12

25 pontos
  • Demo ao vivo, 12 min
  • Na URL publica
  • Relatorio final
  • Defesa das decisoes

Tema livre, desde que exista um usuario identificavel que nao seja a propria dupla.

Diario de uso

Uma entrada por aula, em diario/AAAA-MM-DD.md, enviada por commit no dia. O historico do git carimba a data de cada entrada.

# Aula 07 (06/10)
Objetivo. Adicionar filtro por data na listagem de eventos.
Ferramenta. Claude Code, ~40 min, 3 iteracoes.
O que o agente entregou. Filtro funcionando, mas consultando o
   banco a cada tecla.
O que mudamos a mao. Debounce de 300ms e indice em evento(data).
O que aprendemos. Ele nao considera custo de consulta se a
   spec nao menciona.

Registro honesto de falha vale mais nota do que registro que so relata sucesso.

Ferramentas

Agente

Claude Code como referencia nas aulas. Cursor, Copilot, Codex e Gemini CLI sao aceitos no projeto.

documente a escolha

Repositorio

GitHub publico, com codigo, SPEC.md, AGENTS.md, testes e diario.

um por dupla

Hospedagem

Vercel, Render, Fly.io, Supabase ou GitHub Pages.

livre, desde que gratuita

A stack e escolha da dupla. Nao ha linguagem obrigatoria.

Regras de convivencia com a ferramenta

Na apresentacao final: se voce vier apenas para ler o que o agente escreveu, por favor, nem venha.

Ate a proxima aula

Na semana de 08 a 11/09 nao havera aula, por conta do CBSoft 2026. As atividades assincronas vencem em 15/09.

Duvidas?

Proxima aula: como um assistente de codigo funciona por dentro

📧 gpinto@ufpa.br