Capítulo 1 – Modelagem de Dados

Definição de Modelagem de Dados

A modelagem de dados é uma técnica usada para a especificação das regras de negócios e as estruturas de dados de um banco de dados. Ela faz parte do ciclo de desenvolvimento de um sistema de informação e é de vital importância para o bom resultado do projeto. Modelar dados consiste em desenhar o sistema de informações, concentrando-se nas entidades lógicas e nas dependências lógicas entre essas entidades.

Modelagem de dados ou modelagem de banco de dados envolve uma série de aplicações teóricas e práticas, visando construir um modelo de dados consistente, não redundante e perfeitamente aplicável em qualquer SGBD moderno.

A modelagem de dados está dividida em:

 

Modelo conceitual

A modelagem conceitual baseia-se no mais alto nível e deve ser usada para envolver o cliente, pois o foco aqui é discutir os aspectos do negócio do cliente e não da tecnologia. Os exemplos de modelagem de dados vistos pelo modelo conceitual são mais fáceis de compreender, já que não há limitações ou aplicação de tecnologia específica. O diagrama de dados que deve ser construído aqui é o Diagrama de Entidade e Relacionamento, onde deverão ser identificados todas as entidades e os relacionamentos entre elas. Este diagrama é a chave para a compreensão do modelo conceitual de dados.

Exemplo simples de Diagrama de Entidade e Relacionamento:

02.jpg

Modelo lógico

O modelo lógico já leva em conta algumas limitações e implementa recursos como adequação de padrão e nomenclatura, define as chaves primárias e estrangeiras, normalização, integridade referencial, entre outras. Para o modelo lógico deve ser criado levando em conta os exemplos de modelagem de dados criados no modelo conceitual.

Exemplo do diagrama de banco de dados gerado no Microsoft Visio:

03.jpg

 

Modelo físico

No modelo físico fazemos a modelagem física do modelo de banco de dados. Neste caso leva-se em conta as limitações impostas pelo SGBD escolhido e deve ser criado sempre com base nos exemplos de modelagem de dados produzidos no item anterior, modelo lógico.

Capítulo 2 – Banco de Dados

Definição de Banco de Dados

A tecnologia de informação está passando por modificações de forma globalizada, atingindo toda a programação computacional, de dispositivos móveis e outros aparelhos eletrônicos. Em virtude do crescimento dessas informações, os usuários estão necessitando de forma mais intensa, de espaços para armazenar seus dados.

Toda aplicação desenvolvida, torna-se fundamental a presença de um banco de dados (SGBD), do qual tem o objetivo de armazenar os dados feitos via aplicação, possuindo uma interatividade entre base de dados, aplicação e usuário.

Abaixo estão apresentadas algumas definições de um banco/base de dados:

  • Coleção de dados inter-relacionados representando informações sobre um domínio específico;
  • Coleção de dados integrados que tem por objetivo atender as necessidades dos usuários;
  • Conjunto de dados persistentes e manipuláveis que obedecem a um padrão de armazenamento;
  • Conjunto de dados com uma estrutura regular que organizam uma informação;

Exemplos: dicionário, lista telefônica, controle do acervo de uma biblioteca, sistema de controle dos recursos humanos de uma empresa, dados pessoais de uma pessoa.

Dados

Os dados referem-se a uma recolha de informações organizadas, eventos, atividades e transações que são gravados, classificados e armazenados dentro de um sistema de computador.

Exemplo: texto, fotos, figuras, sons gravados, animação, numéricos, alfanuméricos entre outros.

Informação

A informação é o dado organizado, sendo uma abstração informal (não pode ser gerada através de uma teoria lógica ou matemática), que está na mente da pessoa que está inserindo tal informação, possuindo algum significado.

Exemplo: um texto pode ser uma informação uma fonte de muitas informações ou um conjunto de informação, pois se os dados agrupados gerarem sentido para quem o lê e ficando claro ou não a que se refere, o dado passa a ser o valor de um determinado item, evento do que se refere. Outros exemplos de informação são relatórios, boletim escolar, folha de pagamento.

Conhecimento

O conhecimento é resultado de várias informações organizadas de forma lógica e suficiente para criar um evento. Pode ser caracterizado também como uma abstração interior, algo que foi experimentado, vivenciado por alguém.

Exemplo entre dado e informação

