Você está na página 1de 80

MODELAGEM DE

SISTEMAS DE
INFORMAÇÃO

Profa. Liliam Sakamoto


Aula 10
1. Análise Estruturada: Visão Geral

2. Modelagem de Sistemas

3. Ferramentas de Modelagem

4. Processos de Construção do Modelo Essencial do


Sistema

5. Tópicos sobre a Modelagem de Dados

6. Exemplo prático

2
Ciclo de Vida dos Sistemas de Informação

Visão Geral

Usuários

Informações Necessidades
Situação Atual

Informações Sistema
Estratégicas 1 2
Planejam. Desenvolv.
Plano Sistemas Usuários
Alta
Administração Resultados
3
Sistema
Evolução
(Aval./ Sistema
Manut.)
Versão
Atualizada
Solicitações Alterações / Otimizações do Sistema

Usuários

3
Ciclo de Vida dos Sistemas de Informação
Visão Detalhada do Processo de Desenvolvimento

Alta Adm./
Gerência
Estimat. Área Técnica Usuários
Solicit./ Requis. Prazos/ Especif.
Autoriz. Básicos/ Custos/ Amb. Operac.
Desenv. Restriç. (HW/SW) Sistema
Benef.

Modelo Modelo
Essencial Implement.
2.1 2.3 2.4
2.2 (Lógico) (Físico)
Estudo de Projeto Implement.
Análise
Viabilidade Documento (Design) **
Viabilidade

Requis. Requis.
Gerais Detalhados ** Programação , Simulação
Sistema Usuários Sistema e Implantação

4
Problemas

 Qualidade dos produtos


 Produtividade dos processos

Qualidade Produtividade

Sistemas que não contribuem para os


Prazos não cumpridos;
objetivos estratégicos da organização;
Sistemas que não atendem às
necessidades dos usuários; Aumento do backlog;

Sistemas não-confiáveis ( informações


Custos acima da previsão;
incorretas, incompletas, desatualizadas e
inconsistentes );
Perdas de oportunidades ( decisões
Sistemas ineficientes ( baixo desempenho ); necessitam de informações rápidas ).
Sistemas de manutenção constante, difícil
e onerosa;

5
Problemas Backlog

Necessidades

Demanda

Backlog

Capacidade

tempo

Backlog = Demanda > Capacidade de Desenvolvimento

6
Problemas

• Causas
◦ ausência de Planejamento de Sistemas;
◦ ausência de uma filosofia de Planejamento de
Dados;
◦ não utilização de métodos e técnicas formais de
desenvolvimento de sistemas;
◦ não utilização de técnicas e ferramentas de
produtividade;
◦ adoção de metodologias não ambientadas à
realidade da empresa;
◦ falta de definição precisa dos objetivos e
requisitos do sistema;
◦ dificuldade de comunicação entre os envolvidos
no processo;
◦ falta de precisão e clareza dos textos narrativos
utilizados na especificação dos sistemas.

7
Conceitos Importantes

 Metodologia
◦ conjunto integrado de métodos, técnicas e ferramentas
orientado para um objetivo comum.
 Método
◦ caminho para se atingir o objetivo ( o que fazer ).
 Técnica
◦ modo de se fazer algo ( como fazer ).
 Ferramenta
◦ recurso para se alcançar um resultado ( com o que fazer
).
 Modelo
◦ representação abstrata de uma realidade existente
(modelo descritivo) ou
◦ de uma solução para um determinado problema (modelo
normativo).

8
Análise Tradicional x Análise Estruturada

Análise Tradicional Análise Estruturada

Visão dos Sistemas Não existe visão geral . Enfoque top-down .

Rapidamente se envolve na Preocupação com os aspectos


Fronteira Lógico x Físico implementação física. lógicos (essência do sistema).

Modelos no papel facilitam a


Utilização de Modelos Não adotados compreensão e as
Diagrama de Blocos modificações.

Fluxograma não é adequado à Ferramentas gráficas e linguís-


Ferramentas de Trabalho Análise, pois símbolos induzem ticas apropriadas à identificação
a raciocinar em termos físicos. de requisitos e modelagem de
sistemas.

Comunicação com Não existe linguagem comum. Ênfase em linguagem


Usuários Especificações narrativas são gráfica ( 1 figura = 1000
muito imperfeitas e limitadas. palavras ).

9
Custo de Alteração de um Sistema

Custo

Fase

Estudo Análise Projeto Implementação Sistema


Viabilidade (Design) Implantado

Quanto mais tarde se detecta um erro ou se identifica uma


necessidade de mudança, mais difícil e cara é a alteração.

10
Principais Características da Análise Essencial

( Análise Estruturada Moderna )

 Um novo método de particionamento de sistemas mais objetivo e


mais rigoroso denominado “Particionamento por Eventos ”;

 Uma maior preocupação com a integração do modelo funcional e


o modelo de dados;

 Uma nova terminologia: Modelo Essencial ( modelo lógico ) e


Modelo de Implementação (modelo físico );

 Uma nova ferramenta gráfica - Diagrama de Transição de Estado


para modelagem de Sistemas de Tempo-Real;

 Ênfase na utilização de ferramentas CASE para apoiar os


processos de modelagem.

11
Principais Características da Análise Essencial

