specifica-br 1.2.2 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +114 -44
- package/dist/boilerplate/commands/executar-task.md +133 -0
- package/dist/boilerplate/commands/gerar-contexto.md +1462 -0
- package/dist/boilerplate/commands/gerar-prd.md +289 -0
- package/dist/boilerplate/commands/gerar-tasks.md +168 -0
- package/dist/boilerplate/commands/gerar-techspec.md +1467 -0
- package/dist/boilerplate/commands/gerar-visao.md +731 -0
- package/dist/boilerplate/commands/realizar-codereview.md +288 -0
- package/dist/boilerplate/opencode-commands/executar-task.md +55 -48
- package/dist/boilerplate/opencode-commands/gerar-contexto.md +1462 -0
- package/dist/boilerplate/opencode-commands/gerar-prd.md +232 -40
- package/dist/boilerplate/opencode-commands/gerar-tasks.md +112 -31
- package/dist/boilerplate/opencode-commands/gerar-techspec.md +1464 -80
- package/dist/boilerplate/opencode-commands/gerar-visao.md +731 -0
- package/dist/boilerplate/opencode-commands/realizar-codereview.md +288 -0
- package/dist/boilerplate/skills/product-manager/SKILL.md +32 -0
- package/dist/boilerplate/skills/techspec-generator/SKILL.md +489 -0
- package/dist/boilerplate/skills/techspec-generator/references/api-contracts.md +421 -0
- package/dist/boilerplate/skills/techspec-generator/references/architecture-patterns.md +316 -0
- package/dist/boilerplate/skills/techspec-generator/references/database-modeling.md +436 -0
- package/dist/boilerplate/skills/techspec-generator/references/observability-testing.md +436 -0
- package/dist/boilerplate/skills/techspec-generator/references/security-hardening.md +238 -0
- package/dist/boilerplate/skills/techspec-generator/references/ux-ui-accessibility.md +511 -0
- package/dist/boilerplate/specs-templates/architecture-template.md +736 -0
- package/dist/boilerplate/specs-templates/codereview-template.md +95 -0
- package/dist/boilerplate/specs-templates/prd-template.md +101 -19
- package/dist/boilerplate/specs-templates/product_vision-template.md +284 -0
- package/dist/boilerplate/specs-templates/task-template.md +64 -18
- package/dist/boilerplate/specs-templates/tasks-template.md +12 -4
- package/dist/boilerplate/specs-templates/techspec-template.md +1227 -89
- package/dist/boilerplate/templates/architecture-template.md +736 -0
- package/dist/boilerplate/templates/codereview-template.md +95 -0
- package/dist/boilerplate/templates/prd-template.md +167 -0
- package/dist/boilerplate/templates/product_vision-template.md +284 -0
- package/dist/boilerplate/templates/task-template.md +169 -0
- package/dist/boilerplate/templates/tasks-template.md +15 -0
- package/dist/boilerplate/templates/techspec-template.md +1306 -0
- package/dist/commands/help.js +33 -11
- package/dist/commands/init.js +39 -43
- package/dist/tools-mapping.json +32 -0
- package/dist/types/init.d.ts +14 -17
- package/dist/utils/file-service.d.ts +5 -3
- package/dist/utils/file-service.js +168 -56
- package/dist/utils/message-formatter.d.ts +2 -1
- package/dist/utils/message-formatter.js +39 -22
- package/package.json +1 -1
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
# Code Review - {{FEATURE_NAME}}
|
|
2
|
+
|
|
3
|
+
## Metadados
|
|
4
|
+
- **Escopo**: {{SCOPE_DESCRIPTION}}
|
|
5
|
+
- **Data**: {{TIMESTAMP}}
|
|
6
|
+
- **Contexto**: {{CONTEXT_DESCRIPTION}}
|
|
7
|
+
- **Especificações**: {{SPECS_REFERENCE}}
|
|
8
|
+
|
|
9
|
+
## Resumo
|
|
10
|
+
| Severidade | Quantidade |
|
|
11
|
+
|:---|---:|
|
|
12
|
+
| CRITICAL | {{COUNT_CRITICAL}} |
|
|
13
|
+
| HIGH | {{COUNT_HIGH}} |
|
|
14
|
+
| MEDIUM | {{COUNT_MEDIUM}} |
|
|
15
|
+
| LOW | {{COUNT_LOW}} |
|
|
16
|
+
| **Total** | **{{COUNT_TOTAL}}** |
|
|
17
|
+
|
|
18
|
+
## Findings Críticos (BLOCKER)
|
|
19
|
+
|
|
20
|
+
{{FINDINGS_CRITICAL_SECTION}}
|
|
21
|
+
|
|
22
|
+
{{IF_NO_CRITICAL_FINDINGS: *Nenhum finding crítico encontrado.* }}
|
|
23
|
+
|
|
24
|
+
## Findings Alta Prioridade
|
|
25
|
+
|
|
26
|
+
{{FINDINGS_HIGH_SECTION}}
|
|
27
|
+
|
|
28
|
+
{{IF_NO_HIGH_FINDINGS: *Nenhum finding de alta prioridade encontrado.* }}
|
|
29
|
+
|
|
30
|
+
## Demais Findings
|
|
31
|
+
|
|
32
|
+
### Média Prioridade
|
|
33
|
+
{{FINDINGS_MEDIUM_SECTION}}
|
|
34
|
+
|
|
35
|
+
{{IF_NO_MEDIUM_FINDINGS: *Nenhum finding de média prioridade encontrado.* }}
|
|
36
|
+
|
|
37
|
+
### Baixa Prioridade (Sugestões)
|
|
38
|
+
{{FINDINGS_LOW_SECTION}}
|
|
39
|
+
|
|
40
|
+
{{IF_NO_LOW_FINDINGS: *Nenhum finding de baixa prioridade encontrado.* }}
|
|
41
|
+
|
|
42
|
+
## Pontos Positivos
|
|
43
|
+
{{POSITIVE_POINTS_SECTION}}
|
|
44
|
+
|
|
45
|
+
{{IF_NO_POSITIVE_POINTS: *Nenhum ponto positivo identificado.* }}
|
|
46
|
+
|
|
47
|
+
## Veredito
|
|
48
|
+
|
|
49
|
+
**Status**: {{VEREDICTO_STATUS}}
|
|
50
|
+
|
|
51
|
+
**Justificativa**:
|
|
52
|
+
{{VEREDICTO_JUSTIFICATIVA}}
|
|
53
|
+
|
|
54
|
+
**Pré-condições para merge**:
|
|
55
|
+
{{PRE_CONDICOES_MERGE}}
|
|
56
|
+
|
|
57
|
+
{{IF_NO_PRE_CONDITIONS: *Nenhuma pré-condição necessária.* }}
|
|
58
|
+
|
|
59
|
+
**Recomendações gerais**:
|
|
60
|
+
{{RECOMENDACOES_GERAIS}}
|
|
61
|
+
|
|
62
|
+
{{IF_NO_RECOMMENDATIONS: *Nenhuma recomendação adicional.* }}
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## Formato de Finding (Referência)
|
|
67
|
+
|
|
68
|
+
Use este formato para cada finding:
|
|
69
|
+
|
|
70
|
+
```markdown
|
|
71
|
+
### [F-XXX] Título curto
|
|
72
|
+
`arquivo.ext:linhas` | **SEVERIDADE** | Dimensão
|
|
73
|
+
|
|
74
|
+
**Problema**: 1-2 frases sobre impacto e consequências
|
|
75
|
+
|
|
76
|
+
**Código atual**:
|
|
77
|
+
```linguagem
|
|
78
|
+
// 3-6 linhas do código problemático
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**Correção recomendada**:
|
|
82
|
+
```linguagem
|
|
83
|
+
// Código corrigido
|
|
84
|
+
```
|
|
85
|
+
*Por que*: Benefício principal em 1 frase
|
|
86
|
+
|
|
87
|
+
**Alternativas**:
|
|
88
|
+
- Opção 2: breve descrição - quando usar
|
|
89
|
+
- Opção 3: breve descrição - quando usar
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
**Template Version:** 0.1.0
|
|
95
|
+
**Generated by:** realizar-codereview.md v0.1.0
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
# PRODUCT REQUIREMENTS DOCUMENT (PRD)
|
|
2
|
+
|
|
3
|
+
| Metadata | Details |
|
|
4
|
+
| :--- | :--- |
|
|
5
|
+
| **Status** | Draft |
|
|
6
|
+
| **Data** | {{DATA_ATUAL}} |
|
|
7
|
+
| **Feature** | [nome-da-funcionalidade] |
|
|
8
|
+
<!-- Status: DRAFT -> IN_PROGRESS -> IN_REVIEW -> APPROVED -->
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## 1. Contexto e Problema
|
|
13
|
+
<!--
|
|
14
|
+
INSTRUÇÕES DE PREENCHIMENTO:
|
|
15
|
+
- Problema: Descreva uma situação observável e mensurável
|
|
16
|
+
- Causa Raiz: Hipótese do porquê o problema ocorre
|
|
17
|
+
- Objetivo: Mudança concreta e observável após implementação
|
|
18
|
+
-->
|
|
19
|
+
|
|
20
|
+
**O Problema (Estado Atual):**
|
|
21
|
+
* [Situação observável e mensurável]
|
|
22
|
+
|
|
23
|
+
**Causa Raiz (Hipótese):**
|
|
24
|
+
* [Por que o problema ocorre]
|
|
25
|
+
|
|
26
|
+
**O Objetivo (Estado Futuro):**
|
|
27
|
+
* [Mudança observável após a feature]
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## 2. Escopo
|
|
32
|
+
|
|
33
|
+
### 2.1. O que Faremos (In-Scope)
|
|
34
|
+
* [ ] Item de escopo 1
|
|
35
|
+
|
|
36
|
+
### 2.2. O que NÃO Faremos (Out-of-Scope)
|
|
37
|
+
* [ ] Funcionalidade futura X
|
|
38
|
+
* [ ] Definições de arquitetura técnica (ex: Schema de Banco, Endpoints de API)
|
|
39
|
+
|
|
40
|
+
** Regra de Escopo**: Qualquer item não listado explicitamente em "O que Faremos" deve ser considerado fora do escopo.
|
|
41
|
+
|
|
42
|
+
### 2.3. Dependências de Sistema
|
|
43
|
+
| ID | Dependência | Tipo (Interna/Externa) | Crítico? | Observações |
|
|
44
|
+
|:---|:---|:---|:---|:---|
|
|
45
|
+
| DEP-001 | [Ex: API Pagamento] | Externa | Sim | [SLA: 99.9%, Timeout: 5s] |
|
|
46
|
+
| DEP-002 | [Ex: Módulo Usuários] | Interna | Não | [Versão >= 2.0] |
|
|
47
|
+
<!--
|
|
48
|
+
Regra: Liste apenas dependências que impactem diretamente esta feature.
|
|
49
|
+
Se uma dependência for crítica, documente o plano de contingência.
|
|
50
|
+
-->
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## 3. Personas e User Stories
|
|
55
|
+
<!--
|
|
56
|
+
INSTRUÇÕES DE PREENCHIMENTO:
|
|
57
|
+
- Persona: Perfil de usuário que receberá o benefício
|
|
58
|
+
- Formato: "Como [persona], quero [ação], para [benefício]"
|
|
59
|
+
- Cada User Story DEVE resultar em >=1 Requisito Funcional
|
|
60
|
+
-->
|
|
61
|
+
|
|
62
|
+
| [UserStoryID] | **[Persona]** | **[Ação]** (Quero...) | **[Benefício]** (Para...) |
|
|
63
|
+
|:---|:---|:---|:---|
|
|
64
|
+
| US-001 | Contador | Lançar débito automatizado | Reduzir erros manuais em 80% |
|
|
65
|
+
| US-002 | Gerente | Aprovar débitos em lote | Agilizar fechamento mensal |
|
|
66
|
+
|
|
67
|
+
**Regra**: Cada User Story deve resultar em pelo menos um Requisito Funcional.
|
|
68
|
+
|
|
69
|
+
---
|
|
70
|
+
|
|
71
|
+
## 4. Requisitos Funcionais e Regras de Negócio
|
|
72
|
+
<!--
|
|
73
|
+
INSTRUÇÕES DE PREENCHIMENTO:
|
|
74
|
+
- Comportamento: Descrição detalhada e observável do comportamento esperado
|
|
75
|
+
- Critério: Regra de negócio testável, mensurável e binária (passa/falha)
|
|
76
|
+
- Fonte: User Story de origem (US-XXX)
|
|
77
|
+
- Cenário de Teste: Formato Gherkin (Dado/Quando/Então)
|
|
78
|
+
-->
|
|
79
|
+
|
|
80
|
+
### 4.1. Regras Principais (Happy Path)
|
|
81
|
+
* **[RF-001] Nome do Requisito:**
|
|
82
|
+
* **Comportamento:** [Descrição detalhada do comportamento esperado]
|
|
83
|
+
* **Critério de Sucesso:** [Regra de negócio testável e mensurável]
|
|
84
|
+
* **Fonte:** [US-001, US-002]
|
|
85
|
+
* **Cenário de Teste (Gherkin):**
|
|
86
|
+
- DADO que [precondição]
|
|
87
|
+
- QUANDO [ação do usuário]
|
|
88
|
+
- ENTÃO [resultado observável]
|
|
89
|
+
|
|
90
|
+
### 4.2. Validações e Restrições
|
|
91
|
+
* **[RF-003] Validação de Input:**
|
|
92
|
+
* O sistema deve rejeitar entradas que... [Descreva a regra claramente]
|
|
93
|
+
* **Cenário de Teste:**
|
|
94
|
+
- DADO que [input inválido]
|
|
95
|
+
- QUANDO [usuário submete]
|
|
96
|
+
- ENTÃO [erro específico retornado]
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
## 5. Fluxos de Exceção e Tratamento de Erros (Unhappy Path)
|
|
101
|
+
<!--
|
|
102
|
+
INSTRUÇÕES DE PREENCHIMENTO:
|
|
103
|
+
- Cenário de Erro: Situação específica que pode falhar
|
|
104
|
+
- Severidade: Crítica/Bloqueante | Alta | Média | Baixa
|
|
105
|
+
- Comportamento: Como o sistema deve reagir (não código, comportamento)
|
|
106
|
+
- Mensagem: O que o usuário vê (copywriting exato)
|
|
107
|
+
-->
|
|
108
|
+
|
|
109
|
+
| Cenário de Erro | Severidade | Comportamento do Sistema | Mensagem |
|
|
110
|
+
| :--- | :--- | :--- | :--- |
|
|
111
|
+
| **[Ex: Input Inválido]** | [Bloquear envio] | [Bloquear submissão e destacar campo] | ["O campo X é obrigatório"] |
|
|
112
|
+
| **[Ex: API Falha]** | [Alta] | [Repetir 3x com backoff, então falhar gracefully] | ["Serviço temporariamente indisponível. Tente novamente em 5min."] |
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## 6. Requisitos Não-Funcionais (Qualidade)
|
|
117
|
+
<!--
|
|
118
|
+
INSTRUÇÕES DE PREENCHIMENTO:
|
|
119
|
+
- Liste APENAS requisitos não-funcionais que sejam críticos e testáveis
|
|
120
|
+
- Use métricas específicas (ex: < 2s, > 99.9%, 1000 req/s)
|
|
121
|
+
- Se não for crítico, não liste
|
|
122
|
+
-->
|
|
123
|
+
|
|
124
|
+
* **[RNF-001] Performance:** [Ex: O carregamento não deve exceder 2 segundos para 95% das requisições]
|
|
125
|
+
* **[RNF-002] Disponibilidade:** [Ex: Sistema deve estar disponível 99.5% do tempo (SLA)]
|
|
126
|
+
* **[RNF-003] Segurança:** [Ex: Dados sensíveis devem ser criptografados em repouso]
|
|
127
|
+
|
|
128
|
+
**Regra:** Apenas Requisitos Não-Funcionais explicitamente listados aqui devem ser considerados.
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## 7. Itens em Aberto e Dúvidas (TBD)
|
|
133
|
+
<!--
|
|
134
|
+
INSTRUÇÕES DE PREENCHIMENTO:
|
|
135
|
+
- Use esta seção para decisões que ainda não foram tomadas
|
|
136
|
+
- Classifique o impacto realisticamente (Alto pode bloquear desenvolvimento)
|
|
137
|
+
- A feature não pode ser considerada DONE com TBDs de Alto impacto
|
|
138
|
+
-->
|
|
139
|
+
|
|
140
|
+
| ID | Questão / Dúvida | Quem deve responder? | Impacto | Ação Decisória |
|
|
141
|
+
| :--- | :--- | :--- | :--- | :--- |
|
|
142
|
+
| **[TBD-001]** | [Ex: Qual o texto final da mensagem de erro?] | [Marketing/Legal] | [Baixo - Copywriting] | [Definir até Q2] |
|
|
143
|
+
| **[TBD-002]** | [Ex: Qual gateway de pagamento usar?] | [Arquitetura/Finanças] | [Alto - Bloqueia desenvolvimento] | [Decisão necessária antes do início] |
|
|
144
|
+
|
|
145
|
+
---
|
|
146
|
+
|
|
147
|
+
## 8. Critérios de Aceite (Definition of Done)
|
|
148
|
+
<!--
|
|
149
|
+
INSTRUÇÕES DE PREENCHIMENTO:
|
|
150
|
+
- Esta seção define quando a feature está COMPLETA
|
|
151
|
+
- Cada critério deve ser binário (passa ou falha)
|
|
152
|
+
- Seja conservador: melhor ser mais restritivo aqui do que depois no development
|
|
153
|
+
-->
|
|
154
|
+
|
|
155
|
+
Para considerar esta feature concluída, o sistema deve:
|
|
156
|
+
1. [ ] Cumprir todos os Requisitos Funcionais listados (seção 4).
|
|
157
|
+
2. [ ] Tratar graciosamente todos os Fluxos de Exceção listados (seção 5).
|
|
158
|
+
3. [ ] Não haver Itens em Aberto (TBD) com impacto "Alto" ou "Bloqueante" (seção 7).
|
|
159
|
+
4. [ ] Todos os Requisitos Não-Funcionais (seção 6) foram atendidos e validados.
|
|
160
|
+
5. [ ] Testes automatizados cobrem >= 80% dos cenários Happy Path e Unhappy Path.
|
|
161
|
+
6. [ ] Documentação de usuário (se aplicável) está atualizada.
|
|
162
|
+
|
|
163
|
+
**Regra de Ouro:** A feature só pode ser considerada DONE se todos os RF-XXX e RNF-XXX associados estiverem marcados como atendidos e validados.
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
**Template Version:** 0.0.5
|
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
# PRODUCT VISION
|
|
2
|
+
|
|
3
|
+
| Metadata | Details |
|
|
4
|
+
|:---|:---|
|
|
5
|
+
| **Status** | DRAFT |
|
|
6
|
+
| **Data** | {{DATA_ATUAL}} |
|
|
7
|
+
| **Projeto** | {{NOME_PROJETO}} |
|
|
8
|
+
<!-- Status: DRAFT to IN_PROGRESS to APPROVED -->
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## 1. Declaração do Problema
|
|
13
|
+
|
|
14
|
+
<!-- INSTRUÇÕES DE PREENCHIMENTO:
|
|
15
|
+
OBJETIVO: Definir claramente o problema de negócio que o software resolve
|
|
16
|
+
REGRA CRÍTICA: ZERO menções a tecnologia, bancos de dados, APIs ou implementação
|
|
17
|
+
FORMATO: Situação observável e mensurável
|
|
18
|
+
-->
|
|
19
|
+
|
|
20
|
+
**Problema Central:**
|
|
21
|
+
* [Descreva o problema de negócio em termos observáveis]
|
|
22
|
+
|
|
23
|
+
**Causa Raiz:**
|
|
24
|
+
* [Por que esse problema ocorre atualmente?]
|
|
25
|
+
|
|
26
|
+
**Impacto no Negócio:**
|
|
27
|
+
* [Quais as consequências de não resolver esse problema?]
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## 2. Personas e Público-Alvo
|
|
32
|
+
|
|
33
|
+
<!-- INSTRUÇÕES DE PREENCHIMENTO:
|
|
34
|
+
OBJETIVO: Definir quem se beneficiará com o software
|
|
35
|
+
REGRA: Descreva perfis de usuários em termos de comportamentos e necessidades, não habilidades técnicas
|
|
36
|
+
-->
|
|
37
|
+
|
|
38
|
+
| Persona | Descrição | Principais Necessidades | Dores Atuais |
|
|
39
|
+
|:---|:---|:---|:---|
|
|
40
|
+
| **[Nome da Persona]** | [Perfil demográfico e comportamental] | [O que essa pessoa precisa accomplish?] | [Quais obstáculos enfrenta hoje?] |
|
|
41
|
+
| **[Nome da Persona]** | [Perfil demográfico e comportamental] | [O que essa pessoa precisa accomplish?] | [Quais obstáculos enfrenta hoje?] |
|
|
42
|
+
|
|
43
|
+
**Segmentação de Usuários:**
|
|
44
|
+
* [ ] **Usuário Final:** [Descreva características]
|
|
45
|
+
* [ ] **Administrador:** [Descreva características]
|
|
46
|
+
* [ ] **Gerente/Analista:** [Descreva características]
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 3. Proposta de Valor
|
|
51
|
+
|
|
52
|
+
<!-- INSTRUÇÕES DE PREENCHIMENTO:
|
|
53
|
+
OBJETIVO: Definir o benefício único que o software entrega
|
|
54
|
+
REGRA: Foco em resultados de negócio, não funcionalidades
|
|
55
|
+
-->
|
|
56
|
+
|
|
57
|
+
**Promessa Central:**
|
|
58
|
+
* [Em uma frase: O que este software faz que ninguém faz?]
|
|
59
|
+
|
|
60
|
+
**Benefícios Chave:**
|
|
61
|
+
* [ ] **Benefício 1:** [Descrição do valor entregue]
|
|
62
|
+
* [ ] **Benefício 2:** [Descrição do valor entregue]
|
|
63
|
+
* [ ] **Benefício 3:** [Descrição do valor entregue]
|
|
64
|
+
|
|
65
|
+
**Diferenciais Competitivos:**
|
|
66
|
+
* [O que torna esta solução única vs alternativas atuais?]
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## 4. Métricas de Sucesso
|
|
71
|
+
|
|
72
|
+
<!-- INSTRUÇÕES DE PREENCHIMENTO:
|
|
73
|
+
OBJETIVO: Definir como medir se o software está cumprindo seu propósito
|
|
74
|
+
REGRA: Métricas devem ser mensuráveis e rastreáveis
|
|
75
|
+
-->
|
|
76
|
+
|
|
77
|
+
### 4.1. Métricas de Negócio (KPIs)
|
|
78
|
+
|
|
79
|
+
| Métrica | Como Medir | Meta Inicial | Meta Futura |
|
|
80
|
+
|:---|:---|:---|:---|
|
|
81
|
+
| **[Ex: Retenção]** | [Ex: % usuários ativos após 30 dias] | [Ex: 40%] | [Ex: 60%] |
|
|
82
|
+
| **[Ex: Conversão]** | [Ex: % visitantes que viram clientes] | [Ex: 5%] | [Ex: 10%] |
|
|
83
|
+
|
|
84
|
+
### 4.2. Métricas de Valor para Usuário
|
|
85
|
+
|
|
86
|
+
| Métrica | Como Medir | Meta |
|
|
87
|
+
|:---|:---|:---|
|
|
88
|
+
| **[Ex: Tempo de tarefa]** | [Ex: Tempo médio para completar fluxo principal] | [Ex: < 5 minutos] |
|
|
89
|
+
| **[Ex: Satisfação]** | [Ex: NPS ou avaliação média] | [Ex: NPS > 40] |
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## 5. Fronteiras do Produto (Scope)
|
|
94
|
+
|
|
95
|
+
<!-- INSTRUÇÕES DE PREENCHIMENTO:
|
|
96
|
+
OBJETIVO: Definir claramente o que o produto É e NÃO É
|
|
97
|
+
REGRA CRÍTICA: NÃO mencione tecnologias específicas
|
|
98
|
+
-->
|
|
99
|
+
|
|
100
|
+
### 5.1. Escopo Includente (IN-SCOPE)
|
|
101
|
+
|
|
102
|
+
**O que este produto FAZ:**
|
|
103
|
+
* [ ] **Funcionalidade Principal 1:** [Descrição de negócio]
|
|
104
|
+
* [ ] **Funcionalidade Principal 2:** [Descrição de negócio]
|
|
105
|
+
* [ ] **Funcionalidade Principal 3:** [Descrição de negócio]
|
|
106
|
+
|
|
107
|
+
**Usuários Suportados:**
|
|
108
|
+
* [ ] [Tipo de usuário 1]
|
|
109
|
+
* [ ] [Tipo de usuário 2]
|
|
110
|
+
|
|
111
|
+
### 5.2. Escopo Excludente (OUT-OF-SCOPE)
|
|
112
|
+
|
|
113
|
+
**O que este produto NÃO faz (explicitamente):**
|
|
114
|
+
* [ ] **Funcionalidade Futura A:** [Descrição] - Motivo: [Por que não agora?]
|
|
115
|
+
* [ ] **Funcionalidade Futura B:** [Descrição] - Motivo: [Por que não agora?]
|
|
116
|
+
* [ ] **Funcionalidade Excluída C:** [Descrição] - Motivo: [Fora do domínio]
|
|
117
|
+
|
|
118
|
+
**Regra de Escopo:** Qualquer funcionalidade não listada em "IN-SCOPE" deve ser considerada OUT-OF-SCOPE.
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## 6. Jornada do Usuário
|
|
123
|
+
|
|
124
|
+
<!-- INSTRUÇÕES DE PREENCHIMENTO:
|
|
125
|
+
OBJETIVO: Descrever a experiência do usuário do início ao fim
|
|
126
|
+
REGRA: Foco em comportamentos e resultados, não em telas ou botões
|
|
127
|
+
-->
|
|
128
|
+
|
|
129
|
+
### 6.1. Primeiro Contato
|
|
130
|
+
|
|
131
|
+
**Como usuários descobrem o produto:**
|
|
132
|
+
* [Canal de aquisição]
|
|
133
|
+
|
|
134
|
+
**Momento da primeira necessidade:**
|
|
135
|
+
* [Quando surge o problema que o produto resolve?]
|
|
136
|
+
|
|
137
|
+
### 6.2. Fluxo Principal (Happy Path)
|
|
138
|
+
|
|
139
|
+
**Etapas da jornada:**
|
|
140
|
+
1. **[Etapa 1]:** [O que usuário faz/pensa]
|
|
141
|
+
- Resultado esperado: [O que acontece]
|
|
142
|
+
2. **[Etapa 2]:** [O que usuário faz/pensa]
|
|
143
|
+
- Resultado esperado: [O que acontece]
|
|
144
|
+
3. **[Etapa 3]:** [O que usuário faz/pense]
|
|
145
|
+
- Resultado esperado: [O que acontece]
|
|
146
|
+
|
|
147
|
+
**Momento de Valor ("Aha!"):**
|
|
148
|
+
* [Quando usuário percebe o valor do produto?]
|
|
149
|
+
|
|
150
|
+
### 6.3. Retorno e Uso Recorrente
|
|
151
|
+
|
|
152
|
+
**O que traz usuários de volta:**
|
|
153
|
+
* [Motivo para uso contínuo]
|
|
154
|
+
|
|
155
|
+
**Padrões de uso esperados:**
|
|
156
|
+
* [Com que frequência usuário deve usar?]
|
|
157
|
+
* [Quais gatilhos disparam a necessidade?]
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## 7. Riscos e Suposições
|
|
162
|
+
|
|
163
|
+
<!-- INSTRUÇÕES DE PREENCHIMENTO:
|
|
164
|
+
OBJETIVO: Identificar incertezas que podem impactar o sucesso do produto
|
|
165
|
+
-->
|
|
166
|
+
|
|
167
|
+
### 7.1. Suposições Chave
|
|
168
|
+
|
|
169
|
+
| Suposição | Plano de Validação | Risco se Falso |
|
|
170
|
+
|:---|:---|:---|
|
|
171
|
+
| **[Ex: Usuários têm smartphone]** | [Ex: Pesquisa de mercado] | [Ex: Produto inutilizável] |
|
|
172
|
+
| **[Ex: Mercado paga pelo benefício]** | [Ex: Testes A/B com pagamento] | [Ex: Modelo de negócio inválido] |
|
|
173
|
+
|
|
174
|
+
### 7.2. Riscos de Negócio
|
|
175
|
+
|
|
176
|
+
| Risco | Probabilidade | Impacto | Plano de Mitigação |
|
|
177
|
+
|:---|:---:|:---:|:---|
|
|
178
|
+
| **[Risco 1]** | [Alta/Média/Baixa] | [Alto/Médio/Baixo] | [Como reduzir?] |
|
|
179
|
+
| **[Risco 2]** | [Alta/Média/Baixa] | [Alto/Médio/Baixo] | [Como reduzir?] |
|
|
180
|
+
|
|
181
|
+
---
|
|
182
|
+
|
|
183
|
+
## 8. Visão de Futuro
|
|
184
|
+
|
|
185
|
+
<!-- INSTRUÇÕES DE PREENCHIMENTO:
|
|
186
|
+
OBJETIVO: Definir direção de longo prazo (2-3 anos)
|
|
187
|
+
REGRA: Manter em nível de negócio, não implementação
|
|
188
|
+
-->
|
|
189
|
+
|
|
190
|
+
**Evolução Planejada:**
|
|
191
|
+
* **Curto Prazo (6 meses):** [Foco em validar proposta de valor]
|
|
192
|
+
* **Médio Prazo (1 ano):** [Expansão para novos segmentos/funcionalidades]
|
|
193
|
+
* **Longo Prazo (2-3 anos):** [Visão de produto maduro]
|
|
194
|
+
|
|
195
|
+
**Sinais de Sucesso para Próxima Fase:**
|
|
196
|
+
* [ ] [Sinal 1 que indica pronto para evoluir]
|
|
197
|
+
* [ ] [Sinal 2 que indica pronto para evoluir]
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## 9. Stakeholders
|
|
202
|
+
|
|
203
|
+
<!-- INSTRUÇÕES DE PREENCHIMENTO:
|
|
204
|
+
OBJETIVO: Mapear quem influencia e é impactado pelo produto
|
|
205
|
+
-->
|
|
206
|
+
|
|
207
|
+
| Stakeholder | Interesse | Poder de Influência | Estratégia de Engajamento |
|
|
208
|
+
|:---|:---|:---:|:---|
|
|
209
|
+
| **[Papel 1]** | [O que quer do produto?] | [Alto/Médio/Baixo] | [Como manter alinhado?] |
|
|
210
|
+
| **[Papel 2]** | [O que quer do produto?] | [Alto/Médio/Baixo] | [Como manter alinhado?] |
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
## 10. Inferências do Código Legado
|
|
215
|
+
|
|
216
|
+
<!-- INSTRUÇÕES DE PREENCHIMENTO:
|
|
217
|
+
OBJETIVO: Documentar como a visão de negócio foi inferida do código existente
|
|
218
|
+
REGRA: Mapear evidências técnicas para inferências de negócio com níveis de confiança
|
|
219
|
+
-->
|
|
220
|
+
|
|
221
|
+
### 10.1. Mapeamento Técnico -> Negócio
|
|
222
|
+
|
|
223
|
+
| Inferência de Negócio | Fonte Técnica | Confiança | Justificativa |
|
|
224
|
+
|:---|:---|:---:|:---|
|
|
225
|
+
| **[Ex: Multi-tenant SaaS]** | [JWT com tenant_id em todos os tokens] | [85%] | [Autenticação por tenant detectada] |
|
|
226
|
+
| **[Ex: Pagamentos assíncronos]** | [Stripe webhooks, background jobs] | [95%] | [Webhooks configurados, filas detectadas] |
|
|
227
|
+
| **[Ex: Sistema em escala]** | [Rate limiting (Redis), load balancer] | [78%] | [Infraestrutura elástica configurada] |
|
|
228
|
+
| **[Ex: E-commerce B2C]** | [Catalog de produtos, checkout flow] | [90%] | [Fluxo completo de vendas detectado] |
|
|
229
|
+
| **[Ex: Autenticação corporativa]** | [OAuth2 + SAML configuration] | [82%] | [SSO com providers múltiplos] |
|
|
230
|
+
|
|
231
|
+
### 10.2. Entidades Inferidas
|
|
232
|
+
|
|
233
|
+
| Entidade de Negócio | Fonte Técnica | Confiança | Observações |
|
|
234
|
+
|:---|:---|:---:|:---|
|
|
235
|
+
| **[Cliente]** | [User aggregate, UsersController] | [95%] | [Entidade principal do domínio] |
|
|
236
|
+
| **[Pedido]** | [Order aggregate, OrderItems] | [92%] | [Aggregate com 1-N relation] |
|
|
237
|
+
| **[Pagamento]** | [PaymentService, Stripe integration] | [70%] | [Contexto externo, wrapper] |
|
|
238
|
+
|
|
239
|
+
### 10.3. Casos de Uso Inferidos
|
|
240
|
+
|
|
241
|
+
| Caso de Uso | Fonte Técnica | Confiança | Observações |
|
|
242
|
+
|:---|:---|:---:|:---|
|
|
243
|
+
| **[Cadastrar usuário]** | [UsersController.Create] | [98%] | [Endpoint com validação completa] |
|
|
244
|
+
| **[Criar pedido]** | [OrdersController.PlaceOrder] | [95%] | [Fluxo com cálculo de total] |
|
|
245
|
+
| **[Processar pagamento]** | [PaymentService.Process, Stripe] | [88%] | [Assíncrono, com webhooks] |
|
|
246
|
+
| **[Notificar usuário]** | [SendGrid templates, events] | [85%] | [Emails transacionais] |
|
|
247
|
+
|
|
248
|
+
### 10.4. Limitações das Inferências
|
|
249
|
+
|
|
250
|
+
**O que NÃO foi possível inferir com alta confiança:**
|
|
251
|
+
- [ ] [Ex: Motivação dos usuários para usar o sistema]
|
|
252
|
+
- [ ] [Ex: Diferenciais competitivos vs alternativas]
|
|
253
|
+
- [ ] [Ex: Estratégia de monetização/preços]
|
|
254
|
+
- [ ] [Ex: Canais de aquisição de clientes]
|
|
255
|
+
|
|
256
|
+
**Razões:**
|
|
257
|
+
- Código foca em implementação, não em estratégia
|
|
258
|
+
- Ausência de documentação de produto
|
|
259
|
+
- Métricas de negócio não monitoradas
|
|
260
|
+
|
|
261
|
+
**Recomendação:**
|
|
262
|
+
Validar inferências com stakeholders de negócio para confirmar ou ajustar a visão de produto.
|
|
263
|
+
|
|
264
|
+
---
|
|
265
|
+
|
|
266
|
+
**Notas de Decisão:**
|
|
267
|
+
<!--
|
|
268
|
+
Documente aqui decisões importantes sobre o produto e o porquê foram tomadas.
|
|
269
|
+
Exemplo: "Decidimos focar em usuário X porque representam 80% do mercado"
|
|
270
|
+
-->
|
|
271
|
+
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
**Validação de Qualidade (Zero-Code Check):**
|
|
275
|
+
- [ ] Zero menções a frameworks, bibliotecas ou linguagens de programação
|
|
276
|
+
- [ ] Zero menções a bancos de dados, APIs ou endpoints
|
|
277
|
+
- [ ] Zero menções a infraestrutura (cloud, deploy, CI/CD)
|
|
278
|
+
- [ ] Todo conteúdo focado em problema, usuários e valor de negócio
|
|
279
|
+
- [ ] Métricas são mensuráveis e rastreáveis
|
|
280
|
+
|
|
281
|
+
---
|
|
282
|
+
|
|
283
|
+
**Template Version:** 0.2.0
|
|
284
|
+
**Command:** `/gerar-visao` - Fase de Produto | `/gerar-contexto` - Brownfield Inference
|