Profa. Giliane Bernardi –
giliane@unifra.br
Centro Universitário Franciscano
Disciplina de Requisitos de Software
Requisitos de
Software
Análise Estruturada de Sistemas
Modelos da Análise Estruturada
D
F
D
Modelo ER
Especificação
de
Processos
Dicionário
de Dados
1 - Fornecem uma indicação de
como os dados são transformados;
2 – Mostram as funções e
subfunções que transformam o
Especificação de Processos
“ Uma especificação de processo define o que deve ser feito
para transformar as entradas em saídas. Ela é uma
descrição detalhada de cada processo representado pelas
bolhas do DFD. Uma especificação deve ser clara,
concisa, não ambígua e completa. ”
Especificação de Processos
Objetivos:
Deve haver uma especificação para cada processo do
conjunto do Diagrama de Fluxo de Dados;
Cada especificação deve descrever regras que executam
a transformação dos Fluxos de Dados que chegam no
processo associado para o Fluxo de Dados que sai do
processo em questão;
A especificação deve ser expressa de forma que:
não possua ambigüidades;
possa ser lida por toda a comunidade (analistas e
usuários)
Especificação de Processos
Principais Ferramentas de Especificação de Processos
Português Estruturado;
Tabela de Decisão; e
Árvore de Decisão.
Muitos autores tratam esta especificação de processos
como etapa do Projeto de Software;
Especificação de Processos
Português Estruturado
Linguagem com estrutura, que faz uso de um
vocabulário limitado e uma sintaxe limitada. O
vocabulário do Português Estruturado consiste em:
verbos no imperativo;
dados definidos no Dicionário de Dados;
algumas palavras reservadas para formulação lógica;
Especificação de Processos
Português Estruturado – Exemplo
“Uma loja realiza entrega de suas mercadorias. Se o local de
entrega é Porto Alegre, o frete não é cobrado; o mesmo ocorre
para grandes encomendas (R$ 500,00 ou mais) para a Grande
Porto Alegre. Se a encomenda é de valor pequeno (R$ 100,00 ou
menos), a empresa não faz a entrega; o frete fica em R$ 20,00
para a Grande Porto Alegre e R$ 30,00 para o interior do
estado, no caso de encomendas médias. Faltou algo? Ah, sim.
Encomendas grandes para o interior, têm mesmo frete que as
médias para Grande Porto Alegre.”
Funcionário
Calcular
Entrega
LocalCompra
Valor da CompraEspecificação de Processos
Português Estruturado – Exemplo
Especificação de Processos
Português Estruturado – Exemplo
SE ((Local = ‘Porto Alegre’) E (Valor > 100)) OU ((Valor
>=500) E (Local = ‘Grande Porto Alegre’)) ENTAO
ESCREVER (‘Entrega Gratuita !!’)
SE Valor <= 100 ENTAO
ESCREVER (‘Entrega não será realizada !!’)
SE ((Valor >100) E (Valor < 500)) ENTAO
INICIO
SE Local = ‘Interior’ ENTAO
Frete = 30;
SE Local = ‘Grande Porto Alegre’ ENTAO
Frete = 20;
FIM
SE (Valor >=500) E (Local = ‘Interior’) ENTAO
Frete = 20;
Tabela de Decisão
Outra ferramenta para especificação de processos;
Usa-se a Tabela de Decisão quando a seleção de uma
ação depende de combinações variadas de condições;
Tabela de Decisão
Vejamos as condições para o exemplo anterior:
Entrega em POA e valor grande – frete gratuito;
Entrega na GPA e valor grande – frete gratuito;
Entrega no interior e valor grande– frete : R$20
Entrega em POA e valor pequeno – sem entrega;
Entrega na GPA e valor pequeno – sem entrega;
Entrega no interior e valor pequeno – sem entrega;
Entrega na GPA e valor médio – frete : R$20
Entrega no interior e valor médio – frete : R$30
Entrega POA e valor M – frete Gratuito;
Regras 1 2 3 4 5 6 7 8 9 Condições: c1. Local de entrega c2. Porte encomenda Poa P Poa M Poa G Gpa P Gpa M Gpa G Int P Int M Ações:
a1. Faz entrega
a2. Valor do frete(R$)
N - S 0 S 0 N - S 20 S 0 N - S 30 S 20
Tabela de Decisão
Vejamos a tabela de decisão:
Int
G
Condição
Matriz de Condições
Especificação de Processos
Tabelas de Decisão – Componentes
Variável de decisão - uma grandeza ou característica da
especificação que permite definir uma condição. Ex: Preço
acima de $350;
Valores que as variáveis de decisão podem assumir. Seu
conjunto forma a matriz de condições. Ex: S/N, ou outros
valores não binários;
Ação - resultado alternativo para decisão. Seu conjunto de
valores forma a matriz de ações;
Regra = condição + ação. Corresponde a uma coluna da
tabela. Ex: Regra 8: se entrega é no interior do estado e porte
da encomenda é médio, então fazemos a entrega e cobramos
Especificação de Processos
Tabelas de Decisão – Como construir
Identificar todas as variáveis de decisão (condições) e os
valores que elas podem assumir;
Identificar as ações;
Calcular o número de regras e montar a tabela, deixando
em branco as matrizes de condições e ações;
Preencher a matriz de condições;
Preencher a matriz de ações;
Reduzir a tabela.
Tabelas de Decisão – Como construir
Identificar todas as variáveis de decisão (condições) e os
valores que elas podem assumir
Local de Entrega:
POA;
Interior;
GPA.
Valor da Compra
<= 100 (P);
>100 e <500 (M);
>=500 (G).
Especificação de Processos
Especificação de Processos
Tabelas de Decisão – Como construir
Identificar as ações
Realizar o Frete
Sim;
Não.
Valor do Frete
Gratuito;
R$ 20;
R$ 30.
Especificação de Processos
Tabelas de Decisão – Como construir
Calcular o número de regras e montar a tabela, deixando em
branco as matrizes de condições e ações
Entrega em POA e valor grande – frete gratuito;
Entrega na GPA e valor grande – frete gratuito;
Entrega no interior e valor grande– frete : R$20
Entrega em POA e valor pequeno – sem entrega;
Entrega na GPA e valor pequeno – sem entrega;
Entrega no interior e valor pequeno – sem entrega;
Entrega na GPA e valor médio – frete : R$20;
Int G Regras 1 2 3 4 5 6 7 8 9 Condições: c1. Local de entrega c2. Porte encomenda Poa P Poa M Poa G Gpa P Gpa M Gpa G Int M Ações:
a1. Faz entrega
a2. Valor do frete(R$)
N - S 0 N - S 20 S 0 N - S 30 S 20
Tabelas de Decisão – Como construir
Número de Regras - 9
Int G Regras 1 2 3 4 5 6 7 8 9 Condições: c1. Local de entrega c2. Porte encomenda Poa P Poa M Poa G Gpa P Gpa M Gpa G Int P Int M Ações:
a1. Faz entrega
a2. Valor do frete(R$)
N - S 0 S 0 N - S 20 S 0 N - S 30 S 20
Tabelas de Decisão – Como construir
Preencher a matriz de condições
Int G Regras 1 2 3 4 5 6 7 8 9 Condições: c1. Local de entrega c2. Porte encomenda Poa P Poa M Poa G Gpa P Gpa M Gpa G Int P Int M Ações:
a1. Faz entrega
a2. Valor do frete(R$)
N - S 0 S 0 N - S 20 S 0 N - S 30 S 20
Tabelas de Decisão – Como construir
Preencher a matriz de ações
Int G Regras 1/4/7 2/3 5 6 8 9 Condições: c1. Local de entrega c2. Porte encomenda - P Poa M/G Gpa M Gpa G Int M Ações:
a1. Faz entrega
a2. Valor do frete(R$)
N - S 0 S 20 S 0 S 30 S 20
Tabelas de Decisão – Como construir
Reduzir a tabela
Int G Regras 1 2 3 4 5 6 Condições: c1. Local de entrega c2. Porte encomenda - P Poa M/G Gpa M Gpa G Int M Ações:
a1. Faz entrega
a2. Valor do frete(R$)
N - S 0 S 20 S 0 S 30 S 20