1 / 44

Análise Estruturada de Sistemas para Aplicações Convencionais

Análise Estruturada de Sistemas para Aplicações Convencionais. Profa. Thelma Elita Colanzi Lopes thelma@apec.unoeste.br Prof. Emerson Silas Dória emerson@apec.unoeste.br. Análise Estruturada de Sistemas.

gwenifer
Download Presentation

Análise Estruturada de Sistemas para Aplicações Convencionais

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Análise Estruturada de Sistemas para Aplicações Convencionais Profa. Thelma Elita Colanzi Lopes thelma@apec.unoeste.br Prof. Emerson Silas Dória emerson@apec.unoeste.br

  2. Análise Estruturada de Sistemas Conjunto de técnicas e ferramentas cujo objetivo é auxiliar na análise e definição de sistemas Conceito fundamental  construção de um modelo do sistema utilizando técnicas gráficas A metodologia envolve a construção “top-down” do sistema por refinamentos sucessivos Não é um método único aplicado constantemente por todos que a usam  Foi e ainda é um método de modelagem de requisitos amplamente usado 

  3. Componentes do modelo lógico

  4. Diagramas de Fluxo de Dados (DFD) Técnica gráfica que descreve o fluxo de informaçãoe as transformações que são aplicadas à medida que os dados se movimentam da entrada para a saída Um sistema baseado em computador é representado como uma transformação de informação

  5. Entidade externa Entidade externa Entidade externa Entidade externa Entidade externa DFD de nível 0Modelo de contexto informação de saída sistema informação de entrada

  6. A B F f6 V f2 Z2 X Z1 A f7 Z f1 f4 B Z3 Y f5 W f3 X2 X X1 Z f41 f43 f45 Y2 Y1 Y f42 f44 Refinamento doFluxo de Informação O DFD de nível 0 é dividido em partições para revelar mais detalhes. A continuidade do fluxo de informação deve ser mantida

  7. Notações Básicas do DFD Fluxo de dados Processo Entidade externa Depósito de dados

  8. Notações Básicas do DFD PROCESSO representa um transformador de informações que resida dentro dos limites do sistema a ser modelado Processo • Exemplos de Processo: • Uma sala repleta de pessoal de escritório computando descontos • Um procedimento de cartão de controle • Uma combinação de atividades manuais e automatizadas

  9. Notações Básicas do DFD ENTIDADE EXTERNA representa um produtor ou consumidor de informações que resida fora dos limites do sistema a ser modelado Entidade externa • Exemplos de Entidade Externa: • Clientes • Empregados • Fornecedores • Departamento de Contas • Receita Federal, etc...

  10. Notações Básicas do DFD FLUXO DE DADOS representa o deslocamento de um item de dado ou coleção de itens de dados Fluxo de dados DEPÓSITO DE DADOS representa um repositório de dados que são armazenados para serem usados em um ou mais processos. Pode ser tão simples quanto um buffer ou tão sofisticado quanto um banco de dados relacional Depósito de dados

  11. Mistura para Bolos Bolo Preparar Bolo Ovos Leite Exemplos de DFD Número-de-telefone-válido Validar Número de telefone Número de Telefone Número-de-telefone-inválido

  12. Transformação das informações Cliente Pedidos dados de cliente Processar Pedido Clientes Faturas com pedidos Consultando informações Depositando informações Dados dos livros Livros Dados do pedido Pedidos Exemplo de DFD

  13. Fluxo de Dados Os Fluxos de Dados representam o deslocamento de informações entre: • um Processo e uma Entidade Externa • dois Processos • um Processo e um Depósito de Dados São ilícitos os Fluxos de Dados entre:  • duas Entidades Externas • dois Dépositos de Dados • uma Entidade Externa e um Depósito de Dados

  14. Diretrizes Básicas 1)O DFD de nível 0 deve descrever o software como uma única bolha 2)O input e o output iniciais devem ser cuidadosamente anotados 3)O refinamento deve iniciar-se isolando-se possíveis processos, itens de dados e depósitos de dados a serem representados no próximo nível 4)Todas as setas e bolhas devem ser rotuladas com nomes significativos 5)A continuidade do fluxo de informação deve ser mantida de nível em nível. 6)Deve ser refinada uma bolha de cada vez.

  15. DFD nível 0 – Diagrama de Contexto

  16. DFD Nível 1

  17. DFD Nível 2 – Explosão do Processo P1

  18. Exemplo: safehome O Software possibilita que: • o dono da casa configure o sistema de segurança quando ele for instalado • monitora todos os sensores ligados ao sistema de segurança • interage com o dono da casa através de um teclado e teclas de função contidas no painel de controle • A cada sensor é atribuído um número e tipo, uma senha de gerente para armar e desarmar o sistema, e número(s) de telefone (entrada para discagem quando o evento sensor ocorrer);

  19. Exemplo: safehome (cont.) • Quando o evento sensor é reconhecido, o software invoca um alarme; depois de um tempo de espera que é especificado pelo dono da casa durante a configuração do sistema, o software disca um nr de telefone de um serviço de monitoramento, produz informação sobre a localização e relata a natureza do evento que foi detectado. O nr será discado novamente a cada 20 segundos até que a conexão de telefone seja obtida; • Toda interação com o SafeHome é gerenciada por um subsistema de interação-usuário que lê a entrada produzida pelo teclado ou teclas de função, edita mensagens de pronto e status do sistema sobre um LCD.

  20. Safehome (painel de controle)

  21. DFD 0 em nível de contexto Display do Painel de controle informações de display Comandos e dados do usuário Painel de controle Software safehome Tipo de alarme Alarme Sensores Nro.telefônico Status do sensor Linha telefônica

  22. Abordagem de Expansão do DFD Efetuar uma "análise gramatical" sobre a narrativa de processamento que descreva a bolha • isolar nomes e locuções nominais, verbos e locuções verbais • os nomes e verbos que são sinônimos ou que não tem nenhuma relação com o processo de modelagem são omitidos • todos os verbos são processos, ou seja, em última análise, eles são representados como bolhas num DFD subsequente

  23. Abordagem de Expansão do DFD • todos os nomes são entidades externas, itens de dados ou depósitos de dados. • nomes e verbos podem estar ligados uns aos outros. Por conseguinte, ao se realizar uma análise gramatical, pode-se gerar muitas informações úteis sobre como prosseguir com o refinamento até o próximo nível

  24. Exemplo O software SafeHomepossibilita que o dono da casaconfigureo sistema de segurança quando ele for instalado, monitoratodos os sensores ligados ao sistema de segurança e interagecom o dono da casa por meio de um teclado e teclas de funçãocontidasno painel de controle do SafeHome. Durante a instalação, o painel de controle é usado para programare configuraro sistema. A cada sensor é atribuídoum número e tipo, uma senha de gerente para armare desarmaro sistema, e número(s) de telefone (entrada para discagemquando o evento sensorocorrer).

  25. Exemplo (cont.) Quando o evento sensor é reconhecido, o softwareinvocaum alarme. Depois de um tempo de espera que é especificado pelo dono da casa durante a configuração do sistema, o software disca um nr de telefone de um serviço de monitoramento, produzinformação sobre a localizaçãoe relataa natureza do evento que foi detectado. O nr será discadonovamentea cada 20 segundos até que a conexão de telefone é obtida. Toda interação com o SafeHome é gerenciada por um subsistema de interação-usuário que lêa entrada produzida pelo teclado ou teclas de função, editamensagens de pronto e status do sistema sobre o LCD.

  26. safehome Dados e comandos do usuário Configurar sistema Dados de configuração Painel de controle Solicitação de configuração Interagir com usuário Informações de configuração Sensor Monitorar sensores

  27. dados de configuração Configurar sistema Informação de configuração Sensores Alarme Linha telefônica Painel de controle comandos e dados do usuário solicitação de configuração dados de configuração Interagir c/ usuário iniciar/parar Ativar/ Desativar o sistema informações de display senha a/d msg. Display do painel de controle Emitir mensagens e status Processar senha mensg. id válida tipo de alarme informação do sensor Monitorar sensores status do sensor nr telefônico DFD - nível 1 de expansão

  28. Especificação de Processo A especificação de processo é usada para descrever todos os processos do DFDque aparecem no nível de refinamento final Pode incluir: • texto narrativo • descrição do algoritmo do processo (usando linguagem de projeto de programas - pdl) • equações matemáticas, tabelas, diagramas ou gráficos

  29. Diagrama de Fluxo de Dados Mensagem de erro Dimensões dos lados de um triângulo Tipo de triângulo Analisar Triângulo Especificação do Processo O processo analisar triângulo aceita valores A, B e C que representam as dimensões dos lados de um triângulo. O processo testa os valores dimensionais para determinar se todos os valores são positivos. Se um valor negativo for encontrado, uma mensagem de erro é produzida. O processo avalia os dados válidos para determinar se as dimensões definem um triângulo válido e, se assim for, qual tipo de triângulo – equilátero, isósceles ou escaleno. O tipo de triângulo determinado é a saída do processo. Exemplo de Especificação de Processo (Narrativa de Processamento)

  30. Analisar Triângulo Especificação do Processo Procedimento analisar triângulo; Ler dimensões dos lados; Se qualquer dimensão for negativa Então Produza mensagem erro Se a maior dimensão for menor que a soma das demais Então Se três lados forem iguais então o tipo é equilátero; Se dois lados forem iguais então o tipo é isósceles; Se nenhum dos lados forem iguais então o tipo é escaleno; Imprima tipo de triângulo; Senão imprima tipo=0, indicação de que não existe nenhum triângulo Exemplo de Especificação de Processo (Português Estruturado)

  31. Problemas que a ambigüidade pode gerar!!! • Irás voltarás nunca morrerás na guerra • Irás , voltarás,nunca morrerás na guerra. • Irás , voltarás nunca , morrerás na guerra.

  32. Diagrama de Fluxo de Dados pressão convertida pressão absoluta do tanque checa e converte pressão pressão máxima Especificação do Processo Se pressão absoluta do tanque > pressão máxima então setar pressão altapara “verdadeiro”; senão setar pressão alta para “falso”; iniciar o algoritmo de conversão x-01a; computar a pressão convertida; fim-se Exemplo de Especificação de Processo

  33. O Dicionário de Dados Proposto como gramática quase formal para descrever o conteúdo de objetos definidos durante a análise estruturada. Geralmente implementado como parte de uma "ferramenta de projeto e análise estruturada" CASE. A maioria dos DD contém as seguintes informações; • Nome: o nome principal do item de dados, do depósito de dados ou de uma entidade externa Alias: outros nomes usados para a primeira entrada • Onde é usado / Como é usado: listagem dos processos que usam o item de dados e como ele é usado. Ex: entrada ao processo, saída do processo, como um depósito de dados, como uma entidade externa • Descrição de Conteúdo: notação para representar o conteúdo • Informação Complementar: outras informações sobre tipos de dados, valores previamente estabelecidos (se conhecidos), restrições ou limitações

  34. Coleção de itens de dados individuais Exemplo DD Item(s) de dados

  35. Notação para Descrição de Conteúdo Possibilita a representação de itens de dados e dados compostos numa das 3 formas fundamentais em que eles podem ser construídos: 1- Como uma seqüência de itens de dados 2- Como uma seleção dentre um conjunto de itens de dados 3- Como um agrupamento repetido de itens de dados Cada entrada de item de dados que é representada como parte de uma seqüência, seleção ourepetição pode, em si mesma, ser outro item de dados composto que precisa de refinamento adicional dentro do dicionário.

  36. Notação para Descrição de Conteúdo

  37. Exemplo: item de dado NRO TELEFÔNICO

  38. Descrição de Conteúdo É ampliada: 1- até que todos os itens de dados compostos tenham sido representados como itens elementares ou 2- até que todos os itens compostos sejam representados em termos conhecidos e inequívocos

  39. Exemplos • Nome= titulo-cortesia+ primeiro-nome+(nome-intermediario) +ultimo-nome • titulo-cortesia=[Sr. | Srta.| Sra. | Dr. | Professor] • primeiro-nome= [caracter-valido] • nome-intermediario= [caracter-valido] • ultimo-nome= [caracter-valido] • Caracter-valido = [A-Z| a-z| 0-9| ‘ | - | | ]

  40. Exemplos • Pedido= nome-cliente + endereco-de-remessa+ {item} • Pedido= nome-cliente + endereco-de-remessa+ 1 {item} 10 • Pedido= nome-cliente + endereco-de-remessa+ (endereco-de-cobranca) + {item} • Sexo= [Masculino | Feminino]

  41. Diagrama de Transição de Estados (DTE) • O Diagrama de Transição de Estados serve para especificar o comportamento do sistema em relação aos eventos que ele recebe. • Elementos do diagrama: estado, transição e ação. • As setas de transição rotuladas indicam como o sistema reage aos eventos quando eles passam pelos estados do sistema.

  42. Elementos do DTE Estado Transição Condição/ Ação

  43. Estados Típicos • Aguardando o usuário introduzir sua senha • Aguardando o próximo comando • Aguardando dados para instrumento • Acelerando o motor • Aquecendo uma mistura química • Misturando ingredientes • Enchendo o tanque • Ocioso

More Related