Módulo 12 - Introdução aos sistemas de informação

46
Módulo 12 - Introdução aos Sistemas de Informação PROGRAMAÇÃO E SISTEMAS DE INFORMAÇÃO 11º ANO Curso Profissional de Técnico de Gestão e Programação de Sistemas Informáticos Prof. Luis Folgado Ferreira

Transcript of Módulo 12 - Introdução aos sistemas de informação

Page 1: Módulo 12 - Introdução aos sistemas de informação

Módulo 12 - Introdução aos Sistemas de

InformaçãoPROGRAMAÇÃO E SISTEMAS DE INFORMAÇÃO

11º ANOCurso Profissional de Técnico de Gestão e Programação de Sistemas

Informáticos

Prof. Luis Folgado Ferreira

Page 2: Módulo 12 - Introdução aos sistemas de informação

Conteúdos

1. Necessidade das bases de dados.

2. Sistemas de gestão de bases de dados.

3. Os modelos como métodos de conceção de sistemas.

4. Modelos utilizados na gestão de bases de dados (Relacional,

Hierárquico, Rede).

Page 3: Módulo 12 - Introdução aos sistemas de informação
Page 4: Módulo 12 - Introdução aos sistemas de informação
Page 5: Módulo 12 - Introdução aos sistemas de informação
Page 6: Módulo 12 - Introdução aos sistemas de informação

História• “Databases are older than many people realize. By the mid-1960s,

businesses and governments were using simple databases for storing and retrieving information on rudimentary storage systems. In the 1970s, the relationship database model was developed, and much of the language used in modern database programming was developed during this time period. SQL databases have dominated the field ever since.”• http://www.ask.com/technology/databases-important-f0fe51a39eb47be0

Page 7: Módulo 12 - Introdução aos sistemas de informação

Qual a necessidade das bases de dados?

Page 8: Módulo 12 - Introdução aos sistemas de informação

Qual a necessidade das bases de dados?Guardar informação. Organizar. Partilhar. Aceder. Estudar.

• Gerir• Acrescentar• Alterar• Apagar• Procurar/Selecionar

Page 9: Módulo 12 - Introdução aos sistemas de informação

Qual a necessidade das bases de dados?

• Facilitar o Acesso

• Organizar

• Analisar

Page 10: Módulo 12 - Introdução aos sistemas de informação

Diversas aplicações e plataformas

Page 11: Módulo 12 - Introdução aos sistemas de informação

Quais são as vantagens da tecnologia de Bases de Dados?• Integração de dados de suporte a múltiplas aplicações;

• Diminuição de redundâncias;

• Integridade dos dados (evitar inconsistências);

• Facilitar a pesquisa (permite questões ad hoc);

• Aumentar a flexibilidade das aplicações (independência dos dados relativamente aos programas);

• Desenvolvimento de mecanismos de segurança;

• Controlo da concorrência.

Page 12: Módulo 12 - Introdução aos sistemas de informação

O que é Sistema de Gestão de Bases de Dados?

• Um Sistema de Gestão de Bases de Dados (ou Gestor de Bases de

Dados) é o software que gere o armazenamento, manipulação e

pesquisa dos dados existentes na base de dados, funcionando como

um interface entre as aplicações e os dados necessários para a

execução dessas aplicações.

Page 13: Módulo 12 - Introdução aos sistemas de informação

Alguns exemplos de SGBD´s:• IMS, DB2, Ingres, Informix Dynamic Server, Oracle Server, Sybase SQL

Server, Microsoft SQL Server, Access, MySql, etc.

Page 14: Módulo 12 - Introdução aos sistemas de informação

Trabalho prático 1“Os sistemas de base de dados”Tendo em conta a listagem exemplo dos diferentes sistemas de base de dados, realiza uma apresentação que mostre as caraterísticas de cada um.SGBD:IMS, DB2, Ingres, Informix Dynamic Server, Oracle Server, Sybase SQL Server, Microsoft SQL Server e MS Access.

• Mínimo de 15 diapositivos. 4 tempos de 45m.

Page 15: Módulo 12 - Introdução aos sistemas de informação

Quais são os requisitos fundamentais de um SGBD?• Segurança- proteção da base de dados contra acessos não autorizados;