Conceitos Essenciais

 Essência
◦ O que se constitui na importância, o cerne de uma coisa.

 Essência de um Sistema
◦ Todas as características e atividades de um sistema.
◦ Aquela capaz de fazer qualquer coisa, instantaneamente,
nunca dando defeito ou cometendo erros.
◦ Elementos sistêmicos desnecessários: arquivos temporários,
back-up, dados redundantes visando eficiência, certos
processos de validação, etc.

 Essência x Representação
◦ Essência é um conjunto intangível de idéias, precisando pois
ser representado em objetos físicos ( pessoas, máquinas,
meios magnéticos, papel, etc.).

12
1. Sistemas de Informação - Conceitos

2. Análise Estruturada:Visão Geral

3. Modelagem de Sistemas

4. Ferramentas de Modelagem

5. Processos de Construção do Modelo Essencial do Sistema

6. Tópicos sobre a Modelagem de Dados

7. Exemplo prático

13
Modelos de Sistemas de Informação
São representações de um sistema já existente ou de um novo
sistema a ser desenvolvido.

Componentes básicos : Modelo Funcional e Modelo de Dados.

Modelo de Sistema de Informação = Modelo Funcional +


Modelo de Dados

MS = MF + MD

14
Métodos de Particionamento
Geral Sistema Nível Superior
(Diagrama de Contexto)

Subsistemas

Módulos dos Níveis Intermediários


Subsistemas (Explosão e Detalhamento)

Funções e
Subfunções

Funções Nível Atômico


Primitivas (Componentes)
Particular

• Métodos: Decomposição Top-Down e Particionamento por Eventos

15
Ferramentas de Modelagem

 Diagrama de Fluxo de Dados ( DFD )


 Dicionário de Dados ( DD )
 Ferramentas para Especificação de
Processos :
◦ Português Estruturado;
◦ Tabela de Decisão;
◦ Árvore de Decisão;
 Diagrama de Entidade-Relacionamento ( DER
)
 Diagrama de Transição de Estado ( DTE )
16
CASE ( Computer
Computer--Aided Software Engineering )

 Software para desenvolver software.

 Objetivo :
◦ Automatizar o processo de desenvolvimento de sistemas com
consequente aumento de qualidade, produtividade e
principalmente padronização.

 Categorias :
◦ Upper-case: orientadas a Análise e Modelagem de Dados
( ERWIN, AS, Casestudio, Power Designer, etc.);
◦ Lower-case: orientadas à Geração de Código
( EIF, HPS, Oracle Designer, etc.);
◦ Integrated-case ( I-CASE ) : cobrem todo ciclo de vida do
sistema
( Casewise, ARIS, DIAW, etc.);
 Outros: orientados apenas para confecção de Diagramas
(VISIO, FLOWCHART, SMARTDAW, etc)

17
1. Sistemas de Informação - Conceitos

2. Análise Estruturada:Visão Geral

3. Modelagem de Sistemas

4. Ferramentas de Modelagem

5. Processos de Construção do Modelo Essencial do Sistema

6. Tópicos sobre a Modelagem de Dados

7. Exemplo prático

18
Diagrama de Fluxo de Dados
Visão Geral

O DFD é a principal ferramenta de modelagem funcional de um


sistema, possibilitando identificar e representar as funções (
processos ) e as interfaces entre elas.

FD M

1 3 FD X
FD K Processo
Processo
A C
Entidade
Externa 1 5 FD Z
( Fonte ) Processo
E
Entidade
Externa 2 Entidade
( Fonte ) Depósito Dados Externa 3
2 4 ( Destino )
Processo Processo FD Y
FD L
B FD N D

19
Diagrama de Fluxo de Dados
Extensões do DFD ( Sistemas Tempo-Real )

◦ Fluxos de Controle são sinais ou interrupções


enviados de uma entidade externa / processo para
outro processo a fim de avisá-lo que precisa executar
sua função.
Este tipo de fluxo não transporta dados, mas sim um
sinal binário ( On / Off ).
Este fluxos são representados por uma linha tracejada.

◦ Processos de Controle têm a função de coordenar e


sincronizar as atividades de outros processos no DFD.
São representados por um círculo tracejado e
modelados com um Diagrama de Transição de Estado (
DTE ).

20
Diagrama de Fluxo de Dados
Elementos do DFD

Fluxos de Dados
Representam o movimento dos dados de uma parte a
outra do sistema ( dados em movimento ).

Pedido Nota
Fiscal
P1 P2 P3

Pedido Pedido com


Válido Desconto

21
Diagrama de Fluxo de Dados
Elementos do DFD

Processos
Representam as transformações dos fluxos de
entrada em fluxos de saída ( funções do sistema ).
Notações :

Círculo/Bolha Retângulo em pé
( Yourdon/DeMarco ) com bordas arredondadas
( Chris Gane )

22
Diagrama de Fluxo de Dados

Elementos do DFD

Depósitos de Dados
Representam locais no sistema onde os fluxos de dados
ficam armazenados ( dados em repouso ).
Notações :

Segmentos de retas paralelas Segmentos de retas paralelas


( Yourdon/DeMarco ) ligados na extremidade esquerda,
contendo o nome do depósito
( Gane )

