UnB - FCTE - Lab Livre

Métodos de Desenvolvimento de Software

Especificar, delegar, verificar: engenharia de software em equipes com agentes. A disciplina continua sendo sobre método — ciclo de vida, processo, ritmo, qualidade e entrega. O que muda é que o time deixa de ser só humano, e o gargalo se desloca da produção de código para a especificação do que deve ser feito e a verificação do que foi feito.

Profa. Carla Rocha
60 horas (4 créditos)
Semestre 2026/2
6 Módulos
9 Sprints de 2 semanas
2 Releases
5-6 Membros por equipe

O que você vai aprender

Especificar um incremento de software de forma que uma pessoa ou um agente possa implementá-lo sem consultar o autor, com critérios de aceitação verificáveis
Decidir e registrar decisões arquiteturais em ADRs, incluindo alternativas descartadas e consequências assumidas
Planejar e conduzir iterações com backlog priorizado, fatiamento vertical e métricas de fluxo
Delegar tarefas de implementação a agentes de código com contexto adequado — e reconhecer quando delegar é a decisão errada
Verificar criticamente saídas de IA: teste sem asserção real, dependência inventada, vulnerabilidade introduzida, decisão arquitetural implícita
Operar entrega contínua com containers, pipeline de CI/CD, análise estática e software implantado — e defender oralmente qualquer artefato que assinar

Ementa do Programa

A ementa oficial permanece inalterada; a proposta reancora seus dois últimos itens em desenvolvimento orientado a especificação (SDD) e engenharia de software assistida por agentes.

  • Modelos de ciclo de vida e de processos — Módulo 0
  • Processo Unificado — Módulo 0
  • Métodos Ágeis de desenvolvimento de software — Módulos 0, 2 e 4
  • Outras abordagens de desenvolvimento de software — Módulo 1 (spec-driven development) e Módulo 3 (desenvolvimento assistido por agentes)
  • Ferramentas — Módulos 3, 4 e 5 (Git, agentes, MCP, SAST, CI/CD, containers)

Habilidades que você vai desenvolver

Spec-Driven Development Engenharia com Agentes AGENTS.md MCP Scrum Kanban Extreme Programming ADR & Arquitetura Git & GitHub TDD & BDD Teste de Mutação Segurança de Código (SAST) Docker CI/CD Métricas DORA Code Review

Conteúdo do Curso

6 módulos · 36 aulas
O uso de assistentes e agentes de IA nesta disciplina é esperado, não tolerado. Você será avaliado pela qualidade das suas decisões sobre o que pedir, o que aceitar, o que rejeitar e o que verificar. Ao longo de 9 sprints de 2 semanas, cada equipe conduz um projeto de impacto real do início à entrega, com a especificação e a verificação no centro do método.
0
Ciclo de vida, processos e o novo mapa
S0 · semanas 1–2

O que a engenharia de software se tornou em 2026 e por que três pilares clássicos de avaliação deixaram de ser evidência de aprendizagem. Modelos de processo e o que do Scrum permanece quando parte do time é um agente.

  • Apresentação e contrato pedagógico
  • O que mudou na engenharia de software (IA como amplificador)
  • Modelos de ciclo de vida e de processo
  • Processo Unificado e o Manifesto Ágil
1
Especificação executável
S1–S2 · semanas 3–5

A especificação promovida a artefato executável de primeira classe. Do requisito ágil ao ciclo specify → plan → tasks → implement, com arquitetura registrada em ADR e backlog priorizado.

  • Git como artefato de engenharia
  • Requisitos ágeis: da conversa ao critério
  • Spec-driven development I e II (oficina de spec)
  • Do spec ao plano: arquitetura e ADR
  • Backlog, visão de produto e priorização
2
Planejamento, fluxo e métricas
S3 · semanas 6–7

Planejar iterações e medir fluxo quando gerar código fica barato e verificar fica caro. As quatro métricas DORA e os antipadrões — incluindo o tokenmaxxing.

  • Planejamento de sprint e estimativa
  • Kanban, WIP e fluxo
  • Métricas de entrega e antipadrões
  • Scrum Master, rituais e gestão de risco
3
Engenharia com agentes
S4 · semanas 8–10

Como um agente de código funciona por dentro, como dar-lhe contexto sem encarecer o resultado, e como integrar ferramentas com o Model Context Protocol. Pareamento humano–agente e rastreabilidade.

  • Como funciona um agente de código
  • Context engineering: AGENTS.md
  • MCP e integração de ferramentas
  • Pareamento humano–agente e revisão
  • Fluxo no repositório com múltiplos agentes
  • Rastreabilidade spec → PR → teste
4
Qualidade e verificação
S5–S6 · semanas 11–13

As práticas de XP que sobreviveram, TDD/BDD, e por que cobertura de código deixou de provar qualidade. Teste de mutação, teste de sabotagem e segurança de código gerado por IA.

  • XP: as práticas que sobreviveram
  • TDD e BDD
  • Testes gerados por IA e falsa confiança
  • Qualidade de teste: mutação e propriedades
  • Clean code, análise estática e legibilidade
  • Segurança de código gerado por IA
5
Evolução, entrega e operação
S7–S8 · semanas 15–17

Uma mudança de requisitos é injetada no meio do projeto para exercitar manutenção e evolução. Dívida técnica, containers, integração e entrega contínuas, observabilidade e ética do software com IA.

  • A mudança de requisitos
  • Dívida técnica e refatoração assistida
  • Containers e ambientes reprodutíveis
  • Integração e entrega contínuas, deploy e observabilidade
  • Licenças, open source e ética do software com IA
