MODELO (M2) Status: Candidate Uso: decidir arquitetura antes de HTML/CSS/JS/BD Chave: multidimensional

Quando usar esta página

Use esta página sempre que você estiver prestes a “virar implementação” (HTML/CSS/JS/banco) ou quando o escopo estiver confuso. Ela existe para responder: “que tipo de sistema eu estou realmente construindo?” e evitar misturar dimensões (finalidade × plataforma × criticidade).

Use em especial quando:
• Você precisa escolher arquitetura e banco (relacional? documento? logs?).
• Algo “funciona”, mas parece errado (reclassificar revela o motivo).
• Você quer explicar o sistema em 1 frase para você amanhã (ou para um visitante).

Depois de classificar: próximos passos

Após escolher a finalidade (TPS/DSS/KMS/Workflow etc.) e completar com plataforma/criticidade, execute estes passos na ordem. É o “trilho curto” que leva da ideia ao projeto.

  1. Escreva a frase canônica do sistema (1 linha). Ela vira o rótulo oficial do projeto.
  2. Preencha a ficha mínima viável (6 dimensões essenciais): Finalidade, Plataforma, Criticidade, Tempo, Dados, Conhecimento.
  3. Derive decisões de arquitetura (3 a 7 decisões objetivas), por exemplo: banco, logging/histórico, estados/workflow, perfis de uso, privacidade. Se uma decisão for importante e recorrente, registre como ADR.
Checklist rápido (antes de codificar)
  • Eu consigo dizer a finalidade principal em 1 frase (TPS/DSS/KMS/Workflow…)?
  • Eu sei a plataforma e a criticidade (isso muda testes, logs e segurança)?
  • Eu preenchi as 6 dimensões essenciais da ficha?
  • Eu derivei pelo menos 3 decisões concretas (banco, histórico, estados…)?

Exemplo do OLA (frase canônica preenchida)

“No contexto do OLA, o sistema é principalmente KMS + DSS em Web, com criticidade média, para entregar aprendizado adaptativo com rastreabilidade.”

Nota: se você perceber que a frase canônica muda com frequência, isso é um sinal de que a classificação ainda está em Lab/Candidate e precisa de mais evidência (incluindo o seu Gate Humano).

Por que classificar o sistema antes de implementar

“Transacional”, “tomada de decisão”, “conhecimento”, “embarcado”, “web”… são classificações em dimensões diferentes. Se você mistura dimensões (finalidade + plataforma + contexto), você pode errar o desenho do banco, o nível de auditoria, a interface e até o método de validação.

Regra prática: “Sistema de Informação” já é uma classificação (por finalidade: tratar informação para suportar uma atividade). Mas ela é incompleta sozinha — você precisa completar com outras dimensões (plataforma, criticidade, tempo real, autonomia, etc.).

1) Primeira dimensão: finalidade (o “para quê” do sistema)

Uma taxonomia simples (suficiente para engenharia do OLA) é:

TPS (Transacional) MIS (Gerencial/Relatórios) DSS/BI (Decisão/Análise) KMS/ES (Conhecimento/Especialista) Workflow/Processo Crítico/Tempo Real (controle)
O que muda na prática em cada tipo (em 30 segundos)
  • TPS (Transacional): consistência, auditoria, rastreabilidade, regras de negócio, integridade de dados.
  • MIS (Relatórios gerenciais): extração/visões consolidadas, periodicidade, indicadores simples.
  • DSS/BI (Decisão): dados históricos, agregações, comparações, “e se…?”, visualizações, experimentos.
  • KMS/ES (Conhecimento): vocabulário controlado, regras/heurísticas, ontologias, explicabilidade.
  • Workflow: estados, filas, SLAs, aprovações, trilhas de execução, logs de processo.
  • Crítico/Tempo real: previsibilidade, latência, tolerância a falhas, segurança operacional.

2) Segunda dimensão: natureza do “objeto” (informação, controle, conhecimento…)

Aqui entra sua pergunta: “SI é uma classificação de sistema (informação) como embarcado é outra (plataforma)”. Exato: isso são dimensões distintas. Um mesmo sistema pode ser: SI + Web + DSS, ou SI + Embarcado + Controle.

3) Ficha multidimensional (o coração do modelo)

Use esta ficha como “contrato de entendimento” antes de codificar.

Dimensão Pergunta Opções típicas Impacto direto na implementação
Finalidade Para quê o sistema existe? TPS / MIS / DSS(BI) / KMS / Workflow / Controle Modelo de dados, regras, auditoria, métricas, explicabilidade
Domínio Que área do mundo ele serve? Educação, saúde, finanças, manufatura, pessoal (OLA) Vocabulário, entidades, privacidade, requisitos legais
Plataforma Onde roda? Web / Mobile / Desktop / Embarcado / TV interativa UI/UX, performance, acessibilidade, deploy
Criticidade Se falhar, o que acontece? Baixa / Média / Alta / Segurança/vida Testes, redundância, backup, observabilidade
Tempo Latência importa? Batch / Near real-time / Real-time Arquitetura, filas, cache, consistência
Dados Volume/variedade? Pequeno / Médio / Grande • Estruturado/semiestr./texto BD relacional vs documento, indexação, ETL/ELT
Conhecimento Há regras, ontologia, explicação? Sem / Regras / Ontologia / Raciocínio/IA Camada semântica, glossário, governança de termos
Usuários Quem usa e como? Visitante / Aprendiz / Autor / Admin • Multi-perfil Permissões, jornadas, personalização
Evolução É inovação ou evolução? Novo / Evolução de legado / Migração Compatibilidade, versionamento, estratégia de transição

4) Relação com “Problema → Problema resolvido”

A ficha não é o “problema resolvido”. Ela é o que você produz antes para garantir que a solução será coerente.

Leitura por estados (do seu raciocínio):

Problema → descreve a dor, contexto e restrições.
Problema resolvido (modelo) → descreve a forma de solução (inclui esta ficha de classificação, arquitetura e critérios).
Solução atendida (instância) → a implementação rodando (HTML/CSS/JS/BD, etc.) + evidências.

5) Exemplo rápido aplicado ao OLA

  • Finalidade: híbrido KMS + DSS (vocabulário/ontologia + recomendação/ajuste), com partes de Workflow (trilhas e gates).
  • Plataforma: Web (com uso em TV/desktop/mobile).
  • Criticidade: baixa a média (mas com cuidado em privacidade e rastreio).
  • Conhecimento: forte (glossário, modelos, relações, explicações).
  • Evolução: inovação (núcleo) + evolução contínua (páginas e padrões).
Checklist (antes de codificar)
  • Eu consigo dizer em 1 frase a finalidade do sistema?
  • Eu preenchi a ficha e consigo apontar os 3 impactos principais na implementação?
  • Eu sei se estou fazendo inovação ou evolução (e por quê)?
  • Eu sei quais partes são TPS/MIS/DSS/KMS/Workflow (mesmo que só “um pouco”)?
  • Eu consigo explicar isso para um visitante sem misturar dimensões (finalidade vs plataforma)?