• No se han encontrado resultados

Fagua Ud Herramienta Case Para El Establecimiento De Requerimientos En El Marco De Desarrollo De Un Proyecto De Data Mart

N/A
N/A
Protected

Academic year: 2020

Share "Fagua Ud Herramienta Case Para El Establecimiento De Requerimientos En El Marco De Desarrollo De Un Proyecto De Data Mart"

Copied!
119
0
0

Texto completo

(1)

“FAGUA-UD

HERRAMIENTA CASE PARA EL ESTABLECIMIENTO DE REQUERIMIENTOS EN EL MARCO DE DESARROLLO DE UN PROYECTO DE DATA MART”

JOHN HEIBER GRANADOS MOYA 20021020157

EDWIN MAURICIO RONCANCIO 20021020042

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS

FACULTAD DE INGENIERÍA DE SISTEMAS

BOGOTÁ, D.C

(2)
(3)

“FAGUA-UD

HERRAMIENTA CASE PARA EL ESTABLECIMIENTO DE REQUERIMIENTOS EN EL MARCO DE DESARROLLO DE UN PROYECTO DE DATA MART”

JOHN HEIBER GRANADOS MOYA 20021020157

EDWIN MAURICIO RONCANCIO 20021020042

Proyecto de Grado

DIRECTOR(A)

SONIA ORDÓÑEZ SALINAS

UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS

FACULTAD DE INGENIERÍA DE SISTEMAS

BOGOTÁ, D.C.

(4)
(5)

CONTENIDO

Pág.

INTRODUCCIÓN ... 5

1. OBJETIVOS ... 7

1.1. OBJETIVO GENERAL ... 7

1.2. OBJETIVOS ESPECIFICOS ... 7

2. ESTADO DEL ARTE ... 8

3. MARCO TEORICO ... 13

3.1. INTELIGENCIA DE NEGOCIOS (BI) ... 13

3.1.1. Concepto ... 13

3.1.2. Beneficios ... 14

3.1.3. Niveles ... 15

3.2. DATA WAREHOUSE ... 16

3.2.1. Concepto ... 16

3.2.2. Características ... 17

3.3. DATA MART ... 19

3.3.1. Concepto ... 19

3.3.2. Clasificación ... 20

3.3.3. Arquitectura ... 21

3.4. MODELO DIMENSIONAL ... 22

3.4.1. Concepto ... 22

3.4.2. Esquemas Dimensionales ... 23

3.5. PROCESO ETL ... 25

3.5.1. Aspectos Arquitectura General ... 26

3.5.2. Extracción ... 27

3.5.3. Transformación ... 27

3.5.4. Carga ... 28

3.6. METODOLOGIAS DESARROLLO DATA WAREHOUSE ... 29

(6)

3.6.2. Ralph Kimball ... 30

3.7. INGENIERIA DE REQUERIMIENTOS ... 47

3.7.1. Concepto... 47

3.7.2. Clasificación ... 47

3.7.3. Características ... 48

3.7.4. Proceso de Ingeniería de Requerimientos ... 48

3.8. HERRAMIENTAS CASE ... 63

3.8.1. Concepto... 63

3.8.2. Componentes ... 64

3.8.3. Clasificación ... 65

4. DISEÑO METODOLOGICO ... 68

4.1. Fase estudio definición de requerimientos ... 68

4.2. Fase elaboración plantillas para definición de requerimientos ... 69

4.3. Fase construcción Modelo Dimensional Inicial ... 69

4.4. Fase de desarrollo e implementación Herramienta Fagua-UD ... 70

5. DOCUMENTACION HERRAMIENTA FAGUA-UD ... 72

5.1. PROCESO A ABORDAR ... 72

5.1.1. Modo de Operación Actual ... 72

5.1.2. Modo de Operación Esperado ... 75

5.2. REQUERIMIENTOS... 77

5.2.1. Casos de Uso... 77

5.3. DISEÑO ... 81

5.3.1. Modelo de Clases ... 81

5.3.2. Modelo de Secuencia ... 83

5.3.3. Modelo de Actividades ... 84

5.3.4. Modelo de Datos ... 85

5.4. INTERFAZ GRAFICA... 87

5.5. SET DE PRUEBAS ... 88

5.5.1.Pruebas de Funcionalidad ... 88

(7)

5.6. MANUAL DE USUARIO ... 93

Fuente: Elaboración Propia ... 93

Fuente: Elaboración Propia ... 93

5.7. MANUAL DE INSTALACIÓN ... 94

6. FUNCIONALIDADES HERRAMIENTA FAGUA-UD ... 95

7. CRONOGRAMA PROPUESTO VS. CRONOGRAMA REALIZADO ... 96

Fuente: Elaboración Propia ... 97

8. ENTREGABLES ... 99

9. CONCLUSIONES ... 102

BIBLIOGRAFIA ... 105

ANEXOS ... 111

ANEXO 1. Documento de Requerimientos ... 111

ANEXO 2. Documento de Diseño ... 111

ANEXO 3. Documento de Interfaz Grafica ... 111

ANEXO 4. Documento de Pruebas ... 111

ANEXO 5. Manual de Usuario ... 111

(8)
(9)

LISTA DE TABLAS

Tabla 1. Casos de Uso Herramienta Case ... 77

Tabla 2. Clases Herramienta Case ... 82

Tabla 3. Diagramas de Secuencia Herramienta Fagua-UD ... 83

Tabla 4. Diagramas de Actividades Herramienta Fagua-UD ... 84

Tabla 5. Componentes HTML Interfaz Grafica... 87

Tabla 6. Plantilla Evaluación Herramienta Fagua-UD ... 91

(10)
(11)

LISTA DE FIGURAS

Figura 1. Sistema Transaccional Vs. Data Warehouse ... 17

Figura 2. Ejemplo Esquema Estrella ... 23

Figura 3. Ejemplo Esquema Copo de Nieve ... 25

Figura 4. Esquema Metodología Kimball ... 31

Figura 5. Diagrama de Casos de Uso Herramienta Fagua-UD ... 80

Figura 6. Diagrama General de Clases Herramienta Case ... 81

Figura 7. Modelo de Datos Herramienta Fagua-UD ... 86

Figura 8. Valoración General Herramienta Fagua-UD ... 89

Figura 9. Valoración Funcionalidad Herramienta Fagua-UD ... 89

Figura 10. Cubo Prueba Funcionalidad Herramienta Fagua-UD ... 90

Figura 11. Acceso 1 Manual de Usuario ... 93

Figura 12. Acceso 2 Manual de Usuario ... 93

(12)
(13)

5

INTRODUCCIÓN

Para el desarrollo del proyecto planteado en este documento se define la

Inteligencia de negocios como el conjunto de conceptos y métodos que permiten

mejorar la toma de decisiones de las organizaciones, utilizando sistemas de apoyo

basados en hechos [20]. Esta definición, involucra la creación de soluciones

informáticas como los Data mart y los Data warehouse.

Se define un Data mart como “una base de datos departamental y especializada

en el almacenamiento de los datos de un área de negocio específica”1

, y se define

un Data warehouse como “un único, completo y consistente almacén de datos obtenido de una variedad de fuentes y puesto a disposición de los usuarios finales de manera que ellos lo puedan entender y usar en el contexto del negocio” según

la definición de Barry Devlin y Paul Murphy en su artículo “Una arquitectura para

un sistema de negocios e información” de 1.988.

Para el proyecto planteado en este documento se resaltan los elementos y las

posibles interrelaciones de análisis que contempla la demanda en el mercado local

