Lista de Exercícios 6 (ListEx 6)

CE-240 Projeto de Sistema de BD

Prof. Dr. Adilson Marques da Cunha

 

Título: Integração de Bancos de Dados Setoriais (BDS) em um Banco de Dados Corporativo (BDC) e sua Implementação

 

1. - Objetivos:

 

A) Integrar os Bancos de Dados Setoriais (BDS) ou “Subject Databases” num Banco de Dados Corporativo (BDC) ou “Corporate Database” de uma empresa ou corporação, visando melhorar a sua eficiência corporativa e reduzir o seu desperdício de recursos; e

 

B) Implementar a Integração de Bancos de Dados Setoriais (BDS ou “Subject Databases”) num Banco de Dados Corporativo (BDC) ou “Corporate Database” de uma empresa ou corporação, visando testar o aumento de funcionalidade da integração debaixo de um SGBD previamente escolhido e verificar a melhoria de sua eficiência corporativa e a redução do desperdício de seus recursos.

 

2. - A Descrição dos Principais Passos realizados durante a Lista de Exercícios

 

Especificação de Requisitos:

 

Quanto a Integração de BDS num só CDB,

 

1) Cada Grupo de integrantes de um BDS, deverá:

 

a) Integrar o seu BDS com pelo menos 2 (dois) outros BDSs, compondo e integrando-se a um só BDC;

 

2) Cada Integrante de um BDS deverá:

 

a) Representar o seu Grupo nas Reuniões Funcionais Corporativas (de Normalizadores, Integradores, Dicionarizadores, ou Suportes Técnicos), visando a obtenção do melhor nível de integração corporativa possível;

 

b) Integrar o seu Aplicativo de BD ao BDC da Empresa;

 

c) Exercer uma função eletiva complementar no seu Grupo, respondendo por ela perante o seu CDB;

 

d) Os Dicionarizadores deverão exercer a função precípua de integrar os dicionários de dados dos seus BDS num só Dicionário de Dados Corporativo, compatibilizando-os com as “necessidades corporativas da Empresa”, que a partir desta ListEx 6, deverão sempre prevalecer sobre as necessidades setoriais;

 

Veja o link da dicionarização da ALC.

e) Os Normalizadores deverão exercer a função precípua de integrar os seus Modelos de Dados Setoriais (MDS) e as suas cardinalidades, num só Modelo de dados conceitual ou Modelo de Dados Corporativo (MDC - “Corporate Data Model”), compatibilizando-os com as “necessidades corporativas da Empresa”, que a partir desta ListEx 6, deverão sempre prevalecer sobre as necessidades setoriais;

 

Veja o link da normalização da ALC.

 

f) Os Integradores deverão exercer a função precípua de integrar globalmente todos os Aplicativos de BD num único BDC, compatibilizando-os com as “necessidades corporativas da Empresa” (re-contextualizando, re-objetivando, re-entitulando e reespecificando os requisitos para o Projeto do Sistema de BD Corporativo da Empresa), que a partir desta ListEx 6, deverão sempre prevalecer sobre as necessidades setoriais; e

 

Veja o link da integração da ALC.

 

g) Os Responsáveis pelo Suporte Técnico ao SGBD ao Ambiente RAD ERWin e a Rede de Comunicação de Dados deverão exercer a função precípua de documentar os Manuais do Sistema, de Operação e do Usuário de BD Corporativo da Empresa, reunindo-se num só Grupo, gerando e publicando em suas páginas as Versões mais Atualizadas dos referidos Manuais, de acordo com a orientação do Prof. da Matéria.

 

O link dos manuais de suporte técnico será disponibilizado em breve.

 

Os casos omissos deverão ser resolvidos, democraticamente, em primeiro lugar dentro de cada Grupo, em seguida, dentro da Turma, e em caso de dúvida, deverão ser arbitrados pelo Prof. Da Matéria, que exercerá o papel de Coordenador Geral, mediador e detentor do “Voto de Minerva”.

 

Quanto a implementação da integração dos diversos BDS nos 02 (dois) BDCs (das Empresas ALS e ALC)

 

1) Cada Grupo de integrantes de um BDS, deverá:

 