23
Diagrama de Fluxo de Dados
Elementos do DFD

Entidades Externas
Representam elementos externos com os quais
o sistema se comunica.

Notação :

Retângulo ou quadrado com o nome da entidade.

24
Diagrama de Fluxo de Dados
Níveis de um Conjunto de DFD’s

Diagrama de Contexto

É o nível mais alto de um conjunto de DFD’s.

Objetivo :
 delimitar a área de abrangência do sistema a ser modelado.
 Definir o escopo do sistema

Componentes :
 um processo único ( representando todo o sistema )
 os fluxos externos do sistema ( fluxos de entrada e saída )
 as entidades externas

25
Diagrama de Fluxo de Dados
Níveis de um Conjunto de DFD’s
Diagrama de Contexto (continuação)

Exemplo :

Gerência da Loja

Informações-Gerenciais

Pedido Ordem-de-Compra

Sistema Fornecedores
Clientes Nota-Fiscal-Loja
de Vendas
e Controle
de Estoque
Cheque Nota-Fiscal-Fornecedor

26
Diagrama de Fluxo de Dados
Níveis de um Conjunto de DFD’s

Diagrama Nível 1
É o diagrama que apresenta o 1° detalhamento do
processo do contexto.
Mostra as macro-funções do sistema em estudo
(subsistemas) e as interfaces
Emissão entre elas
Informações-

Pedido
(fluxos/depósitos).
Venda-
Efetuada
Informações
Gerenciais
Gerenciais

Movim.Vendas
Exemplo :
Nota- Entrada-Ítem-Recebido Controle Ordem-de-
Fiscal- Saldo-Ítem-Pedido Estoque Compra
Loja Vendas
Ponto- Nota-
Reposição- Fiscal-
Baixa-Ítem-Pedido Fornecedor
Cheque Ítens-
Estoque Estocados

27
Diagrama de Fluxo de Dados
Níveis de um Conjunto de DFD’s

Funções Primitivas ou Atômicas

São as funções mais detalhadas do sistema.

São as funções que dão origem a códigos (componentes)

Se o processo único do Diagrama de Contexto corresponde à


“visão da floresta”, então as funções primitivas são as
“raízes das árvores da floresta”.

Obs. :
A lógica dessas funções deve ser descrita com as ferramentas de
Especificação de Processos.

28
Diagrama de Fluxo de Dados
Regras e Convenções para Decomposição

Explosão de Processos

Cada processo de um determinado nível pode ser


decomposto (explodido), dando origem a um novo
diagrama de nível mais detalhado.

Diagrama Diagrama 5
D G X
5.2 Y
2 5
B
5.1
F
A D 5.4 G
1
4
3
C 5.3
E Z
F

29
Diagrama de Fluxo de Dados
Regras e Convenções para Decomposição

Balanceamento de Diagramas

Todos os fluxos de dados de entrada e saída de um


processo têm que entrar e sair do diagrama derivado.

Casos Particulares :
 Erros triviais ;

 Particionamento de fluxos de dados .

Análise Estruturada de Sistemas


2012 *** 30
Diagrama de Fluxo de Dados

Orientações para Obtenção de DFD’s Corretos

Recomendações Importantes :
◦ Os aspectos mais importantes a serem considerados ao se elaborar
os diagramas são clareza e legibilidade.

◦ O número máximo de processos em cada diagrama deve ficar em


torno de 7, visando facilitar a visualização e a compreensão do
diagrama.

◦ O cruzamento de linhas polui bastante o diagrama, portanto evite-o.

◦ Esteja sempre preparado para começar de novo. A elaboração de um


DFD é um processo de aprimoramento constante até se chegar ao
produto final.

Análise Estruturada de Sistemas


2012 *** 31
Dicionário de Dados ( DD )

Conceitos e Notações

• dicionarização de todos os
Notação Yourdon / Tom DeMarco
elementos: entidades,
Símbolo Significado
relacionamento,
= é composto de, é equivalente à atribuos
+ e ( concatenação )
[ ... | ... | ... ] ou...ou ( seleção ) • padrões bem definidos
{ ... } iterações de ( repetição )
( ... ) opcional
• Produto acompanha o fabricante
* ... * comentário
da metodologia

• divulgação de conhecimento do
Notação Chris Gane
negócio
Símbolo Significado
{} seleção • qualidade na documentação
* repetição
[] opcional
• eliminação de redundâncias

32
Especificação de Processos

A especificação detalhada da lógica das funções primitivas de um DFD é


feita através de ferramentas apropriadas para especificação de processos.
Entre as diversas técnicas existentes:

◦ Descritivo

◦ Português Estruturado

◦ Tabela de Decisão

◦ Árvore de Decisão

33
Especificação de Processos
Descrição Narrativa:

Descrição utilizando-se a língua portuguesa para descrever


procedimentos. Seu vocabulário e sintaxe deve ser objetiva
e clara possibilitando precisão às especificações.

Exemplo:
O cálculo da depreciação deverá ser efetuado da seguinte forma:

- Quando o VALOR_CAPITAL_ATUAL for inferior a R$ 1.000,00 e a CATEGORIA do bem