de aplicaciones informáticas (Data mart) desarrolladas por personal especializado,

que permitan satisfacer requerimientos de información gráfica y alfanumérica para

la toma de decisiones empresariales, de política o de mercado.

En la actualidad las metodologías y herramientas informáticas que soportan el

desarrollo de Data mart, no contemplan la captura adecuada de requerimientos y

sus elementos básicos. Es así, como por ejemplo la metodología de Kimball [4]

aunque cuenta con un apartado completo que describe la forma en que se debe

abordar de manera correcta la fase de requerimientos de un proyecto, no

puntualiza en el análisis de la disponibilidad de recursos y datos [4].

1

(14)

6

En este contexto, los desarrolladores de este tipo de aplicaciones (Data mart)

deben basarse en su experticia o en la experticia de su equipo de trabajo para

poder establecer los elementos principales del proyecto en la fase de

requerimientos, pues como ya se indicó las herramientas de apoyo para

documentar no permiten identificar con precisión estos elementos (por ejemplo

Tablas de Hechos y Dimensiones).

Por lo anterior este proyecto se enfocó en crear una herramienta case que permita

(15)

7

1. OBJETIVOS

1.1. OBJETIVO GENERAL

Desarrollar una herramienta case que permita especificar y documentar los

requerimientos de negocio asociados al desarrollo de un proyecto de Data mart.

1.2. OBJETIVOS ESPECIFICOS

 Definir los elementos y las posibles interrelaciones de análisis que contempla la fase de requerimientos para el desarrollo de un Data mart.

 Definir plantillas que permitan capturar los elementos de análisis que contempla la fase de requerimientos para el desarrollo de un Data mart.

 Definir los requerimientos propios del desarrollo de una Herramienta Case que permita determinar la trazabilidad de la fase de requerimientos para el

desarrollo de un Data mart.

 Diseñar una Herramienta Case que permita determinar la trazabilidad de la fase de requerimientos para el desarrollo de un Data mart.

(16)

8

2. ESTADO DEL ARTE

En la actualidad las organizaciones poseen sistemas de información que recopilan

las principales actividades que abarcan sus labores diarias dentro del marco del

sector de negocio al que pertenecen. Estos sistemas de información bien pueden

ser robustos o simples de acuerdo a las necesidades del negocio; sin embargo,

suelen ser en sí mismos de una dimensión tan significativa que en la mayoría de

los casos terminan por estar fuera del alcance del objeto de negocio, lo cual ha

motivado a las organizaciones colombianas a subcontratar sus departamentos

informáticos con el fin de disminuir sus costos de operación y aprovechar la

experiencia y experticia de un aliado especializado en este tipo de tareas. De

acuerdo con un artículo publicado por la Revista Dinero el 23 de Julio del año

2014, la subcontratación en Colombia ha tenido un aumento cercano al 60% en

los últimos 5 años2.

Con base en el contexto planteado, el proyecto propuesta en este documento

busca que la información propia de un proyecto de Data mart sea precisa,

confiable y cuente con una trazabilidad adecuada, de modo que se eviten al

máximo las diferencias de conocimiento que suelen surgir en el desarrollo de

proyectos informáticos de este tipo entre la compañía contratante y la(s)

compañía(s) subcontratada(s).

Esta actualidad empresarial nos lleva a encontrar que en la mayoría de las

organizaciones los proyectos de BI sean subcontratados con compañías de gran

impacto e importancia global como Oracle o IBM por citar algunos ejemplos. Esta

simbiosis empresarial crea una sinergia particular donde estos partners comparten

la responsabilidad tanto a nivel de infraestructura como de desarrollo.

2

(17)

9

Generalmente el desarrollo de los proyecto de BI establece que se deben realizar

reuniones entre el representante del cliente y el aliado (subcontratado) asignado

por la compañía para definir objetivos, metodología de trabajo y entregables.

Estas reuniones deben quedar consignadas en actas con la información relevante

que se requiere para dar inicio formal al desarrollo del proyecto; sin embargo, en

muchas ocasiones estas reuniones pueden ser confusas debido a los

conocimientos dispares de las partes involucradas.

La disparidad antes mencionada, normalmente se evidencia en la etapa de

levantamiento de requerimientos y ocasiona la generación de un producto final

que no permite dar respuesta a las necesidades reales de la compañía

contratante. A este respecto, la metodología de Ralph Kimball3 es enfática en

indicar la importancia que tiene la etapa de requerimientos en el proceso de

desarrollo de un proyecto de Data mart; sin embargo, salvo algunos tips y

recomendaciones muy generales4, no cuenta con una documentación detallada y

oficial sobre la forma y el método que debe utilizarse para llevar a cabo esta etapa

de manera eficiente.

La Metodología de Ralph Kimball conceptualiza la etapa de levantamiento de

requerimientos como el inicio aterrizado del proyecto en el cual se deben definir

claramente los alcances, limitaciones y necesidades del cliente5; además, es en

esta etapa donde se deben establecer los insumos de datos con que se cuenta, la

consistencia de la información y la coherencia de la solicitud planteada. Lo anterior

es relevante teniendo en cuenta la afirmación que se realiza en la revista CIO

Magazine 2010 con respecto a que el 71% de las fallas en proyectos de software

(se incluyen en este apartado los proyectos de BI) se deben a poca calidad en la

especificación de requerimientos6.

3 Tomado de [8]. 4 Tomado de [8]. 5 Tomado de [8]. 6

(18)

10

Desde la perspectiva del ciclo de vida dimensional que plantea la Metodología de

Ralph Kimball7 se puede deducir que el objetivo principal de un proyecto de BI consiste en generar valor agregado sobre el foco de negocio planteado por la

compañía. El foco de negocio puede ser tan variado, que si no se gestiona

adecuadamente la etapa de levantamiento de requerimientos con su impacto

posterior en los diseños arquitectónicos y estructurales del proyecto, se puede

generar una desviación, que puede conducir a la obtención de un producto final

desvirtuado con respecto a los objetivos planteados.

En este sentido la metodología de Ralph Kimball establece una prioridad y un

marco conceptual general (marco conceptual que incluye preparación de

entrevistas y plantillas de cuestionarios) como herramienta para obtener

elementos esenciales del foco de negocio que se busca abordar en el desarrollo

del proyecto de BI. Sin embargo, en este documento se plantean mecanismos

para fortalecer y formalizar la etapa de levantamiento de requerimientos a través

del desarrollo e implementación de una herramienta case que permita que un

proyecto de BI cuente con un repositorio de información, un paso a paso

específico y una trazabilidad de principio a fin.

En la actualidad existen diversas técnicas que se pueden utilizar para gestionar la

etapa de levantamiento de requerimientos de un proyecto8 (Proceso de Análisis

Jerárquico, Casos de Uso, Entrevistas, JAD, Prototipos, Lluvia de ideas,

Escenarios y Cuestionarios principalmente); sin embargo, las herramientas

disponibles se enfocan en la técnica de Casos de Uso principalmente y están

diseñas para ser utilizadas en contextos propios de la ingeniería de software. Esto

quiere decir, que muchos de los elementos propios del desarrollo de proyectos de

BI no se toman en cuenta y por ende pueden generar afectaciones significativas

en la obtención de un producto final.

7 Tomado de [8]. 8

(19)

11

A continuación se hace una descripción de las principales herramientas que se

utilizan como apoyo para gestionar la fase de análisis de requerimientos:

Enterprise Architect: es una herramienta desarrollada por la empresa Sparx

