Análise Estruturada Prof: JOSE CARLOS MILLAN
Análise Estruturada Características da Metodologia utiliza linguagem gráfica com suporte de texto; fornece uma visão top-down e particionada do sistema; possibilita eliminar redundâncias; os instrumentos conseguem ser transparentes ao leitor
Análise Estruturada ... No final da década de 70, a análise estruturada possibilitou especificar os requisitos lógicos do sistema em um modelo gráfico de alto nível, capaz de ser compreendido pelos usuários e de ser mapeado para a arquitetura do projeto. O modelo gráfico introduzido pela análise estruturada representa os dados utilizados por um sistema, os fluxos que transportam e os processos que os transformam.
Análise Estruturada ... A análise estruturada é uma abordagem sistemática para fazer a análise de um sistema de modo a produzir a uma especificação funcional. A especificação funcional define as funções e estruturas de dados que constituem o sistema. A análise estruturada usa técnicas: gráficas simples, modulares, complementares É necessário que o analista saiba se comunicar com os clientes e garantir clareza de ideias colocadas por eles.
PROCESSO Componentes de sistemas que transformam da-dos de entrada em dados de saída. “Caixa preta”: ligações de entrada e de saída (interfaces); se conhecermos os elementos de entrada, podemos determinar exatamente a saída que será produzida em função deles; em suma: sabemos o que é feito, não necessariamente como é feito.
Componentes do Modelo ESTRUTURADO: Diagrama de Fluxo de Dados (DFD): representa-ção gráfica da rede de processos interligados; Dicionário de Dados: descrição das interfaces; Especificação dos Processos: descrição do que cada processo faz.
Diagrama de Fluxo de Dados (DFD): forma gráfica de mostrar: a interdependência dos processos que compõem um sistema; os fluxos de dados entre elas. arquivos lógicos de dados - depósito de dados; entidades externas.
CARACTERÍSTICAS DE UM DFD Simplicidade (intuitivo) - acessível ao utilizador / cliente Abordagem “Top-Down”, dá uma visão do sistema do geral para o particular apresentando os detalhes através de níveis hierárquicos O Desenvolvimento é iterativo - aperfeiçoamento sucessivo de uma versão inicial O DFD não é procedimental não tenta representar processamento condicional ou ciclos com esta forma diagramática. Simplesmente mostra o fluxo dos dados. não há indicação explicita da sequência de processamento ou condição lógica é fornecida pelo diagrama Os DFDs representam fluxo de informação e não fluxo de controle - O DFD não é um fluxograma O DFD não contém informação temporal
DFDs desenvolvidos em níveis hierárquicos Um DFD não deve ter mais de 7+/-2 processos (folha A4) - limite de elementos que a mente humana consegue visualizar simultaneamente O DFD de um Sistema de Informação é desenvolvido de acordo com uma decomposição hierárquica nos seguintes níveis (diagramas): Diagrama de Contexto visão geral do sistema. É o diagrama de visão mais elevada e consiste num único processo representando o sistema inteiro e os fluxos de dados representam as interfaces com o exterior (Entidades Externas) Diagrama 0 - visão global do sistema. Diagrama que representa uma visão de alto nível dos principais processos do sistema e as principais ligações entre esses processos. DFDs de nível n-1 - detalhe do sistema Sistema de complexidade baixa => 2 a 3 níveis Sistema de complexidade média => 3 a 6 níveis Sistema de complexo => 5 a 8 níveis
Algumas considerações: Os elementos componentes de um DFD são: processos; fluxos de dados; depósitos de dados; entidades externas. componentes externos: entidades externas; componentes internos: processos, fluxos de dados e depósitos.
Algumas considerações: componentes ativos: processos componentes estáticos: depósitos de dados. as informações num DFD se apresentam: em movimento: nos fluxos de dados. estáticas: nos depósitos de dados.
Algumas considerações: um fluxo de dados liga: uma entidade externa a um processo; um processo a um depósito de dados; um processo a outro processo um fluxo de dados representa um conjunto de dados, não o seu suporte material
Fluxo de Dados: Registrar nota de débito Inf. notas de
Depósito de dados: dados-notas de Registrar nota de débito Processar nota de débito Notas de débito Inf-débito
Departamento de cobrança Entidades externas: Dados. Nota de débito Registrar nota de Processar Notas de débito Nota de débito Departamento de cobrança Sistema de co- brança Inf- débito
Departamento de cobrança Fronteira do sistema: Dados Nota de débito Registrar nota de débito Processar Notas de débito Nota de débito Departamento de cobrança Sistema de cobrança Inf- débito fronteira
Departamento de cobrança Diagrama de contexto: Departamento de cobrança Dados. nota de débito Sistema de cobrança débito Sistema de cobrança
Abordagem “top-down”: Nível Contexto Sistema E2 E4
Abordagem “top-down”: Nível 0
Abordagem “top-down”: Nível 1
Regras para a construção de DFDs 1 1 1 processo: nome de função ou processo: sentença imperativo: verbo no infinitivo + complemento: Processar vendas, Escolher a melhor proposta, verificar recebimento, Gerar relatórios de vendas, Emitir recibo de pagamento procurar nomear a partir da saída que ela produz. não associar processos aos seus executores numerar processos
substantivo (simples ou composto) fluxo de dados: nome de fluxo de dados: substantivo (simples ou composto) Lista de pedidos, Pedidos pendentes, Níveis de estoque, Solicitação de fechamento do caixa, Cardápio. não agrupar ítens de natureza diferente: Solicitação cadastro, Resposta entrevista
nome de depósitos de dados: depósito de dados: nome de depósitos de dados: substantivos simples ou composto, no plural: Produtos, Encomendas do cliente, Fornecedores, Pedidos em andamento não interessa o meio de armazenamento; não chamar de arquivo..., cadastro...
nome de entidades externas: substantivos simples ou compostos: entidade externa: nome de entidades externas: substantivos simples ou compostos: Cliente, Sistema de Crédito, Gerência, Marketing representa o conjunto de entidades do ambiente externo que alimenta ou recebe informações dos processos
acesso à memória: Consultar (ler) Incluir (gravar)
acesso à memória: Excluir Modificar
Regras para a construção de um DFD Depósitos de dados Dados não podem mover-se diretamente de um depósito de dados para outro depósito de dados. Os dados têm de ser movidos por um processo. Os dados não podem mover-se diretamente de uma Entidade Externa para um depósito de dados. Os dados têm de ser movidos por um processo que recebe os dados da Entidade Externa e coloca-os no depósito de dados Os dados não podem mover-se diretamente de um depósito de dados para uma Entidade Externa. Os dados têm de ser movidos por um processo Um depósito de dados é identificado por um substantivo/nome que deve sugerir o respectivo conteúdo Dados do Mercado; Clientes; Pagamentos em atraso; Encomendas pendentes Não é obrigatória a atribuição de nomes aos fluxos de e para depósitos de dados
Regras para a construção de um DFD Entidades Externas os dados não podem mover-se direamente entre duas Entidades Externas têm de ser movidos por um processo se os dados são de algum interesse para o sistema. Caso contrário, o fluxo de dados não é mostrado no DFD Uma Entidade externa é identificada por um substantivo/nome Fornecedores; Armazém; Administração; Utilizadores; ...
Regras para a construção de um DFD Fluxos de dados Um fluxo de dados tem uma única direção de fluxo entre símbolos. Pode fluir nas duas direções entre um processo e um depósito de dados para mostrar uma leitura antes de uma atualização. O último é usualmente indicado por duas setas separadas já que isto acontece em tempos diferentes Todos os detalhes dos fluxos de e para depósitos de dados são definidos ao nível da Especificação dos Processos 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 Não são permitidos os fluxos de dados entre: duas Entidades Externas dois depósitos de Dados uma Entidade Externa e um Depósito de Dados
POSSÍVEIS ERROS NA GERAÇÃO DE UM DFD
duplicação de entidades externas: CLIENTE CLIENTE CLIENTE CLIENTE 2
duplicação de depósitos de dados: PEDIDOS PEDIDOS PEDIDOS D1 cruzamento de fluxos:
orientação geral do DFD:
adotar os mesmos nomes utilizados pelos usuários; RECOMENDAÇÕES adotar os mesmos nomes utilizados pelos usuários; de preferência, um DFD deve ter de cinco a nove processos; cada DFD deve ocupa apenas uma página; o DFD deve ser submetido à aprovação das pessoas que conhecem o sistema.
DIAGRAMA DE CONTEXTO Sistema de vendas Pag-Cliente Depto_ Pla- Cliente nejamento Cliente Ped-Cliente Rel-Fin Fatura-Cli Sistema de vendas Encomenda Com-Vend_ Fatura-Fornec Depto_ R-H Fornecedor Pag-Fornec
DIAGRAMA NÍVEL 0 Gerência Operacional Cadastrar Loja Cadastrar Livro Atualizar Estoque Loja Loja Estoque Loja
Especificação de Processos descreve a forma como os dados de entrada são transformados nos dados de saída. independe da forma como a função é executada (manualmente ou automatizada) usa-se: - português estruturado - pseudocódigo
Português Estruturado versão / adaptação do português: verbos no modo imperativo; termos definidos no dicionário de dados; palavras “reservadas” para descrever a lógica da função. pouco uso de adjetivos e advérbios; construções típicas da programação estruturada: seqüências decisões repetições.
PORTUGUÊS ESTRUTURADO Pseudocódigo PORTUGUÊS ESTRUTURADO orientado para procedimentos usa termos familiares ao usuário (linguagem do negócio da empresa) o objetivo é um alto nível de comunicação PSEUDOCÓDIGO orientado para a implementação. lembra linguagem de programação o objetivo é facilitar a programação
ABRIR avaliações-de-alunos, disciplinas, alunos e ender-alunos DEFINIR quant_reprovações = 0 LER alunos REPETIR-ENQUANTO existam alunos: PESQUISAR primeira ocorrência da chave matr-aluno (de alunos) em avaliações-de-alunos REPETIR-ENQUANTO existam em avaliações-de-alunos registro para a chave matr-aluno (de alunos) pesquisada: SE média-final for MENOR QUE 5 INCREMENTAR quant_reprovações PESQUISAR cod-disciplina em disciplinas LER próximo registro em avaliações-de-alunos FIM REPETIR IMPRIMIR aviso_de-situação-do aluno LER próximo registro em alunos FIM-REPETIR