sobre o qual vai ser calculada a depreciação for igual a “X”, o valor da DEPRECIACAO
deverá ser igual ao VALOR_CAPITAL_ATUAL e o VALOR_NOVO_CAPITAL deverá ser
reduzido a zeros.

- Quando o VALOR_CAPITAL_ATUAL for inferior a R$ 1.000,00 e a CATEGORIA do bem


sobre o qual vai ser calculada a depreciação for igual a “Y”, o valor da DEPRECIACAO
deverá ser 20% do VALOR_CAPITAL_ATUAL e o VALOR_NOVO_CAPITAL deverá ser
80% do VALOR_CAPITAL_ATUAL.

- Quando o VALOR_CAPITAL_ATUAL for superior a R$ 1.000,00 independentemente do


valor da CATEGORIA, se “X” ou “Y”, o valor da DEPRECIACAO deverá ser igual 35%
do VALOR_CAPITAL_ATUAL e o VALOR_NOVO_CAPITAL deverá ser 65% do
VALOR_CAPITAL_ATUAL.

- Quando o VALOR_CAPITAL_ATUAL for igual a R$ 1.000,00 preceder de conformidade


com o item anterior.

34
Especificação de Processos
Português Estruturado

Subconjunto limitado da língua portuguesa usado para descrever


procedimentos. Seu vocabulário e sintaxe bastante restrito possibilitando
maior rigor e precisão às especificações.

a) Vocabulário Básico
 sentenças iniciadas por verbo no infinitivo ou imperativo;
 termos definidos no DD ( ou auto-definíveis );
 palavras para formulação de lógica : se-então-senão, até,
enquanto, etc.
 numerais e estados booleanos.

b) Sintaxe
 sequência ( uma ou mais ações em sequência sem interrupção
);
 decisão ( escolha de caminhos alternativos entre vários );
 repetição ( repetição de ações dentro de um certo intervalo ).

35
Especificação de Processos

Português Estruturado

Se (nível) ou Se
Se não ou Caso contrário
Exemplo:

Se (1) VALOR_CAPITAL_ATUAL < 1.000


Se (2) CATEGORIA = X
Faça DEPRECIACAO = VALOR_CAPITAL_ATUAL
Faça VALOR_NOVO_CAPITAL = 0
Caso Contrario (Categoria = Y)
Faça DEPRECIACAO = VALOR_CAPITAL_ATUAL * 0,20
Faça VALOR_NOVO_CAPITAL = VALOR_CAPITAL_ATUAL * 0,80
Fimse (2)
Se não (VALOR_CAPITAL_ATUAL >= 1.000)
Faça DEPRECIACAO = VALOR_CAPITAL_ATUAL * 0,35
Faça VALOR_NOVO_CAPITAL = VALOR_CAPITAL_ATUAL * 0,65
Fimse (1)

36
Especificação de Processos

Tabela de Decisão

Ferramenta que permite organizar e apresentar a lógica de um processo


complexo de tomada de decisão num formato tabular, facilitando a
visualização e compreensão do problema.
Aplicação
Situações nas quais a escolha de uma ação dependa de uma combinação de
condições.
Formato
Uma Tabela de Decisão apresenta 4 elementos básicos :
 Seção de Condições ( quadrante superior esquerdo );
 Seção de Ações ( quadrante inferior esquerdo );
 Entrada de Condições ( quadrante superior direito );
 Entrada de Ações ( quadrante inferior direito ).
Regras de Decisão

Condições 1 2 3 4

Se...

Ações
Então...

37
Especificação de Processos
Tabela de Decisão

Exemplo:

Condições 1 2 3 4

1. Categoria (X,Y) X Y X Y

2. VALOR_CAPITAL_ATUAL = R$ 1.000,00 (<, >=)

Ações

1. Faça Depreciação igual a 100 20 35 35


(% do VALOR_CAPITAL_ATUAL)

2. Faça VALOR_NOVO_CAPITAL igual a


(% do VALOR_CAPITAL_ATUAL) 0 80 65 65

38
Especificação de Processos
Árvore de Decisão

1a. Condição 2a. Condição 3a. Condição Ações

C A1

A E A2

D F A3
Nome
Processo G A4

B A5

Raiz Ramos Folhas

39
Especificação de Processos
Árvore de Decisão

CATEGORIA
VALOR_CAPITAL_ATUAL PROCEDIMENTO

Depreciação = 100%
X
VALOR_NOVO_CAPITAL = 0%
< R$ 1.000,00

Depreciação = 20%
Y
VALOR_DA_DEPRECIACAO VALOR_NOVO_CAPITAL = 80%

Depreciação = 35%
>= R$ 1.000,00 X ou Y
VALOR_NOVO_CAPITAL = 65%

40
Diagrama de Entidade-
Entidade-Relacionamento ( DER )
Elemento Básico do DER

a ) Entidades de Dados : são objetos ou eventos do mundo real,


distintamente identificados e tratados como uma categoria definida.
Ex.: cliente, fornecedor, pedido, etc.

Departamento Funcionário

b ) Relacionamentos : são associações entre entidades de dados.


Ex.: um funcionário está associado a um
departamento através de um relacionamento
lotação.
Departamento Lotação Funcionário

41
Diagrama de Entidade-
Entidade-Relacionamento ( DER )

Elemento Básico do DER