Systems y su principal ventaja se concentra en la versatilidad. Cuenta con varias

formas de realizar captura, gestión y análisis de información, promueve la

utilización de diagramas UML y se enfoca en la metodología Kanban9.

Actualmente Enterprise Architect se encuentra en su versión 11.1.

ARCHI: es una herramienta de código abierto desarrollada por el Institute of

Educational Cybernetics de la Universidad de Bolton en el Reino Unido. ARCHI

permite la creación de modelos ArchiMate10. Esta herramienta cuenta con un

enfoque tanto académico como comercial; académico, dado que ofrece un primer

acercamiento a la creación de modelos ArchiMate y comercial dado que es

promocionada como una alternativa de bajo costo para la solución de un

requerimiento que pueda tener una compañía o un arquitecto dedicado al

desarrollo de proyectos en entornos empresariales.

JIRA: es una herramienta desarrollada por Atlassian que implementa los métodos

Kanban y Scrum11 para la gestión de requerimientos.

Las herramientas mencionadas se desarrollaron principalmente para apoyar la

gestión de proyectos de ingeniería de software en un marco general; sin embargo,

9

Kanban es una metodología que permite gestionar el trabajo intelectual, con énfasis en la entrega justo a tiempo. En este enfoque, el proceso, desde la definición de una tarea hasta su entrega al cliente, se muestra para que los participantes lo vean y los miembros del equipo tomen el trabajo de una cola.

10

ArchiMate es un lenguaje abierto e independiente, promocionado por el “Open Group” que permite gráficamente describir las capas de negocio, procesos, aplicaciones, datos e infraestructura de una empresa para describir su Arquitectura Empresarial.

(20)

12

presentan algunas falencias cuando se utilizan para apoyar la gestión de

proyectos de BI y no cuentan con una metodología específica y robusta que de

manera general permita llevar a cabo la etapa de levantamiento de

(21)

13

3. MARCO TEORICO

A continuación se presentan de manera general los principales conceptos

asociados a Inteligencia de Negocios (BI) e Ingeniería de Requerimientos que se

tuvieron en cuenta para el desarrollo del proyecto planteado en este documento.

3.1. INTELIGENCIA DE NEGOCIOS (BI)

3.1.1. Concepto

A continuación se presentan las principales definiciones que algunos autores u

organizaciones en su momento han enunciado:

La firma Espiñeira, Sheldon y Asociados, en el Boletín de Asesoría Gerencial

número 10 del año 2008 plantea los siguientes conceptos:

En primer lugar indica que “En 1.989 Howard Dresner, un investigador de Gartner

Group, popularizó el acrónimo de “BI” (“Business Intelligence” o Inteligencia de

Negocios), para indicar el conjunto de conceptos y métodos que permiten mejorar

la toma de decisiones en los negocios, utilizando sistemas de apoyo basados en

hechos”12

.

En segundo lugar indica que “El concepto de BI incluye una amplia categoría de

metodologías, aplicaciones y tecnologías que permiten reunir, acceder,

transformar y analizar los datos, transacciones e información no estructurada

(interna y externa), con el propósito de ayudar a los usuarios de una compañía a

tomar mejores decisiones de negocio”13

.

12 Tomado de [20] Pág. 2. 13

(22)

14

En el año 2.011 la compañía Mexicana TTS Consulting a través de YouTube publica un documento donde plantea el concepto de BI como “una combinación de

tecnologías de almacenamiento de datos y análisis de información, que

implementa soluciones orientadas al usuario final para apoyar la toma de

decisiones, aprovechando la información relevante para evaluar los indicadores

estratégicos, tácticos y operativos disponibles en cualquier parte de la

organización”14

.

3.1.2. Beneficios

El uso del concepto de Inteligencia de Negocios (BI) puede derivar en la obtención

de muchos beneficios [9] tangibles e intangibles, entre los que se destacan:

- Reducción en el porcentaje de abandono de los clientes de la organización,

incrementando su fidelidad y teniendo en cuenta cuál es su valor.

- Conocer mejor cuáles son las características demográficas de la zona de

influencia de la organización.

- Proveer el autoservicio de información a trabajadores, colaboradores,

clientes y proveedores.

- Reducir el tiempo para recoger la información para cumplir con las

normativas legales.

- Optimizar la atención a los clientes.

- Dotar a la información de mayor precisión.

- Controlar mejor de la información.

- Mayor integración de la información.

- Mejorar la toma de decisiones, realizándola de forma más rápida, informada

y basada en hechos.

- Dar soporte a las estrategias.

14

(23)

15 3.1.3. Niveles

La Inteligencia de Negocios (BI) se clasifica de acuerdo a su interacción al interior

de las organizaciones en los niveles que se indican a continuación y que son

descritos por Mario Roberto Reyes Marroquín y Pablo Augusto Rosales Tejada en

la tesis de grado del año 2007 titulada “Desarrollo de un Data mart de información

académica de estudiantes de la escuela de ciencias y sistemas de la facultad de Ingeniería de la USAC” [13]:

3.1.3.1. Nivel Estratégico

La Inteligencia de Negocios (BI) en este nivel está orientada principalmente a

soportar la toma de decisiones de las áreas directivas con el fin de trazar una guía

de ruta con el objetivo de alcanzar la misión de la organización. Se caracteriza por

no tener carga periódica de trabajo y una gran cantidad de datos; sin embargo, la

información está relacionada a un aspecto cualitativo más que cuantitativo, que

puede indicar cómo operará la empresa ahora y en el futuro, el enfoque es

distinto, pero sobre todo es distinto su alcance. Se asocia este tipo de información

a los ejecutivos de primer nivel de las organizaciones.

3.1.3.2. Nivel Táctico

La Inteligencia de Negocios (BI) en este nivel está orientada principalmente a

soportar la coordinación de actividades y el plano operativo de la estrategia; es

decir, se plantean opciones y caminos posibles para alcanzar la estrategia

indicada por la dirección de la empresa. Se facilita la gestión independiente de la

información por parte de los niveles intermedios de la organización. La información

en este nivel es extraída específicamente de un área o departamento de la

organización, por lo que su alcance es local y se asocia a gerencias o

(24)

16

3.1.3.3. Nivel Operativo

La Inteligencia de Negocios (BI) en este nivel está orientada principalmente a las

operaciones que son efectuadas de modo rutinario en las organizaciones

mediante la captura masiva de datos y Sistemas de Procesamiento Transaccional.

Las tareas son cotidianas y soportan la actividad diaria de la empresa

(contabilidad, facturación, almacén, presupuesto y otros sistemas administrativos).

Tradicionalmente se asocia a las Jefaturas o Coordinaciones operativas o de

tercer nivel.

3.2. DATA WAREHOUSE

3.2.1. Concepto

A continuación se presentan las principales definiciones que algunos autores han

enunciado:

En el año 1.988 Barry Devlin y Paul Murphy a través de la publicación del artículo “Una arquitectura para un sistema de negocios e información” hicieron referencia

al concepto de Data Warehouse como un único, completo y consistente almacén

de datos obtenido de una variedad de fuentes y puesto a disposición de los

usuarios finales de manera que ellos lo puedan entender y usar en el contexto del

negocio.

En el año 1.991 William H. Inmon a través de la publicación del libro "Building the

Data Warehouse" [8] indica que un Data Warehouse es un conjunto de datos orientados hacia una materia, integrados, no transitorios y que varían con el

(25)

17

En el año 1.996 Ralph Kimball a través de la publicación del libro “The Data

Warehouse Tollkit” [4] plantea el concepto de Data Warehouse como una copia de

