Aplicativos II...

   APRESENTAÇÃO PESSOAL
   Apresentação da disciplina
   Objetivo
   Carga horária: 80 h/a por semestre
   Duas vezes na semana: 4 períodos
   Softwares
   Material
Contatos:

   www.fabriciodperez.blogspot.com
   fabriciodenis1@hotmail.com
   fabriciodenis1@yahoo.com.br
   fabriciodenis@gmail.com
   @fabriciodenis
Modelagem de dados
   Para modelar um SI é necessário:
       Identificar as funções que formam o sistema;
       Identificar os dados e as informações que ele
        processa.
   Análise de dados:
       Conjunto de técnicas com objetivo de identificar,
        conceituar e estruturar os dados de uma empresa,
        parte dela ou de um sistema.
   Para que serve:
       Obter um melhor conhecimento do problema;
       Projetar adequadamente a base de dados;
   Organizar o compartilhamento de dados e
        integração dos sistema;
       Unificar a visão que a empresa tem dos dados.
   Conhecendo os problemas
       Problemas complexos necessitam de uma análise
        a partir de vários pontos de vista;
       Análise estruturada analisa o sistema a partir de
        suas funções;
       Análise de dados atua como uma alternativa para
        analisar o sistema.
Projetar dados

   Dados do sistema são armazenados em um
    conjunto de arquivos inter-relacionados;
   Compartilhamento de dados
       Banco de dados individuais por sistema
       Um único banco de dados compartilhado, evitando
        redundâncias e as inconsistências;
Sistema não integrado

  Sistema A             Sistema B




  Sistema C             Sistema D
Sistema integrado – base
corporativa
  Sistema A                  Sistema B




                 Base
              Coorporativa




  Sistema C                  Sistema D
BANCO DE DADOS...
   Conceitos:
       Conjunto de dados com uma estrutura regular utilizada
        para armazenar, agrupar e organizar informações
        utilizadas para um determinado fim ou aplicação;
   Visão:

       Interna (Desenvolvedor)
       Externa (Usuário)
       DDL
       DML
Vantagens...

   Redução ou eliminação da redundância;
   Eliminação das inconsistências;
   Compartilhamento de dados;
   Restrições de segurança;
   Padronização dos dados;
   Independência dos dados;
   Menutenção da integridade.
Técnicas de Análise de Dados

   normalização de dados: técnica formal,
    rigorosa e simples, de fácil aplicação;
   que visa a simplificação dos arquivos, mas não
    ajuda muito na investigação do problema;
   sua função é produzir arquivos mais simples e
    estáveis;
   normalizar um arquivo significa dividi-lo em
    vários arquivos.
Exemplo: Loja de vendas
   Identificação do pedido      Itens solicitados
       Número da filial             Código do item
       Número do pedido             Quantidade
   Data do pedido                   Preço unitário
   Nome da filial                   Preço total
   Endereço da filial           Valor total do pedido
   Código do vendedor           Imposto a recolher
   Cnpj do cliente              Sinal
   Nome do cliente              Restante a pagar
   Endereço do cliente
Arquivos normalizados
Arquivo de pedido             Arquivo de itens
   Identificação do pedido      Código do item
        Número da filial        Descrição do item
        Número do pedido
                                 Preço unitário
   Data do pedido
   Código do vendedor        Arquivo de itens do pedido
   CNPJ do vendedor             Identificação do item do
   Sinal                         pedido
                                    Número da filial
Arquivo de filiais                  Número do pedido

   Número da filial                Código do item

   Nome da filial               Quaintidade
   Endereço da filial
Arquivo de vendedores
   Código do vendedor
   Nome do vendedor


Arquivo de clientes
   Cnpj do cliente
   Nome do cliente
   Endereço do cliente
Regras para normalização

   Eliminar todos os atributos que possam ser
    calculados em função de outros;
       São uma fonte de problemas;
       Quando alterados, devem ter seus valores
        recalculados.
   Implementar um arquivo, separando os
    atributos que ocorrem mais de uma vez;
   Dividir o arquivo de tal maneira que cada
    atributo dependa exclusivamente da chave;
   Separando atributos multivaloraveis (atributos
    repetidos)
