Modelo de decisão

                                                                                                                              Tabelas de Decisão
Qual senha usar e quando usar no Banco ABC.
O cliente pode estar no caixa humano ou eletrônico ou internet.


A conta foi informada?
 Sim, verifica se o caixa é humano ?
   Sim, usar senha cartão ou impressão digital do cliente.
   Não, usar senha eletrônica.
 Não, usar o id da conta.
Se não foi informada a conta e esta no caixa humano então é erro. Chamar suporte.

Visualização da tabela de decisão


M1 informa conta
| cx(humano) do banco?
| |
1 1
  • usar senha do cartao ou impressão digital do cliente.
1 0 
  • usar senha eletronica.
0 0
  • usar id da conta (agencia e conta)
0 1 
  • erro sistema (para suporte)

momento:
-- M1 = 1: momento 1,  informa conta
-- M1 = 0: momento 2,  confirmar transação de movimentação de conta

Para o usuário de software
: É uma maneira de expressar, em forma de tabela, qual o conjunto de condições que é necessário ocorrer para que um determinado conjunto de ações deva ser executado.
O ponto principal de uma tabela de decisão é a regra de decisão, que define o conjunto de ações a ser tomado, a partir de um conjunto de condições. Como aplicação prática é utilizada para aprendizado e
tomada de decisão. No caso do apredizado indutivo: Cria uma hipotese baseada em instâncias
particulares que gera conclusões gerais. É usada também em implementação em sistemas especialistas e em problemas de classificação (aprendizado de valores discretos).

Para o desenvolvedor de software: É uma linguagem para representar a solução de um problema de lógica , na forma tabular, com objetivo de avaliar uma regra (combinação de condições) e
determinar que ações executar, garantindo que não haja redundancias (ações iguais para regras iguais) nem contradições (ações diferentes para regras iguais).

Contexto ou Dominio a que pertence:
Requisitos de um sistema de informação.

Elementos de uma tabela:
  • Uma condição pode ser: pergunta, expressão lógica, expressão aritmética.
  • Uma regra é uma sequência de símbolos, cada um relacionado a uma condição.
    O símbolo pode ser: {1, 0} para indicar o resultado da avaliação. É usado o símbolo "." para indicar que a condição é irrelevante.
  • As regras indicam que elemento deve ser escolhido a partir do resultado das avaliação das condições.
Verificações obtidas atraves do uso da TD:
  • Incompleteza: Nem tôdas as condições estão sendo cobertas
  • Contradição: Duas regras com a mesmas condições levando a diferentes ações
  • Redundancia: Duas regras com as mesmas condições levando a mesma ação
  • Ambiguidade: Uma tabela reduzida com erros de contradição e/ou redundancia
Sintaxe:

Semântica

Símbolo
utilizado
nas regras
Tipos de condições e respostas possíveis
resposta a
pergunta
expressão lógica expressão aritmética
1 sim Verdadeiro diferente de 0 (zero)
0 não Falso igual a 0 (zero)
. Condição é irrelevante

Automatizando a tabela de decisão:
:
Processo de teste:
Teste 1:
Saida:


M1 informa conta
| cx(humano) do banco?
| |
1 1
  • usar senha do cartao ou impressão digital do cliente.


Entrada:
C1="M1 informa conta" c2="cx(humano) do banco?"
Regra1="1" "1" "*" "usar senha do cartao ou impressão digital do cliente."

Processo de preparo:
  • Lê texto e identifica regra: associa condições (falsas e verdadeiras) a acões.

  • Processo de execução para cada regra:
  • Le regra e converte S em 1 , N em 0 e condição irrelevante em "-".
  • Regras para converter S ou N para 1 ou 0 em uma TD

    C1 condição é verdade?
    | C2 condição é falsa?
    | | C3 regra existe?
    | | | C4 ação é válida (não tem contradição nem redundância?
    S N - -
    • condição é 1
    S S - - 
    • condição é 0
    S - S -
    • associar regra a ação (nenhuma ou muitas)
    S N S S 
    • ação é 1
    S N S N 
    • ação é 0
  • Verifica se tem: contradição, redundancia ou ambiguidade. Caso tenha imprime erro com valores das condições. Caso não tenha: imprime ações

  • Regras para verificar incompleteza, contradição, redundância em uma TD:

    C1 esta faltando regra (incompleteza) (n. de regras menor que 2**n condições)?
    | C2 regra em contradição?
    | | C3 regra em redundancia?
    | | | C4 regra em ambiguidade?
    S N N N
    • imprime esta faltando regras: regras que estão faltando
    N S N N 
    • imprime contradição: duas regras iguais com conjunto de ação diferente - regras com ação
    N N S N
    • imprime redundancia: duas regras iguais com conjunto de ação igual - regras com ação
    N N N S 
    • imprime ambiguidade: mesma ação para regras diferentes - regras com ação
    N N N N 
    • tabela correta: imprime tabela
    * As regras excludentes são impossiveis de ocorrerem ((2**4)-5=16-5=11)