• Nenhum resultado encontrado

3.2 MODELOS DE INFORMAÇÃO, BASES DE DADOS E SISTEMAS CAD

3.2.1 Bases de dados aspectos gerais

Há um interesse contínuo em bases de dados (BDs) (Zeid [54], Eastman & Fereshetian [13], Hoffmann & Joan-Arinyo [23]) do produto que organizem dados discretos de manufatura e processamento dos dados associados. Segundo Eastman & Fereshetian [13], a principal motivação para a utilização de bases de dados é

a crescente complexidade do desenvolvimento e manutenção de sistemas integrados nesta área de aplicação. Para Hoffmann & Joan-Arinyo [23] um problema central na criação/utilização de tais bases de dados diz respeito à implementação de mecanismos e modelos de informação para o armazenamento e recuperação de dados de CAD, assim como encontrar estruturas adequadas aos diferentes tipos de informações e necessidades de processo na manufatura e ciclo de vida do produto.

De acordo com Eastman & Fereshetian [13], um modelo de dados é a representação conceitual da implementação física de uma base de dados. Segundo os autores, alguns modelos atendem objetivos particulares e, por isso, são chamados SDMs (Special Data Models). Outros buscam a generalidade e são chamados GPDMs (General-Purpose Data Models).

Ainda de acordo com os autores, os sistemas de base de dados possuem uma camada intermediária constituída de software de gerenciamento (DBMS - DataBase Management System). A DBMS é responsável pelo acesso à base de dados (BD) para uso e/ou modificação dos dados, sincronização do acesso de usuários, criação de arquivos, verificação de usuários ilegais, etc.

Ullman [52] fala na importância da DBMS como sistema de programação e da integração que deve existir entre o sistema de base de dados e outros softwares como compiladores e o próprio sistema operacional. O autor classifica como sistemas avançados de bases de dados (enhanced DBMS’s) as bases de objetos (object bases) e bases de conhecimento (knowledge bases - existentes em sistemas que empregam inteligência artificial). O autor aponta algumas questões importantes relativas a bases de dados como: se são orientadas a objetos ou a valores, se suportam linguagem declarativa de busca e se separam a linguagem de manipulação de dados (DML - Data Manipulation Language) da linguagem de implementação (DDL - Data Definition Language) ou integram as duas, características resumidas na tabela 3.1, que mostra a evolução histórica dos sistemas de bases de dados.

Tabela 3.1 : Histórico dos sistemas de bases de dados. (traduzido de Ullman [52])

Década Sistemas Orientação Declarativa? DML/implem.

1960 Modelos hierárquico e em rede Objeto Não Separada

1970 Modelo relacional Valor Sim Separada

1980 OO-DBMS Objeto Não Integrada

1990 KBMS* Valor Sim Integrada

* Knowledge-Base Management System; integra a DBMS e o sistema de engenharia do conhecimento, e.g., sistema especialista, rede neural, algoritmo genético, etc.

A seguir descreve-se as estruturas de dados mais conhecidas presentes na literatura.

Estruturas de dados

Primeiramente, estruturas de dados são definidas como o conjunto de tipos de dados ou elementos que possuem um conjunto definido de relações. A aplicação destas relações aos

elementos do conjunto dá sentido ao objeto representado. Do ponto de vista dos sistemas CAD/CAM, uma estrutura de dados é um esquema, lógica ou seqüência de passos desenvolvido para atingir determinada representação gráfica, não-gráfica e/ou objetivo de programação (Zeid [54]). Em geral, um modelo de dados é definido como um formalismo matemático composto por duas partes: uma notação para descrever os dados e um conjunto de operações usadas para manipular os dados (Ullman [52]).

Uma base de dados (database) é definida como uma coleção organizada de dados armazenados na memória de longa duração na forma de arquivos ou ‘coleções’ de arquivos. Diversas são as vantagens de se utilizar bases de dados (BDs): com elas se consegue eliminar redundâncias, melhorar a padronização, aplicar restrições com vistas à segurança, manter a integridade dos dados e ainda verificar requisitos conflitantes.

Os principais tipos de bases de dados são:

Modelo de relacionamento de entidades: foi um dos primeiros GPDMs desenvolvidos e uma primeira tentativa de fornecer múltiplas abstrações, combinando características tanto do modelo relacional quanto do modelo em rede. Neste, considera-se o mundo como consistindo de entidades que se relacionam, onde entidades são ‘coisas’ que podem ser distinguidas umas das outras (Eastman & Fereshetian [13]). Ullman [52] diz que este modelo foi desenvolvido com o propósito de servir como notação para a concepção de modelos antes da implementação em qualquer que seja a base de dados escolhida. Para o autor, em última análise, pode-se argumentar que este modelo não constitui um modelo de dados. Atualmente o IDEF1X, o NIAM e o EXPRESS utilizam este conceito.

