Pular para o conteúdo

Casos de uso

ID Caso de uso Ator principal Plano mínimo Prior.
UC-01 Escolher modo de criação (clássico ou 3D) Prescritor Grátis M
UC-02 Preencher briefing do paciente Prescritor Grátis M
UC-03 Gerar proposta de parâmetros com IA Prescritor (+ Agente IA) Grátis (só visualizar) M
UC-04 Visualizar e inspecionar o modelo 3D Prescritor Grátis M
UC-05 Ajustar parâmetros da palmilha Prescritor Grátis (básicos) M
UC-06 Editar pé esquerdo/direito e espelhar Prescritor Grátis M
UC-07 Posicionar peças corretivas em 3D Prescritor Profissional S
UC-08 Definir zonas de densidade e dureza Prescritor Profissional S
UC-09 Salvar revisão (e comprar +5 revisões) Prescritor Essencial M
UC-10 Comparar revisões Prescritor Profissional C
UC-11 Comprar pacote de créditos Prescritor / Gestor (+ InfinitePay) — M
UC-12 Consultar saldo, lotes e extrato Prescritor / Gestor — M
UC-13 Exportar STL/3MF Prescritor (+ Serviço de geometria) Profissional S
UC-14 Enviar projeto 3D como pedido à fábrica Prescritor Essencial M
UC-15 Gerenciar membros e presets da clínica Gestor da clínica Clínica S
UC-16 Receber malha e ficha técnica do pedido 3D Equipe da fábrica (+ Serviço de geometria) — M
UC-17 Auditar propostas da IA × decisões Equipe da fábrica (admin) — M
UC-18 Gerir planos e conceder/estornar créditos Equipe da fábrica (admin) — M
UC-19 Expirar lotes e avisar vencimento Relógio — M

Mermaid não tem notação UML de casos de uso nativa; a convenção abaixo usa atores à esquerda/direita, casos de uso em elipse dentro da fronteira do sistema e setas tracejadas para «include» e «extend».

flowchart LR
    pres(["👤 Prescritor"])
    gest(["👤 Gestor da clínica"])
    fab(["👤 Equipe da fábrica"])
    rel(["⏱ Relógio"])

    subgraph sys ["Editor 3D de palmilhas — Moldapé"]
      direction TB
      uc01(("UC-01 Escolher modo"))
      uc02(("UC-02 Preencher briefing"))
      uc03(("UC-03 Gerar proposta IA"))
      uc04(("UC-04 Visualizar 3D"))
      uc05(("UC-05 Ajustar parâmetros"))
      uc06(("UC-06 Editar E/D e espelhar"))
      uc07(("UC-07 Peças corretivas 3D"))
      uc08(("UC-08 Zonas de densidade"))
      uc09(("UC-09 Salvar revisão"))
      uc10(("UC-10 Comparar revisões"))
      uc11(("UC-11 Comprar créditos"))
      uc12(("UC-12 Saldo e extrato"))
      uc13(("UC-13 Exportar STL/3MF"))
      uc14(("UC-14 Enviar como pedido"))
      uc15(("UC-15 Gerir clínica"))
      uc16(("UC-16 Receber malha e ficha"))
      uc17(("UC-17 Auditar IA"))
      uc18(("UC-18 Gerir planos e créditos"))
      uc19(("UC-19 Expirar lotes"))
      ucDeb(("Debitar crédito"))
      ucVal(("Validar regras"))
    end

    ia[["🤖 Agente IA"]]
    geo[["⚙️ Serviço de geometria"]]
    pay[["💳 InfinitePay"]]

    pres --- uc01 & uc02 & uc04 & uc05 & uc06 & uc07 & uc08 & uc09 & uc10 & uc11 & uc12 & uc13 & uc14
    gest --- uc11 & uc12 & uc15
    fab --- uc16 & uc17 & uc18
    rel --- uc19

    uc02 -. "«include»" .-> uc03
    uc03 -. "«include»" .-> ucVal
    uc05 -. "«include»" .-> ucVal
    uc07 -. "«extend»" .-> uc05
    uc08 -. "«extend»" .-> uc05
    uc09 -. "«include»" .-> ucDeb
    uc13 -. "«include»" .-> ucDeb
    uc14 -. "«include»" .-> uc16

    uc03 --- ia
    uc13 --- geo
    uc16 --- geo
    uc11 --- pay

Gestor da clínica generaliza Prescritor: herda todos os casos do prescritor e acrescenta UC-15.

Campo Conteúdo
Ator principal Prescritor
Atores de apoio Agente IA, validador de regras
Pré-condições Usuário autenticado; briefing válido (RF-3D-10).
Garantia de sucesso Proposta salva com justificativas, ajustes do validador e versão do contrato; preview exibido.
Garantia mínima O usuário nunca fica sem modelo: em falha, recebe parâmetros-padrão.

Fluxo principal

  1. O prescritor conclui o briefing e aciona Gerar proposta.
  2. O sistema remove dados identificáveis e envia o briefing ao agente IA com o schema do contrato de geometria.
  3. O agente retorna parâmetros e justificativa por parâmetro.
  4. O validador aplica faixas fabricáveis e registra cada ajuste.
  5. O sistema exibe o modelo 3D, as justificativas e os ajustes do validador destacados.
  6. O prescritor confirma ciência de que a proposta é sugestão (primeira vez).

Fluxos alternativos

  • 3a. Tempo esgotado ou erro → sistema aplica parâmetros-padrão por numeração e informa (RF-3D-14).
  • 3b. Resposta fora do schema → uma nova tentativa automática; persistindo, 3a.
  • 4a. Valor fora da faixa → ajustado ao limite e sinalizado em amarelo com o motivo.
  • 6a. Prescritor discorda → ajusta manualmente (UC-05) ou edita o briefing e gera nova proposta (consome revisão).
Campo Conteúdo
Ator principal Prescritor (Profissional ou Clínica)
Atores de apoio Serviço de geometria
Pré-condições Revisão salva; saldo ≥ 1 crédito; plano com direito de exportação.
Garantia de sucesso Arquivo gerado, verificado (estanque, em mm) e disponível por link assinado; 1 crédito debitado.
Garantia mínima Se a geração falhar, nenhum crédito fica debitado.

Fluxo principal

  1. O prescritor escolhe a revisão e o formato (STL por pé ou 3MF com zonas).
  2. O sistema confirma o custo (1 crédito) e o saldo restante.
  3. O backend reserva o crédito com chave de idempotência e cria um job de exportação.
  4. O serviço de geometria gera a malha, verifica a integridade e grava o arquivo.
  5. O backend confirma o débito e notifica o usuário.
  6. O prescritor baixa o arquivo.

Fluxos alternativos

  • 4a. Falha na geração → reserva liberada (estorno), erro registrado, usuário avisado.
  • 6a. Novo download da mesma revisão e formato → grátis, novo link assinado.

UC-14 · Enviar projeto 3D como pedido à fábrica

Seção intitulada “UC-14 · Enviar projeto 3D como pedido à fábrica”
  1. O prescritor escolhe a revisão aprovada e o produto/cobertura (catálogo atual).
  2. O sistema cria o item no carrinho a partir do rascunho EDITOR_3D (sem débito de crédito).
  3. Checkout InfinitePay e ciclo de pedido existentes.
  4. Ao confirmar o pagamento, o backend dispara a geração da malha e da ficha técnica para a fábrica (UC-16).
Desenvolvido e documentado por
Nós Tecnologia · Desenvolvimento Criativo