los datos de transacción estructurados específicamente para preguntar y divulgar.

En la Figura 1 se presenta un comparativo entre una base de datos transaccional

y un Data Warehouse:

Figura 1. Sistema Transaccional Vs. Data Warehouse

Fuente: DataPrix. Knowledge Is The Goal. Data Warehousing y metodología Hefesto. [Disponible en Internet]. <http://www.anpad.org.br/diversos/apa/apa_tabelas_figuras_esp.pdf> [10 de mayo de

2012].

3.2.2. Características

(26)

18

3.2.2.1. Integrado

Los datos almacenados en un Data Warehouse deben integrarse en una

estructura que elimine las inconsistencias existentes entre los diversos sistemas

transaccionales, que sirven de fuentes de datos.

3.2.2.2. Temático

Los datos se organizan por temas, no por aplicación, así se facilita el acceso y

entendimiento por parte de los usuarios finales a los datos contenidos en el Data

Warehouse. Esta característica permite realizar análisis y minería de datos (Data mining).

3.2.2.3. Histórico

En los sistemas transaccionales, los datos siempre reflejan el estado de la

actividad del negocio en el momento presente. Por el contrario, el Data

Warehouse se carga con los distintos valores que toma una variable en el tiempo para permitir comparaciones y análisis de tendencias, entre otras cosas.

3.2.2.4. No volátil

El Data Warehouse se construye para ser leído, y no modificado. La información que existe en un Data Warehouse es permanente, su actualización consiste en la

incorporación de los últimos valores que tomaron las distintas variables contenidas

(27)

19

3.2.2.5. Contiene datos diversos

Es un repositorio unificado de información. Los datos de toda la organización

aunque pertenezcan a aplicaciones disímiles son integrados en el Data

Warehouse.

3.2.2.6. Optimizado para la consulta masiva

El diseño físico tiene un objetivo distinto al de las bases de datos transaccionales;

mejorar los tiempos de respuesta de consultas masivas de información, sin perder

de vista la orientación temática y la facilidad de entendimiento que se debe brindar

al usuario final.

3.2.2.7. La interfaz de usuario está dirigida a los ejecutivos

Las aplicaciones que se construyen sobre un Data Warehouse y que sirven para

acceder a su información, en su mayoría serán utilizadas por analistas de

decisiones y altos ejecutivos que descubran las bondades del Data Warehouse.

Razón por la cual deben ser amigables e intuitivas.

3.3. DATA MART

3.3.1. Concepto

En el año 2007 la organización Sinnexus indico que un “Data mart es una base de

datos departamental, especializada en el almacenamiento de los datos de un área

de negocio especifica. Se caracteriza por disponer la estructura óptima de datos

para analizar la información al detalle desde todas las perspectivas que afecten a

(28)

20

los datos de un Data Warehouse, o integrar por sí mismo un compendio de

distintas fuentes de información”15

.

De manera general en la literatura se plantea que un Data mart puede ser un

subconjunto de datos de un Data Warehouse o un Data Warehouse en sí mismo

destinado a áreas específicas al interior de una organización. Un Data mart

contempla las características que se mencionaron en el punto anterior para un

Data Warehouse.

3.3.2. Clasificación

La clasificación que se indicada a continuación se extrae de la tesis de grado del

año 2.009 titulada “Propuesta de Diseño de un Data mart para el Sistema de

Apoyo a la Toma de Decisiones de Asignación de Sinodales” publicada por la

Universidad Americana De Nicaragua [12] .

3.3.2.1. Data mart OLAP

Se basa en los cubos OLAP, que se construyen agregando, según los requisitos

de cada área o departamento, las dimensiones y los indicadores necesarios de

cada cubo relacional. El modo de creación, explotación y mantenimiento de los

cubos OLAP es muy heterogéneo, en función de la herramienta final que se utilice.

3.3.2.2. Data mart OLTP

Puede basarse en un simple extracto del Data mart, no obstante, lo común es

introducir mejoras en su rendimiento aprovechando las características particulares

de cada área de la empresa. Las estructuras más comunes en este sentido son

las tablas report, que vienen a ser fact-tables reducidas.

15

(29)

21 3.3.3. Arquitectura

La arquitectura de un Data mart permite representar la estructura global de los

datos, la comunicación, los procesos y la presentación al usuario final necesaria

para el proceso de implantación en las organizaciones de una herramienta de

Inteligencia de Negocios (BI); en este contexto la arquitectura de un Data mart

está compuesta por los elementos que se indican a continuación:

3.3.3.1. Niveles

- Nivel de organización de datos: Este nivel se apoya en el potencial de las

fuentes de datos con las que cuenta la organización para desarrollar un

proceso ágil que permita homogenizar, depurar, transformar y cargar los

datos de acuerdo a las necesidades de negocio definidas para el proyecto

de BI.

- Nivel de directorio de datos: Este nivel hace uso de metadatos con el fin de

integrar los datos desde las diferentes fuentes, evitando inconsistencias en

el modelo de datos y guiando el proceso de mapeo de datos en la

transformación desde el ambiente operacional describiendo localización,

estructura y significado. Además, este nivel incluye reglas de validación,

reglas de derivación, reglas de transformación y una guía de los algoritmos

a utilizar.

- Nivel de gestión de procesos: Este nivel se compone de los procesos de

actualización y mantenimiento que requiere un Data mart; dado que la

información del Data mart, debe evolucionar así como lo hacen las

(30)

22

3.3.3.2. Componentes

- Fuentes de datos Operacionales: Este componente está presente en todas

las organizaciones, ya que es allí donde se registra la información de todas

aquellas actividades que se realizan, y como tal, es la fuente de información

sobre la cual se parte para iniciar la construcción de un Data mart.

- Proceso ETL: Componente responsable de que la información pueda

moverse desde las fuentes de datos mencionadas anteriormente, al Data

mart.

- Servidor de Datos (Componente de Gestión): Este componente hace

referencia a servicios de mantenimiento de datos, servicios de distribución

que permiten exportar datos de un Data mart a servidores de datos

descentralizados y sistemas de soporte de decisiones de usuarios y

servicios de seguridad (archivo, backup, recuperación y monitorización)

- Herramientas de Acceso: Este componente permite un adecuado acceso y

análisis sobre el Data mart construido; sin este componente el Data mart se

puede convertir en una aglomeración de datos sin utilidad.

3.4. MODELO DIMENSIONAL

3.4.1. Concepto

El modelo dimensional [17] es una técnica de diseño lógico que busca presentar

los datos de una forma intuitiva y con accesos de alto desempeño. Cada modelo

dimensional se compone de una tabla de hechos, y un conjunto de tablas más

(31)

23 3.4.2. Esquemas Dimensionales

- Estrella: El esquema en estrella [15] se llama así porque el diagrama se

asemeja a una estrella, con los puntos que irradian desde el centro. El

centro de la estrella consta de una o más tablas de hechos y los puntos de

la estrella son las tablas de dimensiones, como se indica la Figura 2:

Figura 2. Ejemplo Esquema Estrella

Fuente: Miguel Rodríguez Sanz. Análisis y diseño de un data mart para el seguimiento académico de alumnos en un entorno universitario. [Disponible en Internet].

<http://earchivo.uc3m.es/bitstream/10016/9856/6/PFC_Miguel_Rodriguez_Sanz.pdf> [18 de Febrero de 2012].

El esquema en estrella es ideal por su simplicidad y velocidad para ser

usado en análisis dimensionales, ya que permite acceder tanto a datos

