Escolar Documentos
Profissional Documentos
Cultura Documentos
JOANA SCHEEREN
Porto Alegre
2009
2
JOANA SCHEEREN
Trabalho de Concluso de
Curso II apresentado
Faculdade de Informtica,
como requisito parcial
obteno do ttulo de
Bacharel em Sistemas de
Informao.
Porto Alegre
2009
RESUMO
ABSTRACT
LISTA DE FIGURAS
LISTA DE QUADROS
BI
Business Intelligence
CASE
DM
Data Mart
DW
Data Warehouse
ER
Entidade Relacionamento
ERP
ETL
HOLAP
MOLAP
OLAP
OLTP
OMG
ROLAP
SGBD
SQL
UML
10
SUMRIO
INTRODUO ..........................................................................................12
11
APNDICES .....................................................................................................62
12
1 INTRODUO
13
imprescindvel que haja uma documentao completa e fidedigna da
modelagem proposta para auxiliar tanto na aprovao e definio do escopo,
como possibilitar o entendimento das vises e mtricas entregues ao final.
Atualmente, os modelos de dados, comumente utilizados para a
modelagem de projetos de DW ou DM so os modelos Star Schema (Estrela)
ou Snow Flake (Floco de Neve). Esses modelos, embora muito mais
conceituais do que prticos, possuem uma orientao representao dos
processos que podem ser considerados para modelar/construir o armazm de
dados e no apenas na composio fsica de seus componentes como prope
o modelo ER (Entidade-Relacionamento).
Ambos os modelos so muito importantes na fase de concepo do
projeto, pois derivam do levantamento das regras de negcio. Contudo, eles
no se preocupam em documentar com detalhes os requisitos e as
caractersticas do projeto, tampouco em atender as necessidades de
compreenso de todos os envolvidos nele.
H diversas outras formas de modelar sistemas computacionais. Destacase que um dos padres atuais de modelagem de software orientado a objetos
a UML (Unified Modeling Language), pois foi adotada internacionalmente pela
indstria de Engenharia de Software. A UML uma linguagem de modelagem
visual, utilizada para auxiliar na definio das caractersticas e requisitos dos
softwares, abrangendo todo o projeto. Criada para atender processos de
desenvolvimento de software que utilizem o paradigma de orientao a objetos,
esta linguagem possui muitos diagramas para que todos os passos do projeto
possam ser descritos e facilmente entendidos por todos os envolvidos na
construo - desde usurios at desenvolvedores.
Como a UML um dos padres atuais de modelagem, tem-se no
mercado uma diversidade de ferramentas CASE (Computer Aided Software
Engineering) que podem ser utilizadas na criao dos modelos de dados
requeridos. Alm disso, a preocupao em descrever todas as fases do projeto,
com uma viso dos processos de negcio, faz com que a UML seja uma
abordagem de fcil compreenso por todos os envolvidos em um projeto de
software.
14
Sendo assim, surge a idia de estudar os requisitos para a construo de
Data Warehouses e Data Marts, bem como os diagramas da UML 2.0 para
propor a representao visual e a documentao destes, de modo que
atendam ao requisito fundamental da fase de definio do projeto: o
entendimento do modelo e definio do escopo requerido, auxiliando tanto
usurios, como analistas a obter mais sucesso e eficcia no produto final,
evitando distores entre o que era esperado e o que efetivamente foi
construdo.
A proposta inclui, portanto, o estudo dos diagramas da UML, que possam
representar as fases de projetos de DW e DM, para que, em conjunto,
construam uma documentao eficaz que possibilite a fcil identificao das
decises tomadas e das regras de negcio abrangidas pelo modelo.
Desse modo, o objetivo geral deste trabalho a seleo e/ou adaptao
de diagramas da UML 2.0, que descrevam a fase de modelagem de dados de
um projeto de Data Warehouse ou Data Mart, auxiliando em um melhor
entendimento do escopo pelos envolvidos neste tipo de projeto.
Como objetivos especficos para este trabalho propem-se:
15
16
2 REFERENCIAL TERICO
17
Assim como qualquer projeto de software, a documentao dos
requisitos e a modelagem do sistema so muito importantes para uma melhor
compreenso do escopo do projeto e de como ele ser estruturado. Isto
influencia o desenvolvimento eficaz e a manuteno aps a entrega. A
modelagem orientada a objetos auxilia, ainda, em uma melhor compreenso da
arquitetura do sistema tanto dos analistas, como dos usurios envolvidos.
Como a UML considerada um dos padres atuais neste tipo de modelagem,
ela pode ser estudada para utilizao nos projetos de BI (LARMAN, 2006).
As prximas sees apresentam um resumo dos principais aspectos
tericos relacionados BI e UML que sero utilizados por este trabalho.
18
fontes de informao, de acordo com a definio das estratgias de negcio,
para estar competitiva (BARBIERI, 2001).
As tcnicas de BI visam, portanto, extrair informaes dos sistemas
transacionais e armazen-las de forma eficiente para retirar o conhecimento
requerido e manter grandes histricos, a fim de subsidiar verificaes de
cenrios. Estas tcnicas podem ser utilizadas para descobrir as necessidades
de indicadores de negcio da empresa e para disponibilizar o conhecimento
estratgico de forma dinmica e precisa (MACHADO, 2006).
Como j mencionado, os modelos relacionais de banco de dados no se
mostram eficazes para o controle do volume e do formato de dados que requer
um sistema de BI. Para isto, utilizam-se os DW e os DM, pois so capazes de
armazenar e recuperar grandes volumes de dados, alm de recuper-los para
prover anlises no formato e agilidade que um sistema de BI requer
(MACHADO, 2006).
Para que os dados cheguem at o Data Warehouse ou ao Data Mart no
formato que se planejou, h uma etapa muito importante dentro do projeto do
BI: o processo de ETL Extraction, Transform and Load (extrao,
transformao e carga). Atravs dele, os dados so levados at uma rea
temporria que possui o objetivo de formatar e tornar consistentes estes dados
no repositrio final, conforme as necessidades ou o contexto (ANDRADE,
2003).
A extrao remete a busca dos dados para as fontes transacionais, onde
os processos so controlados. A transformao necessria para montar o
modelo de dados que atende ao sistema, pois a normalizao do modelo
transacional no eficaz nestes casos. Dentro da transformao, tambm
feita a limpeza dos dados que responsvel por isolar apenas as informaes
que so necessrias para as anlises que estaro disponveis no BI, de acordo
com a definio da empresa no projeto, alm de remover erros encontrados
nos dados. Por fim, a carga realiza a gravao dos dados no repositrio final,
criando o histrico da empresa e os subsdios para o sistema de BI
(ANDRADE, 2003).
Ao contrrio da abordagem tradicional de dados, o conceito de BI est
relacionado
com
formas
alternativas
de
tratamento
das
informaes
19
para o controle de processos e os que subsidiam anlises para a tomada de
decises.
O Quadro 1 apresenta um comparativo entre os dados de natureza
operacional e informacional.
QUADRO 1 Comparativo entre dados Operacionais e Informacionais
Caractersticas
Dados Operacionais
Dados Informacionais
Contedo
Valores Correntes
Por aplicao/sistema de
informao
Natureza dos dados
Dinmica
computao transacional
Uso
Altamente estruturado,
processamento repetitivo
analtico/heurstico
Tempo de Resposta
20
Os dados so armazenados em estruturas dimensionais e em vrios
graus
de
relacionamento
sumarizao
de
forma
possibilitar
21
alteraes tornam-se mais onerosas do que uma remoo e
recarga dos dados. H, contudo, excees como dados
contbeis, por exemplo, que podem ter que sofrer atualizaes ao
longo do tempo. Mas so raros os casos, j que a base tem o
objetivo de ser histrica e refletir todas as situaes do negcio
ao longo do tempo;
rea
de
reteno,
ou
Staging
Area,
responsvel
pelo
22
modelo final. Estas estruturas atendero s demandas de consultas
complexas, que compreende o objetivo da estrutura dimensional de um sistema
de BI (MACHADO, 2006).
Com os dados consistentes, tratados na Staging Area, passa-se etapa
de carga, onde os dados, finalmente, so migrados para o Data Warehouse.
Esta carga pode ser incremental (adiciona-se somente os dados novos) ou
baseada nos dados, momento em que as dimenses so removidas
completamente e recarregadas a cada execuo. A escolha da forma de
atualizao uma deciso do projeto e poder variar conforme a tecnologia
escolhida para o BI da empresa (ANDRADE, 2003).
Todas estas peculiaridades de um Data Warehouse ou Data Mart fazem
com que um modelo entidade-relacionamento (ER) no seja o mais
recomendado. Por isso, em projetos de BI, deve-se estudar a modelagem
dimensional, como apresenta a prxima seo.
modelagem
multidimensional
ou
dimensional
uma
tcnica
23
chamadas dimenses) e menos, para os dados granulares em si (os chamados
fatos). Esta estrutura baseada em mltiplas dimenses permite a visualizao
dos dados de diversas maneiras (KIMBALL, 1998).
O modelo multidimensional formado por trs elementos bsicos: fatos,
dimenses e medidas (MACHADO, 2006):
24
A Quadro 2 apresenta uma comparao entre o modelo entidaderelacionamento e o modelo dimensional.
QUADRO 2 Comparao entre Modelo Dimensional e Modelo ER
Modelo Dimensional
Modelo Relacional - ER
especializados
especializado.
25
Para explorar os dados de um DW utiliza-se a abordagem OLAP (Online Analytical Processing) que possui um conjunto de operaes que
possibilitam anlises do comportamento dos indicadores de negcio permitindo
a descoberta de cenrios e tendncias da organizao (MACHADO, 2006).
As ferramentas OLAP so aplicaes que possibilitam aos usurios
extrair as informaes de apoio deciso de forma dinmica e flexvel. Isto se
torna possvel, pois as ferramentas implementam operaes como slice and
dice e drill que efetuam a anlise dimensional dos dados. Pode-se considerar
que, hoje, h trs formas de implementao das aplicaes OLAP (COLAO
JUNIOR, 2004):
26
2.1.3 Modelos de Dados Multidimensionais
27
Os relacionamentos entre a tabela central, a tabela Fato, e as
dimenses so ligaes simples, geralmente, um relacionamento de um-paramuitos. Observa-se que, no modelo Star Schema, no se aplica a terceira
forma normal s dimenses. Estas dimenses possuiro toda a hierarquia de
dados, pois isso facilitar a realizao de consultas posteriores.
Um modo de entender, de forma exemplificada, a diferena entre os
fatos e as dimenses, e seu arranjo grfico, utilizar quatro pontos cardeais
que podem auxiliar a descobrir as informaes de dimenso que estaro
dispostas ao redor da ocorrncia o fato.
O fato a ocorrncia, o acontecimento a ser modelado. Por exemplo,
em uma abstrao da venda do dia x de produtos por uma empresa a um
cliente y, tem-se a VENDA como o fato do modelo.
Os quatro pontos de referncia so: O que?, Quando?, Quem? e
Onde? (MACHADO, 2006). Assim, ao analisar o fato, necessrio verificar
quando ele ocorreu, onde se passou, quem o personagem principal e o que
seu objeto. Verificando atravs do exemplo, tm-se as perguntas e respostas
esquematizadas pela Figura 3.
O que? Produto
Quando? Dia x
Quem? Cliente y
Onde? Empresa
Figura 3 Identificando Fatos e Dimenses
Fonte: MACHADO, 2006
28
importante frisar que nem todos os modelos tero os quatro pontos de
referncia podendo, ainda ter mais elementos a serem considerados. Contudo,
esta uma abstrao muito eficiente, j que atende a grande maioria dos
projetos e dos modelos.
O modelo Snow Flake (floco de neve) uma variao do modelo estrela.
Esse possui a mesma abordagem de colocar o fato ao centro e as dimenses
ao seu redor. Contudo, sua abordagem separa as hierarquias das dimenses
em tabelas diferentes, variantes da dimenso principal (MACHADO, 2006).
Este modelo resultado da terceira forma normal nas dimenses,
evitando a redundncia de valores textuais em uma tabela e deixando mais
visvel as hierarquias (MACHADO, 2006).
Porm, esta abordagem pode deixar o modelo bastante poludo
medida que aumentam as dimenses presentes no projeto. Com isso, ao invs
de facilitar a visualizao dos dados, h uma dificuldade de identificar as
dimenses principais e as hierarquias variantes delas (MACHADO, 2006).
Pode-se notar a diferena entre os modelos analisando o esquema da
Figura 5.
29
2.2 UML
30
31
valores armazenados pelos objetos das classes em determinado momento da
execuo do sistema (GUEDES, 2007). Como em projetos convencionais, em
projetos de BI este diagrama no acrescentar nenhuma informao nova,
apenas demonstrar exemplos dos dados que os objetos armazenaro. Assim,
ele pode ser usado em projetos de DW ou DM quando for necessrio para uma
exemplificao das informaes do projeto, porm no como um componente
crtico para a modelagem do sistema.
O diagrama de estrutura composta um dos trs novos diagramas
propostos pela UML 2.0, sendo um dos diagramas estruturais da linguagem.
Ele voltado a um detalhamento da interligao entre os elementos em tempo
de execuo, por estes estarem envolvidos em prol de um objetivo ou tarefa
em comum (SILVA, 2007). Por ser um complemento da modelagem estrutural,
ele no obrigatrio em projetos de sistemas orientados a objetos e tambm
no nos projetos de BI propostos neste trabalho. Este diagrama pode ser
utilizado quando uma interao precisa ser claramente documentada.
O diagrama de comunicao (at a verso 1.5 da UML) era conhecido
como diagrama de colaborao, tendo seu nome alterado por ser um
complemento do diagrama de seqncias e determinar as conexes entre os
objetos. Ele demonstra praticamente as mesmas informaes do diagrama de
seqncia, contudo sem se preocupar com a temporalidade (GUEDES, 2007).
O diagrama de comunicao no um diagrama essencial no projeto, podendo
servir de apoio quando existirem etapas mais complexas do diagrama de
seqncias que necessitem de uma documentao mais completa para
descrever as regras de negcio que contm. No entanto, verificou-se que, para
modelagens de projetos de Data Warehouse ou Data Marts, os diagramas de
comunicao no agregariam mais informaes alm daquelas j modeladas
pelo diagrama de seqncias que abordaro as fases do processo de ETL.
O diagrama de mquina de estados utilizado para modelar os
diferentes comportamentos ou situaes que um objeto pode assumir ao
longo do processo. Este diagrama pode representar os diversos estados de um
objeto ou os comportamentos do sistema inteiro (GUEDES, 2007). Em uma
modelagem de Data Warehouse ou de Data Mart, acredita-se que ele no ser
til. Uma vez que no h troca de estados de um objeto durante o processo de
carga e a informao no pode ser uma durante a carga e outra ao inseri-la no
32
repositrio. Na verdade, o repositrio conter a ltima posio do sistema
transacional.
O diagrama de atividades foi considerado um caso especial dentro da
UML por estar ligado ao diagrama de estados (hoje denominado de diagrama
de mquina de estados). A partir da verso 2.0 da UML, ele passou a ser
considerado um diagrama independente e voltado a descrever as atividades ou
os passos a serem executados durante o processo. Ele d nfase ao nvel de
algoritmo e provavelmente um dos diagramas com mais detalhes da UML
(GUEDES, 2007). Assim como o diagrama de mquina de estados, o diagrama
de atividades descreve aes a serem realizadas ao longo de um processo.
Como em uma carga de dados para um Data Warehouse ou um Data Mart, os
dados lidos j devem estar prontos, pois no h atividades transacionais aps
esta carga, o diagrama de atividades pode ser dispensado.
O diagrama de interao geral uma variao do diagrama de
atividades. Contudo, esse no se preocupa com a modelagem de cada ao
das atividades, mas, sim, com as interaes modeladas em outros diagramas,
pois seu objetivo fornecer uma viso geral do controle de fluxo. Como o
diagrama uma especializao do diagrama de atividades, criado para
representar o fluxo dos casos de uso, ele no ser um diagrama essencial para
projetos de BI.
O diagrama de componentes um diagrama estrutural que visa
identificar os componentes que fazem parte do sistema modelado. Estes
componentes podem ser representaes de componentes lgicos (de
processos ou de negcios), bem como de componentes fsicos como arquivos
de cdigo-fonte, bibliotecas, arquivos de ajuda etc. (GUEDES, 2007). Para
projetos de sistemas de BI, o uso deste diagrama no apresenta a mesma
eficcia, uma vez que estes sistemas no possuem etapas de processamento.
Um sistema de BI busca os dados finais do sistema transacional, no
necessitando executar etapas mais complexas para obter os dados, e
conseqentemente, no haver muitos componentes para documentar.
O diagrama de tempo enfoca o mesmo escopo que o diagrama de
mquina de estados as alteraes de estado de um objeto. Contudo, o de
tempo utiliza o fator tempo para esta representao. Ou seja, ele modela as
alteraes de estado j descritas na mquina de estados, porm ao longo do
33
tempo (GUEDES, 2007). Assim como o diagrama de mquina de estados, o
diagrama de tempo no ter utilidade em projetos de DW ou DM, pois no h
alterao de estados nos componentes ou destes ligados ao fator tempo. Os
dados so lidos do sistema sem que sejam necessrias transaes posteriores
nos objetos.
59
4 CONSIDERAES FINAIS
60
5 REFERNCIAS BIBLIOGRFICAS
BOOCH, G.; JACOBSON, I.; RUMBAUGH, J. UML: guia do usurio. 8. ed. Rio
de Janeiro: Campus, 2005.
61
MACHADO, Felipe Nery Rodrigues. Tecnologia e Projeto de Data
Warehouse: Uma viso multidimensional. Tatuap: rica, 2006.