Modelagem Funcional de Sistemas de Informação Análise Essencial.
Transcript of Modelagem Funcional de Sistemas de Informação Análise Essencial.
Modelagem Funcional de Sistemas de Informação Análise Essencial
Modelagem Funcional de Sistemas de Informação Análise Essencial
“Mais difícil do que definir algo,
é decidir o que deve ser definido.”Fred Brooks, The Mythical Man-Month,
Addison Wesley
Bibliografia Indicada para o Curso
• Análise EssencialS. Pompilho, Editora Ciência Moderna, RJ
• Análise Estruturada ModernaEdward Yourdon, Editora Campus, RJ
Visão TridimensionalVisão Tridimensional dos dos Sistemas Sistemas de de Informação Informação
Dados
Funções
Eventos
sistemas dearquivos
aplicaçõesde controle
aplicaçõesde processos
aplicações orientadasa dados e funções(exemplo: bancos)
aplicações orientadasa dados e eventos
(exemplo: monitoração depacientes em hospital)
aplicações orientadasa eventos e funções
(exemplo: piloto automático)
?
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
•Modelo EssencialApresenta o sistema em um grau de abstração independente de restrições tecnológicas. Corresponde ao modelo lógico proposto da análise estruturada.
•Modelo de ImplementaçãoApresenta o sistema em um grau de abstração dependente de restrições tecnológicas, sendo derivado do modelo essencial. Corresponde ao modelo físico proposto da análise estruturada.
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
• Os eventos são a pedra fundamental dos sistemas, e a especificação de um sistema deve começar pela identificação dos eventos.
• Pontos de Vista:– Abordagem =>funções
dados
controle
– Grau de Abstração => nível essencial
nível de implementação
VANTAGENS DA ANÁLISE ESSENCIALVANTAGENS DA ANÁLISE ESSENCIAL
Começa pelo modelo essencial, o que corresponde ao modelo lógico proposto da análise estruturada.
– Aborda as três perspectivas do problema (funções,
dados e controle).
– Particiona o sistema em eventos.
– Permite a construção dos modelos de dados e de
funções em paralelo.
ANÁLISE DE EVENTOSANÁLISE DE EVENTOS
Um sistema pode ser entendido como uma caixa preta, que a partir de certos estímulos, produz as respostas apropriadas.
Eventos
Estímulos
Sistema
Respostas
ANÁLISE DE EVENTOSANÁLISE DE EVENTOS
Evento é um acontecimento do mundo exterior, que requer resposta do sistema.
– Estímulo é a conseqüência da ocorrência do evento. É
o que chega ao sistema e ativa a execução de uma
função.
– Resposta é o resultado gerado pelo sistema, em
resposta a um estímulo.Pode ser:
fluxo de dado para entidade externa
manutenção dos dados mantidos em dep. de dados
EXEMPLO DE EVENTOSEXEMPLO DE EVENTOS
– Secretaria cadastra os cursos
– Cliente entrega pedido
– Vendedor efetua venda
– Relatório de vendas é emitido
– Gerência autoriza compra
TIPOS DE ESTÍMULOSTIPOS DE ESTÍMULOS
– Fluxo de dados
– Fluxo de controle
– Temporal
Os eventos serão classificados de acordo com o tipo de estímulo que enviam ao sistema
ANÁLISE ESSENCIALANÁLISE ESSENCIALEvento orientado por fluxo de dado
– O estímulo é a chegada ao sistema de um fluxo de
dado enviado por uma entidade externa.
–Obrigatoriamente deve ser gerada uma resposta, no
entanto ela pode não ser externa, ou seja, pode ser a
atualização de um depósito de dados.
–Sujeito + verbo transitivo (voz ativa) + complemento
verbal
–Exempos: Cliente paga prestação...Cliente cancela
pedido
ANÁLISE ESSENCIALANÁLISE ESSENCIALEvento orientado por controle
– O estímulo é a chegada ao sistema de um fluxo de controle, oriundo de uma entidade externa, ou de uma função interna do sistema.
– Pode ou não ser gerada uma resposta externa.
–Sujeito + verbo transitivo (voz ativa) + complemento verbal
–Sujeito + verbo (voz passiva)
–Exempos:• Diretoria autoriza pagamento de fatura;
• 8º cheque é emitido;
EVENTO ORIENTADO POR TEMPO EVENTO ORIENTADO POR TEMPO (TEMPORAL)(TEMPORAL)
O estímulo é a chegada ao sistema da informação de ter decorrido um determinado intervalo de tempo.
– Pode ou não ser gerada uma resposta externa.
–Exemplo:
• Relatório contábil é emitido
A LISTA DE EVENTOSA LISTA DE EVENTOS
Lista de Eventos sob a forma de Tabela
– Uma forma bem elaborada de apresentar a lista de
eventos, é sob a forma de uma tabela.
– As colunas são as seguintes:
Nº do evento
Nome do Evento
RespostasTipo Estímulo Ação
FLUXOS E PROCESSOS DE CONTROLEFLUXOS E PROCESSOS DE CONTROLE
Um fluxo de controle pode ser originado ou de uma entidade externa ou de um processo interno ao sistema.
– Um processo de controle não modifica dados. Suas
entradas e saídas são fluxo de controle.
–Os fluxos e processos de controle não são representados
no DFD tradicional.
– Para os casos em que o entendimento dos processos de
controle seja fundamental para o entendimento do sistema,
pode ser possível a utilização de DFD’s estendido.
FLUXOS E PROCESSOS DE CONTROLEFLUXOS E PROCESSOS DE CONTROLE
FornecedorEmitir
Encomenda
Produtos
Encomendas
EncomendaControlarEncomendas Ativar
emissão de Encomendas
Nível de ressuprimentoatingido
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
O MODELO ESSENCIALO MODELO ESSENCIAL
Descreve o Sistema de maneira independente de restrições tecnológicas = > tecnologia perfeita.
– Elabora o modelo ideal, descrevendo quais os requisitos
que o sistema deve atender, sem se preocupar em como
o sistema vai atender.
– É composto de dois modelos:
• Modelo Ambiental
• Modelo Comportamental
COMPOSIÇÃO DO COMPOSIÇÃO DO MODELO ESSENCIALMODELO ESSENCIAL
- Modelo Comportamental => Voltado para dentro do
sistema. Mostra como o sistema deve reagir aos estímulos
oriundos do ambiente externo.
- Modelo Ambiental => Voltado para fora do sistema.
Mostra a interação do sistema com os elementos externos a
ele.
O MODELO AMBIENTALO MODELO AMBIENTAL
Os componentes do Modelo Ambiental são:
Declaração dos Objetivos do Sistema
Diagrama de Contexto do Sistema
Lista de Eventos que afetam o Sistema
Normalmente, uma boa seqüência para se chegar a cada um dos componentes do modelo ambiental seria: construir a lista de eventos, desenhar o diagrama de contexto, e finalmente, elaborar a Declaração de Objetivos do Sistema.
LISTA DE EVENTOS DO SISTEMALISTA DE EVENTOS DO SISTEMA
•As finalidades de um sistema são atender a determinadas necessidades, que são decorrentes de eventos que ocorrem no mundo exterior ao sistema.
•A construção da Lista de Eventos está intrinsicamente ligada às finalidades de um sistema.
DIAGRAMA DE DIAGRAMA DE CONTEXTO DO SISTEMACONTEXTO DO SISTEMA
•O objetivo do Diagrama de Contexto é representar o sistema por um único processo e suas interações com as entidades externas.
•A construção da Diagrama de Contexto é feita a partir dos DFD’s de resposta aos eventos.
DIAGRAMA DE CONTEXTODIAGRAMA DE CONTEXTO
Diagrama de Contexto do Sistema
A construção do Diagrama de Contexto deve seguir as seguintes etapas:
* Desenhar a bolha que representa o sistema, com o nome do sistema no interior.
* Para cada evento, representar as entidades externas envolvidas, e os fluxos que entram e saem do sistema.
* As entidades externas repetidas devem representadas apenas uma vez.
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
E1 P1F1 (R1)
EVENTO 1
E2 P2F2
R2E3EVENTO 2
(R3)
E3 P3F3
R6E1
(R4)
(R5) EVENTO 3
Entidade
Fluxo
Processo
Resposta
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
E1F1
E2
F2
R2E3
F3
R6 SISTEMA
DECLARAÇÃO DOS OBJETIVOSDECLARAÇÃO DOS OBJETIVOS
•A Declaração dos Objetivos do Sistema deve ser elaborada em poucas frases, simples e precisas, em linguagem destituída de jargão técnico.
•Deve concentrar-se em o que o sistema deve fazer, sem se preocupar em como será deve ser feito.
•Sua construção é facilitada se forem considerados a Lista de Eventos e o Diagrama de Contexto do Sistema.
MODELO COMPORTAMENTALMODELO COMPORTAMENTAL
Os componentes do Modelo Comportamental são:
DFD’s particionados por evento
DFD preliminar
DFD de nível zero
Devemos ter em mente que o objetivo do modelo comportamental é entender o funcionamento interno do sistema. Para isso,devemos
verificar quais são as bolhas primitivas, para que possamos chegar às mini-especificações dos processos primitivos.
PARTICIONAMENTO POR EVENTOSPARTICIONAMENTO POR EVENTOS
DFD’s particionados por Evento
• Também conhecido como DFD de resposta aos eventos. Para cada evento, representar os processos, as entidades externas, os depósitos de dados e os fluxos na forma de um DFD. • A inclusão dos depósitos de dados se faz necessária porque os eventos podem ser assíncronos, ou seja, os dados produzidos por um evento não são necessariamente utilizados no mesmo instante por outro evento.
Evento2Evento2
Ação RespostasN° Evento Tipo Estímulo
2Cliente
Cancela PedidoF Cod-pedido Cancelar
PedidosI:G-pedidos-cpE: Rel-Ped-Canc
CancelarPedidos
R-Pedidos-cp
G-Pedidos-cpCliente
Rel-Ped-Canc
2
EVENTO - FLUXO
GerenteComercial
DiretoriaDiretoria
G-Pedidos-cp
Cod-pedido
Evento 3Evento 3
Ação Respostas N° Evento Tipo Estímulo
3Matr são
canceladasT ----------- Cancelar
matriculasI:G-matriculas-cmE: Rel-Mat-Canc
Matriculas
CancelarMatriculas
R-matriculas-cm
G-Matriculas-cm SecretariaRel-Mat-Canc
3
EVENTO TEMPORAL
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
E1 P1F1 (R1)
EVENTO 1(D1)
E2 P2F2
R2E3EVENTO 2
(R3)
(D2)
E3 P3F3
R6E1
(R4)
(R5) EVENTO 3(D1)
(D3)
D.F.D. PRELIMINARD.F.D. PRELIMINAR
•A Análise Estruturada preconiza uma abordagem de projeto top-down, ou seja, partindo-se do Diagrama de Contexto chega-se ao DFD de nível zero e aos DFD’s de nível mais baixo,pela explosão dos processos.
•A Análise Essencial utiliza a abordagem midle-out. Parte de uma situação intermediária (o DFD preliminar), para os níveis mais baixos (abordagem top-down) e para o Diagrama de Nível Zero (abordagem botton-up)
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
DFD Preliminar
•O DFD Preliminar é obtido integrando-se todos os DFD’s dos eventos em um único DFD.
•Os elementos repetidos (entidades externas, depósito de dados) devem ser representados apenas uma vez.
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
E1 P1F1 (R1)
EVENTO 1(D1)
E2 P2F2
R2E3EVENTO 2
(R3)
(D2)
E3 P3F3
R6E1
(R4)
(R5) EVENTO 3(D1)
(D3)
ANÁLISE ESSENCIALANÁLISE ESSENCIAL
E1 P1F1 (R1)
E3
P2F2
R2
E2
(R3)
P3F3
R6
(R5)
(R4) (D1)
(D2)
(D3)
DFD Preliminar
DFD DE NÍVEL ZERODFD DE NÍVEL ZERO
•O DFD de nível zero representa o nível de DFD imediatamente abaixo do nível do Diagrama de Contexto.
•Na abordagem Top-down, é o segundo DFD obtido, logo após o Diagrama de Contexto.
•Na abordagem adotada pela AE (midle-out), como já foi visto, primeiro é obtido o DFD preliminar. Como o DFD preliminar é de um nível mais baixo, devemos grupar funções para chegarmos ao DFD de Nível Zero.
D.F.D. DE NÍVEL ZEROD.F.D. DE NÍVEL ZERO
•Um critério de agrupamento bastante razoável considera o grau de acoplamento e de coesão entre as funções.
•Quanto maior a coesão entre as funções agrupadas, menor será o grau de acoplamento entre os processos obtidos.
•Na prática, como as funções verificadas pertencem a eventos diferentes, uma maneira bem coerente de verificar a ligação entre eles é através dos depósitos de dados que são acessados.
Fim