ESTACIO-0-Mod-dados

ESTACIO-0-Mod-dados

Disciplina:MODELAGEM DE DADOS1.321 materiais24.227 seguidores
Pré-visualização4 páginas
Workshop de modelagem de dados - Jorge Costa � PAGE �1�

fundamentos de projeto de banco de dados

O PROBLEMA CENTRAL DA INFORMÁTICA

Se fosse possível sintetizar num único termo a essência das atividades dos profissionais de informática, esse termo seria sem dúvida "modelagem".

Quando um analista produz um DFD (Diagrama de Fluxo de Dados) ou um DER (Diagrama de Entidades e Relacionamentos) ou ERA (Entidades, Relacionamentos e Atributos), ele etá modelando. Quando um projetista produz um DEM ou quando especifica a lógica de um módulo ele está modelando. Quando um programador codifica um programa a partir de uma especificação, ele também está modelando e o programa produzido é um modelo construído a partir de outro modelo - a especificação do programa. Quando um analista de O&M elabora um manual de normas e procedimentos ele também está modelando. Quando um compilador gera um programa objeto a partir de um programa fonte, ele constrói um modelo de mais "baixo nível" (programa objeto) a partir de um modelo de mais "alto nível" (programa fonte).

Quando escrevemos algum texto, estamos representando, no papel, algo que está em nossa mente e nesse caso também estamos modelando. Quando nossa mente se abstrai e cria novos conceitos a partir de conceitos pré-existentes, estes novos conceitos são modelos ou podem fazer parte de modelos mais complexos. Estamos nesse caso também modelando. Quando percebemos algum fenômeno, fato ou idéia, estamos criando em nossa mente simplificações dos mesmos ou seja, estamos criando em nossa mente, modelos ou representações simplificadas de mini-mundos ou parcelas do mundo real ou domínio do problema, uma vez que, naquele momento, nos abstraímos de muitos detalhes julgados irrelevantes.

Pode-se afirmar então que o conhecimento humano é composto de modelos do mundo real ou de modelos criados a partir de outros modelos pré-existentes em nossa mente.

�
O mapeamento (transformação) dos objetos de uma parcela do mundo real (Mini-Mundo ou Domínio do Problema) em um modelo processável que vai "residir" na memória de um computador é e sempre será um desafio para os cientistas da Informática.

Tal desafio pode ser representado através das figuras abaixo, onde as setas representam um caminho descontínuo, incerto e tortuoso a ser percorrido ao longo de tal mapeamento.

MINI-MUNDO

"O mundo real, do ponto de vista formal é ainda muito nebuloso. Vários cientistas e leigos tem a fé de que um dia o mundo real será todo formalizável, pois a sua visão do Homem e do Universo é mecanicista. Mas mesmo os que têm essa moderna religiosidade concordarão que o conhecimento científico atual do mundo é ínfimo, e portanto ele permanece nebuloso em termos científicos clássicos, daí ser representado por uma nuvem. Os 'objetos' do mundo real são os seres, os fatos, as 'coisas' e os organismos sociais. Não se deseja aqui dar precisão a palavra 'mundo-real'; estamos cientes de que existem várias questões filosóficas e de percepção ligadas a esse conceito, como por exemplo se os pensamentos, sentimentos e a vontade são ou não reais ou de outra maneira, a distinção entre o concreto e o abstrato. Com toda esta imprecisão, será deixado para os analistas e projetistas delimitar o que lhes interessa como mundo real, para fins de tratamento de informação" [SET89].

NÍVEIS DE ABSTRAÇÃO E ASPECTOS DO MUNDO REAL

Uma das formas de se lidar com a complexidade de um problema é através de sua divisão em partes menos complexas.

Usando essa abordagem, o "problema central da informática" será dividido:

"Horizontalmente" - com a criação do conceito de níveis de abstração, onde em cada nível o analista/projetista criará um modelo abstrato (representação simplificada) de uma parcela do mundo real (mini-mundo);

�

"Verticalmente" - procurando enchergar o mundo real segunto dois pontos de vista diferentes:

procurando enchergar o aspecto estrutural do mundo real;

procurando enchergar o aspecto comportamental do mundo real; e

representando estes dois aspectos nos modelos citados anteriormente.

�
MODELAGEM E MODELOS

INTRODUÇÃO

Modelagem uma atividade através da qual se cria um modelo de uma parcela do mundo real (mini-mundo) ou sucessivamente um modelo a partir de outro modelo ou de ambos.

Modelar uma parcela do mundo real (mini-mundo) consiste em tentar compreende-la, seja através da identificação inicial da estrutura dos objetos compõem essa parcela do mundo real, seguida das operações que incidem sobre esses objetos; seja de maneira inversa, através da identificação inicial das operações que neles se realizam, e da posterior identificação da estrutura dos objetos afetados por estas operações, ou até mesmo procurando enfocar esses dois aspectos de forma simultânea.

A principal razão para a construção de MODELOS de uma PARCELA DO MUNDO REAL (MINI-MUNDO) é a redução da complexidade de entendimento e tratamento desse MINI-MUNDO. Tal tratamento é propiciado através dos MODELOS, visto que esses são uma simplificação de um MINI-MUNDO.

Modelagem de Dados é uma denominação genérica para as atividades que visam a construção de modelos que enfocam ou procuram representar os dados relevantes de uma parcela do mundo real.

A atividade de Modelagem de Dados, como será vista adiante, é um conjunto de regras que utilizam ferramentas de modelagem (Modelos de Dados) em concordância com Requisitos de Projeto (critérios de qualidade). Tais requisitos, em Projeto de Banco de Dados, são as Características Intrínsecas e as Desejáveis dos Bancos de Dados de um modo geral, vistas inicialmente.�

	MODELOS

"O conhecimento humano é composto de modelos do mundo real ou de modelos criados a partir de outros modelos pré-existentes em nossa mente."
"Modelo é uma representação em miniatura de uma realidade complexa, refletindo certas características do sistema que ele quer representar". [MAR82]

"Modelos, são representações abstratas da realidade e a razão de sua existência é o fato da realidade a qual substitui ser, via de regra, de alguma forma intratável. Nenhum modelo se propõe a ser tão perfeito quanto a parcela da realidade que pretende tratar, mesmo porque, se fosse, terminaria tão intratável quanto ela".

"Um modelo é uma abstração de alguma coisa, cujo propósito é permitir que se conheça essa coisa antes de construí-la. Como um modelo omite os detalhes não essenciais, sua manipulação é mais simples do que o objeto sendo modelado". [RUMBAUGH 94]

O termo modelo, como veremos adiante, é utilizado normalmente segundo dois pontos de vista diferentes. O primeiro como produto final da atividade de modelagem (Modelo 1 e Modelo2 da figura anterior) e o segundo como ferramenta de modelagem (também na figura anterior) a ser visto nos próximos itens.

Dentro desse contexto um Modelo de Dados (Relacional, de Redes, Hierárquico, Semântico, Orientado a Objetos, etc.) é uma Ferramenta de Modelagem que auxilia a realização da atividade de MODELAGEM DE DADOS num determinado nível de abstração.

Componentes da Atividade de Modelagem

Uma atividade de modelagem deve consistir da execução sistemática de atividades menos complexas que podem eventualmente se subdividir sucessivamente até o nível de atividades elementares.

Tais atividades, para que sejam executadas necessitam de insumos e devem gerar produtos. Existem, no entanto, atividades que dependem de algum produto gerado por alguma outra executada anteriormente, ou seja, algumas atividades dependem de outras e assim sucessivamente, estabelecendo uma rede de dependências.

Todo esse conjunto de atividades organizadas "lógicamente" e com propósitos bem definidos, formam uma metodologia, um dos componentes da atividade de modelagem.

Não se mencionou ainda a forma como as atividades devem ser executadas tranformando insumos em produtos. Tal forma nada mais é do que uma técnica.

Quanto aos instrumentos utilizados na execução dessas atividades, recebem os mesmos a denominação de ferramentas ou mais específicamente ferramentas de modelagem, que como poderá