Meus 2 cents extendidos,
Você define os critérios de aceite no SDD antes de gerar, ou vai refinando junto com o código?
Depende.
Todo DEV depois de um tempo tem sua biblioteca de funcoes - isso migrou para SPECs prontas para diversos casos.
As aplicacoes de um modo geral repetem uma serie de comportamentos (dai a origem dos frameworks, boilerplates, etc) e com o SDD nao eh diferente: quanto mais voce usa, maior a biblioteca que voce ja tem pronta de funcionalidades que precisa.
Grosso modo, antes (kkk, 1 ano atras) voce tinha boilerplates de inicializacao de um app, pre-configurado e pronto para uso: agora sao boilerplates de SPECs, SKILLs, AGENTS.md, devContainers, sandbox.
Mudou tudo, para ficar no mesmo lugar.
Enfim - com este "boilerplate" de IA tem muito teste ja pronto, entao nao sai do zero.
Mas nao tem tudo - no meu caso, prefiro escrever os criterios de aceite ao refinar o codigo, conforme a funcionalidade vai tomando forma e amadurecendo.
Mas um detalhe aqui (e onde eu concordo com o UncleBoB, LucasMontano): se um DEV diz que "teste nao sao imporantes" pode ter certeza que ele nao esta usando IA de forma pesada e revisa codigo na mao (o que eh insano para volumetria).
PRD, checklist, SDD, TDD sao tudo isso ? Nao - sao formas humanas que adaptamos para uso no desenvolvimento com IA: ainda acho que vai surgir um "SCRUM" que leve em conta:
-
Que a IA vai desenvolver o codigo de forma autonoma (codificacao agentica)
-
Que certifique que a IA nao esteja gerando codigo lixo
-
Que certifique que a IA esteja seguindo boas praticas (SOLID, CLEAN)
-
Que certifique que a IA esteja gerando codigo seguro
-
Que certifique que a IA esteja gerando um codigo auditavel
-
Metricas/KPIs de observabilidade/auditabilidade (p.ex. prometheus, grafana, zabbix, icinga) garantindo que a aplicacao em homologacao/producao cumpre o esperado (detalhe aqui: KPI sao interessantes para avaliar nao apenas se a API funciona, mas tempo de resposta e verificar se o ultimo PR nao jogou a performance no ralo).
-
Que os humanos precisam estar no circuito, avaliando o resultado do desenvolvimento, mas abstraidos do "operacional" da geracao do codigo.
Eh esquisito ? Pacas - mas me parece o mais logico diante da direcao/rumo que o desenvolvimento usando agentes esta tomando.
Saude e Sucesso !