Exemplo:
           Arquivo de pedidos
           Identificação do pedido
             -nº. Filial
             -nº. pedido
           Data do pedido
           Nome da filial
           Endereço da filial
           Código do vendedor
           Nome do vendedor
           CNPJ do vendedor
           Nome do cliente
           Endereço do cliente
           Nº de itens solicitados
             -código do item
             -descrição do item
             -quantidade
             -preço unitário
Nº de itens solicitados
          -Identificação do pedido
            número da filial
            número do pedido
          -código do item
          -descrição do item
          -quantidade
          -preço unitário
A ligação do item ao pedido é feita pela chave do arquivo pedido no
Arquivo de itens.
Exercício: Locadora de DVD's

   Uma locadora de DVD empresta DVD's de
    diferentes gêneros a uma comunidade de
    sócios. Os sócios podem retirar um ou mais
    DVD's, seja no mesmo dia ou em dias
    destintos. Cada empréstimo tem uma data de
    devolução. Modele todas as tabelas do sistema
    utilizado para armazenar os dados da locadora,
    utilizando as regras de normalização.
Modelagem

   Atributos: são os dados armazenados em um
    arquivo, seja de alguma coisa ou alguém.
    Ex: ID_CLIENTE, Nome, Endereço
     Atributos Multivalorados: quando um atributo
    possui mais de um valor, por exemplo, atributo
    “telefone”.
   Chave: atributo ou conjunto de atributos que
    identificam um registro de forma única, por
    exemplo, cnh, rg, cpf
   Chave Única: não pode conter registros com o
    mesmo valor para a chave;
   Chave Universal: quando existe valores para ela
    em todos os registros do arquivo, não pode ser
    nula. Ex: CNPJ
   Perguntas:
todos os clientes são pessoas jurídicas;
todos clientes possuem registro na receita federal;
todos os clientes são brasileiros.
   Imutável: valores que não sofrem alteração no
    decorrer de sua existência. Ex: código do
    vendedor
   Dependência Funcional: um atributo é
    dependente, quando seu valor dependerá de
    um ou outro para existir.
Entidade Relacionamento

   Técnica utilizada para analisar dados através
    da especificação de objetos que necessitam de
    armazenamento de dados;
   Componentes:
       Entidades;
       Relacionamentos entre entidades;
       Atributos de entidades e dos relacionamentos.
   Entidades: objeto ou “coisa” do mundo real
    sobre os quais necessitamos guardar dados
    (clientes, sócios, produtos, etc.)
Entidades

   Durante o procedimento de análise do
    problema, ficamos atentos aos possíveis
    substantivos e nomes que aparecem;
   Critérios para identificar entidades: (realizar as
    seguintes perguntas)
       Há necessidade de guardar dados sobre esse
        objeto?
       Há mais de um objeto desse tipo?
       Existe uma chave para identificar cada objeto de
        forma única?
Exemplo: Entidade Pedido

   Sim, temos que guardar informações sobre os
    pedidos;
   Sim, existem vários pedidos;
   Sim, podemos estabelecer uma chave de
    identificação única.
   Relacionamentos: é o vínculo estabelecido
    entre as entidades;
   Atributos: são as características ou
    propriedades das entidades e dos
    relacionamentos, representam os dados dos
    objetos. CLIENTES              PEDIDOS
            - código do cliente     - nº. do pedido
            - nome do cliente       - nº. da filial
            - endereço do cliente   - data do pedido
Relacionamento...

         O Anacleto comprou uma impressora
   Onde Anacleto é um elemento do conjunto de
    valores do atributo Nome da entidade Clientes;
   Impressora é um elemento do conjunto de valores do
    atributo Nome da entidade Produtos;
   Comprou é a ligação entre o Cliente e o Produto.
Cardinalidade de relacionamentos...
Relacionamento 1 para 1: Maria é casada com
José.

- Maria – elemento do conjunto de valores do
atributo Nome da entidade Mulher;