• Integridade - validação de operações que coloquem em risco a consistência dos dados;

• Controlo de concorrência nos acessos - coordenação da partilha dos dados pelos vários utilizadores (SGBDs multiutilizador);

• Recuperação de falhas - restaurar a integridade da base de dados depois da ocorrência de uma falha.

• Mecanismos de recuperação (fundamentalmente baseados em redundância): backups, transaction logging (ficheiro transaction log, dados para repor as últimas transações).

Page 16: Módulo 12 - Introdução aos sistemas de informação

Sumário• Módulo 12 - Introdução aos Sistemas de Informação• Os diferentes modelos de base de dados.

• Revisões da matéria dada.

• Avaliação e autoavaliação. • Conclusão do módulo 12.

Page 17: Módulo 12 - Introdução aos sistemas de informação

Modelos de Base de Dados• Os diferentes modelos de bancos de dados

As base de dados apareceram no final dos anos 60.

Nesta época existia a necessidade de um sistema de gestão da informação flexível se fazia sentir.

Existem cinco modelos de SGBD, diferenciados de acordo com a representação dos dados que contêm.

Page 18: Módulo 12 - Introdução aos sistemas de informação
Page 19: Módulo 12 - Introdução aos sistemas de informação

Gerações de SGBD

Existe uma grande diferença na capacidade de modelação dos vários modelos de BD existentes, podendo estes ser classificados em 3 gerações distintas, às quais está associada tecnologia igualmente distinta:

1ª geração – primeiros passos da tecnologia de BD, com o desenvolvimento dos modelos hierárquicos e em rede;

2ª geração – corresponde ao aparecimento e divulgação do modelo relacional;

3ª geração – estado atual do desenvolvimento da tecnologia de BD, nomeadamente Object Oriented.

Dada a importância do modelo relacional, é também normal conhecer estas 3 gerações por pré-relacional, relacional e pós-relacional [Date 1995]

Page 20: Módulo 12 - Introdução aos sistemas de informação

Modelo HierárquicoOs dados são classificados hierarquicamente, de acordo com uma “arborescência” descendente. Este modelo utiliza apontadores entre os diferentes registos. Trata-se do primeiro modelo de SGBD.

Page 21: Módulo 12 - Introdução aos sistemas de informação

Modelo RedeComo o modelo hierárquico, este modelo utiliza apontadores para os registos. Contudo, a estrutura já não é necessariamente arborescente no sentido descendente:

Page 22: Módulo 12 - Introdução aos sistemas de informação

Modelo RelacionalO modelo relacional (SGBDR, Sistema de gestão de bancos de dados relacionais) : os dados são registados em quadros a duas dimensões (linhas e colunas). A manipulação destes dados faz-se de acordo com a teoria matemática das relações.

Page 23: Módulo 12 - Introdução aos sistemas de informação

Modelo DedutivoOs dados são representados sob a forma de tabela, mas a sua manipulação faz-se por cálculo de predicados;Capacidade de definir regras (dedutivas);Deriva novos dados à partir das relações básicas, podendo deduzir ou inferir informações adicional a partir de fatos que estão armazenados;O resultado é um BDD – Base de Dados Dedutiva.

Page 24: Módulo 12 - Introdução aos sistemas de informação

Modelo ObjetoO modelo objeto (SGBDO, Sistema de gestão de bancos de dados objeto): os dados são armazenados sob a forma de objetos, quer dizer, de estruturas chamadas classes que apresentam dados membros. Os campos são instâncias destas classes.

Page 25: Módulo 12 - Introdução aos sistemas de informação

(Geral) Modelo ConceptualA criação do modelo conceptual de dados é um passo intermédio e fundamental no desenvolvimento de qualquer sistema de Bases de Dados.

Dependendo da maior ou menor perfeição com que é efetuado a modelização, assim a BD resultante vai suportar com maior ou menor dificuldade os requisitos atuais e as reestruturações necessários inerentes às alterações futuras.

O modelo conceptual é um modelo lógico, abstrato e independente de qualquer implementação. É portanto proceder posteriormente a adaptações de acordo com o SGBD que o irá suportar, perdendo alguma riqueza do modelo inicial.

