Diagrama de Fluxo de Dados (DFD) Modelos de Especificação Modelos para Especificação do Sistema Representações gráficas que descrevem o problema a ser resolvido e o sistema a ser desenvolvido. Perspectivas usadas nestes modelos: Comportamental: o comportamento do sistema é modelado. Estrutural: a estrutura dos dados processados pelo sistema é modelada. Pode-se usar uma combinação destes modelos. 1
Modelos de Especificação Modelos Comportamentais Descrevem o comportamento geral do sistema. Exemplos: DFD: mostra como os dados são processados pelo sistema. Diagrama de Estado: modela o comportamento de um sistema em resposta aos eventos internos e externos. Mostram os estados e eventos que causam transições de um estado para outro. Modelos de Especificação Modelos Estruturais Definem a forma lógica dos dados processados pelo sistema. Exemplos: ER (Entidade-Relacionamento): mostra as entidades, atributos e relacionamentos. Modelo de Objeto: mostra as classes, atributos, operações e métodos. Para modelar o comportamento dos objetos, são usados diagramas de seqüência que mostram como as operações dos objetos são usadas. 2
Modelos de Especificação Exemplo de Diagrama ER: título letra Compositor (1,n) compõe (1,n) Música (1,1) tem Cantor (1,1) grava (1,n) (0,n) Gravação tempo Modelos de Especificação Exemplo de Diagrama de Classes: Compositor 1..* compoe 1..* letra Musica Cantor 1 grava 1..* 1 tem 0..* Gravacao tempo 3
DFD Diagrama de Fluxo de Dados (DFD) 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. Componentes de um DFD: Processo: transforma entradas em saídas Fluxo: dados em movimento Depósito: dados em repouso DFD Diagrama de Fluxo de Dados (DFD) Entidade Externa: entidades com as quais o sistema se comunica Não representa a seqüência de processamento, nem a lógica procedimental. 4
DFD Exemplo de DFD: Sistema de Venda de CDs Cliente CD, Seleção do CD procurado CDs info CD, Realização da Compra Pedidos mensagem Exibir Mensagem DFD Exemplo de DFD: Sistema de Venda de CDs Cliente CD, Seleção do CD procurado CDs info CD, Realização da Compra Pedidos mensagem Exibir Mensagem 5
DFD Exemplo de DFD: Sistema de Venda de CDs CD Cliente infos compra Buscar CDs Confirmar CD procurado CDs Atualizar Estoque Pedidos infos compra Registrar a Compra mensagem Exibir Mensagem DFD Exemplo de DFD: Sistema de Venda de CDs CD Cliente infos compra Buscar CDs Confirmar CD procurado CDs Atualizar Estoque Pedidos infos compra Registrar a Compra mensagem Exibir Mensagem 6
DFD Os dados são transformados em cada passo antes de mover para o próximo estágio. Estas transformações são funções de programa. Os DFDs ajudam os analistas a entenderem o que acontece com os dados durante a execução do sistema. Podem ser usados para mostrar como diferentes sistemas e subsistemas trocam informações. Análise Estruturada Moderna 7
Análise Estruturada Análise Estrutura utiliza: DFD Diagrama de Entidade-Relacionamento (ER) Dicionário de Dados Especificação de Processo Análise Orientada a Objetos: divisão do problema em classes. Análise Estruturada: divisão do problema em funções. Análise Estruturada Dicionário de Dados Descreve as informações implícitas nos fluxos ou contidas nos depósitos. Especificação de Processo Especificação dos detalhes de um processo: linguagem estruturada condições pré/pós fluxograma linguagem narrativa 8
Análise Estruturada É composto por dois componentes: Modelo Ambiental Modelo Comportamental Análise Estruturada Modelo Ambiental Define as interfaces entre o sistema e o ambiente, determinando o que está dentro e fora do sistema. Composto por: Declaração dos Objetivos Diagrama de Contexto: um caso especial do DFD, no qual uma única bolha representa o sistema inteiro. Lista de Eventos: lista narrativa dos estímulos que ocorrem no mundo exterior, e aos quais o sistema deve responder. 9
Projeto Estruturado Diagrama de Contexto: Sistema Emissão de Contra-Cheque Usuário contra-cheque Emissão Contra-cheque Análise Estruturada Modelo Comportamental Modelagem da parte interior do sistema. Desenvolvimento do DFD inicial: é desenhado um processo para cada evento da lista de eventos são desenhadas entradas e saídas para os processos, e os depósitos para comunicação entre os processos é desenvolvido o diagrama ER em paralelo ao dicionário de dados inicial 10
Análise Estruturada Exemplo de DFD: Sistema Emissão de Contra-Cheque Funcionários Usuário Calcular Salário horas, valor hora dados salariais Descontos impostos estaduais, impostos federais contra-cheque Imprimir Contra-cheque Refinamento do DFD inicial: Análise Estruturada o DFD inicial é subdivido em níveis o dicionário de dados é completado as especificações de processos são completadas é desenvolvido um diagrama de estado se o sistema possui características de tempo-real. 11
Análise Estruturada Exemplo de DFD: Explosão do Processo Calcular Salário Funcionários Calcular Sal. Bruto horas, valor hora salário bruto Descontos impostos estaduais, impostos federais Usuário Calcular Sal. Líquido dados salariais contra-cheque Imprimir Contra-cheque Projeto Estruturado 12
Projeto Estruturado Projeto Estruturado Define a estrutura de um sistema através da definição de módulos. Ferramenta utilizada: Diagrama de Estrutura Além do diagrama de estrutura, as seguintes documentações podem ser utilizadas: Uma narrativa de processamento é desenvolvida para cada módulo. Uma descrição de interfaces é apresentada para cada módulo. Estruturas de dados locais e globais são definidas. Projeto Estruturado Diagrama de Estrutura Componentes do diagrama de estrutura: Módulo: coleção de instruções de programa com quatro atributos básicos: entrada e saída, função, lógica e dados internos. A B Conexão entre módulos: seta representa a chamada de um bloco. Comunicação entre módulos: dados e controle. Dados são processados. Controle é testado. dado controle 13
Projeto Estruturado Diagrama de Estrutura Obter Dados horas inválido horas Cálculo Sal. Bruto Cálculo Salário sal. bruto sal. bruto sal. líquido Cálculo Sal. Líquido sal. líquido Imprimir Salário Obter Nome inválido horas Obter Horas Análise e Projeto Estruturados DFD? Diagrama de Estrutura Estratégias para conversão de um DFD da análise para um diagrama de estrutura do projeto: Análise de Transformação: identifica o centro de transformações (processos que contêm as funções do sistema e não contêm entradas e saídas) e define um ponto central que será o módulo superior destes processos. Análise de Transação: identifica os processos relacionados com uma mesma transação e atribui um módulo para cada transação e este será dividido em outros módulos. 14