O documento discute o modelo de contexto da análise estruturada de sistemas. Explica que o modelo de contexto identifica os elementos externos que interagem com o sistema, mostra o fluxo de informação entre o sistema e seu ambiente externo, e estabelece os limites do sistema. Também descreve como desenhar o diagrama de contexto e elaborar a lista de eventos a partir dele.
2. Modelo de Contexto
O que é?
É o instrumento da análise funcional que serve para:
•Identificar os elementos externos que interagem com o sistema.
•Mostrar o fluxo de informação existente entre o sistema e seu ambiente
externo.
•Estabelecer os limites do sistema.
•Identificar os eventos que ocorrem no ambiente externo e que provocam
uma resposta do sistema.
4. Modelo de contexto - Como é
desenvolvido?
O modelo de contexto deve ser desenvolvido em conjunto com os
usuários. Se não for possível, ele pode ser desenvolvido pelos analistas e
submetido à aprovação dos usuários.
De qualquer forma, o modelo de contexto vai se constituir numa
espécie de contrato de prestação de serviços entre analistas e usuários
com relação àquilo que vai ser incluído no sistema. Por isso, todos os
cuidados devem ser tomados para garantir uma correta determinação dos
limites do sistema, do que vai ser e do que não vai ser objeto de análise.
6. Modelo de contexto - Componentes
O modelo de contexto tem dois componentes:
• O diagrama de contexto, que é uma representação gráfica do sistema
com seu ambiente externo.
• A lista de eventos, que relaciona os fatos do ambiente externo que o
sistema obrigatoriamente deve reconhecer.
7. Diagrama de Contexto
Objetivos
Saber como funciona o Sistema de Cobrança, conhecer alguns exemplos
de diagrama de contexto e também alguns limites do Sistema.
1º Identificar as entidades externas
2º Identificar os fluxos de dados
3º Construir a lista de eventos
4º Verificar se os eventos estão todos contemplados
8. O Sistema de cobrança
Considere um sistema de cobrança de uma organização. Suponha que este
sistema seja bastante simples.
Ele deve ser capaz de:
• Receber os pagamentos feitos pelos clientes.
• Emitir os recibos dos pagamentos realizados.
• Emitir extratos periódicos para os clientes.
• Emitir relação de clientes inadimplentes para uso do Departamento
Jurídico.
10. Diagrama de Contexto
Neste exemplo, podemos destacar que:
• O cliente é origem e destino das informações que o sistema recebe e gera.
• O Departamento Jurídico é o destino das informações geradas pelo sistema.
• O sistema recebe informações relativas aos pagamentos feitos pelo cliente.
• O sistema emite os recibos e os extratos para os clientes.
• O sistema emite a relação de inadimplentes para o Departamento Jurídico.
11. Diagrama de contexto
Sistema de cobrança
Veja o diagrama de contexto do sistema de cobrança:
Você pode observar que:
O cliente e o Departamento Jurídico são as entidades externas, origem
e destino das informações que o sistema recebe ou emite.
Pagamento é um fluxo de dados recebido pelo sistema. Nós chamamos
este tipo de fluxo de dados de "fluxo de entrada" ou de "estímulo".
Recibo, extrato e relação de inadimplentes são fluxos de dados emitidos
pelo sistema. São "fluxos de saída" ou "respostas" do sistema.
13. Ambiente Externo
O cliente e o Departamento Jurídico não fazem parte do sistema, mas
interagem com ele, fornecendo ou recebendo dados. Constituem o que se
denomina o "ambiente externo" do sistema.
Se quisermos, podemos considerar que o Departamento Jurídico é parte
integrante do sistema de cobrança. Sendo assim, ele deixa de fazer parte do
ambiente externo e não aparece mais no diagrama de contexto como entidade
externa.
Limites do sistema
Como podemos ver, a inclusão ou não de uma entidade externa e os fluxos de
dados correspondentes podem aumentar ou diminuir a abrangência de um
sistema.
Neste exemplo, o que está em discussão é se o Departamento Jurídico e as
funções por ele executadas fazem parte ou não do sistema. Analista e cliente
devem chegar a um consenso a respeito disto e o diagrama de contexto
refletirá o resultado da discussão.
15. Entidades de Fluxos Externos
Objetivos
Desenhar um diagrama de contexto para um sistema.
Uma entidade externa é um elemento do ambiente externo ao
sistema que:
• Gera informações que dão entrada no sistema.
• Recebe informações que são geradas pelo sistema.
16. Entidades de Fluxos Externos
Fluxos de dados são dados em movimento. Podem ser:
Entradas ou estímulos para o sistema.
Saídas ou respostas do sistema.
As entidades externas são a origem ou destino dos fluxos de dados.
17. Desenhando um diagrama de contexto
Para desenhar o diagrama de contexto, :
Professor: Samuel Júnior
19. Eventos
Eventos são fatos que ocorrem fora do sistema e têm o poder de
fazer com que ele reaja e produza respostas.
Imagine o sistema como um ser que fique o tempo todo dormindo e
só é acordado quando alguma coisa acontece.
Existem dois tipos de eventos:
• Eventos externos
• Eventos temporais
20. Eventos Externos
Eventos externos são fatos que ocorrem fora do sistema e que fazem
o sistema reagir.
Por exemplo:
Cliente paga conta
Um evento externo:
• Acontece fora do sistema
• Gera um estímulo que "acorda" o sistema
• Provoca uma resposta do sistema.
21. Eventos Temporais
Eventos temporais não estão relacionados a fatos externos. Estão
relacionados à passagem do tempo.
Exemplo:
• É hora de emitir extratos.
Outro exemplo de evento temporal:
• É hora de emitir relação de inadimplentes.
22. Nomeando Eventos
Os eventos externos são nomeados com uma frase que indica a ação que está sendo
executada fora do sistema.Por exemplo:
Cliente efetua pagamento
Na maioria dos casos, a frase que dá nome ao evento é formada assim:
O sujeito é a entidade externa
O verbo indica a ação executada
O objeto é o nome do fluxo de dados
O nome dos eevveennttooss tteemmppoorraaiiss sempre começa pela expressão
É hora de ...
Seguida da ação que o sistema deverá executar:
• É hora de emitir extratos periódicos
• É hora de emitir relação de inadimplentes.
23. Limites do Sistema
• Objetivos
Conhecer os conceitos de estímulo e
resposta e como eles se relacionam com
os eventos e elaborar uma lista de
eventos, a partir do diagrama de contexto.
24. Estímulos
• Estímulos são os fluxos de dados que
entram no sistema. Estes fluxos de
dados informam ao sistema que um
evento externo ocorreu.
• No exemplo ao lado, o fluxo de
dadosPagamento representa um
estímulo recebido pelo sistema. Este
estímulo indica ao sistema a
ocorrência do evento Cliente efetua
pagamento.
• Este fluxo de dados contém todos os
dados relativos ao pagamento
efetuado e habilita o sistema a dar a
resposta adequada ao evento
ocorrido. No caso, a resposta do
sistema ao estímulo recebido é a
emissão do recibocorrespondente.
Professor: Samuel Júnior
25. Lista de Eventos
• A lista de eventos
é uma tabela de
três colunas
Professor: Samuel Júnior
26. Estímulos
• Os estímulos devem ser
colocados na lista de
eventos, junto ao evento
correspondente.
• Eventos
externos sempre estão
ligados a um estímulo.
• Eventos
temporais nunca geram
um estímulo.
Professor: Samuel Júnior
27. Respostas
• As respostas são fluxos
de dados de saída do
sistema. Eles são
gerados quando um
evento, externo ou
temporal, acontece.
Professor: Samuel Júnior
28. Respostas
• As respostas devem ser
colocadas na lista de
eventos na coluna
correspondente,
vinculadas ao evento que
dá origem a elas.
Professor: Samuel Júnior
29. Elaborar lista de eventos
• Para elaborar a lista de eventos a partir do
diagrama de contexto, siga os passos
abaixo:
• Para descobrir os estímulos (fluxos de
dados de entrada) fazemos as
perguntas: Que fato ou acontecimento
externo gera este estímulo? eO que a
entidade externa faz que gera este
estímulo?
• No exemplo, o estímulo pagamento é o
resultado do fato Cliente efetua
pagamento, que é o evento externo
correspondente.
• Indique as respostas (fluxos de saídas)
correspondentes aos eventos já
identificados. No exemplo, o fluxo de
dados Recibo é a resposta ao
evento Cliente efetua pagamento.
• Identifique os eventos temporais que geram
as demais respostas que ainda não foram
inseridas na tabela.
30. Limites do Sistema
• Objetivos
Conhecer os conceitos de estímulo e resposta e como eles
se relacionam com os eventos e elaborar uma lista de
eventos, a partir do diagrama de contexto.
31. Estímulos
• Estímulos são os fluxos de dados que entram
no sistema. Estes fluxos de dados informam
ao sistema que um evento externo ocorreu.
• No exemplo ao lado, o fluxo de dados
Pagamento representa um estímulo recebido
pelo sistema. Este estímulo indica ao sistema
a ocorrência do evento Cliente efetua
pagamento.
• Este fluxo de dados contém todos os dados
relativos ao pagamento efetuado e habilita o
sistema a dar a resposta adequada ao evento
ocorrido. No caso, a resposta do sistema ao
estímulo recebido é a emissão do recibo
correspondente.
32. • A lista de eventos é uma tabela de três
colunas:
Lista de Eventos
33. Preenchendo a lista de eventos - Estímulos
• Os estímulos devem ser
colocados na lista de
eventos, junto ao evento
correspondente.
• Eventos externos sempre
estão ligados a um
estímulo.
• Eventos temporais nunca
geram um estímulo.
34. Respostas
• As respostas são fluxos de dados de
saída do sistema. Eles são gerados
quando um evento, externo ou
temporal, acontece.
• No exemplo, as respostas são:
35. Elaborando a lista de eventos
• Para elaborar a lista de eventos a partir do diagrama de contexto, siga os passos
abaixo:
• Para descobrir os estímulos (fluxos de dados de entrada) fazemos as perguntas: Que
fato ou acontecimento externo gera este estímulo? e O que a entidade externa faz
que gera este estímulo?
• No exemplo, o estímulo pagamento é o resultado do fato Cliente efetua pagamento,
que é o evento externo correspondente.
• Indique as respostas (fluxos de saídas) correspondentes aos eventos já identificados.
No exemplo, o fluxo de dados Recibo é a resposta ao evento Cliente efetua
pagamento.
• Identifique os eventos temporais que geram as demais respostas que ainda não foram
inseridas na tabela.
• Eventos temporais não estão relacionados a estímulos.
37. Ocorrência de Eventos
• Para ter certeza de que a lista de eventos está completa,
submetemos cada evento às seguintes indagações:
– 1. O que acontece se este evento não ocorrer?
– 2. Que evento acontece antes deste?
– 3. Que evento acontece depois deste?
• As respostas a estas perguntas podem indicar eventos que provocam
resposta do sistema e que também devem constar da lista de
eventos.
38. Objetivos
• Aprender a avaliar se a lista de eventos está completa e, se
necessário, complementá-la, bem como o diagrama de contexto.
• Este passo é muito importante.
• Se algum evento for esquecido ou se o diagrama de contexto não
estiver completo, os limites do sistema não estarão corretamente
estabelecidos. Como resultado, poderá haver desentendimentos entre
o analista e o usuário a respeito do que o sistema deve ou não fazer.
39. Não ocorrência de eventos
• Considere a lista de eventos do sistema de cobrança:
• Considere o seguinte evento:
Cliente efetua pagamento
• Faça a seguinte pergunta:
O que acontece se este evento não ocorrer?
40. Não ocorrência de eventos
• A resposta pode ser:
– O sistema deve emitir uma carta de cobrança.
• Isto dá origem a um novo evento temporal:
– É hora de emitir cartas de cobrança.
41. Eventos anteriores
• Outra pergunta:
Que evento acontece antes deste?
• Faça esta pergunta em relação ao evento:
Cliente efetua pagamento.
• Para que o cliente possa efetuar o pagamento, ele precisa receber
antes um boleto de cobrança.
• Neste caso, precisamos de um evento temporal:
É hora de emitir boletos de cobrança.
43. Eventos posteriores
• Mais uma pergunta:
Que evento acontece depois deste?
• Vamos aplicar esta pergunta ao evento:
É hora de emitir cartas de cobrança.
• O que acontece depois que as cartas de cobrança forem enviadas, se
o cliente não efetuar o pagamento?
• Enviar o título para protesto?
• Se este for o caso, temos mais um evento:
É hora de enviar títulos para protesto.
45. Complementando o diagrama de contexto
• Todos os novos estímulos e respostas identificados precisam ser
incluídos no diagrama de contexto. Neste exemplo, descobrimos três
novas respostas, que precisam constar do diagrama de contexto.
46. Complementando o diagrama de contexto
• Todos os novos estímulos e respostas identificados precisam ser
incluídos no diagrama de contexto. Neste exemplo, descobrimos três
novas respostas, que precisam constar do diagrama de contexto.
47. Funções do Sistema
O modelo funcional define as funções que o sistema vai executar. Aqui,
ainda usamos a visão lógica, isto é, damos ênfase ao que o sistema vai
fazer, independentemente de como. Por isso, chamamos as funções
identificadas de funções essenciais do sistema. O modelo funcional será
composto pela lista de funções essenciais e por uma série de diagramas,
cada um mostrando como a informação flui entre as funções do sistema
e as entidades externas.
Objetivos
•Conhecer o modelo funcional e seus componentes.
•Saber elaborar a lista de funções essenciais e o diagrama de fluxo de
dados dessas funções.
48. Componentes do modelo funcional
O modelo funcional possui dois componentes:
•Lista de funções essenciais
•Diagrama de fluxo de dados das funções essenciais
49. Funções essenciais e eventos
• O primeiro componente é a lista de funções essenciais. Ela é
construída a partir da lista de eventos que faz parte do modelo de
contexto.
• Uma função essencial é um componente do sistema de informação
que fornece uma resposta completa a um evento. Haverá uma função
essencial para cada evento da lista de eventos.
50. Diagrama de fluxo de dados das funções essenciais
• O outro componente é o diagrama de fluxo de dados (DFD) das
funções essenciais, que é uma representação gráfica da interação
das funções essenciais com seu ambiente externo.
51. Roteiro de elaboração
Para elaborar o modelo funcional, seguimos o roteiro abaixo:
1. Construir a lista de funções essenciais
2. Construir o DFD das funções essenciais
3. Construir, se necessário, um DFD de decomposição para cada função
essencial
55. Funções Essenciais
Introdução
•Uma função essencial é um componente do sistema de informação que
fornece resposta completa a um estímulo recebido de um evento
ocorrido no seu ambiente externo.
•Isto significa que, quando um evento acontecer e o sistema "acordar",
uma série de ações será executada, até que nada mais seja possível ou
necessário fazer e, então, o sistema voltará a "dormir".
•Estas ações executadas constituem uma função essencial.
56. Como Identificar as funções
• Para identificar as funções essenciais, procedemos da seguinte
forma:
• Para cada item constante da lista de eventos devemos fazer a
seguinte pergunta: Quando este evento acontece, o que o sistema
deve fazer?
• A resposta a esta pergunta é o nome da função essencial
correspondente.
• O nome de uma função essencial sempre começa com um verbo no
infinitivo.
57. Listas de funções essenciais
• A lista de funções essenciais pode ser então preenchida:
58. Deposito de Dados
• Depósitos de dados são locais nos quais os dados são armazenados.
Estes dados são atualizados e recuperados pelas funções do
sistema.
• Eles representam conjuntos de informações relacionadas que
precisam ser armazenadas pelo sistema durante o intervalo entre a
ocorrência dos eventos.
• Este é o símbolo que usamos para representar um depósito de
dados:
59. Exemplo de sistema de cobrança
• Considere a lista de funções essenciais do sistema de cobrança:
60. Função essencial
1. Pergunte:
A respeito de que coisas o sistema deverá guardar informações?
2. Para cada função essencial, pergunte:
Quando esta função é executada, que dados são armazenados?
Quando a função Processar pagamento é executada, que dados são
armazenados?
3. Para cada função essencial, pergunte:
Que dados obtidos e armazenados por outras funções são
necessários para esta função executar?
66. Depósitos de dados e funções
Depósitos de dados e funções essenciais podem ser relacionados em
uma tabela, como a que segue:
67. Diagrama de fluxos de dados
O diagrama de fluxo de dados mostra como os dados fluem das
entidades externas para as funções essenciais do sistema, destas
para os depósitos de dados e para as entidades externas.
68. Como elaborar o diagrama
Para desenhar o diagrama, levamos em conta a lista de eventos e a lista
de depósitos de dados.
Para elaborar o diagrama, devemos seguir os seguintes passos:
1. Disponha no gráfico as funções essenciais
69. Como elaborar o diagrama
Para desenhar o diagrama, levamos em conta a lista de eventos e a lista
de depósitos de dados.
Para elaborar o diagrama, devemos seguir os seguintes passos:
1. Disponha no gráfico as funções essenciais
70. Como elaborar o diagrama
2. Disponha no gráfico os estímulos e as respostas. Coloque também as
entidades externas que aparecem no diagrama de contexto. Se
necessário, duplique no gráfico as entidades externas para evitar o
cruzamento de linhas.
71. Como elaborar o diagrama
2. Disponha no gráfico os estímulos e as respostas. Coloque também as
entidades externas que aparecem no diagrama de contexto. Se
necessário, duplique no gráfico as entidades externas para evitar o
cruzamento de linhas.
72. Como elaborar o diagrama
3. Inclua no diagrama os depósitos de dados. Se necessário, duplicar no
gráfico os depósitos de dados para evitar o cruzamento de linhas.
73. Como elaborar o diagrama
3. Inclua no diagrama os depósitos de dados. Se necessário, duplicar no
gráfico os depósitos de dados para evitar o cruzamento de linhas.