- José – elemento do conjunto de valores do
atributo Nome da entidade Homem;
- Casada – relacionamento entre um homem e
uma mulher, onde um homem pode ser casado
com uma única mulher e vice-versa.
   Relacionamento N para M: João está
    matrículado na disciplina de Aplicativos II
    - Neste caso um aluno pode estar matrículado
    em várias disciplinas, bem como uma disciplina
    pode possuir vários alunos.
Grau do relacionamento...

   Define o número de entidades relacionadas;
   Binário: apenas duas entidades envolvidas;
       Ex:
        Professor oferece material para conteúdos
   Ternário: três entidades envolvidas;
       EX:
        Professor oferece material para conteúdos
        específicos
SGBD...

   Estruturar BD
   Manipular BD
   Ex: Oracle, Access, MySQL, Firebird,
    PostgreSQL, etc.
   Tabelas do banco – forma física de armazenar
    dados em um banco
       Campos ou atributos
       Registros ou instâncias
Chave primária...
   Método para identificação única de cada
    registro de uma tabela;
   RG, Código, CPF, CNPJ, Registro, Matrícula;
   Permitir acesso específico a uma determinado
    registro da tabela;
             Tabela: alunos
             - codigo_aluno            Na tabela ao lado o
             - nome_aluno              ”codigo_aluno” define a chave
             - endereco_aluno          primária da entidade alunos
             - telefone_aluno
             - data_nascimento_aluno
             - data_cadastro
Chave estrangeira...

   Quando um atributo de uma entidade (relação)
    for chave primária em outra entidade (relação)
    Tabela: produtos          Tabela: vendas
    - codigo_produto          - codigo_venda
    - nome_produto            - codigo_produto
    - tipo_produto            - quantidade_venda
    - quantidade_produto      - valor_venda
    - preco_produto           - data_venda
    - marca_produto
    - data_cadastro_produto
Linguagem SQL...

   Definir e manipular diretamente as tabelas e o
    próprio Banco de dados;
   Linguagem de definição - DDL
   Linguagem de manipulação – DML
   Windows (PHPTriad) ou Linux (LAMP)
   MySQL
TIPOS DE DADOS...

   Integer: números inteiros positivos e negativos;
   Caracteres: (char;varchar): char de 1 a 254
    bytes (grava espaços em branco), varchar não
    grava espaços em branco;
   Float (double): ponto flutuante

