🎞️ Slides 📝 Material ← Módulo
Projeto 6 · Engenharia de Software Plano de Ensino

Aula 7 — Orientação a objetos com TDD

Plano operacional do dia: modelagem dinâmica e estática como base, TDD como guardrail para domar as regras de negócio em IA, instalação do AIOX e uso das skills QA e Dev para acelerar a codificação de backend sem quebrar a aplicação.

← Voltar ao Módulo

Identificação

Curso
Engenharia de Software
Módulo
Projeto 6 — SOA Mobile
Aula
7 de 10
Data
28/05/2026
Carga horária do dia
6h (2h + 2h + 2h)
Modalidade
Presencial · Metodologia ativa
Pré-aula
Autoestudo guiado
Avaliação
Atividade prática em sala (sem ponderada)

Resumo

A aula 7 dá um passo além do TDD tradicional e ensina como utilizá-mo como Guardrail para Inteligência Artificial. A aula inicia debatendo a importância da modelagem dinâmica e estática. Em seguida, os alunos aprendem como o TDD (C# backend) no padrão AAA transforma essa modelagem em regras imutáveis.

Com as "travas" dos testes (Red) garantindo os contratos arquiteturais, instalamos o AIOX (npx aiox-core@latest install). A IA (via skills de QA e Dev) assume a codificação da implementação (Green/Refactor), acelerando a produtividade sem quebrar a aplicação e mantendo a arquitetura SOA intacta.

Objetivos de aprendizagem

  • OA-1Analisar a importância da modelagem dinâmica e estática antes de começar a codificação de backend.
  • OA-2Relacionar o TDD ao padrão AAA como um *guardrail* para orientar a geração de código por IA.
  • OA-3Instalar e utilizar o AIOX via CLI (npx aiox-core@latest install) para avaliar a saúde do projeto.
  • OA-4Aplicar o ciclo TDD-IA: Humano escreve o teste vermelho baseado na modelagem, AIOX-Dev escreve a implementação até a barra ficar verde.
  • OA-5Demonstrar que a união de TDD estrito e IA garante o respeito aos contratos da arquitetura SOA de forma rápida e segura.

Pré-requisitos

  • Aulas 1 a 6 concluídas: API C# do projeto rodando localmente.
  • Pacotes xunit, Moq e coverlet.collector adicionados ao projeto de testes — dotnet test verde com pelo menos 1 teste exemplo.
  • Material da Aula 7 lido; vocabulário do dia mapeado (SUT, AAA, Red/Green/Refactor, Regra dos 3, mock vs stub).

Cronograma do dia

📚 Bloco 1 · Autoestudo

10h00 — 12h00

Estudo individual orientado pelo material da aula 7.

  • Leitura completa do Material da Aula 7 (POO + SOLID + ciclo TDD).
  • Garantir que dotnet test roda verde no projeto (xUnit + Moq + coverlet).
  • Ler o bliki de TDD do Martin Fowler (~10 min).
  • Caderno de bordo: 1 dúvida concreta sobre quando usar mock vs stub.

📚 Leituras sugeridas:

🍴 Intervalo · Almoço

12h00 — 14h00

Janela livre.

🎓 Bloco 2 · Instrução PE — Aula em metodologia ativa

14h00 — 16h00

Encontro síncrono com o professor especialista.

  • 14h00 — 14h15 · Daily.
  • 14h15 — 14h55 · Teoria + live coding TDD (40 min).
  • 14h55 — 16h00 · Atividade prática em pares (1h05).

🛠️ Bloco 3 · Desenvolvimento do projeto

16h00 — 18h00

Janela de trabalho da equipe.

  • Continuar a atividade prática se ainda não tiver fechado o MR.
  • Refatorar classes de domínio do projeto adicionando testes para cobrir regras de negócio existentes.
  • Aumentar cobertura com coverlet; abrir Merge Request feat(tests): score-usuario-tdd.

Detalhamento da instrução PE (14h00 — 16h00)

14h00
14h15

DailyDaily de abertura

Cada aluno apresenta em 1 minuto: 1 regra de negócio vital / 1 dúvida sobre AAA / 1 receio sobre usar IA para codar.

14h15
14h25

TalkModelagem Dinâmica e Estática

Por que não podemos codar no escuro. A modelagem (diagramas de classe, sequência) é o contrato. Como ela define os comportamentos esperados.

14h25
14h35

TalkTDD como Guardrail para IA

A IA é ótima em gerar código, mas pode alucinar lógicas. O padrão AAA (Arrange/Act/Assert) cria o "guardrail". Você codifica a modelagem como teste; a IA é forçada a acertar o alvo.

14h35
14h55

CodingLive coding · AIOX na prática

Live: instalar aiox-core. Escrever manualmente o primeiro teste (Red). Rodar a skill QA do AIOX para avaliar a base. Em seguida, usar a skill Dev do AIOX para gerar a classe e fazer o teste passar (Green). O contrato SOA foi preservado magicamente.

14h55
15h55

AtivaAtividade prática em pares · CalculadoraScoreUsuario

Em duplas: A dupla foca puramente em criar a suíte de testes xUnit (Red) baseado nos contratos da modelagem. Com os testes criados, delegam ao AIOX a codificação final (Green/Refactor). Commitam as interações e o resultado final no git.

15h55
16h00

AtivaSíntese · "a aula 7 me ensinou que..."

Cada aluno escreve 1 frase sobre IA e Testes. Anuncia-se a aula 8: Testes de Integração (PONDERADA) — testar o fluxo inteiro de um endpoint da API.

Estratégias de metodologia ativa

  • Live coding como ritual — o professor demonstra a instalação do AIOX e a falha de um teste escrito para proteger o contrato.
  • Pareamento IA-Humano — os alunos operam as regras e o AIOX codifica o que falta. O pareamento agora inclui a máquina como parceira (co-pilot/agente).
  • Avaliação por fluxo — a entrega mostra que os alunos definiram as bordas seguras primeiro e a ferramenta respeitou.
Princípio orientador

TDD não é só escrever teste antes. No mundo da IA agente, TDD é escrever a *cerca* (o guardrail) para que o agente não destrua sua arquitetura. O modelo de negócios vira um teste executável.

Recursos e ferramentas

CategoriaRecursoUso
Slidesslides/slide-lesson-7.htmlExposição na instrução PE
Agente / IAaiox-core (NPM)Skills de QA e Dev para codificar
LinguagemC# 12 / .NET 8Implementação e testes executados pela IA
FrameworksxUnit, MoqTestes (guardrails) e mocks
CLIdotnet test · npx aiox-core@latest installExecução e Setup da IA
RepositórioGitLab do grupoBranch feat/score-usuario-aiox + MR

Verificação de aprendizagem

  • CR-1Converteu o contrato da modelagem estática em testes unitários xUnit (Guardrail/Red).
  • CR-2Instalou o AIOX via CLI e utilizou a skill de QA com sucesso para avaliar a base.
  • CR-3Delegou o ciclo Green/Refactor para a skill Dev do AIOX e alcançou dotnet test verde.
  • CR-4Abriu Merge Request feat(tests): score-usuario-aiox exibindo as conversas com a IA ou o log do AIOX no descritivo do MR.
Critério mínimo

Par que sair às 16h sem 5 testes verdes + commits Red/Green/Refactor visíveis está em débito técnico para a aula 8 (Testes de Integração ponderada).

Conexão com a aula 8

A aula 8 amplia para Testes de Integração (PONDERADA): você vai testar não 1 classe isolada, mas o fluxo inteiro de um endpoint da API — request HTTP, controller, service, repositório, banco em memória.

  • O hábito do AAA continua, mas o "Arrange" agora monta um WebApplicationFactory.
  • Mocks dão lugar a fakes de banco (ex.: SQLite em memória).
  • A regra "1 commit = 1 fase do ciclo" continua valendo.
Para o autoestudo da aula 8

Antes das 10h: ler material da aula 8, instalar Microsoft.AspNetCore.Mvc.Testing no projeto de testes e rodar 1 integração de exemplo verde.

Inteli Logo