Aes 2bim-aula-03-121216082442-phpapp01

73
2012 / 1 Análise Estruturada de Sistemas

Transcript of Aes 2bim-aula-03-121216082442-phpapp01

2012 / 1

Análise Estruturada de Sistemas

Modelo de ContextoO 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.

Professor: Samuel Júnior

Modelo de Contexto

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.

Professor: Samuel Júnior

Modelo de contexto - Como é desenvolvido?

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.

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 externas2º Identificar os fluxos de dados3º Construir a lista de eventos4º Verificar se os eventos estão todos contemplados

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.

Professor: Samuel Júnior

O Sistema de cobrança

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.

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.

Professor: Samuel Júnior

Diagrama de contexto Sistema de cobrança

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.

Professor: Samuel Júnior

Ambiente Externo

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.

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.

Professor: Samuel Júnior

Desenhando um diagrama de contexto

Para desenhar o diagrama de contexto, :

Eventos

Objetivos

Preparar uma lista de eventos.

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

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.

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.

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 eventos temporais eventos temporais 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.

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.

• 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

Estímulos

Lista de Eventos

• A lista de eventos é uma tabela de três colunas

Professor: Samuel Júnior

• 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

Estímulos

• 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

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

Respostas

• 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.

Elaborar lista de eventos

• 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.

Limites do Sistema

• 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.

Estímulos

• A lista de eventos é uma tabela de três colunas:

Lista de Eventos

• 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.

Preenchendo a lista de eventos - Estímulos

• 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:

Respostas

• 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.

Elaborando a lista de eventos

Elaborando a lista 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.

Ocorrência de Eventos

• 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.

Objetivos

• 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?

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.

Não ocorrência de eventos

• 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.

Eventos anteriores

Eventos anteriores

• 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.

Eventos posteriores

Eventos posteriores

• 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.

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.

Complementando o diagrama de contexto

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.

Funções do Sistema

O modelo funcional possui dois componentes:

•Lista de funções essenciais

•Diagrama de fluxo de dados das funções essenciais

Componentes do modelo funcional

• 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.

Funções essenciais e eventos

• 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.

Diagrama de fluxo de dados das funções essenciais

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

Roteiro de elaboração

Roteiro de elaboração

Roteiro de elaboração

Roteiro de elaboração

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.

Funções Essenciais

• 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.

Como Identificar as funções

• A lista de funções essenciais pode ser então preenchida:

Listas de funções essenciais

• 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:

Deposito de Dados

• Considere a lista de funções essenciais do sistema de cobrança:

Exemplo de sistema de cobrança

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?

Função essencial

Exemplo de processar pagamento

Exemplo de processar pagamento

Exemplo de processar pagamento

Exemplo de processar pagamento

Exemplo de processar pagamento

Depósitos de dados e funções essenciais podem ser relacionados em uma tabela, como a que segue:

Depósitos de dados e funções

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.

Diagrama de fluxos de dados

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

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

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.

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.

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.

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.

Como elaborar o diagrama