c ) Atributos : são dados das entidades ou relacionamentos.


Ex.:
Fornecedor = { @Cod-Fornec + Nome-Fornec + CGC-Fornec + ... }
Produto = { @Cod-Prod + Nome-Prod + Descrição-Prod + ... }

d ) Classes de Relacionamento : representam o número de


elementos de cada entidade associados em um relacionamento. Podem ser :
 1 : n ( um para vários )
 m : n ( vários para vários )
1 1
Venda Venda-NF Nota-Fiscal
 1 : 1 ( um para um )
Ex.: 1 N
Departamento Dep-Func Funcionário

M N
Fornecedor Forn-Prod Produto

42
Diagrama de Entidade-
Entidade-Relacionamento ( DER )
Casos Especiais
a ) Relacionamento Múltiplo
Fornecedor
Associação entre
N mais de duas
M P entidades de dados.
Projeto forn-proj-peça Peça

b ) Auto-Relacionamento
Peça
Associação entre elementos
M N de uma mesma entidade
de dados.
composição

c ) Relacionamento em Paralelo
M alocação N Mais de um
relacionamento
Funcionário Projeto entre duas mesmas
entidades.
gerência
1 1

43
Diagrama de Entidade-
Entidade-Relacionamento ( DER )
Casos Especiais

e ) Entidades Fracas
Funcionário

1
A existência de cada um de seus
func-dep elementos depende da existência
de um elemento da entidade principal.
N

Dependente

Funcionário
f ) Partições de Entidades
Subdivisões de uma entidade
em categorias
Cat-Func caracterizadas por atributos
específicos.

Secretária Motorista Engenheiro

44
Diagrama de Entidade-Relacionamento ( DER )

Exemplo de Modelo Descritivo:

Um Departamento de desenvolvimento de projetos está lotado de


Funcionários que possuem Dependentes para efeito de cálculos salariais.
Os Funcionários podem ser Engenheiros, Contador e Secretárias.
Os Engenheiros são alocados em diversos projetos e apenas um deles pode
gerenciar o projeto.
Alguns dos engenheiros, dependendo da sua categoria funcional, podem
participar de outros projetos.
Os projetos usam peças que podem ser compostos de outras peças.
As peças são fornecidas por fornecedores diversos, mas apenas alguns
deles são credenciados pelo Departamento para o efetivo fornecimento.

45
Diagrama de Entidade-Relacionamento ( DER )

Exemplo de um DER (modelo conceitual)


Departamento 1 Lotação N Funcionário 1 N Dependente
Tem

Cat-Func

Engenheiro
Engenheiro Contador Secretária

M 1
Alocação Gerencia
N N
M
Projeto M N Peça
Usa Composição
N
M P
N
Fornec.Efetivo

Credenciamento N N M
Fornecedor Fornece

46
Diagrama de Entidade-Relacionamento ( DER )

Modelo Relacional (modelo Lógico)

47
Diagrama de Transição de Estado ( DTE )
Visão Geral

Ferramenta utilizada para modelar o comportamento dependente de


tempo de um sistema.

Componentes :

◦ Estados

◦ mudanças de estado

◦ condições e ações

48
Diagrama de Transição de Estado ( DTE )

Estados
Situação em que o sistema se encontra e que
dura por um determinado período de tempo.

Estado
Mudanças de Estado Inicial
condição

SETAS: Transições de um estado para ação


outro. Estado 2

Condições e Ações
Condição : qualquer evento no ambiente Estado 3

externo detectável pelo sistema;


Ação : o que o sistema deve fazer em
decorrência do evento.

49
Diagrama de Transição de Estado ( DTE )

Exemplo: Sistema de Lavadora Automática

Inativa

"Start" pressionado "Stop" pressionado


Ativa "Enchimento"
Desativa "Enchimento"
Enchendo

Reservatório cheio
"Stop" pressionado
Ativa "Lavagem"
Desativa "Lavagem"
Lavando

Ciclo de lavagem completo Ciclo centrifugação completo


Ativa "Centrifugação" Desliga-se
Centrifugando

50
Diagrama de Transição de Estado ( DTE )

JOGO DE XADRES

XEQUE-MATE
BRANCA
VEZ
INÍCIO VENCE
DA EMPATE FORÇADO
DO JOGO
BRANCA

MOVIMENTO MOVIMENTO
DA DA TOMA PEÇA
PRETA BRANCA EMPATE

VEZ EMPATE FORÇADO


DA
PRETA XEQUE-MATE PRETA
VENCE

DESCREVE O COMPORTAMENTO DE UM OBJETO, ATRAVÉS DA REPRESENTAÇÃO


DE SEU CICLO DE VIDA, RELACIONANDO EVENTOS E ESTADOS

51
1. Sistemas de Informação - Conceitos

2. Análise Estruturada:Visão Geral

3. Modelagem de Sistemas

4. Ferramentas de Modelagem

5. Processos de Construção do Modelo Essencial do Sistema

6. Tópicos sobre a Modelagem de Dados

7. Exemplo prático

52
Visão Geral do Modelo de um Sistema

MODELO DE SISTEMA DE INFORMAÇÃO