Formato
Presencial, 2 encontros/semana, 18 semanas + material assíncrono
Equipes
5 a 6 membros, com papéis rotativos
Metodologia
Aprendizagem por projeto de impacto real

Política de Uso de IA

O uso de assistentes e agentes de IA nesta disciplina é esperado, não tolerado. O princípio é transparência, não proibição: não há penalidade por usar; há penalidade por não declarar e por não entender.

  • Onde é esperado e deve ser registrado: implementação, testes, documentação, exploração de bibliotecas e refatoração. O registro vive no AI-USAGE.md do repositório.
  • Onde não é permitido: arguições individuais presenciais, quizzes, avaliação por pares e o ensaio de reflexão crítica — todos avaliam o que você entende.
  • O que constitui infração: usar IA nos instrumentos individuais; omitir ou falsificar o registro de uso; entregar artefato que você não sabe explicar; apresentar trabalho de colega como seu.

Formação das Equipes

Cada grupo escolhe 3 temas na ordem de preferência. A professora negocia e aloca os temas.

Planilha de Grupos e Temas

Avaliação

A avaliação separa o desempenho individual do trabalho de equipe e desloca o peso da prova escrita para a defesa do próprio trabalho. Individual: 50% (arguições + processo + ensaio) · Coletivo: 50% (spec + R1 + R2).

Fórmula da Nota Final:

Nota Final = 0,30 × Arguições Individuais + 0,15 × Desempenho Individual no Processo + 0,10 × Especificação Viva e Registro de IA + 0,15 × Release 1 + 0,25 × Release 2 + 0,05 × Ensaio de Reflexão Crítica

ComponentePesoO que é
Arguições individuais30%Três arguições presenciais de 10–15 min (uma intermediária e as outras duas junto às Releases 1 e 2), sobre o próprio código, a própria spec e as decisões da equipe. 10% cada. Sem IA.
Desempenho individual no processo15%Contribuição rastreável (commits, PRs, revisões), pareamento, participação em rituais e avaliação por pares.
Especificação viva e registro de IA10%Qualidade e manutenção de /specs, ADRs, rastreabilidade spec → issue → PR → teste e o AI-USAGE.md. Avaliado em R1 e R2.
Release 115%Incremento funcionando e implantado, pipeline verde, apresentação.
Release 225%Produto final implantado, com a mudança de requisitos absorvida, testes defensáveis e varredura de segurança tratada.
Ensaio de reflexão crítica5%800–1200 palavras, individual: onde a IA ajudou, onde atrapalhou e o que você aprendeu que a ferramenta não sabe. Sem IA.

Condições de Aprovação:

  • Média Final ≥ 5,0
  • Frequência ≥ 75% das aulas
  • Comparecimento às três arguições individuais
  • Porta de qualidade nos releases: a nota só é lançada com software implantado e acessível, pipeline de CI verde no commit da entrega, e nenhuma vulnerabilidade crítica ou alta em aberto na varredura estática.

No lugar da métrica de cobertura

A meta de "90% de cobertura" sai. Cobertura continua útil como piso, não como prova de qualidade.

MétricaMeta
Cobertura de linhas≥ 70% no módulo de domínio
Escore de mutação≥ 50% nos módulos críticos
Teste de sabotagem100% dos módulos críticos (a suíte quebra quando um defeito proposital é introduzido)
Achados críticos/altos em SAST0 em aberto

Rubrica de qualidade de especificação (aplicada a /specs em R1 e R2, 0–4 por critério): verificabilidade, ausência de ambiguidade, delimitação de escopo, rastreabilidade, decisão registrada em ADR e vivacidade (a spec é atualizada quando o requisito muda).

Datas das Releases

Detalhes sobre o roteiro das apresentações: Guias para as entregas.

  • Release 1 — 28/09/2026 · semana 7 (apresentação e Arguição Individual)
  • Release 2 — 25/11/2026 · semana 15 (apresentação final e Arguição Individual)

Bibliografia

Base

Beck, K. Programação Extrema (XP) Explicada. Bookman, 2004.
Schwaber, K.; Sutherland, J. Guia do Scrumscrumguides.org.
Sommerville, I. Engenharia de Software. Pearson.
Valente, M. T. Engenharia de Software Modernaengsoftmoderna.info.
Fox, A.; Patterson, D. Engineering Software as a Servicesaasbook.info.
Kniberg, H. Scrum e XP direto das TrincheirasInfoQ (acesso aberto).
Alves, I.; Rocha, C. Qualifying Software Engineers Undergraduates in DevOpsarXiv:2102.06662.

Especificação e agentes

GitHub. Spec Kit — Spec-Driven Developmentgithub.com/github/spec-kit.
AGENTS.md — convenção aberta de contexto para agentes — agents.md.
Anthropic. Model Context Protocol — especificação e guias de desenho de ferramentas — modelcontextprotocol.io.

Evidência empírica

DORA / Google Cloud. State of AI-assisted Software Development, 2025 — dora.dev.
DORA / Google Cloud. ROI of AI-assisted Software Development, 2026 — dora.dev/ai/roi.
Gloaguen, T. et al. Evaluating AGENTS.md. ETH Zurich / LogicStar, 2026.

Ensino e segurança

ICSE-SEET '26. AI-Driven Software Development: A New Course Concept and Assessment Model for the Era of LLMs — DOI 10.1145/3786580.3786962.
Rausch, A. et al. Preparing Students for AI-Driven Agile Development — arXiv:2603.09599, 2026.
OWASP Top 10 for LLM Applications e OWASP Agentic Security Initiative — owasp.org.

🚀 Projetos do Semestre

Confira a lista completa de projetos disponíveis para o semestre:

🌱 Ver Projetos 2026/2

📊 Projetos 2026/1 (semestre anterior)