#13 Usando o ChatGPT para criar documentações de produto - Um exemplo prático
Da pesquisa inicial aos critérios de aceitação, deixe que a IA faça o trabalho operacional por você e economize seu tempo
Você já está usando a inteligência artificial para otimizar o seu trabalho?
Faz mais de um ano que a OpenAi lançou o ChatGPT e a internet ainda está lotada de pessoas falando sobre o assunto, mas não vejo tantos conteúdos práticos e diretos.
Acredito que precisamos conhecer os fundamentos e pensar em estratégias, mas também precisamos aprender a utilizar as ferramentas no dia-a-dia e extrair o seu valor mais básico: eficiência operacional.
Eu já uso tanto o ChatGPT quanto outras ferramentas desde o lançamento, mas intensifiquei a utilização nos últimos meses e temos conversado sobre o uso no nível corporativo. Hoje, quero trazer um exemplo de documentação de produto, com vários prompts para te dar ideias do que você pode fazer.
AVISO: Se você está lendo a newsletter no e-mail, pode ser que o texto apareça truncado, devido ao tamanho e quantidade de imagens. Nesse caso, acesse cintiaribeiro.substack.com e leia diretamente no seu navegador
Agora sim, vamos lá?
Iniciando a conversa
Toda conversa com o ChatGPT deve começar com um contexto. Eu comecei com um contexto simples, como se estivesse criando um produto do zero, sem muitos detalhes. Na prática, você pode ter mais informações que queira dar ao robô.
Você é product manager de um aplicativo que visa ajudar as pessoas a monitorarem sua ingestão diária de líquidos. O desenvolvimento do aplicativo deve ser feito de forma incremental, começando apenas com a ingestão de água, mas evoluindo para calcular a quantidade de água a partir da ingestão de outros líquidos e, posteriormente, até mesmo frutas. O produto vai permitir que a pessoa descubra sua necessidade de água com base em suas características físicas e acompanhe sua evolução da ingestão de água ao longo do tempo.
O produto vai se chamar Acqua.
Descreva o público-alvo do Acqua.
Como escolhi uma necessidade universal, ele me deu um público-alvo amplo, com várias opções, e escolhi uma:
Vamos focar no público 4, Mães e Pais. Crie as personas do produto
Ele me deu duas opções:
Maria, a mãe atenciosa
João, o pai fitness
Notem que não especifiquei um formato desejado para a descrição das personas, mas poderia ter feito isso.
Tendo as personas, pedi a ele para listar as principais dores dessas personas. Não selecionei uma persona específica, mas ele separou.
Liste as principais dores que o Acqua pode ajudar essas personas a resolver
Segui com a conversa sem corrigir, mas essa última “dor” do João é um ponto que eu optaria por não levar em uma situação real - ou, no mínimo, iria reescrever. Interesse em “receber lembretes” é uma necessidade que já está focada na solução, não no problema.
Agora, podemos falar de soluções
Na maioria das vezes, essas etapas não vão acontecer dessa forma, se acontecerem. Como meu propósito aqui era apenas o de exemplificar o uso da ferramenta, segui essa ordem para chegar a uma visão de produto em forma de elevator pitch.
Crie o "elevator pitch" do Acqua, no seguinte formato:
Para <público alvo>
Que <necessidade principal do público alvo>
O Acqua é um <categoria de mercado do produto>
Que <benefício principal do produto>.
Ao contrário de <concorrência>,
o Acqua <diferencial do produto>.
A resposta é um compilado resumido de todas as informações anteriores. Reparem na ausência de detalhamento da concorrência. Dado que eu não dei nenhum detalhe sobre isso. Para esse exercício, utilizei o ChatGPT gratuito, que não tem acesso à web; na versão paga, ele poderia fazer a pesquisa por mim.
Em seguida, pedi a ele para listar os módulos do produto. Não dei nenhum detalhe ou instrução adicional. A resposta foi extensa, com alguns pontos que eu não colocaria em uma etapa de construção inicial de produto.
Pedi para quebrar cada módulo em épicos.
Entrando em detalhes
Após a lista dos épicos, pedi para criar histórias para todos eles. Nessa etapa, foram necessárias várias iterações, ele respondia as histórias de um ou dois módulos a cada vez.
Para cada épico, liste as user stories, numerando-as no formato 1.1.1, 1.1.2, 1.1.3, 1.1.4, 1.1.5 etc. As histórias de usuário devem ser INVEST
É importante revisar essa parte, principalmente se você não forneceu muito contexto nas etapas anteriores. Optei por não fazer isso, porque queria chegar ao fim rapidamente, mas eu poderia pedir os seguintes ajustes.
Histórias devem ser direcionadas a um perfil de usuário específico e a um “usuário” genérico como está ali.
Não escrever histórias com foco em funcionalidades, como a história 1.1.1, que fala em “um toque no aplicativo”.
Tendo todas as histórias de todos os módulos, pedi para gerar uma tabela de dependências entre as histórias e, em seguida, um plano de releases.
O aplicativo será desenvolvido de forma iterativa e incremental. Considerando todas as dependências listadas, dos módulos 1 a 8, crie um plano de releases. Lembre que o produto deve gerar valor para as pessoas usuárias desde o primeiro release - ou seja, as histórias devem ser priorizadas de acordo com o valor gerado, não na ordem em que estão escritas.
Para cada release, responda no seguinte formato:
Release 1: <título> <objetivo do release> | Número da história | Título da história | Depende de |
Obviamente, você não deve deixar que uma inteligência artificial decida o seu plano de lançamentos. Considere o GPT como seu assistente: Ele faz as sugestões, mas você precisa avaliar criticamente.
Reparem que ele não priorizou as histórias que tratam da ingestão de outros tipos de bebida, já que essa seria uma funcionalidade secundária. Em outros testes que fiz, a priorização não ficou tão boa, pois ele simplesmente seguiu a ordem e precisei de várias iterações.
Desse ponto em diante, foquei em detalhar a primeira história. Comecei pedindo para reescrever a história.
Em seguida, pedi para listar as dúvidas.
Liste as dúvidas que precisam ser esclarecidas antes de iniciar o desenvolvimento dessa história
As IAs de texto que já testei são muito boas em levantar dúvidas desde o início do processo. Você pode pedir ao ChatGPT que se comporte como um stakeholder específico ou como o time de desenvolvimento para levantar as dúvidas que essas pessoas levantariam.
O interessante aqui é que, se você não tiver as respostas, pode pedir sugestões a ele e partir daí.
Outra etapa em que o robô pode ajudar é no levantamento de riscos, ele é muito bom para enxergar riscos que nós deixamos passar. Foi o que fiz em seguida.
Crie uma tabela com os possíveis riscos envolvidos no desenvolvimento dessa história.
A tabela deve ter as seguintes colunas: # | Nome do risco | Tipo | Impacto (baixo, médio, alto) | Probabilidade (baixa, média, alta) | Ação.
A maioria dos riscos que ele levantou para essa história foram riscos simples, porque a história não tem grandes complexidades. Já usei em situações reais e tive resultados melhores.
Depois dos riscos, pedi a lista de interfaces (telas e APIs) que seriam desenvolvidas para essa história. Precisei de algumas iterações, primeiro porque ele estava listando telas de outras histórias, depois para considerar as APIs também. No final, ficamos com duas telas e duas interfaces:
Telas de registro de ingestão de água
Tela de feedback visual
API de registro de ingestão de água
API de feedback
Com essas informações, pedi para criar as tarefas.
Em seguida, pedi para descrever as telas. Em uma situação real, haveria uma pessoa designer para fazer um protótipo, bem como levantar por meio de pesquisas e testes várias das informações que estou perguntando ao GPT. Tendo um protótipo, você poderia listar os campos e pedir para ele detalhar, deixando para você apenas o trabalho de ajustar quaisquer informações incorretas que ele possa gerar.
Descreva a tela de registro de ingestão de água, no seguinte formato:
Campos
| # | Título | Tipo do campo (textbox, checkbox, dropdown etc) | Formato esperado (data, número inteiro etc) | Validações | Observações
Comandos
| # | Tìtulo | Fluxo de ações
Esse era o formato de descrição de telas em uma das empresas que trabalhei. Você pode pedir as informações que desejar.
Na parte dos comandos, ele já descreveu alguns fluxos, mas pedi para detalhar o fluxo principal, fluxos alternativos e fluxos de exceção.
Como sempre, você pode dar instruções específicas sobre como quer que a resposta seja apresentada, ou o que deve ser considerado um fluxo alternativo / fluxo de exceção.
Os outros fluxos gerados foram:
Fluxos alternativos
Campos em branco
Formato incorreto de data ou hora
Quantidade de água inválida
Cancelamento do registros
Registro automático
Registro em lote
Fluxos de exceção
Falha na conexão com o servidor
Dados inconsistentes no banco de dados
Erro inesperado no aplicativo
Com toda essa informação sobre a história, pedi para gerar os critérios de aceitação. Para mim, essa é uma das formas mais fáceis de usar o ChatGPT para aumentar sua produtividade, pois ele consegue gerar uma lista completa rapidamente.
Escreva os critérios de aceitação dessa história no formato
<número do critério>
DADO <condição>
QUANDO <ação ou acontecimento>
E/OU
<ação ou acontecimento adicionais/opcionais>
ENTÃO <comportamento do produto>
Aqui estão alguns dos critérios gerados:
Para terminar, perguntei ao chat se havia algo mais que eu devesse considerar, e ele listou, com detalhes:
Design de Interface de Usuário (UI)
Diagrama de Fluxo de Dados
Casos de Teste
Requisitos de Desempenho
Documentação de Erros e Exceções
Capturas de Tela de Exemplo
Notas de Segurança e Privacidade
Considerações de Acessibilidade
Eu poderia ter pedido ajuda em alguns desses tópicos, mas optei por encerrar a conversa. Acredito que esses exemplos já sejam suficientes para te dar várias ideias. A conversa completa está disponível através deste link.
Considerações importantes
Antes de utilizar o ChatGPT para documentar um produto real, é importante consultar as políticas de segurança da sua empresa. Você provavelmente precisará omitir ou modificar alguns dados. Lembre-se de nunca compartilhar informações pessoais ou sensíveis de outras pessoas!
Avalie também se a documentação gerada é realmente necessária e se será usada, não vale a pena criar algo só porque é possível. As ferramentas existem para nos servir e não o contrário.
E, como eu disse antes, não use o GPT para tomar suas decisões. Sempre leia e avalie as respostas criticamente. Sua inteligência natural ainda é mais confiável que os robôs.