Aplicativos2

  • 1.
    Aplicativos II...  APRESENTAÇÃO PESSOAL  Apresentação da disciplina  Objetivo  Carga horária: 80 h/a por semestre  Duas vezes na semana: 4 períodos  Softwares  Material
  • 2.
    Contatos:  www.fabriciodperez.blogspot.com  fabriciodenis1@hotmail.com  fabriciodenis1@yahoo.com.br  fabriciodenis@gmail.com  @fabriciodenis
  • 3.
    Modelagem de dados  Para modelar um SI é necessário:  Identificar as funções que formam o sistema;  Identificar os dados e as informações que ele processa.  Análise de dados:  Conjunto de técnicas com objetivo de identificar, conceituar e estruturar os dados de uma empresa, parte dela ou de um sistema.  Para que serve:  Obter um melhor conhecimento do problema;  Projetar adequadamente a base de dados;
  • 4.
    Organizar o compartilhamento de dados e integração dos sistema;  Unificar a visão que a empresa tem dos dados.  Conhecendo os problemas  Problemas complexos necessitam de uma análise a partir de vários pontos de vista;  Análise estruturada analisa o sistema a partir de suas funções;  Análise de dados atua como uma alternativa para analisar o sistema.
  • 5.
    Projetar dados  Dados do sistema são armazenados em um conjunto de arquivos inter-relacionados;  Compartilhamento de dados  Banco de dados individuais por sistema  Um único banco de dados compartilhado, evitando redundâncias e as inconsistências;
  • 6.
    Sistema não integrado Sistema A Sistema B Sistema C Sistema D
  • 7.
    Sistema integrado –base corporativa Sistema A Sistema B Base Coorporativa Sistema C Sistema D
  • 8.
    BANCO DE DADOS...  Conceitos:  Conjunto de dados com uma estrutura regular utilizada para armazenar, agrupar e organizar informações utilizadas para um determinado fim ou aplicação;  Visão:  Interna (Desenvolvedor)  Externa (Usuário)  DDL  DML
  • 9.
    Vantagens...  Redução ou eliminação da redundância;  Eliminação das inconsistências;  Compartilhamento de dados;  Restrições de segurança;  Padronização dos dados;  Independência dos dados;  Menutenção da integridade.
  • 10.
    Técnicas de Análisede Dados  normalização de dados: técnica formal, rigorosa e simples, de fácil aplicação;  que visa a simplificação dos arquivos, mas não ajuda muito na investigação do problema;  sua função é produzir arquivos mais simples e estáveis;  normalizar um arquivo significa dividi-lo em vários arquivos.
  • 11.
    Exemplo: Loja devendas  Identificação do pedido  Itens solicitados  Número da filial  Código do item  Número do pedido  Quantidade  Data do pedido  Preço unitário  Nome da filial  Preço total  Endereço da filial  Valor total do pedido  Código do vendedor  Imposto a recolher  Cnpj do cliente  Sinal  Nome do cliente  Restante a pagar  Endereço do cliente
  • 12.
    Arquivos normalizados Arquivo depedido Arquivo de itens  Identificação do pedido  Código do item  Número da filial  Descrição do item  Número do pedido  Preço unitário  Data do pedido  Código do vendedor Arquivo de itens do pedido  CNPJ do vendedor  Identificação do item do  Sinal pedido Número da filial Arquivo de filiais  Número do pedido  Número da filial  Código do item  Nome da filial  Quaintidade  Endereço da filial
  • 13.
    Arquivo de vendedores  Código do vendedor  Nome do vendedor Arquivo de clientes  Cnpj do cliente  Nome do cliente  Endereço do cliente
  • 14.
    Regras para normalização  Eliminar todos os atributos que possam ser calculados em função de outros;  São uma fonte de problemas;  Quando alterados, devem ter seus valores recalculados.  Implementar um arquivo, separando os atributos que ocorrem mais de uma vez;  Dividir o arquivo de tal maneira que cada atributo dependa exclusivamente da chave;  Separando atributos multivaloraveis (atributos repetidos)
  • 15.
    Exemplo: Arquivo de pedidos Identificação do pedido -nº. Filial -nº. pedido Data do pedido Nome da filial Endereço da filial Código do vendedor Nome do vendedor CNPJ do vendedor Nome do cliente Endereço do cliente Nº de itens solicitados -código do item -descrição do item -quantidade -preço unitário
  • 16.
    Nº de itenssolicitados -Identificação do pedido número da filial número do pedido -código do item -descrição do item -quantidade -preço unitário A ligação do item ao pedido é feita pela chave do arquivo pedido no Arquivo de itens.
  • 17.
    Exercício: Locadora deDVD's  Uma locadora de DVD empresta DVD's de diferentes gêneros a uma comunidade de sócios. Os sócios podem retirar um ou mais DVD's, seja no mesmo dia ou em dias destintos. Cada empréstimo tem uma data de devolução. Modele todas as tabelas do sistema utilizado para armazenar os dados da locadora, utilizando as regras de normalização.
  • 18.
    Modelagem  Atributos: são os dados armazenados em um arquivo, seja de alguma coisa ou alguém. Ex: ID_CLIENTE, Nome, Endereço  Atributos Multivalorados: quando um atributo possui mais de um valor, por exemplo, atributo “telefone”.  Chave: atributo ou conjunto de atributos que identificam um registro de forma única, por exemplo, cnh, rg, cpf
  • 19.
    Chave Única: não pode conter registros com o mesmo valor para a chave;  Chave Universal: quando existe valores para ela em todos os registros do arquivo, não pode ser nula. Ex: CNPJ  Perguntas: todos os clientes são pessoas jurídicas; todos clientes possuem registro na receita federal; todos os clientes são brasileiros.
  • 20.
    Imutável: valores que não sofrem alteração no decorrer de sua existência. Ex: código do vendedor  Dependência Funcional: um atributo é dependente, quando seu valor dependerá de um ou outro para existir.
  • 21.
    Entidade Relacionamento  Técnica utilizada para analisar dados através da especificação de objetos que necessitam de armazenamento de dados;  Componentes:  Entidades;  Relacionamentos entre entidades;  Atributos de entidades e dos relacionamentos.  Entidades: objeto ou “coisa” do mundo real sobre os quais necessitamos guardar dados (clientes, sócios, produtos, etc.)
  • 22.
    Entidades  Durante o procedimento de análise do problema, ficamos atentos aos possíveis substantivos e nomes que aparecem;  Critérios para identificar entidades: (realizar as seguintes perguntas)  Há necessidade de guardar dados sobre esse objeto?  Há mais de um objeto desse tipo?  Existe uma chave para identificar cada objeto de forma única?
  • 23.
    Exemplo: Entidade Pedido  Sim, temos que guardar informações sobre os pedidos;  Sim, existem vários pedidos;  Sim, podemos estabelecer uma chave de identificação única.
  • 24.
    Relacionamentos: é o vínculo estabelecido entre as entidades;  Atributos: são as características ou propriedades das entidades e dos relacionamentos, representam os dados dos objetos. CLIENTES PEDIDOS - código do cliente - nº. do pedido - nome do cliente - nº. da filial - endereço do cliente - data do pedido
  • 25.
    Relacionamento... O Anacleto comprou uma impressora  Onde Anacleto é um elemento do conjunto de valores do atributo Nome da entidade Clientes;  Impressora é um elemento do conjunto de valores do atributo Nome da entidade Produtos;  Comprou é a ligação entre o Cliente e o Produto.
  • 26.
    Cardinalidade de relacionamentos... Relacionamento1 para 1: Maria é casada com José. - Maria – elemento do conjunto de valores do atributo Nome da entidade Mulher; - José – elemento do conjunto de valores do atributo Nome da entidade Homem; - Casada – relacionamento entre um homem e uma mulher, onde um homem pode ser casado com uma única mulher e vice-versa.
  • 27.
    Relacionamento N para M: João está matrículado na disciplina de Aplicativos II - Neste caso um aluno pode estar matrículado em várias disciplinas, bem como uma disciplina pode possuir vários alunos.
  • 28.
    Grau do relacionamento...  Define o número de entidades relacionadas;  Binário: apenas duas entidades envolvidas;  Ex: Professor oferece material para conteúdos  Ternário: três entidades envolvidas;  EX: Professor oferece material para conteúdos específicos
  • 29.
    SGBD...  Estruturar BD  Manipular BD  Ex: Oracle, Access, MySQL, Firebird, PostgreSQL, etc.  Tabelas do banco – forma física de armazenar dados em um banco  Campos ou atributos  Registros ou instâncias
  • 30.
    Chave primária...  Método para identificação única de cada registro de uma tabela;  RG, Código, CPF, CNPJ, Registro, Matrícula;  Permitir acesso específico a uma determinado registro da tabela; Tabela: alunos - codigo_aluno Na tabela ao lado o - nome_aluno ”codigo_aluno” define a chave - endereco_aluno primária da entidade alunos - telefone_aluno - data_nascimento_aluno - data_cadastro
  • 31.
    Chave estrangeira...  Quando um atributo de uma entidade (relação) for chave primária em outra entidade (relação) Tabela: produtos Tabela: vendas - codigo_produto - codigo_venda - nome_produto - codigo_produto - tipo_produto - quantidade_venda - quantidade_produto - valor_venda - preco_produto - data_venda - marca_produto - data_cadastro_produto
  • 32.
    Linguagem SQL...  Definir e manipular diretamente as tabelas e o próprio Banco de dados;  Linguagem de definição - DDL  Linguagem de manipulação – DML  Windows (PHPTriad) ou Linux (LAMP)  MySQL
  • 33.
    TIPOS DE DADOS...  Integer: números inteiros positivos e negativos;  Caracteres: (char;varchar): char de 1 a 254 bytes (grava espaços em branco), varchar não grava espaços em branco;  Float (double): ponto flutuante