390 likes | 587 Views
Análise e Projetos de Sistemas Modelagem de Dados - I Prof. Jorge Manuel Lage Fernandes. An á lise Estruturada de Sistemas. Conjunto de técnicas e ferramentas cujo objetivo é auxiliar na análise e definição de sistemas
E N D
Análise e Projetos de Sistemas Modelagem de Dados - I Prof. Jorge Manuel Lage Fernandes
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
Análise Estruturada • Diferença entre Análise e Desenho • Ferramentas de Análise • Modelos • Diagramas, textos • Análise orientada a objetos • Centrada em casos de uso • Análise Estruturada
Análise Estruturada • Modelos desempenham são fundamentais • Exemplos • Partituras musicais • Representação abstrata de uma música • Mapas • Representação abstrata de uma área geográfica • Fluxogramas • Representação abstrata de um conjunto de tarefas • Porque modelos são importantes?
Análise Estruturada • Modelos para análise estruturada • Refletem diretamente linguagens estruturadas • Separação entre dados e funcionalidades • Registros (dados) • Funcionalidades (procedimentos e funções) • Modelos • Diagrama de fluxo de dados – DFD • Diagramas entidade relacionamento - DER • Dicionário de dados - DD
Modelo Comportamental • Representa o comportamento do sistema. • O modelo comportamental é constituído basicamente de DFD e D.D.: Modelo Comportamental DFD DD
Dicionário de Dados • Descrevendo o significado dos fluxos e depósitos mostrados nos diagramas de fluxo de dados. • Descrevendo a composição de pacotes agregados de dados que se movimentam pelos fluxos. • Descrevendo a composição dos pacotes de dados nos depósitos. • Especificando os relevantes valores e unidades de partes elementares de informações dos fluxos de dados e depósitos de dados. • Descrevendo os detalhes dos relacionamentos entre os depósitos realçados em um diagrama de entidades-relacionamentos.
Necessidade da notação de DD • Os elementos de dados complexos são definidos em termos de elementos de dados mais simples. • Elementos de dados simples são definidos em termos das unidades válidas e dos valores que eles podem assumir. • Necessidade de uma notação concisa e compacta.
Notação do Dicionário de Dados = é composto de + e ( ) opcional (pode estar presente ou ausente) { } iteração [ ] escolha uma das opções alternativas ** comentário @ identificador (campo chaves) de um depósito | separa opções alternativas na construção [ ]
Exemplo nome = título-cortesia + primeiro-nome + (nome-intermediário) + último-nome Título-cortesia = [Sr.|Srta.|Sra.|Dr.|Prof.] Primeiro-nome = {caractere-válido} Nome-intermediário = {caractere-válido} Último-nome = {caractere-válido} Caracter-válido = [A-Z|a-z|0-9|’|-| |]
Definições • Uma definição de elemento de dados é apresentada com o símbolo “=” (“definido como” ou “é composto de” ou “significa”) • Então, a notação A = B + C pode ser lida como: – Sempre que dissermos A, queremos dizer B e C. – A compõe-se de B e C. – A é definido como B e C.
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 • Um DFD pode ser entendido como uma rede que ilustra como circulam os dados no interior de um sistema.
Análise Estruturada - DFD • DFD’s são compostos por... • Processos • Representado por um círculo, oval... • Possui um nome associado • Nome: verbo mais objeto associado • Representa uma tarefa a ser realizada • Exemplos de processos Calcular Salário Receber Pedidos Atualizar Saldo
Análise Estruturada - DFD • Fluxo • Representado por uma seta que... • Entra ou sai de um determinado processo. • Representa como dados fluem entre processos • Rotulados com o tipo da informação que levam • Exemplos Atualizar Saldo Valor do Saque Ler Valor Saque
Análise Estruturada - DFD • Fluxos • Tipos de fluxo • Entrada • Saída • Diálogo • Divergente • Exemplos • Entrada Atualizar Saldo Valor do Saque
Fluxos • Tipos de fluxos • Saída Valor do Saque Ler Valor Saque • Diálogo Consulta-Situação Verificar Situação Verificar Pedido Resposta-sobre-situação
Verificar Rua • Fluxos • Tipos de fluxos • Divergentes Rua Verificar Cidade Cidade Endereço do cliente Verificar CEP CEP
Análise Estruturada - DFD • Depósito • Representa um conjunto de dados armazenado • Nome: Plural do valor armazenado • Tipos • Necessário • Implementação • Exemplo Pedidos Clientes
Análise Estruturada - DFD • Terminador • Representam entidades externas ao sistema • Exemplos • Usuários • Outros sistemas Sistema Contábil Balconista
D.F.D. – Diagrama de Fluxo de dados Quadrado duplo = Entidade Externa/Origem ou destino de Dados. Retângulo com cantos arredondados = Processo que transforma o Fluxo dos Dados. Elipse = Processo que transforma o Fluxo dos Dados. Retângulo aberto = Depósito de Dados Seta ou vetor = Fluxo de Dados
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.
ESTRUTURA HIERÁRQUICA DIAGRAMA DE CONTEXTO VISÃO GERAL DO PROJETO DIAGRAMA DETALHADO 1. 1 1. 2 2. 2 3. 2 1. 3 2. 1 3. 1 DESCR. PROCESSO 1. 1 DESCR. PROCESSO 1. 2 DESCR. PROCESSO 1. 3 DESCR. PROCESSO 2. 1 DESCR. PROCESSO 2. 2 DESCR. PROCESSO 3. 1 DESCR. PROCESSO 3. 2 9
Exemplo: Sistema para hotel • Exemplo: Software para um hotel • Requisitos • Clientes podem reservar e cancelar reservas • Cancelar reserva caso cliente não venha • Registrar um cliente que fez uma reserva • Totalizar a conta de um cliente • Liberar o quarto para novas reservas após a saída
Exemplo – Sistema para hotel • Eventos • Cliente reserva/ou cancela um quarto • Cliente registra-se no hotel • Cliente dá saída no hotel • Cliente paga a conta • Sistema libera o quarto
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
Razões clássicas para usar DFD, cf. (Aktas, 1987): 1. Ajudam o analista a: • Resumir a informação acerca de como funciona o sistema; • Compreender os componentes principais do sistema e a definir funções reutilizáveis; • Compreender as interdependências entre subsistemas; • Desenvolver eficientemente uma aplicação 2. Um DFD é uma boa ferramenta de comunicação entre utilizadores e analistas. Esta comunicação é reconhecida como vital. 3. Permite obter uma melhor estimativa dos recursos envolvidos no projeto global, em função dos recursos envolvidos em cada um dos processos.
Exercício • Modelar um sistema utilizando: • Diagrama de Contexto • DFD Nível 0 • DFD Nível 1 • Sugestões de ferramentas: • Smartdraw • EDraw • MS Visio • Flowchart.com (aps_ace / aps_ace)