Programação

terça-feira, 18 de novembro de 2025

Modelação de dados

MODELO CONCEPTUAL  - MODELO LÓGICO -- MODELO FÍSICO 







  
 SGBD  - Sistema de Gestão de Base de Dados - SOFTWARE de Gestão de Bases de Dados (representado por um cilindro). Podemos ter SGBD:

    • SGBD Relacional   
    • SGBD orientado  objetos


 Num SGBD relacional:

   Uma Base de Dados  é um conjunto de dados armazenados em  tabelas relacionadas entre si através de chaves.

  • Cada tabela tem colunas (campos) e linhas (registos)

  • Tabelas podem ligar-se entre si através de chaves primárias e chaves estrangeiras

  • geralmente SQL (Structured Query Language) 


Exemplo: Tabela Alunos com os respetivos 6 campos e 3 registos

 


Registo é uma linha de uma tabela que contém todos os dados referentes a um único elemento da entidade.


Estrutura da tabela (nome dos campos e tipo de dados) em SQL

                          


Num SGBD relacional os DADOS são ARMAZENADOS em várias tabelas relacionadas entre si

Os retângulos representam as tabelas (onde os dados estão armazenados). As tabelas estão relacionadas entre si.





SGBD Relacional (MariaDB) 
que contém a Base de Dados bdfutebol constituída por a tabela jogadores e tabela Clubes


Exemplos de SGBD relacionais

  • MySQL

  • MariaDB

  • Microsoft SQL Server

  • PostgreSQL

  • Oracle Database



SGBD orientado a objetos:

Um SGBD orientado a objetos (Object-Oriented Database Management System – OODBMS) é um Sistema de Gestão de Bases de Dados que armazena, gere e manipula objetos, com atributos e métodos, tal como são usados na Programação Orientada a Objetos (POO).



Dicionário de Dados (DD)  

DD é uma Técnica de descrição detalhada dos vários tipos de dados. 

É uma  técnica  complementar aos DFD.


Considerando uma ENTIDADE EXTERNA ALUNO  em que os dados vão ficar armazenados no arquivo alunos 



temos que pensar no tipo de dados envolvidos que serão utilizados armazenar no arquivo alunos.


O DICIONÁRIO DE DADOS deverá descrever cada arquivo de dados:

   - nome que identifica a entidade que irá corresponder a um tabela ou arquivo

     estrutura de atributos dessa entidade

       - as relações


atributos vão ser implementadas nos campos da TABELA




Dicionário de dados é um documento que descreve de forma detalhada os dados do sistema, incluindo tipotamanhosignificado relações restrições, servindo como guia para analistas e programadores.

considerando os atributos 

 ALUNOS (nºprocesso,  nome aluno,  morada,  concelho,  datanasc,  email ...)

EXEMPLO 


De forma simplificada:

ALUNOS

  • n_processo – inteiro, identificador único do aluno (chave primária)

  • nome_aluno – texto, nome do aluno

  • morada – texto, morada completa

  • concelho – texto, município de residência

  • data_nasc – data de nascimento

  • email – texto, email do aluno




MODELAÇÃO DE DADOS 

A modelação de dados é a técnica de descrever e representar os dados de um sistema, identificando entidades, atributos e relacionamentos, antes da sua implementação numa base de dados.


A técnica mais utilizada é a:

  Diagrama Entidade - Relação (DER) ou Diagrama Entidade - Relacionamento               -->   para SGBD Relacional 

Diagrama Entidade - Relação (DER)

         Os diagramas Entidade-Relação (DER) ou Entidade-Relacionamento,                 representam:

  •  as Entidades e seus atributos;
  •  as Relações ou relacionamentos entre as entidades.


OBJETIVO

O DER tem como objetivo descrever os dados que são utilizados no sistema (de forma conceptual)



CONCEITOS 

 

  • Entidades: objetos ou conceitos do mundo real (exemplo: funcionário, cliente, produto,  ..);
  • Atributos: características de uma entidade ( exemplo: nome, endereço, preço..);
  • Relações ou Relacionamentos: interações ou associações entre as entidades;



EXEMPLOS







 -->>Estilo de Notação Chen 



-->> Estilo Pé de Galinha/Martin/Engenharia da Informação



EXEMPLO  de uma Entidade com atributos
                        Estilo Notação Chen                                 Estilo Pé galinha




