Anlise Projeto Anlise Estruturada DFD Prof Thales Castro

  • Slides: 35
Download presentation
Análise & Projeto – Análise Estruturada & DFD Prof. Thales Castro

Análise & Projeto – Análise Estruturada & DFD Prof. Thales Castro

Roteiro �Histórico �Vantagens �DFD’s �Exercício & Desvantagens

Roteiro �Histórico �Vantagens �DFD’s �Exercício & Desvantagens

Histórico �Antes da década de 70, documentação complexa �Documentação �Textos através de narrativas longos

Histórico �Antes da década de 70, documentação complexa �Documentação �Textos através de narrativas longos DOCUMENTAÇÃO DE SISTEMAS COMPLEXOS? !

Histórico �Problemas: ◦ Monolíticos: necessário ler todo documento para entender. Dificuldade de compreensão de

Histórico �Problemas: ◦ Monolíticos: necessário ler todo documento para entender. Dificuldade de compreensão de parte do sistema ◦ Redundante: dificuldade de atualizar e rever documento pode gerar inconsistência

Histórico �Problemas: ◦ Ambíguos: usuários, analistas, projetistas e programadores podem ter interpretações diferentes do

Histórico �Problemas: ◦ Ambíguos: usuários, analistas, projetistas e programadores podem ter interpretações diferentes do mesmo documento ◦ Manutenção Extremamente Complicada: documentação pode se tornar obsoleta antes mesmo do final do projeto

Histórico �Consequências: ◦ Documentação inadequada: não se tem idéia do que faz o sistema

Histórico �Consequências: ◦ Documentação inadequada: não se tem idéia do que faz o sistema até mesmo pela saída de analistas e desenvolvedores ◦ Código elegível, mas sua documentação. . . : utilizava-se programação estruturada, mas necessário evolução na forma de documentação do sistema

Histórico �Necessidade técnica: de evolução da especificação ◦ Gráfica ◦ Particionada ◦ Sem Redundância

Histórico �Necessidade técnica: de evolução da especificação ◦ Gráfica ◦ Particionada ◦ Sem Redundância

Análise Estruturada � � � Conjunto de técnicas e ferramentas cujo objetivo é auxiliar

Análise Estruturada � � � 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

Análise Estruturada �Documentação Técnica do sistema, utilizando basicamente: ◦ DFD’s: Diagramas de Fluxo de

Análise Estruturada �Documentação Técnica do sistema, utilizando basicamente: ◦ DFD’s: Diagramas de Fluxo de Dados ◦ DTE’s: Diagramas de Transição de Estados ◦ DER’s: Diagramas de Entidade-Relacionamento ◦ DD’s: Dicionário de Dados

Análise Estruturada �DFD’s ◦ Visualização do fluxo de informações do sistema �DTE’s ◦ Visualização

Análise Estruturada �DFD’s ◦ Visualização do fluxo de informações do sistema �DTE’s ◦ Visualização da transição de estados �DER’s ◦ Visualização do relacionamento dos dados �DD’s ◦ Visualização da especificação das informações do sistema GRANDE VANTAGEM: INTEGRAÇÃO ENTRE OS DIVERSOS DIAGRAMAS

Análise Estruturada �Surgimento diagramas de ferramentas para criação de ◦ Trabalho “artístico” para criar

Análise Estruturada �Surgimento diagramas de ferramentas para criação de ◦ Trabalho “artístico” para criar os diagramas ◦ Diagramas elaborados na fase de análise

Análise Estruturada � Algumas desvantagens: ◦ Politicamente Perigosa: gastar muito tempo com documentação que

Análise Estruturada � Algumas desvantagens: ◦ Politicamente Perigosa: gastar muito tempo com documentação que não gera código e que possivelmente vai ser descontinuado ◦ Vaga distinção modelos lógico/físico: �Lógico => modelo essencial (essência do sistema) �Físico => implementação (aspectos tecnológicos) ◦ Carência de técnicas de modelagem de tempo real: introdução dos DTE’s

Análise Estruturada �Algumas desvantagens: ◦ Manutenção dos diagramas: �Muitas modificações durante a análise �Analista

Análise Estruturada �Algumas desvantagens: ◦ Manutenção dos diagramas: �Muitas modificações durante a análise �Analista deixava diagrama desatualizado �Analistas e projetistas não mantinham os diagramas atualizados ◦ Verificação de consistências: �Feita de forma manual (inspeções visuais)