Abaixo é exibido uma tabela em que o dado é o nome, endereço e telefone de cada pessoa. Mostrando de forma individual, podendo ser gerado uma informação, quando estão aglomerados e cadastrados em uma lista telefônica.

Tabela 1: Exemplo de dados e informação da tabela lista telefônica que possui alocados dentro dela

Nome Endereço Telefone
Maria Joquina Av. Flores dos Reis, 332 5568-4445
João Aparecido Rua Jardim Vieira, 122 5211-8854

Definição Geral

Base de Dados: Coleção de dados relacionados;

Dados: Valor de um campo armazenado, matéria-prima para obtenção de informação;

Informação: Dados compilados e processados de acordo com solicitação de consultas e análises.

Capítulo 3 – Sistemas de Gerenciamento de de Dados (SGBD)

Definição de SGBD

Conhecidos como SGBD, em inglês Data Base Management System – DBMS – são um conjunto de programas que permite aos usuários criar e manter um banco de dados, do qual sua principal meta é retirar da aplicação cliente a responsabilidade de gerenciar o acesso, a manipulação e a organização dos dados. O SGBD disponibiliza uma interface para que os clientes possam consultar, alterar/atualizar, incluir ou deletar os dados armazenados em um banco de dados.

Tem como característica guardar grandes informações de dados em massa, estruturando em registros e tabelas com funções para acesso e processamento das informações. Alguns exemplos: MS-Access ,  DB2 ,  Informix ,  Oracle ,  Progress ,  Sybase ,  TSGDB,Unify ,  Zim ,  MS-SQL Server ,  Postgresql ,  Mysql ,  Interbase / Firebird, entre outros.

01.png

Vantagens de um SGBD

Independência dos dados

O SGBD deve oferecer isolamento das aplicações em relação aos dados. Esta característica permite modificar o modelo de dados do banco sem a necessidade de reescrever ou recompilar todos os programas que estão prontos. As definições dos dados e os relacionamentos entre os dados são separados dos códigos aos programas.

 

Facilidade de uso/desempenho

Os arquivos devem ser projetados para atender a diferentes necessidades, permitindo desenvolver aplicações melhores, mais seguras e mais rápidas, onde devem ter comandos avançados em sua linguagem de acesso.

 

Integridade dos dados

Garantir a integridade dos dados, através da implementação de restrições adequadas, até porque os dados são a parte mais importante de uma aplicação.

 

Redundância dos dados

Manter a redundância de dados sob controle, ou seja, não pode haver mais de uma representação do mesmo dado, uma boa prática é que esta informação seja armazenada uma única vez.

No processamento tradicional de arquivos, cada grupo de usuários deve manter seu próprio conjunto de arquivos e dados. Sendo assim, ocorre redundâncias que prejudicam os sistemas com problemas como:

  • Toda vez que for necessário atualizar um arquivo de um grupo, é necessário atualizar todos os grupos para manterem a integridade dos dados no ambiente como um todo;
  • Redundância desnecessária de dados, acaba levando ao armazenamento excessivo de informações, ocupando espaço que poderia estar sendo utilizado com outras informações.

 

Segurança e privacidade dos dados

Deve assegurar que os dados armazenados só poderão ser acessados ou modificados por usuários autorizados.

           

Agilidade na recuperação após falha no retorno dos dados

Os dados são de importância vital e não podem ser perdidos. Sendo assim, o SGBD deve implementar sistemas de tolerância a falhas, tais como estrutura automática de recuperação e uso do conceito de transação.

           

Uso compartilhado

Um SGBD deve permitir que múltiplos usuários acessem o banco de dados ao mesmo tempo. Este fator é essencial para que múltiplas aplicações integradas que acessam o mesmo banco em tempo paralelo. O SGBD multiusuário deve manter o controle de concorrência para assegurar que os resultados de atualizações sejam corretos.

Exemplo: O mesmo sistema de uma farmácia que possui suas redes em duas ou mais cidades, precisa estar acessando e manipulando os dados a todo momento no banco.

 

Controle do espaço de armazenamento

Possuir controle das áreas de disco ocupadas, evitando a ocorrência de falhas por falta de espaço de armazenamento.

 

Restrição a Acesso não autorizado