Base de dados relacional: os dados são armazenados em tabelas (tables), que se relacionam. A figura 3.4 mostra um exemplo no qual uma tabela armazena conjuntos de pontos, outra armazena conjuntos de linhas, relacionadas à tabela de pontos através das suas respectivas numerações e a terceira armazena superfícies constituídas de elementos tipo linha, obtidos da tabela de linhas.

Relação de pontos. Ponto x y 1   2   3   4   5   6   7  8   Relação de linhas/curvas.

Linha Ponto inicial Ponto final

A 1 4 B 1 2 C 2 3 D 3 4 E 5 6 F 6 7 G 7 8 Relação de superfícies.

Superfície Linha/curva Tipo

A linha   B linha C linha D linha E linha   F linha G linha D linha

Modelagem de Informações para a Fase de Projeto Informacional. Modelagem. 54 Base de dados hierárquica: os dados são armazenados na forma de uma árvore. A figura 3.5 mostra um exemplo no qual o objeto representa a raiz da árvore e a estrutura se desdobra em quatro níveis: superfícies, arestas, vértices e pontos.

...

...

...

...

Objeto (raiz) S1 S2 A B C D E F G D 1 4 3 4 5 6 3 4           Nível de superfícies Nível de arestas Nível de vértices Nível de coordenadas

Figura 3.5 : Estrutura de dados em bancos de dados hierárquicos. (Zeid [54])

Bases de dados em rede: os dados são vinculados de forma a possuir relações muitos-para- muitos (many-to-many). A figura 3.6 mostra um exemplo no qual dados de superfície, arestas e vértices formam uma rede para representar o objeto.

PSfrag replacements Objeto (raiz) S1 S2 A B C D E F G 1 2 3 4 5 6 7 8 Superfícies Arestas Vértices

Figura 3.6 : Estrutura de dados em bancos de dados em rede. (Zeid [54])

Base de dados orientada a objetos: nesta as unidades de armazenamento são objetos. Os objetos, pela sua capacidade de dados e funcionalidades, formam a base para se garantir a integridade da base de dados quanto à inserção, remoção ou modificação dos objetos componentes. O modelo orientado a objetos deve ser capaz de capturar toda a semântica dos objetos. As BDs orientadas a objetos incluem o modelo de relacionamento de entidades, representação de objetos complexos, representação molecular de objetos e modelos de dados abstratos.

Com o paradigma da programação orientada a objetos, existem hoje diversas aplicações para construção de bases de dados orientadas a objetos e estas têm sido largamente utilizadas na construção de sistema CAD/CAM.

A seguir encontram-se algumas das funcionalidades e especificações necessárias às bases de dados para a construção de aplicações CAD/CAM: (adaptado de Zeid [54])

Suporte a múltiplas aplicações de engenharia, do projeto informacional a operações de manufatura;

Modificação e extensão dinâmicas da base de dados e de sua associatividade;

Permitir a iteratividade inerente ao processo de projeto. Bases de dados de CAD devem permitir o armazenamento das múltiplas soluções que podem existir para um projeto em particular.

Múltiplos usuários devem poder acessar, simultaneamente se necessário, a base de dados. Principalmente na fase de projeto informacional, é freqüentemente necessária a presença de pessoas de outros setores da empresa como marketing, vendas e manufatura, podendo também ser envolvidas pessoas externas à empresa como transportadores, assistências técnicas e mesmo os próprios usuários.

Liberdade no seqüenciamento das atividades de projeto. A base de dados não deve impor restrições quanto à seqüência das atividades pois projetos diferentes, em geral, requerem diferentes seqüências de projeto.

Facilidade de acesso. Programas e aplicativos que necessitem de dados da BD não devem necessitar de um conhecimento excessivo quanto à sua estrutura para extrair os dados necessários.

Após a introdução da estrutura de dados relacional, por Codd [12] em 1970, as duas outras estruturas de dados principais existentes na época, as estruturas hierárquica e em rede, praticamente deixaram de ser utilizadas. Diversas razões são apontadas para o sucesso das bases de dados relacionais (Relational DataBase Management System – RDBMS): a existência de um modelo matemático que formaliza as operações na base de dados, a facilidade de criação de bases de dados com o modelo relacional (o modelo relacional é bastante intuitivo) e ainda a diminuição de redundâncias no armazenamento de dados. Por outro lado, as bases de dados hierárquicas implicam em elevada redundância dos dados e facilmente geram desbalanceamento dos níveis hierárquicos dificultando a busca por informações. As bases de dados em rede têm o problema de serem muito complexas, difíceis de programar e realizar operações básicas nos dados da base.

Com o surgimento da orientação a objetos, iniciaram-se as propostas de bases da dados orientadas a objetos (Object Oriented DataBase Management System – OODBMS), no entanto, até o presente, as bases de dados relacionais são mais amplamente utilizadas em sistemas comerciais de grande porte. As bases de dados orientadas a objetos têm o problema da

complexidade, não são tão velozes na manipulação de dados quanto as relacionais, levando, inclusive, ao surgimento de bases de dados objeto-relacionais (Object-Relational DataBase Management System – ORDBMS).