• Descrição dos Objetivos
Modelo Modelo Ambiental • Diagrama de Contexto
Essencial • Lista de Eventos
(o que o Sistema Modelo Funcional (DFD+EP)
necessita ter) Modelo Comportamental +
• Modelo de Dados (DER)
DD
Modelo de • Modelo Estrutural do Sistema (Arquitetura)
Implementação • Modelo das Entradas/Saídas (Interfaces)
(como o Sistema • Modelo Físico do Banco de Dados
será implementado) • Modelo Estrutural das Unidades de Implementação

53
Roteiro para Construção do Modelo Essencial

 Construção do Modelo Ambiental

a) Descrição dos Objetivos do Sistema


b) Diagrama do Contexto do Sistema
c) Elaboração da Lista de Eventos

 Construção do Modelo Comportamental

a) Desenvolvimento do Modelo Comportamental Preliminar


 Modelo Preliminar de Funções (particionamento por eventos)
 Modelo Preliminar de Dados (modelagem em paralelo)
b) Complementação e Revisão do Modelo Comportamental
 Modelo Funcional
 nivelamento do DFD
 revisão dos DFD’s
 elaboração das especificações de processos
 Modelo de Dados
 Modelo Conceitual - DER
 Modelo Relacional - DR
 Integração com DER Corporativo

54
Roteiro para Construção do Modelo Essencial
Conceitos Básicos

◦ evento : qualquer mudança no ambiente do sistema


que exija resposta deste.
 eventos externos - iniciados por entidades do ambiente
externo, a intervalos de tempo imprevisíveis. No DC estes
eventos aparecem como fluxos de dados de entrada.
 eventos temporais - disparados pela passagem do tempo, não
estando associados a fluxos de entrada.
 eventos de controle - estímulos externos associados a fluxos de
controle ( acionadores de processo )
◦ resposta : conjunto de ações executadas pelo sistema
em reação a um evento.
Evento
Ambiente

Sistema
Interativo
Resposta

55
Roteiro para Construção do Modelo Essencial
Construção do Modelo Ambiental

O Modelo Ambiental apresenta 3 componentes :


◦ Declaração dos objetivos do sistema;
◦ Diagrama de Contexto;
◦ Lista de Eventos.

a)- Como identificar e denominar eventos externos

 os eventos externos devem ser procurados fora do ambiente do


sistema
 não se deve confundir o evento com o fluxo de entrada através do qual
o sistema é informado da ocorrência do evento
 os nomes dos eventos externos têm a forma :
Entidade Externa + Verbo Ativo + Objeto
Ex.: Cliente altera endereço

56
Roteiro para Construção do Modelo Essencial
Construção do Modelo Ambiental (continação)

b) Como identificar e denominar eventos temporais

◦ os eventos temporais não estão associados a fluxos de entrada


◦ são eventos programados que independem da ocorrência dos fatos
◦ acionam atividades que ocorrem segundo uma programação
◦ cuidados com falsos eventos temporais : temporização física causada por limitações
do sistema, e não por requisitos externos.
◦ nome de eventos temporais :

Entidade Externa que recebe fluxo + Verbo que indica necessidade + Fluxo de Saída

Ex.: Funcionário cadastra os clientes no final do expediente.

57
Roteiro para Construção do Modelo Essencial
Construção do Modelo Comportamental

O Modelo Comportamental descreve o comportamento interno que o sistema


deverá ter para tratar os estímulos do ambiente externo.

Desenvolvimento do Modelo Comportamental Preliminar

O Modelo Comportamental Preliminar envolve,


basicamente, a construção de 2 modelos :

a) Modelo Preliminar de Funções

Este modelo é construído a partir do Modelo Ambiental


( Diagrama de Contexto e Lista de Eventos ), utilizando-se
o Método de Particionamento por Eventos.

58
Roteiro para Construção do Modelo Essencial
Construção do Modelo Comportamental

Método de Particionamento por Eventos

Este enfoque vai permitir a geração de um modelo auxiliar num único nível que,
Embora correto, necessitará ser reorganizado e nivelado posteriormente
( Complementação e Revisão do Modelo Comportamental ).

Passos :
1) Desenhe uma bolha para cada evento da Lista , dando a cada uma o número do
evento e um nome de acordo com a resposta do sistema.
2) Ligue às bolhas os fluxos externos de E/S bem como os depósitos de dados
necessários para que cada processo possa gerar as respostas aos eventos.
3) Revise este diagrama quanto à correção e consistência com o Diagrama de
Contexto e a Lista de Eventos.

59
Roteiro para Construção do Modelo Essencial
Construção do Modelo Comportamental

Desenvolvimento do Modelo Comportamental Preliminar

b) Modelo Preliminar de Dados


A elaboração do DFD preliminar possibilita a identificação de
diversos depósitos de dados atuando como interfaces entre
processos assíncronos. Esses depósitos podem ser o ponto de
partida para a confecção do DER.

O processo de modelagem em paralelo passa então a se


constituir em valioso mecanismo de validação entre os dois
modelos ( DFD e DER ).

60
Roteiro para Construção do Modelo Essencial
Construção do Modelo Comportamental

Complementação e Revisão do Modelo Comportamental

a) Modelo Funcional

A transformação do Modelo Preliminar de


Funções no Modelo Funcional definitivo
envolve :

 nivelamento
 revisão final dos DFD’s
 elaboração das especificações de processos