Page 26: Módulo 12 - Introdução aos sistemas de informação

Conhecer melhor os modelos utilizados na gestão de bases de dados

• Hierárquico• Rede• Relacional

Page 27: Módulo 12 - Introdução aos sistemas de informação

Modelo Hierárquico• É o 1º modelo reconhecido como tal;

• Os dados estão estruturados em hierarquias ou árvores, percorrendo-as desde a raiz até ao nó que contém o registo pretendido, para ser efetuado o acesso aos dados;

• É adequado para acesso sequencial a dados, principalmente em casos em que, pela sua natureza, os dados estão organizados de forma sequencial;

Page 28: Módulo 12 - Introdução aos sistemas de informação

Modelo Hierárquico (cont.)• Uma base de dados hierárquica é constituída por um conjunto de

hierarquias. Os nós das hierarquias que contêm ocorrências dos registos, são designados por segmentos;

• O registo que numa hierarquia precede outros, designa-se registo-pai dos outros registos (registos-filhos);

• O relacionamento entre um registo-pai e registos-filhos é de 1:M;

Page 29: Módulo 12 - Introdução aos sistemas de informação

• Os dados estão organizados e podem ser acedidos segundo uma sequência hierárquica com uma navegação do tipo cima para baixo e esquerda para a direita.

• No exemplo apresentado é fácil acedermos registos de cliente. E aos registos de produto?

Modelo Hierárquico (cont.)

Page 30: Módulo 12 - Introdução aos sistemas de informação

Modelo Hierárquico (cont.)Cliente

Encomenda

Linha de Encomenda

Produto

Page 31: Módulo 12 - Introdução aos sistemas de informação

• A consulta a uma linha de encomenda obriga a:

• Aceder ao registo do cliente;• Extrair a localização da 1ª encomenda;• Ler vários registos até encontrar a encomenda pretendida;• Extrair a localização da 1ª linha dessa encomenda;• Ler vários registos até encontrar a linha pretendida

Modelo Hierárquico (cont.)

Page 32: Módulo 12 - Introdução aos sistemas de informação

• Ainda no mesmo exemplo não é possível registar dados de um produto enquanto não lhe estiver associada uma encomenda;• Para a aceder a um produto é preciso localizar um cliente que o tenha

encomendado;• Quando um produto é encomendado todos os seus dados são registados

de novo;• Para ultrapassar este problema são criadas hierarquias paralelas.

Modelo Hierárquico (cont.)

Sistema comercial mais divulgadoInformation Management System da IBM Corp.

Page 33: Módulo 12 - Introdução aos sistemas de informação

Modelo Hierárquico (cont.)

Cliente

Encomenda

Linha de Encomenda Linha de Encomenda

Produto

Redundância!

Page 34: Módulo 12 - Introdução aos sistemas de informação

Cliente

Encomenda

Linha de Encomenda

Produto

ApontadorRegisto Pai Virtual

Modelo Hierárquico (cont.)

Page 35: Módulo 12 - Introdução aos sistemas de informação

Modelo em Rede• Aparece como uma extensão do modelo hierárquico;

• Elimina o conceito de hierarquia e permite assim que um mesmo registo esteja envolvido em várias associações;

• No modelo em rede os registos estão organizados em grafos;

• No modelo em rede aparece um único tipo de associação – SET, que define uma relação de 1:M entre 2 tipos de registos – owner e member;

Page 36: Módulo 12 - Introdução aos sistemas de informação

• O Data Base Task Group (DBTG) da CODASYL (COmmittee on DAta SYstems and Languages) estabeleceu uma norma para este modelo de BD, com linguagem própria para definição e manipulação de dados, donde este modelo também ser conhecido por CODASYL;

• Forma de descrição de um set:

Nome do set = definição do owner + definição do member

Modelo em Rede

Cliente

Encomenda

set=Encomendas_ClienteOwner=ClienteMember=Encomenda

Page 37: Módulo 12 - Introdução aos sistemas de informação

Modelo em Rede

Cliente

Encomenda

Encomenda

Encomenda

Page 38: Módulo 12 - Introdução aos sistemas de informação