a) Integrar o desenvolvimento dos Protótipos de Aplicativos de BD individuais, através de seus representantes de Grupo de BDS, num só Protótipo de BDC, devidamente dicionarizado, normalizado, integrado e documentado (por meio dos Manuais);

 

b) Consistir a forma e o conteúdo de todas as Entidades, Atributos e Tuplas com os Protótipos dos 02 (dois) BDCs; e

 

c) Documentar as anomalias eliminadas e as experiências obtidas durante os processos de integração e de implementação dos BDCs, até atingirem suas 3ªFNs aceitáveis.

 

2) Cada Integrante do BDC deverá:

 

a) Dar continuidade a conferência das implementações realizadas pelos demais integrantes do seu Grupo nos dois exercícios de laboratório anteriores (Lab. 4 e 5), verificando, testando e publicando as suas atualizações, sempre que essas implementações sofrerem alguma modificação; isto é,

 

(1) Quanto às 03 (três) primeiras Consultas (Queries) desenvolvidas para o Lab. 4, envolvendo 1, 2 e 3 Relações dos Aplicativos de Banco de Dados, verificar se elas permanecem como aceitáveis para os seus BDSs (sem que se percam as suas identidades),

 

(a) A Primeira Consulta deverá ser considerada como aceitável, se continuar envolvendo apenas (01) uma relação do Aplicativo de Banco de Dados e pelo menos um comando Select e um Project (ou equivalentes),

 

Foi implementada a seguinte consulta e o resultado é aceitável:

 

select fre_valor

from FRETE

where FRETE.fre_id=2;

 

A tela da consulta está mostrada abaixo:

 

 

 

 

(b) A Segunda Consulta deverá ser considerada como aceitável, se continuar envolvendo (02) duas relações do Aplicativo de Banco de Dados e pelo menos um Select, um Project e um Join (ou equivalentes), e

 

Foi implementada a seguinte consulta e o resultado é aceitável:

 

select fre_valor

from ORDEM_SERVICO, FRETE

where ose_id=10;

 

A tela da consulta está mostrada abaixo:

 

 

 

 

(c) A Terceira Consulta deverá ser considerada como aceitável, se continuar envolvendo (03) três relações do Aplicativo de Banco de Dados e pelo menos um Select, um Project e um Join (ou equivalentes);

 

A terceira consulta não pode ser realizada porque na integração de nível 1 houve perda de uma das três relações (ORCAMENTO) que foi eliminada para simplificação do BD e seus atributos foram incluídos na entidade PEDIDO que transformou-se na entidade PEDIDO_CLIENTE.

 

(2) Quanto às 03 (três) Consultas (Queries) adicionais desenvolvidas para a ListEx 5, verificar se elas permanecem como aceitáveis para os seus BDSs, como parte dos Aplicativos de Banco de Dados (sem que se percam as suas identidades), após os mesmos serem devidamente integrados aos BDCs,

 

(a) A Quarta Consulta, deverá ser considerada como aceitável, se continuar envolvendo a sua formulação e implementação num nível de decisão tático, contendo simultaneamente, pelo menos 01 (uma) relação do seu Aplicativo de Banco de Dados e 02 (duas) relações de um Aplicativo de Banco de Dados diferente, desde que esteja debaixo do seu Banco de Dados Setorial (BDS) de Nível 1 ou Subject Database Level 1,

 

A consulta efetuada na Listex 05 não pode ser considerada aceitável após a integração, pois houve alteração nos nomes das entidades. Anteriormente, tínhamos a seguinte consulta:

SELECT par_nome

from PARCEIRO, ITEM_PEDIDO,PEDIDO

where ped_valor>500 and ite_valor>1000;

 

Que teve de ser modificada conforme abaixo. Com estas mudanças, a consulta passou a ser considerada aceitável.

 

SELECT par_nome

from PARCEIRO, PEDIDO_CLIENTE_ITEM,PEDIDO_CLIENTE

where pcl_id=28;

 

 

Obtivemos o seguinte resultado:

 

 