agregados como de detalle. Además, ofrece la posibilidad de implementar

la funcionalidad de una base de datos dimensional utilizando una clásica

base de datos relacional.

El esquema en estrella consiste en estructurar la información en procesos,

vistas y métricas a modo de estrella. En la tabla de hechos se encuentran

los atributos destinados al hecho que constituye el proceso de negocio a

medir, es decir, sus métricas. Mientras, en las tablas de dimensión, los

(32)

24

niveles de las jerarquías de dimensión) y a atributos de dimensión

(encargados de la descripción de estos elementos de nivel). En el esquema

en estrella la tabla de hechos es la única tabla que tiene múltiples joins que

la conectan con otras tablas. El resto de tablas del esquema (tablas de

dimensión) únicamente hacen join con esta tabla de hechos.

El esquema en estrella presenta las siguientes características:

o El modelo es fácil de entender para los usuarios.

o La llave primaria representa a cada una de las dimensiones.

o Las tablas de hechos están usualmente altamente normalizadas.

o El rendimiento de las consultas es mejorado reduciendo las uniones

entre tablas.

o Los usuarios pueden expresar consultas complejas.

- Copo de Nieve: El esquema en copo de nieve [15] es un esquema de

representación derivado del esquema en estrella, en el que las tablas de

dimensión se normalizan en múltiples tablas. Por esta razón, la tabla de

hechos deja de ser la única tabla del esquema que se relaciona con otras

tablas, y aparecen nuevas uniones entre tablas debido a que las

dimensiones de análisis se representan ahora en tablas de dimensión

normalizadas.

En la estructura dimensional normalizada, la tabla que representa el nivel

base de la dimensión es la que hace join directamente con la tabla de

hechos. Para conseguir un esquema en copo de nieve se ha de tomar un

esquema en estrella y conservar la tabla de hechos, centrándose

únicamente en el modelado de las tablas de dimensión.

(33)

25

Figura 3. Ejemplo Esquema Copo de Nieve

Fuente: Miguel Rodríguez Sanz. Análisis y diseño de un data mart para el seguimiento académico de alumnos en un entorno universitario. [Disponible en Internet].

<http://earchivo.uc3m.es/bitstream/10016/9856/6/PFC_Miguel_Rodriguez_Sanz.pdf> [18 de Febrero de 2012].

3.5. PROCESO ETL

Un proceso ETL [23] extrae datos de las fuentes de información, refuerza la

calidad y consistencia de los mismos y entrega los datos en una presentación y

formato listo para ser consumidos por aplicaciones para la toma de decisiones.

El proceso ETL determina el éxito o fracaso de la implementación de un Data

mart. A pesar de que la construcción del proceso ETL es una actividad que no es

visible a usuarios finales, esta tarea consume casi el 70 por ciento de los recursos

necesarios para la implementación y mantenimiento de un Data mart

convencional.

De manera específica el proceso ETL se encarga de:

- Remover errores y corregir datos faltantes.

- Proporcionar medidas documentadas de la calidad de los datos.

- Supervisar el flujo de los datos transaccionales.

- Ajustar y transformar los datos de múltiples fuentes para poder unificarlos.

- Estructurar los datos para ser usados por las herramientas y usuarios

(34)

26

El proceso ETL es intuitivo y fácil de comprender. La idea básica del proceso ETL

es tomar los datos de las fuentes de información y depositarlos en un Data mart;

sin embargo, la limpieza y transformación de la información son procesos mucho

más complicados de lo que se puede apreciar a simple vista.

3.5.1. Aspectos Arquitectura General

Los aspectos con respecto a la Arquitectura General que se mencionan a continuación, se extraen de la tesis de grado del año 2011 titulada “Marco de trabajo basado en ontologías para el proceso ETL” [23] publicada por el Instituto

Politécnico Nacional de México.

- La arquitectura debe implementarse sobre una herramienta ETL o debe

desarrollarse codificando los módulos del proceso ETL que sean requeridos

de forma manual. Elaborar la implementación sobre una herramienta ETL

hace el desarrollo más rápido pero requiere de un perfecto entendimiento

de la política de negocio y de los objetivos que se persiguen.

- La carga de información debe realizarse a través de procesos batch o sobre

un flujo de datos. La arquitectura estándar del proceso ETL está basada en

cargas batch de información periódicas, éstas suelen ser lentas debido al

gran volumen de información que tienen que transportar. Sin embargo, si en

la práctica se requiere que un Data mart sea actualizado de forma

constante y rápida, el esquema de actualización por batch no es funcional y

se puede recurrir a la carga por flujo de datos constante.

- La dependencia entre tareas debe ser horizontal o vertical. Si se opta por

hacer que las tareas sean independientes sobre un flujo de trabajo

horizontal, implica el hecho de que los datos de dos fuentes de información

(35)

27

Por el contrario si se hacen tareas independientes sobre un flujo vertical, los

trabajos de extracción, limpieza y carga de las diversas fuentes de

información estarán sincronizados y la carga de información se hará de

manera simultánea.

3.5.2. Extracción

La extracción [12] es la fase del proceso ETL que consiste en extraer los datos

desde los sistemas de origen. La mayoría de los proyectos de almacenamiento de

datos fusionan datos provenientes de diferentes sistemas de origen. Cada sistema

por separado puede usar una organización diferente de los datos o formatos

distintos. Los formatos de las fuentes normalmente se encuentran en bases de

datos relacionales o ficheros planos, pero pueden incluir bases de datos no

relacionales u otras estructuras diferentes. La extracción convierte los datos a un

formato preparado para iniciar el proceso de transformación.

Una parte intrínseca del proceso de extracción es la de analizar los datos

extraídos, lo cual da como resultado un chequeo que verifica si los datos cumplen

con la estructura esperada.

3.5.3. Transformación

La fase de transformación [12] aplica una serie de reglas de negocio sobre los

datos extraídos para convertirlos en datos apropiados para el proceso de cargue.

A continuación se indican las transformaciones que se suelen realizar en esta

fase:

- Filtro sobre las columnas que serán objeto del proceso de cargue (por

(36)

28

- Traducción de códigos (por ejemplo, si la fuente almacena una “H” para

Hombre pero el destino tiene que guardar “1” para Hombre)

- Codificación de valores libres (por ejemplo, convertir “Hombre” en “H”).

- Obtención de nuevos valores calculados (por ejemplo, venta = Cantidad *

Precio).

- Unión de datos de múltiples fuentes.

- Calculo de totales de múltiples filas de datos. (por ejemplo, ventas totales

de cada región).

- Generación de campos clave en el destino.

- Transposición o pivote (girar múltiples columnas en filas o viceversa).

- División de una columna en varias columnas. (por ejemplo, columna “Nombre: García, Miguel”; pasar a dos columnas “Nombre: Miguel” y “Apellido: García”).

- Aplicación de cualquier forma, simple o compleja, de validación de datos, y

la consiguiente aplicación de la acción que en cada caso se requiera:

o Datos OK: Entregar datos a la siguiente etapa (Cargue)

o Datos erróneos: ejecución de políticas de tratamiento de

excepciones. (por ejemplo, rechazar el registro completo, dar al

campo erróneo un valor nulo o un valor centinela).

3.5.4. Carga

La fase de carga [12] es el momento en el cual los datos de la fase de

transformación son cargados en el sistema de destino. Dependiendo de los

requerimientos de la organización, este proceso puede abarcar una amplia

variedad de acciones diferentes. En algunas bases de datos se sobrescribe la

información antigua con nuevos datos. Los Data mart mantienen un historial de los

registros de manera que se pueda hacer una auditoría de los mismos y disponer

(37)

29

Existen dos formas básicas de desarrollar el proceso de carga:

- Acumulación Simple: La acumulación simple es la más sencilla y común, y

consiste en realizar un resumen de todas las transacciones comprendidas

en el periodo de tiempo seleccionado y transportar el resultado como una

única transacción hacia el Data mart, almacenando un valor calculado que

consistirá típicamente en un sumatorio o en un promedio de la magnitud

considerada.

- Rolling: El proceso de rolling se aplica en los casos en que se opta por

mantener varios niveles de granularidad. Para ello se almacena información

resumida a distintos niveles, correspondientes a distintas agrupaciones de

la unidad de tiempo o diferentes niveles jerárquicos en alguna o varias de

las dimensiones de la magnitud almacenada.

La fase de carga interactúa directamente con la base de datos de destino. Al

realizar esta operación se aplicaran todas las restricciones que se hayan definido

en esta como por ejemplo, valores únicos, integridad referencial, campos

obligatorios, rangos de valores, etc. Estas restricciones al estar bien definidas

contribuyen con la calidad de los datos en el proceso ETL.

3.6. METODOLOGIAS DESARROLLO DATA WAREHOUSE

3.6.1. Bill Inmon

Esta metodología la definió su autor en el año 1992 en el libro “Building the Data

Warehouse” [8]. En este libro el autor propone los mecanismos necesarios para

(38)

30

Para Bill Inmon, el diseño de un Data Warehouse comienza con la introducción de

datos en el mismo, debido a las grandes cargas de datos que deben hacerse

antes de su introducción en el Data Warehouse, dependiendo de ello la eficiencia

de estos sistemas para acceder a los datos. Además, la definición de Inmon

sustenta uno de los principios fundamentales del desarrollo de un Data

Warehouse. El principio cosiste en que el ambiente de origen de los datos y el

ambiente de acceso de datos deben estar físicamente separados en diferentes

bases de datos y en equipos separados.

A Inmon se le asocia frecuentemente con los Data Warehouse a nivel empresarial,

que involucran desde un inicio todo el ámbito corporativo, sin centrarse en un

incremento específico hasta después de haber terminado completamente el

diseño del Data Warehouse. En su filosofía, un Data mart es sólo una de las capas

del Data Warehouse y los Data mart son dependientes del depósito central de datos o Data Warehouse corporativo y por lo tanto se construyen después de él.

Inmon es defensor de utilizar el modelo relacional para el ambiente en el que se

implementará el Data Warehouse corporativo, ya que como él mismo afirma, “la

creación de una base de datos relacional con una ligera normalización, es la base

de los Data mart. O lo que es lo mismo, a partir de los esquemas relacionales, a

los que se les irá añadiendo complejidad, se obtendrán finalmente los Data

mart”16 .

3.6.2. Ralph Kimball

En el año 1998 Ralph Kimball en el libro “The Data Warehouse Toolkit” [4] recoge

el proceso a seguir en el desarrollo de un Data Warehouse; proceso que se

muestra de forma esquemática en la Figura 4:

16

(39)

31

Figura 4. Esquema Metodología Kimball

Fuente: Webnote. Bases de datos avanzadas. [Disponible en Internet].

<http://asiel-bda.webnode.es/trabajos/tarea-1/ciclo-de-vida-dimensional-del-negocio/> [15 de febrero de 2012].

A continuación se presentan y describen de manera general las fases que componen esta metodología:

3.6.2.1. Planeación y Administración Del Proyecto

- Definición del proyecto: Es importante identificar el escenario para

determinar el alcance y definición del proyecto. Los escenarios, originados

por una demanda del proyecto en una organización son los siguientes:

o Demanda de un sector del negocio: En este escenario, un ejecutivo

del negocio tiene el propósito de obtener mejor información con un

(40)

32

o Demasiada demanda de información: En este escenario, existen

múltiples ejecutivos del negocio buscando mejor información.

o En busca de demanda: en este escenario usualmente está

involucrado el presidente de una organización, quien no identifica

necesidades de una bodega de datos para su negocio pero desea

incorporar este sistema por razones diferentes a requerimientos o

necesidades del negocio.

Al identificar el escenario, es posible determinar si existe demanda para el

proyecto y de donde proviene esta demanda.

- Determinar la preparación de la organización: De acuerdo con lo

indicado por Ralph Kimball en sus escritos, hay cinco factores que deben

existir en una organización para iniciar un proyecto de Data mart; estos

factores son los siguientes:

o Patrocinio de la gerencia del negocio: Los gerentes son líderes

influyentes dentro de la organización y determinan el apoyo y soporte

al proyecto de los demás miembros de la organización. Es preferible

tener varios patrocinadores que uno solo, en caso de que se

presenten cambios en la organización o necesidad de un apoyo más

fuerte.

o Motivación del negocio: Al implementar un Data mart se busca

encontrar un sentido de emergencia por parte de la organización,

(41)

33

o Acompañamiento del departamento de tecnología y de negocio: El

éxito de un proyecto de Data mart se produce gracias a un esfuerzo

de las áreas de tecnología y de negocio, compartiendo

responsabilidades.

o Presencia de cultura analítica: Es importante que las decisiones de la

organización se basen en hechos, más que en simples intuiciones. Y

que estas decisiones sean determinantes y recompensadas.

o Factibilidad: Es preferible que la infraestructura que soporte el Data

mart esté presente y sea robusta. La primera factibilidad debe ser de los datos.

- Desarrollo de enfoque preliminar: Luego de haber determinado la

preparación de la organización para el proyecto, se debe centrar el proyecto

en su enfoque, y justificarlo para recibir el apoyo y presupuesto de

desarrollo.

Para determinar el enfoque es importante seguir los siguientes parámetros:

o La definición del enfoque es responsabilidad del departamento de

tecnología y de negocio: El enfoque usualmente se establece para

desarrollar requerimientos específicos del negocio, en un tiempo

determinado.

o El enfoque inicial del proyecto debe ser factible y manejable.

o Enfoque inicial en un solo requerimiento del negocio soportado por

(42)

34

o Limitar el número de usuarios que tendrán acceso a la bodega de

datos inicialmente.

o Establecer criterios de éxito del proyecto mientras se define el

enfoque: Se refiere a entender lo que la gerencia espera del

proyecto.

- Desarrollar la justificación del negocio: se deben identificar

anticipadamente los costos y beneficios asociados al proyecto. Una forma

de hacer esto es con el factor de retorno de la inversión (ROI), que consiste

en comparar el retorno financiero esperado contra la inversión que se

espera realizar.

- Planeación del proyecto: El proyecto de Data mart debe tener un nombre.

Luego, se deben identificar roles que puedan ser cubiertos por uno o varios

integrantes del equipo.

- Desarrollo del plan del proyecto: El objetivo de la planeación es proveer

el detalle suficiente para hacer seguimiento al progreso del proyecto. Se

identifican actividades, recursos y tiempos para el desarrollo. También

permite monitorear los procesos y tener un plan de riesgos.

- Administración del proyecto: se deben realizar reuniones con una agenda

programada y en un ambiente de comunicación entre el equipo. Además, se

(43)

35

3.6.2.2. Análisis de Requerimientos

- Acercamiento a la definición de requerimientos: Para entender mejor los

requerimientos se debe empezar por hablar con los usuarios del negocio.

No se debe preguntar a estos usuarios, qué datos quieren que aparezcan

en el Data mart, sino hablar con ellos sobre sus trabajos, objetivos y retos e

intentar conocer cómo toman decisiones.

- Preparación de la entrevista: Se deben determinar roles y

responsabilidades en el equipo entrevistador.

Los roles que se deben manejar, comprenden a un líder, encargado de

dirigir el cuestionario, y una persona encargada de tomar notas durante las

entrevistas. Se debe tomar el mayor detalle posible del contenido. Al

finalizar las entrevistas, esta persona debe hacer preguntas para aclarar

dudas y obtener una retroalimentación de los entrevistados.

- Investigación previa a entrevistas: Antes de iniciar el proceso de

levantamiento de requerimientos, se deben analizar los reportes anuales de

la compañía, para determinar las decisiones y hechos estratégicos.

También es útil obtener planes de negocios de la compañía y analizar la

competencia de la compañía (principales fortalezas y debilidades).

- Selección de los entrevistados: Se deben seleccionar personas

representativas de cada área de la organización. Es importante observar el

(44)

36

- Desarrollo del cuestionario: El líder de la entrevista debe desarrollar el

cuestionario antes de iniciar la entrevista. Se deben desarrollar varios

cuestionarios que serán aplicados dependiendo del rol de los entrevistados

dentro de la organización. El cuestionario debe ser de una sola página, para

evitar exceso de tiempo.

Es preferible iniciar las entrevistas en un nivel medio de jerarquía de la

organización, en vez de iniciar desde la parte superior con las altas

gerencias, pues en los mandos medios se maneja un mayor nivel de detalle

respecto a los datos que sirven para luego definir la granularidad de los

datos.

- Inicio y desarrollo de la entrevista: La entrevista debe iniciarse con una

introducción, para contextualizar al usuario sobre el proyecto y el equipo

desarrollador. Los objetivos del proyecto y de la entrevista deben ser

nombrados y los miembros del equipo presentados.

Para documentar información útil se debe preguntar a los usuarios sobre

sus trabajos, por qué los hacen y cómo los hacen. Se deben realizar

preguntas en un alto nivel y luego irse al detalle para obtener respuestas

cada vez más específicas.

Al entrevistar ejecutivos, el principal objetivo es obtener una visión y

entender globalmente el negocio. Al entrevistar administradores y analistas

de la empresa, se buscan los objetivos y visión de cada departamento. En

el área de auditoría y administración de datos se busca saber si existen los

datos para poder dar soporte a los requerimientos encontrados en las

entrevistas previas. Se debe entender las definiciones de los campos de las

bases de datos, granularidad, volúmenes de datos, y otros detalles de estas

(45)

37

Al cierre de las entrevistas se debe preguntar por los criterios de éxito del

proyecto, de esta forma se entienden las actitudes y expectativas frente al

proyecto. Estos criterios deben ser medibles y cuantificables.

- Análisis de las entrevistas: Se deben analizar y repasar los reportes y

análisis reunidos en las entrevistas, lo cual comúnmente conlleva a una

aproximación del descubrimiento de dimensiones para el modelo.

3.6.2.3. Modelamiento Dimensional

- Modelo entidad relación: El modelo entidad relación (ER) es una técnica

para diseñar sistemas que permitan el procesamiento de transacciones

OLTP (procesamiento transaccional en línea). Siempre va encaminado a la

eliminación de la redundancia, lo que permite que la manipulación sobre la

base de datos tenga que hacerse en un solo lugar y sea mucho más rápido.

- Modelo Dimensional: El modelo dimensional es una técnica de diseño

lógico que busca presentar los datos de una forma intuitiva y que

proporcione acceso de alto desempeño. Cada modelo dimensional se

compone de una tabla con múltiples llaves foráneas, llamada tabla de

hechos (fact-table), y un conjunto de tablas más pequeñas, llamadas tablas

de dimensión.

.

- Diseño de dimensiones y hechos: En el desarrollo de un Data mart

comúnmente es necesario unir Data marts. Esto se logra creando una

arquitectura de bus de Data marts. Como se utilizarán las mismas tablas de

dimensiones, es importante que las tablas de dimensiones y hechos

(46)

38

- Hechos: son medidas de las variables que se consideran. Un hecho puede

ser el valor de una factura con sus respectivas relaciones: la factura es

generada a un cliente, correspondiente a un producto, creada en una

sucursal. Al seleccionar los hechos para el diagrama dimensional, se debe

sospechar que cualquier valor numérico, especialmente si es de tipo

flotante, es posiblemente un hecho.

- Dimensiones: Los atributos de tipo texto que describen cosas son

organizados en dimensiones. Es necesario establecer un criterio puramente

de diseño y basado en los requerimientos del negocio para establecer los

atributos que se incluyen como dimensiones y los que se pueden descartar

al realizar la bodega de datos.

- Método de diseño de una tabla de hechos: Para el diseño de la tabla de

hechos, de acuerdo a la metodología de Ralph Kimball se deben seguir los

siguientes pasos:

o Selección del Data mart: Para un correcto desarrollo de un Data

mart, es preferible seleccionar e implementar primero los Data mart que dependan de una sola fuente y luego continuar con los que

deben extraer datos de múltiples fuentes.

o Declaración de granularidad de la tabla de hechos: Es necesario

definir claramente lo que es un registro de la tabla de hechos en el

diseño dimensional propuesto. La granularidad es la respuesta a la

(47)

39

La granularidad se refiere al nivel de detalle existente en las

unidades de los datos del Data mart. Entre más detalle haya, menor

será el nivel de la granularidad. Entre menos detalle haya, mayor

será la granularidad.

- Selección de dimensiones: Generalmente la granularidad determina unas

dimensiones mínimas e iniciales. Al agregar nuevas dimensiones los

atributos de estas deben cumplir con la misma granularidad que se ha

definido.

3.6.2.4. Diseño Técnico de la Arquitectura

En los sistemas de información la definición de una arquitectura permite

hacer un desarrollo más confiable y eficiente. Con la definición de la

arquitectura se mejora la comunicación entre las diferentes áreas del

proyecto, el planeamiento del proyecto, la flexibilidad y el mantenimiento del

mismo.

- Aspectos de arquitectura: Para hacer el diseño de la arquitectura se debe

comenzar analizando los sistemas actuales, estos deben ser consistentes y

manejar de forma correcta sus transacciones, pues en la metodología del

desarrollo del Data mart se toma como hecho que estos sistemas son

confiables.

- Técnica: Esta área corresponde a los procesos y a las herramientas que se

aplicarán sobre los datos. Esta área se encarga de responder a preguntas “Como”. Por ejemplo ¿Cómo vamos a extraer los datos de la fuentes?,

¿Cómo los podemos organizar de forma que podamos hacer análisis

conforme a los requerimientos del negocio?, entre otras. Para garantizar un

(48)

40

o Back Room: Es el área del Data mart responsable de extraer y

preparar los datos.

o Front Room: Es el área del Data mart responsable de mostrarle a los

usuarios los resultados con los datos analizados y examinados, listos

para que puedan ser utilizados.

- Infraestructura: Corresponde a las plataformas (principalmente hardware)

sobre las que se ejecutan los servidores de base de datos, los servidores

de aplicaciones y donde se ejecutan los procesos.

- Nivel de requerimientos del negocio: Este nivel no trata de ninguna

implementación técnica del Data mart, el interés del arquitecto del proyecto

se centra en entender el comportamiento de los negocios, los procesos de

la organización y las limitaciones que podrían ir en contra del desarrollo del

proyecto.

- Nivel de modelos de arquitectura: Un modelo de arquitectura, propone

los principales componentes de una arquitectura que se deben implantar

para la consecución de los requerimientos. Todas las tecnologías de

arquitectura, deben ser justificadas y deben garantizar que funcionan juntas

en un sistema.

- Nivel de detalle del modelo: Hace referencia a las especificaciones

funcionales de cada componente de la arquitectura, esto debe incluir

suficiente información que sirva como guía al equipo de desarrolladores

(49)

41

Esto también sirve en el caso que se quiera establecer un contrato legal,

pues lo establecido en el la especificación es lo mismo que se va

implementar y se puede evitar que el cliente exija más funcionalidades

cuando nunca fueron determinadas formalmente.

- Nivel de implementación: La implementación es realizada a partir de los

detalles del modelo, pues ahí se tiene considerada la arquitectura y detalles

para llevar a cabo el desarrollo. El desarrollo del proyecto debe estar

documentado.

3.6.2.5. Proceso de Extracción, Transformación y Carga

Este proceso comprende varios aspectos determinantes para el Data mart. Por lo

tanto se debe seguir un plan para su correcto desarrollo. Se establecen varios

pasos que conducen al desarrollo del proceso y que se describen a continuación:

- Paso 1. Plan de alto nivel: El proceso de diseño se inicia con un esquema

simple de los componentes del plan que son conocidos: Las fuentes y los

destinos de los datos. Se identifica de donde provienen los datos y las

características y problemas con dichas fuentes. Con este esquema es

posible comunicar la complejidad del proyecto a la gerencia y miembros del

equipo de desarrollo del proyecto.

- Paso 2. Herramientas ETL: Las extracciones típicamente se escriben en el

lenguaje de la fuente de los datos. Existen herramientas que realizan todo

el proceso de extracción, transformación y carga que buscan minimizar el

tiempo requerido para estas tareas. Estas herramientas implican un costo

por licencias y posibles incompatibilidades o dificultades con

(50)

42

- Paso 3. Plan detallado: El plan se inicia seleccionando las tablas en las

que se va a trabajar, en cual orden y bajo que secuencia se realizaran las

transformaciones para cada conjunto de datos. Se debe graficar un

diagrama con estas estructuras.

- Paso 4. Poblar una tabla de dimensión simple: La principal razón para

iniciar el proceso con una dimensión estática y simple es la facilidad para

poblar esta tabla.

- Paso 5. Implementación de la lógica del cambio de una dimensión: Al

cambiar los datos de una dimensión, ya sean nuevos o actualizaciones a

los datos previos, es preferible construir la extracción de tal forma, que se

extraigan únicamente los datos que han cambiado.

- Paso 6. Poblar las dimensiones restantes: Para poblar el resto de

dimensiones se sigue el proceso del paso 4, y se cargan ya sea con el uso

de una herramienta de carga existente o con el desarrollo de una que

soporte conexiones ODBC o JDBC.

- Paso 7. Carga histórica de hechos: En el proceso de ETL debe existir un

paso para reemplazar las llaves primarias de las fuentes por las llaves

subrogadas que se han asignado a cada dimensión, y que deben ir como

llaves foráneas en la tabla de hechos.

- Paso 8. ETL de una tabla de hechos incremental: Al realizar cargas

semanales o periódicas al Data mart desde las fuentes, es decir al

actualizar el Data mart, se deben extraer y procesar únicamente las

(51)

43

- Paso 9. Operación y automatización de la bodega de datos: Idealmente

el proceso ETL de una bodega de datos se ejecuta de manera automática y

no atendida.

3.6.2.6. Selección e instalación de productos

- Selección de Productos: Una vez se tiene completa la arquitectura, se

deben tener en cuenta los requerimientos técnicos y los requerimientos de

negocio para la selección de productos.

- Mantener el negocio enfocado: Para la selección de la herramienta se

debe hacer un riguroso estudio de cada una de ellas, mirar sus ventajas y

desventajas y saber el alcance que se quiere con cada una para saber las

cosas que se pueden y no se pueden hacer.

Otro punto importante en la escogencia de la herramienta son los

requerimientos de los usuarios, los requerimientos del negocio, mirar el

análisis y el grado de procesamiento que se puede obtener con cada una

ya sea un motor de base de datos, una herramienta de ETL o una

herramienta OLAP o de reportes. También se deben mirar las limitaciones

de los usuarios en lo referente al Hardware, pues no tiene sentido contratar

una herramienta que consume muchos recursos cuando no se tiene la

plataforma para soportarla.

Para la escogencia de las herramientas también se debe tener presente el

plan del proyecto, la arquitectura para mirar los alcances técnicos y la

documentación de los requerimientos que seguramente ayudan a la mejor

(52)

44

El momento de la escogencia de las herramientas tiene su momento

indicado durante el desarrollo del proceso de Data mart. Si se hace muy

temprano no se tendrá un real entendimiento de los requerimientos del

negocio y seguramente no se tendrá la mejor opción. Si espera y se hace

un tiempo después tendremos más información acerca los requerimientos,

las plataformas y se puede escoger de esta forma una mejor opción.

Se tienen cuatro áreas fundamentales para la evaluación y escogencia de

las herramientas.

o Plataforma de hardware: Se deben evaluar las diferentes plataformas

para mirar su capacidad y escoger las herramientas teniendo en

cuenta las limitaciones que se podrían presentar.

o Plataformas de Base de Datos: Para proyectos pequeños se puede

utilizar un motor de BD sencillo como mysql que no es muy pesado y

que podrá soportar las plataformas. Para proyectos grandes se debe

considerar un motor de BD con más características, que brinde

seguridad y que permita realizar más y mejores aplicaciones, por

ejemplo PostgreSQL, Oracle, SQL Server, Interbase, entre otras.

o Herramientas de Data Staging: Herramientas que permiten hacer

limpieza a los datos, se hacen las transformaciones y se envían a los

Data Marts. Estas son las herramientas más costosas y complejas

(53)

45

o Herramienta de acceso a los datos: Esta elección es difícil porque en

el mercado no existe un líder, y además se terminan usando varias

de estas herramientas por la gran variedad de requerimientos que de

desea cumplir.

3.6.2.7. Características de Aplicaciones para Usuarios Finales

El objetivo de este paso es proporcionar la interfaz que mostrará al usuario

reportes y análisis multidimensionales que tomará como base en la toma de

decisiones. Una aplicación de usuario final, provee un diseño y estructura a los

reportes tomando como base los datos del Data mart.

.

- Especificación de aplicaciones para usuario finales: Hay algunos pasos

importantes en el proceso de especificación de las aplicaciones de usuario

final:

o Determinar el conjunto inicial de plantillas de reportes.

o Determinar la navegación en los reportes.

o Determinar el estándar de plantillas de reportes.

o Determinar la especificación de estas plantillas.

3.6.2.8. Mantenimiento y Crecimiento de un Data mart

- Administración del entorno de Data mart: Cuando una organización

adquiere sus sistemas de información el cambio que tendrán estos

sistemas es muy poco, sin embargo, cuando se desarrolla un proyecto de

Data mart se debe pensar en el mantenimiento posterior a la implementación, pues estas aplicaciones tienen gran tendencia a crecer a

Figure

Figura 1. Sistema Transaccional Vs. Data Warehouse
Figura 2. Ejemplo Esquema Estrella
Figura 3. Ejemplo Esquema Copo de Nieve
Figura 4. Esquema Metodología Kimball
+7

Referencias

Documento similar