61
Roteiro para Construção do Modelo Essencial
Construção do Modelo Comportamental

Complementação e Revisão do Modelo Comportamental

Exemplo de Nivelamento

A C

A B D
C
agregação
1

E
D
1.1 1.2

B Alfa

X C
1.2.2

1.3 1.2.1
explosão
E Y

D
Alfa 1.2.3

62
Roteiro para Construção do Modelo Essencial
Construção do Modelo Comportamental

Complementação e Revisão do Modelo Comportamental

b) Modelo de Dados

Técnicas para refinamento do modelo preliminar até a


geração do Modelo de Dados definitivo :

 Modelagem em Paralelo ( DFD e DER evoluindo em


conjunto )
 Identificação e Dicionarização de Atributos
 Mapeamento do Modelo Conceitual para o Modelo Lógico
 Normalização

63
1. Sistemas de Informação - Conceitos

2. Análise Estruturada:Visão Geral

3. Modelagem de Sistemas

4. Ferramentas de Modelagem

5. Processos de Construção do Modelo Essencial do Sistema

6. Modelagem Conceitual e Relacional

7. Exemplo prático

64
Modelagem Conceitual e Relacional
Modelo Lógico Relacional

É a derivação do Modelo Entidade Relacionamento para o Modelo


Relacional.
• Adjacência física do Relacionamento.
• Implementação do Ponteiro lógico (Foreign Key)
• Representação Gráfica:

1 N
EntA AB EntB
PKA (PKA,PKB)
PKB
PKA,PKB

Ponteiro lógico na entidade “N” como Chave Estrangeira.

FOREIGN KEY: PKA FKA

65
Modelagem Conceitual e Relacional

 Relacionamento m-n
◦ Todo relacionamento m-n dá origem a dois relacionamentos 1-n através de
uma nova entidade denominada entidade associativa ou entidade-interseção.
◦ Exemplo :

Fornecedor M Fornece
N Peça 1 N Forneci- N 1
Fornecedor Peça
mento

Fornecimento = { @Cod-Fornecedor + @Cod-Peça + Preço + Prazo-Entrega + ... }

• Relacionamento 1-n
A entidade do lado n recebe a chave primária da entidade do lado 1
como chave estrangeira.
1 N
Cliente Pedido

Cliente = { @Cod-Cliente + Nome + Endereço + Tipo + [CPF|CGC] + ... }


Pedido = { @N°-Pedido + Data-Pedido + Valor-Total + ... + Cod-Cliente }

(chave estrangeira)
66
Modelagem Conceitual e Relacional

 Relacionamento 1-1
◦ As duas entidades são realmente distintas ou elas podem ser fundidas
em uma única ?
◦ Se elas possuem a mesma chave primária, deve-se fundí-las.

1 1
Alfa Beta

 Entidades Fracas
◦ A chave primária da entidade-fraca será a concatenação da chave
primária da entidade principal com um atributo determinante da
entidade fraca.
1 N
Funcionário Dependente

Funcionário = { @Cod-Func + Nome-Func + Função + ... }


Dependente = { @Cod-Func + @Nome-Depend + Sexo + Dt-Nasc + ... }

67
Modelagem Conceitual e Relacional

O que é Normalização ?
◦ Técnica de análise e organização de dados
que consiste na decomposição de uma
estrutura de dados não normalizada ( ex. : um
depósito de dados ) em estruturas mais
simples ( formas normais ).
Objetivos da Normalização :
 maior independência dos dados;
 minimização de redundâncias e dos consequentes
riscos de inconsistência;
 maior facilidade de manipulação das estruturas de
dados e de manutenção dos sistemas.

68
Modelagem Conceitual e Relacional

a ) Primeira Forma Normal ( 1FN )

 Uma estrutura está em 1FN quando não apresentar


nenhum grupo repetitivo;
 Estrutura não-normalizada :
Chave A* B C D E F
C D
C D Grupo
Repetitivo

 Para colocar em 1FN devemos remover o grupo


A* B
repetitivo paraEumaFnova estrutura;
Estrutura Original

 Estrutura
A* em 1FN
C* D : Nova Estrutura (grupo repetitivo)

69
Modelagem Conceitual e Relacional

b ) Segunda Forma Normal ( 2FN )

 Uma estrutura está em 2FN quando sua chave não for composta
ou
 quando a estrutura estiver em 1FN e cada atributo não-chave depender
funcionalmente da chave inteira;
 Dependência funcional: Um atributo b é dependente funcional de outro
atributo a se dado o valor de a, o valor de b puder ser determinado.
 Estrutura em 1FN, mas não em 2FN : C depende de A e B
A* B* C D
D depende só de A

 Para colocar em 2FN devemos remover os atributos que dependem só de


uma parte da chave primária para uma nova estrutura;
 Esquema na 2FNA* : B* C Estrutura Original

A* D Nova Estrutura

70
Modelagem Conceitual e Relacional

c ) Terceira Forma Normal ( 3FN )

 Uma estrutura está em 3FN quando estiver em 2FN e não existir nenhum
atributo não-chave dependendo funcionalmente de outro atributo não-
chave.
 Estrutura em 2FN, mas não em 3FN :