Diagrama Entidade -  Relação (DER)   vamos usar Notação Chen

Cada Entidade tem um conjunto de atributos (propriedades)


ENTIDADE CLIENTE ( codCliente, nomeCliente,  morada, CodPostal, etc, )

  

          assim            



Num diagrama DER, uma entidade é representada por um retângulo com o nome da entidade no seu interior.
Os atributos de uma entidade podem ser indicados dentro de elipses ligadas por linhas ao retângulo da entidade


Tipos de atributos:
  • Atributos Simples ou Atómicos (valor isolado)  Exemplo: peso, preço unitário…
  • Atributos Compostos (valor composto) – Ex: Endereço (RUA + nº +andar + cod_Postal).
  • Atributos Identificadores Identifica inequivocamente um registo numa entidade. Ex: CC, CodCliente - a sublinhado
  • Atributos candidatos – Estão em condições de ser chave primária. Ex: NIF



Domínios dos atributos

Um domínio de um atributo corresponde ao conjunto dos valores possíveis que esse atributo pode assumir.
 Há domínios que são constituídos por nomes, outros são valores numéricos, outros ainda são datas, etc..


Relação ou Relacionamento 

Vamos utilizar a representação com o losango
 






TIPOS DE RELACIONAMENTOS - Quanto ao número de entidades

  • UNÁRIO  - uma entidade se relaciona consigo mesma.
  • BINÁRIO -  relação entre duas entidades distintas.
  • TERNÁRIO  - relação entre três entidades distintas.


UNÁRIO      

Ocorre quando uma entidade se relaciona consigo mesma.








BINÁRIO (mais comum)

A relação envolve duas entidades distintas.



TERNÁRIO

Envolve três entidades numa única relação ou relacionamento




TIPOS DE RELACIONAMENTOS - quanto à cardinalidade da relação

