08 — Regras semânticas
← Índice · Prefixo de citação: UFE-08#RS-nn
✅ Consolidado. Doze invariantes. São o capítulo mais curto e o mais acionável: cada regra é um teste que a modelagem tem que passar, e a violação de qualquer uma produz um schema que só falha em produção.
Uso sugerido em revisão: ao revisar um schema, tipo ou coleção do domínio operacional, passe as doze. É checklist, não leitura.
| ID | Regra | Consequência de modelagem |
|---|---|---|
RS-01 | Escala planejada não comprova trabalho realizado | Escala e jornada são entidades separadas. Apuração de horas lê jornada, nunca escala |
RS-02 | Apresentação não significa início da jornada | T-111 e T-114 são timestamps distintos, não o mesmo campo |
RS-03 | Início da jornada não significa disponibilidade operacional | A máquina da jornada e a de disponibilidade são independentes (UFE-07) |
RS-04 | Policial, equipe, guarnição e viatura possuem ciclos de vida independentes | Quatro máquinas de estado, não um status compartilhado |
RS-05 | Pausa do policial não significa necessariamente pausa de toda a equipe | A pausa tem escopo (UC-28): indivíduo, guarnição, recurso ou capacidade parcial |
RS-06 | Uma equipe pode atender várias ocorrências durante a jornada | Relação N:N entre jornada/equipe e ocorrência, com participação como entidade |
RS-07 | Uma ocorrência pode atravessar diferentes turnos e equipes | A ocorrência não pertence a uma jornada. Transferência (UC-33) é primeira classe |
RS-08 | O encerramento do despacho não encerra automaticamente a ocorrência | Estado do despacho ≠ estado da ocorrência (D-07). Encerrar todos os despachos não fecha o caso |
RS-09 | A devolução física não encerra a cautela sem conferência | Estado EmConferencia entre EmUso e Devolvido. Baixa (T-142) ≠ devolução (T-140) |
RS-10 | Uma jornada pode terminar com pendência, desde que ela esteja formalizada | O encerramento não bloqueia; ele exige que a pendência tenha registro (UC-39, UC-40) |
RS-11 | Atividades pessoais devem usar classificação genérica e preservar privacidade | Registrar o efeito operacional (indisponível), não a causa íntima. "Pausa pessoal", não "banheiro" |
RS-12 | A localização deve estar associada ao recurso institucional, não ao policial fora de serviço | O sujeito do rastreamento é a viatura/rádio; o escopo termina em UC-41 (liberação) |
As três regras que mais custam se violadas
RS-07 — a ocorrência não pertence à jornada
É a mais fácil de violar porque a modelagem ingênua é tentadora: a ocorrência aparece durante o turno, então parece filha dele. Mas uma ocorrência longa — desaparecimento, ocupação, desastre — atravessa dias e dezenas de equipes. Amarrá-la à jornada obriga a duplicá-la a cada troca de turno, e o histórico se fragmenta exatamente no momento em que ele é mais necessário.
Teste: a ocorrência sobrevive ao encerramento de todas as jornadas envolvidas, sem cópia?
RS-09 — devolver não é dar baixa
O intervalo entre a devolução física e a baixa da cautela é onde toda a apuração de responsabilidade acontece. Um modelo que faz devolver() fechar a cautela transforma "o rádio voltou quebrado" em um registro que não existe — porque o único momento em que ele poderia ser criado já passou.
Teste: existe um estado em que o recurso está fisicamente na unidade e a cautela ainda está aberta?
RS-11 / RS-12 — privacidade não é um requisito adicional
As duas últimas regras não são preferência de UX; são o que separa um sistema de gestão operacional de um sistema de vigilância do trabalhador. E elas mudam o schema, não só a interface: se o tipo de pausa tiver um valor banheiro, a privacidade já foi perdida no banco — nenhuma permissão de leitura resolve depois.
Teste: o enum de pausa e o modelo de localização conseguem responder "esta equipe está disponível?" sem conseguir responder "onde estava o policial X ontem às 22h?"
Regras que a fonte não cobre
Vazios reconhecidos, para não passarem por completude:
- Retenção e expurgo. Por quanto tempo cada registro vive.
RS-11eRS-12limitam o que se coleta, mas nada limita por quanto tempo se guarda. - Quem pode ler o quê. As regras tratam de estrutura, não de autorização.
- Correção de registro. Um marco lançado errado — chegada registrada no endereço errado — precisa de retificação com trilha, não de
UPDATE. - Conflito entre fontes. Quando a telemetria AVL diz que a viatura está a 3 km do local e a equipe registrou chegada, quem ganha.
← 07 — Máquinas de estado · Índice · Próximo: 09 — Panorama de sistemas no Brasil →