A* B C C depende de B que não é chave

 Para colocar em 3FN devemos remover os atributos que dependem de


outros atributos não-chave para uma nova estrutura;
A*
 Esquema na 3FN : B Estrutura Original

B* C Nova Estrutura

71
1. Sistemas de Informação - Conceitos

2. Análise Estruturada:Visão Geral

3. Modelagem de Sistemas

4. Ferramentas de Modelagem

5. Processos de Construção do Modelo Essencial do Sistema

6. Tópicos sobre a Modelagem de Dados

7. Exemplo prático

72
Exemplo Prático: Modelo Ambiental

a) Descrição Narrativa de Objetivos

“O objetivo deste sistema é administrar o


processo de vendas de uma cadeia de lojas de
material de construção envolvendo atendimento
de pedidos, faturamento, contas a receber,
controle de estoque, contas a pagar, gerência de
clientes e fornecedores, atendimento a consultas
e geração de relatórios contábeis.”

73
Exemplo Prático: Modelo Ambiental

b) Diagrama de Contexto
Setor
de
Contabilidade

Relatório Relatório
Vendas Estoque
Pedido
Pedido Atendido
Fatura Cliente Ordem de Compra

Pagamento Sistema Entrega Material


Clientes
Consulta
de Fatura Cobrança Fornecedores
Vendas
Resposta Consulta
Pagamento ao
Fornecedor
Extrato Cliente
Alteração Endereço

74
Exemplo Prático: Modelo Ambiental

c) Lista de Eventos

1 - Cliente faz pedido de um produto


2 - Cliente faz pagamento
3 - Cliente faz consulta sobre algum produto
4 - Cliente necessita extrato mensal ( T )
5 - Cliente solicita alteração de endereço
6 - Fornecedor entrega material
7 - Fornecedor envia fatura de cobrança
8 - Setor de Contabilidade necessita de relat. diário de
vendas ( T )
9 - Setor de Contabilidade necessita de relat. semanal de
estoque ( T )

75
Exemplo Prático: Modelo Comportamental

Desenv. do Modelo Comportamental Preliminar


a ) Modelo Funcional
Método de Particionamento por Eventos

1° Passo: Desenhe uma bolha para cada evento da lista de eventos, dando a cada
uma o número do evento e um nome de acordo com a resposta que o sistema
dará quando este evento ocorrer.

1 2 3 4 5 6 7 8 9
Atender Processar Atender Gerar Alterar Processar Processar Emitir Rel. Emitir Rel.
Pedidos Pagam. Consulta Extrato Endereço Entrega Fatura Vendas Estoque

76
Exemplo Prático: Modelo Comportamental

Desenv. do Modelo Comportamental Preliminar

a ) Modelo Funcional
Método de Particionamento por Eventos

2° Passo: Ligue às bolhas os fluxos externos de entrada e


saída bem como os depósitos de dados necessários para
que cada processo possa gerar as respostas aos eventos.

77
Exemplo Prático: Modelo Comportamental
Pedido
Pedido Entrega
Atendido Material
Fatura 1 6
Estoque
Cliente Atender Processar
Pedidos Entrega
Ordem Ordens-Compra
Compra Clientes
Fatura
Faturas Cliente Cobrança
7
Fornecedores Processar
2
Processar Fatura
Pagam. Pedidos Pagamento
Pagamento Fornecedor
Pagamentos
Consulta
8
3
Emitir Rel.
Atender
Vendas Relatório
Consulta
Resposta Vendas
Consulta Pedidos Produtos

4 9
Extrato Gerar Emitir Rel.
Cliente Extrato Estoque Relatório
Pagamentos Estoque
Clientes
5
Alterar
Alteração Endereço Estoque
Endereço
78
Exemplo Prático: Modelo Comportamental

Complementação e Revisão do Modelo


Comportamental
Nivelamento do Modelo Funcional

–Agregação
Pedido
Entrega Material
Ordens-Compra
1
Pedido 3
Atender Fornecedores
Atendido Administrar
Pedidos Fatura Fornecedor
Fornecedores
Cliente
Estoques (6+7)
(1)
Ordem Compra Pagamento
Fornecedor
Fatura Cliente
Faturas Cliente Pedidos

Pagamento Extrato Cliente


2 4
Alteração Endereço Clientes
Administrar Gerar
Clientes Relatórios Relatório Vendas
Consulta (2+3+5) Produtos (4+8+9)
Relatório Estoque
Resposta Consulta Pagamentos

79
Complementação e Revisão do Modelo Comportamental
Nivelamento do Modelo Funcional ( cont. )
◦ Explosão ( Ex.: processo 1 - ‘Atender Pedidos de Clientes’ )

Clientes Fornecedores
Pedido
Atendido

Pedido 1.1 1.3 1.5


Verificar Liberar Identificar
Aviso
Validade Material Fornecedores
Reposição
Cliente
Rejeição
Pedido Estoque Fornecedores
Cliente Qualificados
OK Ordem
Faturas Cliente
1.6 de
Emitir Compra
1.2 1.4
Pedido Ordem
Verificar Emitir
Aceito Compra
Estoque Fatura
Cliente Fatura
Cliente Ordens de Compra
Rejeição Pedidos

80

Você também pode gostar