• Tipo de navegação• Do Owner para o 1º Member do Set• Do Owner para o último Member do Set• De qualquer Member do Set para o respectivo Owner• De um Member para o Member anterior• De um Member para o próximo Member

Modelo em Rede

Page 39: Módulo 12 - Introdução aos sistemas de informação

• Ao contrário do Modelo Hierárquico, em que qualquer acesso aos dados passa pela raiz, no modelo em rede pode aceder-se a qualquer nó da rede;• Estes dois modelos – Hierárquico e Rede são Record-Oriented, isto

é qualquer acesso à base de dados insere, consulta, altera ou remove um registo de cada vez.

Modelo em Rede

Sistema comercial mais divulgadoCA-IDMS da Computer Associates

Page 40: Módulo 12 - Introdução aos sistemas de informação

Os modelos hierárquico e rede, evoluíram a partir de técnicas de processamento de ficheiros;O modelo relacional resultou de um profundo estudo teórico realizado por CODD (investigador da IBM), tendo por base a teoria dos conjuntos – álgebra relacional.O modelo foi apresentado num artigo publicado em 1970, mas que só nos anos 80, adquire a maturidade técnica e a fiabilidade necessária para a sua consagração em termos de mercado.

Modelo Relacional

Page 41: Módulo 12 - Introdução aos sistemas de informação

A primeira implementação comercial é o SGBD Oracle;Hoje são os seguintes os principais SGBD’s relacionais:

• Oracle; • DB/2 (IBM); • CA-OpenIngres; • MS SQL Server; • Sybase SQL Server e • Informix (adquirido pela IBM)

Modelo Relacional

Page 42: Módulo 12 - Introdução aos sistemas de informação

Modelo RelacionalModelo relacional revelou-se ser o mais flexível e adequado ao solucionar os vários problemas que se colocam ao nível da conceção e implementação da base de dados.A estrutura fundamental do modelo relacional é a relação, ou tabela, bidimensional.Uma relação é constituída por um ou mais atributos (campos), que traduzem o tipo de dados a armazenar. Cada instância do esquema (linha), designa-se por registo(ou tuplos).

Page 43: Módulo 12 - Introdução aos sistemas de informação

O modelo relacional baseia-se nos seguintes aspectos:• a informação deve ser estruturada em tabelas (relações):

• as colunas definem os campos• as linhas definem os registos;

• cada tabela deve ser normalizada, ou seja, depurada de redundâncias e reduzida aos elementos mais simples; •A ordem dos atributos no seu esquema não tem qualquer significado;•Todos os valores de um dado atributo pertencem a um determinado domínio. Quando o valor de um qualquer atributo é desconhecido ou não existe, é-lhe atribuído um valor especial designado por null.

Modelo Relacional

Page 44: Módulo 12 - Introdução aos sistemas de informação

• estabelecimento de relações entre as diferentes tabelas normalizadas, de maneira a poder traduzir o modo como a informação está relacionada na realidade;

• as relações entre os diferentes conjuntos de informação são estabelecidos por intermédio de campos comuns, campos que reúnem certas características para serem considerados como índices.

Modelo Relacional

Page 45: Módulo 12 - Introdução aos sistemas de informação

Modelo Object-Oriented(pós-relacional)• O modelo object-oriented (OO) é baseado em integrar num objecto a

estrutura de dados e o código que o manipula, de modo a que não haja uma separação entre os dados processados e o código que o processa. Isto é denominado encapsulamento.

• O encapsulamento dá-nos a noção de independência dos programas e dos dados, pois é possível alterar um objeto sem afetar o resto do sistema.

Page 46: Módulo 12 - Introdução aos sistemas de informação

• Um objecto pode ser composto por uma parte privada e outra pública, onde os dados privados são acedidos por métodos que pertencem ao objecto e os dados públicos podem ser acedidos pelo exterior. Como normalmente existem objectos idênticos numa BD, torna-se menos dispendioso agrupar estes objectos em classes.

• Por último, este modelo de dados adapta-se mais facilmente as novas áreas de aplicação. Isto porque cada vez mais as novas aplicações utilizam dados do tipo áudio, vídeo, gráficos, etc., que não são suportados pelos modelos de dados convencionais.

Modelo Object-Oriented(pós-relacional)