sexta-feira, 11 de novembro de 2016

Decisões como dados dinâmicos - Um caso prático (parte 6)

Postagem anterior nesta série

Nesta postagem, vamos analisar algumas das regras para conferência do documento de identificação do solicitante, mostradas novamente abaixo (as demais regras serão discutidas nas próximas postagens):
  • Documento de Identidade, obrigatoriamente para maiores de 12 anos. Podem ser aceitos como documento de identidade: cédula de identidade expedida por Secretaria de Segurança Pública; carteira funcional expedida por órgão público, reconhecida por lei federal como documento de identidade válido em todo território nacional; carteira de identidade expedida por comando militar, ex-ministério militar, pelo Corpo de Bombeiros ou Polícia Militar; passaporte brasileiro anterior; carteira nacional de habilitação expedida pelo DETRAN (modelo atual); carteira de identidade expedida por órgão fiscalizador do exercício de profissão regulamentada por lei; carteira de trabalho e Previdência Social - CTPS.
  • a criança menor de 12 anos pode apresentar a Certidão de Nascimento (original e atualizada) em substituição ao documento de identidade.
Aqui, cabem umas questões, para as quais não tenho resposta: 
  1. "maiores de 12 anos" significa exatamente o que? 12 anos exatos? 12 anos e um dia? 
  2. em relação a que data esta idade deve ser calculada? a data da solicitação do passaporte? a data da conferência dos documentos? a data da expedição do passaporte? nenhuma das anteriores?
  3. "a criança menor de 12 anos pode..." significa que ela não é obrigada a apresentar a Certidão de Nascimento, ou seja, não precisa apresentar nenhum documento, já que o item anterior estabelece a obrigatoriedade de apresentação somente para os maiores de 12 anos? Os documentos listados podem ser apresentados por menores de 12 anos (mesmo que alguns deles, obviamente, não sejam possíveis para menores)?
Para efeito deste trabalho vou considerar: 1) >12 anos = >12 anos e um dia; 2) data base para a idade = data de solicitação do passaporte; 3) menores de 12 anos podem apresentar qualquer dos documentos listados e, adicionalmente, também a Certidão de Nascimento; a Certidão de Nascimento não é um documento válido para maiores de 12 anos.  

Na vida real, estas questões teriam que ser resolvidas pelos especialistas no assunto. Como podemos ver, a integração entre a modelagem de decisões e a modelagem (semântica) de dados é total, e é um fator de sucesso fundamental para a descrição correta da lógica que governa uma decisão.

A avaliação destas regras nos leva a criar algumas novas decisões de suporte, incluindo o cálculo da idade do requerente (em modelagem de decisões, cálculos também são considerados "decisões"), conforme mostrado no glossário e no DRD (mostrado aqui em um formato alternativo, com as entradas de dados "dentro" das decisões) abaixo. Para maiores informações sobre este processo, veja as postagens anteriores.



Notem que o número de informações de entrada aumentou, pois não havíamos indicado os diversos tipos possíveis de documentos de identificação potencialmente válidos no diagrama da postagem anterior. Isto demonstra duas coisas: o caráter iterativo da modelagem de decisões (as informações vão sendo adicionadas à medida que são descobertas ou necessárias), e a explicitação de TODAS as informações necessárias para a determinação do resultado da decisão, e que poderiam ficar "ocultas" (ou implícitas) no texto que descreve as regras ou na cabeça dos especialistas.

No entanto, como já foi explicado anteriormente, o DRD (Diagrama de Requisitos de Decisão) não torna explícito as regras que suportam a determinação do valor de saída da decisão (no caso, se o documento de identificação é válido ou não). Nós fazemos isso através de uma Tabela de Decisão, como mostrado a seguir.

(Clique na imagem para ampliar)

Aqui neste espaço não irei entrar em detalhes sobre como tabelas de decisão são construídas, mas darei algumas orientações sobre como são lidas e interpretadas (estou usando os princípios de construção estabelecidos pelo TDM -The Decision Model, nem todos eles necessários ou obrigatórios de acordo com o padrão DMN- Decision Model and Notation):

  • as condições estão expressas nas colunas, as regras estão expressas nas linhas
  • a última coluna indica a conclusão (no TDM só pode haver uma coluna de conclusão por tabela; o padrão DMN permite que uma tabela de decisões possua mais de um valor de saída, que são combinados em um tipo de dado composto)
  • células vazias em uma linha indicam que as condições correspondentes são irrelevantes para a regra expressa nesta linha
  • todas as células preenchidas em uma linha devem ser avaliadas como verdadeiras (concatenadas com "E") para que o valor da célula de conclusão seja atribuído à decisão (de acordo com o padrão DMN, uma decisão possui uma variável de saída implícita, que pode ser acessada, por exemplo, por um processo ou por outra decisão)
  • as regras expressas nas várias linhas são concatenadas com "OU"
Exemplificando, na tabela acima:
  • as regras 1 a 7 são válidas para requerentes de qualquer idade; a regra 9 é válida somente para maiores de 12 anos; as regras 8 e 10 são válidas apenas para requerentes com 12 anos de idade ou menos
  • as regras de 1 a 8 expressam que, se qualquer um dos tipos de documento de identificação foi apresentado, o documento de identificação é válido
  • as regras 9 e 10 expressam "o contrário" (obrigatório, pela metodologia TDM, opcional pelo padrão DMN): elas especificam de forma explícita que se nenhum dos documentos possíveis foi apresentado, o documento de identificação é inválido
Notem que, na posição em que esta tabela (e a modelagem deste caso) está, não existe nenhuma verificação específica em relação aos documentos (prazo de validade, legibilidade, validade dos dados, semelhança da foto com o requerente, etc.), que está estabelecida pelas regras de conferência da documentação. Vamos tratar disso na próxima postagem.

Até lá..

Nenhum comentário :

Postar um comentário