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.
M1 informa conta
| cx(humano) do banco?
| |
|
1 1 |
- usar senha do cartao ou impressão digital do cliente.
|
1
0 |
|
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 - - |
|
S S - -
|
|
S - S - |
- associar regra a ação (nenhuma ou muitas)
|
S N S S
|
|
S N S N
|
|
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)