Fornecer um subsistema de autorização e segurança, do qual é utilizado pelo DBA (Administrador de Banco de Dados) que efetua a criação das “contas” e especifica as restrições destas contas. O controle de restrições se aplica tanto ao acesso aos dados quanto ao uso de softwares inerentes ao SGBD.

 

Representação de Relacionamentos Complexos entre dados

Poder incluir em um banco de dados uma variedade de dados que estão inter-relacionados de várias formas. O SGBD deve fornecer recursos para se representar uma grande variedade de relacionamentos entre os dados, bem como, recuperar e atualizar os dados de maneira prática e eficiente.

 

Por que utilizar bancos de dados informatizados?

  • Compacto (elimina arquivos de papéis);
  • Rápidez;
  • Integrado (vários aplicativos utilizam o mesmo repositório de dados);
  • Compartilhado (vários usuários podem acessar);
  • Seguro (controle de acesso);
  • Padronizado;
  • Consistente;
  • Suporte a transações.

 

EXERCÍCIOS I

  1. Elabore um texto (mais ou menos vinte linhas) discorrendo sobre a importância dos registros de dados para uma empresa e para a sociedade em geral.
  2. Como você entende por: informação, dado e conhecimento?
  3. O que é um banco de dados? O que é um SGBD (Sistema Gerenciador de Banco de Dados)?
  4. Cite cinco razões para utilizar-se um banco de dados computadorizado.

 

Capítulo 4 – Profissionais e Atividades em um SGBD

Administrador da Base de Dados

Em qualquer organização onde muitas pessoas compartilham muitos recursos, existe a necessidade de um administrador chefe para supervisionar e gerenciar estes recursos. Num ambiente de base de dados, o recurso primário é a própria base de dados e os recursos secundários são o próprio SGBD e softwares relacionados. A administração desses recursos é de responsabilidade do DBA (“Database Administrator”). O DBA é responsável por autorizar acesso à base de dados e coordenar e monitorar seu uso. O DBA é responsável por problemas, tais como, quebra de segurança ou baixo desempenho. Em grandes organizações, o DBA é auxiliado por técnicos.

 

Projetistas da Base de Dados

Os projetistas de base de dados têm a responsabilidade de identificar os dados a serem armazenados na Base de Dados e escolher estruturas apropriadas para representar e armazenar tais dados. Estas tarefas são geralmente executadas antes que a base de dados seja utilizada. É responsabilidade destes projetistas obter os requisitos necessários dos futuros usuários da base. Tipicamente, os projetistas interagem com cada grupo de usuários em potencial e definem visões da base de dados para adequar os requisitos e processamentos de cada grupo. Estas visões são então analisadas e, posteriormente, integradas para que, ao final, o projeto da base de dados possa ser capaz de dar subsídio aos requisitos de todos os grupos de usuários.

 

Analistas de Sistemas e Programadores de Aplicação

Analistas de Sistemas determinam os requisitos de usuários finais, especialmente dos usuários comuns, e desenvolvem especificações das transações para atender a estes requisitos; Programadores De Aplicações implementam estas especificações produzindo programas e, então, testam, depuram, documentam e mantêm estes programas. Analistas e programadores devem estar familiarizados com todas as capacidades fornecidas pelo SGBD para desempenhar estas tarefas.

 

Usuários Finais

Existem profissionais que precisam ter acesso à base de dados para consultar, modificar e gerar relatórios. A base de dados existe para estes usuários. Existem algumas categorias de usuários finais:

  • Usuários Ocasionais: ocasionalmente fazem acesso à base de dados, mas eles podem necessitar de diferentes informações a cada vez que fazem acesso. Eles podem usar uma linguagem de consulta sofisticada para especificar suas requisições e são, tipicamente, gerentes de médio ou alto-nível;
  • Usuários Comuns Ou Paramétricos: estes usuários realizam operações padrões de consultas e atualizações, chamadas TRANSAÇÕES PERMITIDAS, que foram cuidadosamente programadas e testadas. Estes usuários constantemente realizam recuperações e modificações na base de dados;
  • Usuários Sofisticados: incluem engenheiros, analistas de negócios e outros que procuraram familiarizar-se com as facilidades de um SGBD para atender aos seus complexos requisitos;

 

Profissionais de Apoio

  • Projetistas e Implementadores de SGBD
  • Desenvolvedores de Ferramentas
  • Operadores de Manutenção