DIAGRAMA DE FLUXO DE DADOS

DIAGRAMA DE FLUXO DE DADOS

DFD’s � Principal técnica de modelação funcional � Modelagem de sistemas como rede de

DFD’s � Principal técnica de modelação funcional � Modelagem de sistemas como rede de processos funcionais, interligados por “dutos” e utilizando “tanques de armazenamentos” � Pode ser utilizado para descrever processos computadorizados e não-computadorizados

DFD’s � Técnica gráfica que descreve o fluxo de informação e as transformações que

DFD’s � Técnica gráfica que descreve o fluxo de informação e 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

DFD’s � Outras ◦ ◦ terminologias: Diagrama de Bolhas Modelo de Processo Diagrama de

DFD’s � Outras ◦ ◦ terminologias: Diagrama de Bolhas Modelo de Processo Diagrama de Fluxo de Trabalho Modelo Funcional � Composto ◦ ◦ por: Processos Fluxos de Dados Depósito de Dados (tanques de armazenamento) Entidades Externas

DFD’s - Composição Processo Entidade externa Fluxo de dados Depósito de dados

DFD’s - Composição Processo Entidade externa Fluxo de dados Depósito de dados

Notações Básicas do DFD � Processo � � � Representa um transformador de fluxos(informações)

Notações Básicas do DFD � Processo � � � Representa um transformador de fluxos(informações) de entrada em fluxos de saída Reside dentro dos limites do sistema a ser modelado Nome do processo deve descrever sua funcionalidade Também conhecido como bolha, função ou transformação Exemplos de Processo: • Uma representante de vendas computando descontos • Um procedimento de cartão de controle • Uma combinação de atividades manuais e automatizadas

Notações Básicas do DFD EXEMPLOS: Gerar Desconto Calcular Comissão Imprimir Etiqueta Realizar Saque Cadastrar

Notações Básicas do DFD EXEMPLOS: Gerar Desconto Calcular Comissão Imprimir Etiqueta Realizar Saque Cadastrar Aluno

Notações Básicas do DFD � Representam caminhos por onde Fluxo de dados os dados

Notações Básicas do DFD � Representam caminhos por onde Fluxo de dados os dados passam � Representados por setas que indicam o destino do dado � Possuem nomes que devem constar no dicionário � Não modifica os dados durante o transporte � Transportam os dados entre os Fluxos Internos elementos do DFD: Fluxos Externos Fluxos Acesso Memória ◦ Processo ◦ Entidade Externa Processo ◦ Depósito de Dados Processo

Notações Básicas do DFD � Cada fluxo deve ter um único nome � O

Notações Básicas do DFD � Cada fluxo deve ter um único nome � O nome deve identificar os dados transportados � Exemplo: Número de Telefone Validar Número de telefone Número-detelefone-válido Número-detelefone-inválido

Notações Básicas do DFD Representa um repositório de dados que são armazenados [ID] Depósito

Notações Básicas do DFD Representa um repositório de dados que são armazenados [ID] Depósito de dadospara serem usados em um ou mais processos. • Pode representar qualquer repositório, desde um arquivo de pastas em papel a um banco de dados relacional •

Notações Básicas do DFD • • Nomenclatura: • Deve estar sempre no plural •

Notações Básicas do DFD • • Nomenclatura: • Deve estar sempre no plural • Pode receber o nome do fluxo de dados • Ideal ter um identificador do depósito [D 1] Telefones Válidos Exemplo Número de Telefone Validar Número de telefone Número-detelefone-válido [D 2] Telefones Inválidos Número-detelefone-inválido

Notações Básicas do DFD � Também Entidade externa chamados de Terminadores � Representa um

Notações Básicas do DFD � Também Entidade externa chamados de Terminadores � Representa um produtor ou consumidor de informações que resida fora dos limites do sistema a ser modelado � Normalmente um sistema, pessoa, grupo de pessoas ou uma organização externa Exemplos de Entidade Externa: • Clientes • Empregados • Fornecedores • Departamento de Contas • Receita Federal, etc. . .

Notações Básicas do DFD � Nomenclatura: ◦ No plural quando se referir a um