(b) A Quinta Consulta, deverá ser considerada como aceitável, se continuar envolvendo a sua formulação e implementação num nível de decisão tático, contendo simultaneamente, uma relação do seu Aplicativo de Banco de Dados e 02 (duas) relações de 02 (dois) Aplicativos de Banco de Dados diferentes, desde que estejam debaixo do seu Banco de Dados Setorial (BDS) de Nível 1 ou Subject Database Level 1;

 

Pelo mesmo motivo citado na questão anterior a consulta antiga da Listex 05 não pôde ser considerada aceitável. A consulta era a seguinte:

 

select DISTINCT par_nome

from ORDEM_SERVICO, PARCEIRO, ITEM_PEDIDO

where ITEM_PEDIDO.ite_valor>5000;

 

E teve que ser modificada por causa da mudança no nome da entidade ITEM_PEDIDO, que passou a ser PEDIDO_CLIENTE_ITEM. A consulta ficou da seguinte forma:

 

select DISTINCT par_nome

from ORDEM_SERVICO, PARCEIRO, PEDIDO_CLIENTE_ITEM

where PEDIDO_CLIENTE_ITEM.pcl_id=28;

 

E o resultado obtido ficou assim:

 

 

(c) A Sexta Consulta, deverá ser considerada como aceitável, se continuar envolvendo a sua formulação e implementação num nível de decisão tático, contendo simultaneamente, uma relação do seu Aplicativo de Banco de Dados e 02 (duas) relações de 02 (dois) Aplicativos de Banco de Dados diferentes, desde que estejam debaixo do seu Banco de Dados Setorial (BDS) de Nível 2 ou Subject Database Level 2;

 

Esta consulta é a mesma da Listex 05 e é considerada aceitável.

 

select est_id

from INCLUSAO_GRUPO, ARMAZEM, ESTOQUE

where INCLUSAO_GRUPO.loc_id_origem = ARMAZEM.loc_id;

 

Obtivemos o resultado a seguir:

 

 

(3) Quanto às novas Consultas a serem desenvolvidas especificamente para esta Listex 6, implementar 02 (duas) Consultas (Queries) adicionais (a Sétima e a Oitava), certificando-se que as mesmas sejam aceitáveis e compatíveis, tanto com o seu Aplicativo de BD e com o seu BDS, quanto com o seu BDC, todas devidamente integradas, isto é,

 

(a) A Sétima Consulta, deverá ser formulada e implementada no nível de decisão estratégico, envolvendo simultaneamente, pelo menos (01) uma relação do seu Aplicativo de Banco de Dados e (02) duas relações de um Aplicativo de Banco de Dados diferente, mas que esteja fora do seu BDS,

 

Foi implementada a seguinte consulta (de onde obtivemos resultado aceitável) considerando as tabelas PARCEIRO do BDS2 CHARLIE e CARGA do BDS2 DELTA, com o resultado na tela abaixo:

 

select DISTINCT par_contato

from CARGA, PARCEIRO

where par_nome='Trucks';

 

 

(b) A Oitava Consulta, deverá ser formulada e implementada também no nível de decisão estratégico, mas desta vez envolvendo simultaneamente, pelo menos (01) uma relação do seu Aplicativo de Banco de Dados e (02) duas relações de pelo menos (02) dois diferentes Aplicativos de Banco de Dados, mas que estejam fora do seu BDS;

 

Foi implementada a seguinte consulta (de onde obtivemos resultado aceitável), considerando as tabelas PARCEIRO do BDS2 CHARLIE e CARGA do BDS2 DELTA e ENTREGA do BDS2 DELTA, com o resultado na tela abaixo:

 

select DISTINCT ent_id

from CARGA, PARCEIRO, ENTREGA

where par_nome='Trucks';

 

 

 

 

 

3. - Principais Conclusões

 

Durante mais uma integração dos Aplicativos de Banco de Dados, novamente constatamos algumas anomalias, redundâncias de tabelas, relações, as quais foram eliminadas, melhorando assim o Banco de Dados e evitando eventuais inconsistências.

 

Para a integração dos aplicativos, utilizamos as ferramentas Interbase e ErWin que fornecerem facilidades para a execução da tarefa.

 

Hosted by www.Geocities.ws

1