cardinalidade especifica o número mínimo e o máximo de instâncias/ocorrências que uma entidade pode participar.

 

  • RELACIONAMENTO de Um-para-Um (1:1
    111 colon 1
    )

  • Uma instância de uma entidade se relaciona com apenas uma instância de outra entidade, e vice-versa.

    EXEMPLO



    Um funcionário chefia um Departamento 
    e Um Departamento é chefiado por um Funcionário



    • RELACIONAMENTO de Um-para-Muitos ( 1: M
      111 colon 1
      )
     Uma instância de uma entidade se relaciona com várias instâncias de outra entidade, mas cada instância da segunda entidade se relaciona com apenas uma instância da primeira.

    EXEMPLO



    Um Departamento tem muitos Funcionários
    Um Funcionário trabalha num Departamento



    • RELACIONAMENTO de Muitos-para-Muitos M: M
      111 colon 1
      )   
      ou  (N:M)
      Várias instâncias de uma entidade se relacionam com várias instâncias de outra entidade.

    EXEMPLO 1




    Um Departamento pode trabalhar em vários Projetos
    Um Projeto pode estar associado a vários Departamentos


    EXEMPLO 2 



    Um Médico consulta vários Pacientes
    Um Paciente é consultado por vários Médicos



    FERAMENTA ONLINE PARA CRIAR DIAGRAMA ER





    RELAÇÕES BINÁRIAS quanto à participação das entidades



    Situação 1
    Relacionamento binário 1:1 com participação obrigatória em ambas entidades.




    • um cidadão tem um e só um cartão de cidadão;
    • um cartão de cidadão pertence a um e só um cidadão;
    Neste primeiro caso, é necessária apenas uma tabela para traduzir este tipo de relacionamento, em que essa tabela deverá incluir todos os atributos das duas entidades.


    Situação 2
    Relacionamento 1:1 com participação obrigatória em apenas uma entidade.



    • um diretor pode dirigir 0 ou 1 departamentos;
    • um departamento pode ser dirigido por um e só um diretor;

    Neste caso são necessárias duas tabelas, uma para cada entidade.





    Situação 4
    Relacionamento 1:M com participação obrigatória na entidade do lado M.


    • um fornecedor pode fornecer 0 ou vários produtos;
    • um produto é fornecido por um e só um fornecedor (participação obrigatória do lado M);


    Neste caso são necessárias duas tabelas, uma para cada entidade.


    Situação 5

    Relacionamento 1:M sem participação obrigatória na entidade do lado M.



    • um fornecedor fornece 0 ou vários produtos;
    • um produto pode ser fornecido por 0 ou 1 fornecedor;

    Neste caso, são necessárias três tabelas, uma para cada entidade e uma terceira correspondente ao relacionamento.



    Situação 6
    Relacionamento M:M para qualquer que seja a participação.



    • um cliente pode comprar 0 ou vários produtos;
    • um produto pode ser comprado por 0 ou vários clientes;


    Em todos os relacionamentos do tipo M:M são necessárias três tabelas, independentemente o tipo de participação das entidades.


    EXEMPLO simples de um Diagrama ER 
     
    Uma farmácia pode vender vários produtos e um produto por uma farmácia 
    Uma farmácia emprega vários farmacêuticos e um farmacêutico trabalha na farmácia



    Exemplo de um modelo E-R:





    segunda-feira, 20 de outubro de 2025

    Disciplina de Sistemas de Informação - 10ºano

     CURSO TÉCNICO DE INFORMÁTICA DE GESTÃO

    Disciplina de Sistema de Informação - 10ºano

     1 Análise de Sistemas                                       21  H     (28 T)

     2 Tecnologias de Bases de Dados                    36 H  ( 48T)

    3 Programação SQL                                         36H ( 48 T)


    Módulo 1 - Análise de Sistemas

      1.1 Sistemas de Informação:

     1.2. Modelação de processos

    1.3. Modelação de Dados


    MÓDULO 2 - Tecnologias de Bases de Dados

        2.1  Modelo Relacional de base de dados

         2.2. Regras de conversão do diagrama ER ou de classes para o modelo relacional

          2.3 Normalização de uma base de dados

          2.4.  Planeamento de uma base de dados relacional


    MÓDULO 3 - Programação SQL

    3.1 Definir estrutura de uma base de Dados com SQL - DDL

    3.2. Manipular os dados em SQL- DML

    3.3. Consultas em SQL envolvendo várias tabelas


    CRITÉRIOS


    ----------------------------------------------------------------------------------------------------------------------------

    MÓDULO 1 - ANÁLISE DE SISTEMAS


    Conhecimento

    📖 Definição:

    É a compreensão adquirida a partir da informação, combinada com experiência, análise e julgamento humano.

    Permite tomar decisões ou agir com base na informação.

    💡 Exemplo:

    “Ana tem vindo a melhorar a Matemática, pelo que é provável que passe o exame final se mantiver o ritmo de estudo.”

     

    Exemplo no contexto empresarial

    EtapaExemplo
    Dado    Registos de vendas diárias (números isolados).
    Informação                                  Relatório que mostra que as vendas cresceram 10% em novembro.
    ConhecimentoO gestor percebe que a campanha de Natal funcionou bem e decide repeti-la.


    1. Sistemas de Informação (SI)





    • SI é um conjunto de elementos (recursos humanos, recursos tecnológicos (hardware, software), dados/informação e processos ) que objetivo é recolher, tratar /processar distribuir informação numa organização.

    • Objetivo: suportar decisões, melhorar a eficiência e controlar operações da organização.









     Fases Desenvolvimento de Software 

    Processo organizado para criar software de qualidade.
    Fases principais:

    1. Análise – levantamento de necessidades e requisitos e definir modelo conceptual ("o que fazer".

    2. Desenho/Projeto – definição de como será a solução (arquitetura global, tipo de sistema informático, tipo de SGBD,  modelos lógicos (diagramas de processos), modelo físico (modelo relacional ou diagrama de classes )   ("como fazer").

    3. Implementação – programação/codificação.

    4. Testes – verificar se funciona corretamente.

    5. Instalação – instalação e colocar em funcionamento.

    6. Manutenção – correções e melhorias ao longo do tempo.


     

    FERRAMENTAS CASE
     (do inglês Computer-Aided Software Engineering

    são softwares que auxiliam em todas as fases de desenvolvimento de software ao automatizar e simplificar tarefas, desde a análise de requisitos e desenho até a implementação e testes, e manutenção.




    outras





    FERRAMENTAS para MODELAÇÃO de PROCESSOS DFD


    MODELAÇÃO DE SISTEMAS de INFORMAÇÃO 





     MODELAÇÃO DE PROCESSOS   

    A modelação de processos é uma TÉCNICA usada para identificar e descrever os PROCESSOS (operações) dentro de um sistema de informação.



    DIAGRAMA DE FLUXO DE DADOS  (DFD)
    Data Flow Diagram


     DFD é a ferramenta técnica usada na modelação de processos para SI


     Os DFD são representações gráficas que usam os elementos:

     PROCESSOS  
     ENTIDADES EXTERNAS
     FLUXO de DADOS

               ARQUIVO  DE DADOS



    EXEMPLO de um DFD






     PROCESSOS   

     são operações de transformação ou processamento de dados de entrada /input ou de saída/output 

    - o nome do processo deve descrever o que o processo faz (usar um verbo + objetivo )          
      

     
             EXEMPLOS de PROCESSOS: 
         
     

    • Validar dados cliente
    • Verificar estado stock
    • Calcular total da fatura
    • Verificar disponibilidade do livro
    • Pedir Produto
    • Pagar Produto
    • Requisitar Livro


    ENTIDADES EXTERNAS (externas ao sistema)   

    Uma entidade externa é qualquer pessoa, sistema ou outra organização fora do sistema em estudo que fornece dados para o sistema ou recebe dados dele.


    Podem ser agentes externos à organização (clientes, fornecedores, etc) ou funcionários da organização (Administrador, gerente, etc) ou subsistema (sistema de contabilidade, etc).


    Exemplos:




    ⚙️ Função

    As entidades externas:

    • Enviam dados para o sistema (entradas);

    • Recebem dados do sistema (saídas);




     FLUXO de DADOS       
     representam o movimento de dados que entram, circulam ou saem da organização (entre PROCESSOS e ENTIDADES e entre arquivos). Nos DFD, os fluxos são representados por setas.
     



     ARQUIVO DE DADOS ou depósito de dados   

    representa o local onde os dados são guardado temporariamente 




    Símbolos usados em diagramas de fluxo de dados  




    Outros Símbolos para diferentes autores 


    Objetivo dos DFD's   

    • Tornar visível as operações/ atividades, dados e os fluxos de informação.

    • Facilitar a compreensão, análise e melhoria dos processos.

    • Ajudar na comunicação entre analistas, programadores e utilizadores.

    • Servir de base para o desenvolvimento de software.




    NÍVEIS DE DIAGRAMAS DE FLUXO DE DADOS  

    Usa-se a técnica de decomposição de cima (mais complexo) para baixo (mais detalhe) em DFD


    Um DFD pode ser desenhado em vários níveis, dependendo da complexidade e grau de detalhamento do sistema. 

    Pelo menos dois níveis ocorrem em qualquer sistema:
     O Diagrama de Contexto e o DFD nível 0.


    NÍVEIS

      DIAGRAMA DE CONTEXTO  ( nível 0)
    - Tem um ÚNICO PROCESSO (representa o SISTEMA),  fluxos e entidades externas
     
    - Identifica o fluxo de informação entre o SISTEMA entidades externas.

                       - É o DFD de nível mais alto 

    - Dá a visão das principais funções do sistema

      DFD nível 1

                    - Contém os principais processos do diagrama de contexto

                
      DFD nível 2
         decomposição de cada processo nível anterior 



    ESQUEMA







    EXEMPLO 

                Sistema de Reservas de Hotel

    🏨 Análise de Sistema 

    🧩 1. Descrição Geral do Sistema

    O Sistema de Reservas de Hotel tem como objetivo a gestão de hóspedes, reservas e quartos.


    O sistema permitirá que o funcionário do hotel:

    • Registar cliente/hóspede;

    • Registar a reserva;

    • Verificar a disponibilidade dos quartos;

    • Pagamento da reserva 

    • Emitir faturas;

    •  Cancelar reserva.


    📋 2. Requisitos do Sistema

    •  O sistema deve permitir registar, editar e excluir clientes/hóspedes.

    •  O sistema deve registar reservas, associar hóspede ao quarto.

    •   O sistema deve verificar disponibilidade de quartos na data pretendida

    •   O sistema deve permitir cancelar uma reserva.

    •   O sistema deve calcular valor da reserva e emitir fatura da reserva.



    EVENTO 

    Um evento, no contexto de um DFD, é uma ocorrência externa ou interna que desencadeia um fluxo de dados dentro do sistema.


    📌 Exemplo:

    Evento de entrada no sistema: “Cliente envia pedido”

               Evento interno: “Sistema valida o pagamento e emite fatura”.

               Evento de saída (resposta do sistema):  “Sistema envia confirmação o pedido”



     
       DIAGRAMA DE CONTEXTO     (nível 0            Fazer esquema no LucidChart     




    Entidades externas:
    • Cliente/Hóspede – fornece dados pessoais e solicita reservas.

    • Gerente/Recepcionista – regista hóspedes, verificar disponibilidade de quartos e efetua/cancelar reservas.

    Processo principal:

    • Sistema de Reservas de Hotel


    Fluxos de dados principais:

    • Dados de Cliente ↔ Sistema

    • Dados de Reserva ↔ Sistema

    • Confirmação/Cancelamento de Reserva ↔ Cliente

    • Atualização de Quartos ↔ Sistema


        

     DFD Nível 1  - DEFINIÇÃO DOS PROCESSOS      Fazer esquema no LucidChart  




    Processos principais:

    • Tratar dados cliente

    • Tratar da reserva

    • Verificar disponibilidade quarto


    Arquivos 
    • Clientes  (guardam dados dos clientes)
    • Quartos (guardam dados dos quartos)
    • Reservas (guardam dados das reservas)




     DFD Nível 2  - Detalhes do Processo P2   Fazer esquema no LucidChart  














    DIAGRAMA DE FLUXO DE DADOS-  SISTEMAS DE GESTÃO BIBLIOTECA 

    Objetivo principal é a gestão de livrosregisto de leitoresgestão das requisições de livros

     Requisitos

    – Registo, editar e excluir leitores

    – Registo, editar e excluir livros.

    – Registar empréstimos de livros.

    – Registar devoluções.

    – Controlar disponibilidade de nº exemplares por livro

     

     Entidades externas:

    •  Leitor - quem solicita requisição e devolução de livros.
    •  Funcionário→ quem faz gestão dos leitores e dos livros, e as requisições/devoluções de livros

     

    Eventos (desencadeiam fluxo de dados)

       - pedido de cartão de leitor

        - pedido de requisição de livro

        - Adicionar/ alterar/ excluir informações leitores e livros

        - Efetuar, alterar e devoluções de requisições

        - Entrega do livro ao leitor


    Arquivo de Dados

        - Leitores 

         - Livros   

         - Livros requisitados


    DIAGRAMA DE CONTEXTO (nível 0)







    Diagrama de Fluxo de Dados (nível 1)





    EXERCÍCIO

    No início de cada ano da universidade “Bons estudantes” são elaborados os horários das turmas, em função da disponibilidade das salas, disponibilidade dos professores e o plano de curso, sendo posteriormente afixados para os alunos matriculados.

    São estabelecidas as datas dos exames e informadas aos alunos e professores. No fim de cada período, são afixadas pautas com as datas dos exames para consulta dos alunos

    Os professores comunicam as notas à secretaria, sendo atualizado os dados do aluno.

    Em qualquer momento poderá ser obtida informação sobre os alunos, para emissão de certificados, médias, etc.


    Proceda à construção do:

    1.     Identificação das entidades.  

    2.     Identificar os eventos.

    3.     Diagrama de Contexto.

    4.     Diagrama de Fluxo de Dados (DFD) nível 0 e de nível 1


    EXERCÍCIO

    No armazém CONSTROI_BEM vende de materiais de construção. A empresa possui uma frota de viaturas para entregas de encomendas.  Os clientes chegam/enviam ao armazém os seus pedidos. É verificado se os produtos existem em stock.

     Os pagamentos são feitos na data da compra, pelo serviço de contabilidade.   Se existirem satisfazem o pedido e registam a venda dos produtos e as quantidades vendidas. Caso os produtos não existam, são registados para serem encomendados.

    No final da semana é elaborada a lista de encomendas aos fornecedores, onde são enviadas as requisições para cada fornecedor, que enviam os produtos acompanhados de uma guia.

    Mensalmente, faz-se um inventário dos produtos existentes, comparando as quantidades vendidas com os stocks e este é enviado à administração.

    Proceda à construção do:

              1) Lista de Entidades

              2) Lista de eventos

              3) Diagrama de Contexto

              4) Diagrama de Fluxo de Dados (DFD nível 0) e nível 1

     Diagrama de Contexto (nível 0)




    DFD Nível 1




    ou  Sem inventário para a administração




    Links