Notações Básicas do DFD � Nomenclatura: ◦ No plural quando se referir a um grupo de pessoas ◦ Deve conter o nome da organização externa ◦ Deve conter a palavra sistema quando se referir a outro sistema externo � Exemplos: Sistema da Receita Federal Diretoria de Negócios Clientes

Exemplo de um DFD Transformação das informações Pedidos Cliente Faturas com pedidos dados de

Exemplo de um DFD Transformação das informações Pedidos Cliente Faturas com pedidos dados de cliente Processar Pedido [D 1] Clientes Dados livros Consultando Depositando informações Dados do pedido [D 3] Pedidos [D 2] Livros informações

Diretrizes para elaboração � Algumas DFD: diretrizes auxiliam a criar um bom ◦ DFD’s

Diretrizes para elaboração � Algumas DFD: diretrizes auxiliam a criar um bom ◦ DFD’s corretos (não incompletos ou inconsistentes) ◦ DFD’s agradáveis (facilmente explorados pelo cliente)

Diretrizes para elaboração � Escolher nomes significativos � Numerar Processos ◦ Evitar escolher processos

Diretrizes para elaboração � Escolher nomes significativos � Numerar Processos ◦ Evitar escolher processos com nome “Fazer Serviço”, “Processar”, etc. . . ◦ Permite localizar os processos no diagrama ◦ Facilita a identificação de processos para uma “explosão” (níveis de DFD)

Diretrizes para elaboração � Diagramas esteticamente agradáveis ◦ Consistência dos elementos (tamanho e forma)

Diretrizes para elaboração � Diagramas esteticamente agradáveis ◦ Consistência dos elementos (tamanho e forma) � Posição dos elementos ◦ Processo origem deve ficar à esquerda ou acima do processo de destino ◦ Depósito de dados devem ser distribuidos no meio do desenho ◦ Entidades externas na borda do desenho �Entrada -> Esquerda ou acima �Saída -> Direita ou abaixo

Diretrizes para elaboração � Evitar ◦ ◦ DFD’s complexos Evitar muitos elementos no diagrama

Diretrizes para elaboração � Evitar ◦ ◦ DFD’s complexos Evitar muitos elementos no diagrama Deve caber facilmente em uma página Deve ser entendido facilmente pelo usuário Deve modelar corretamente as funções do sistema � Logicamente consistente ◦ “Poços sem fundo” (processos que só recebem entradas) ◦ Geração espontânea (processos que não recebem entrada mas geram saídas)

Estudo de Caso � Uma Fábrica de Balas tem seu sistema de vendas baseado

Estudo de Caso � Uma Fábrica de Balas tem seu sistema de vendas baseado em pedidos feitos por seus clientes através de fax, telefone, carta ou através de representantes de vendas que circulam pelos supermercados, bares, mercearias e panificadoras da cidade e região. Para cada pedido é verificado se há quantidade suficiente do produto em estoque para atender imediatamente a solicitação. Se houver, a remessa é feita ao cliente, atualizando o estoque, e é enviada uma cobrança para um dos bancos conveniados, onde o cliente deverá efetuar o pagamento. Quando não houver quantidade suficiente para um atendimento imediato, o pedido será deixado como pendente.

Fábrica de Balas [D 1] Pedidos Pendentes Aguardar Pendência Cliente / Representante Realizar Pedido

Fábrica de Balas [D 1] Pedidos Pendentes Aguardar Pendência Cliente / Representante Realizar Pedido [D 1] Produtos Dados de estoque Verificar Pedido Enviar Remessa Atualizar Estoque Confirmar Pedido Processar Pedido Enviar Cobrança Bancos Conveniados

Exercício � Uma livraria, para atender a seus clientes, recebe diariamente os pedidos de

Exercício � Uma livraria, para atender a seus clientes, recebe diariamente os pedidos de livros dos clientes. Este pedido é analisado para verificar se existe o livro solicitado em estoque. Caso não exista é enviada uma solicitação de compra para o fornecedor do livro no final do dia, contendo todos os pedidos feitos durante aquele dia. Uma vez que a solicitação de compra seja atendida pelo fornecedor, este enviará uma ordem de chegada, com a qual a livraria atualizará o estoque.

FIM Prof. Thales Castro thalescastro@gmail. com

FIM Prof. Thales Castro thalescastro@gmail. com