47
Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de workflow en vista a la definición de un proceso para la carga y mantenimiento de data warehouses SEMINARIO Presentación día 18 con fecha 28/12/2001 Artículo:Conceptualización de DW de Enseñanza Expositor: Ignacio Larrañaga

Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Embed Size (px)

Citation preview

Page 1: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Concepción de Sistemas de InformaciónInstituto de Computación – Facultad de Ingeniería – Universidad de la República

Estudio de modelos y técnicas de workflow en vista a la definición de un proceso para la carga y mantenimiento de data

warehouses

SEMINARIO

Presentación día 18 con fecha 28/12/2001

Artículo: Conceptualización de DW de Enseñanza

Expositor: Ignacio Larrañaga

Page 2: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Índice

Contexto– Objetivos Generales y Específicos.

Arquitectura del DW de Enseñanza– Data Warehouse, Repositorio de Fuente de Datos, Datos

Auxiliares y Correspondencias Proceso de Carga

– Data Warehouse, Repositorio de Fuente de Datos, Datos Auxiliares y Correspondencias

Posibles Líneas de Trabajo Conclusiones Bibliografía

Page 3: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Objetivos Generales

El objetivo principal de este proyecto es construir un Sistema Informático al servicio de la Investigación Educativa, que permita el acceso flexible a información sobre actividades curriculares para la construcción de perfiles numéricos y evaluación de parámetros en la relación educación-plan de estudios.

Este sistema debe servir como apoyo a la toma de decisiones tanto en la asignación optima de los recursos educativos como en la evolución de las curriculas.

Este proyecto apunta también al fortalecimiento de los sistemas de información de apoyo a la toma de decisiones en la Facultad de Ingeniería, especialmente en el área de la enseñanza.

Informacion extraida de [SIAEE]

Informacion extraida de [SIAEE]

Page 4: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Objetivos Específicos

Los objetivos específicos del proyecto se enmarcan en los siguientes ítems:

– Fortalecimiento de las UAE y mejoramiento de la formación y evaluación docente vinculadas con el asesoramiento a los docentes en materia de gestión, de metodologías y de evaluación de enseñanza.

– Construcción de una base de datos con datos extraídos del Sistema de Bedelia, e implementación de su actualización de forma que sea transparente para los usuarios que la exploten.

– Implementación de reportes y consultas pre-definidas sobre valores de indicadores significativos a ser evaluados en forma permanente en la facultad.

Page 5: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Arquitectura del DW

Esta estructurado en tres capas.

La tercer capa corresponde al Data Warehouse propiamente dicho .

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 6: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

MER del DW

Para entender que es lo que hay en este comentare brevemente la información que hay en el DW.

Existen carreras, que pertenecen a un plan y sobre las cuales se manejan perfiles.

Estas carreras tienen materias que a su vez pueden estar en varias carreras.

BD_CARRERAS(CC_CODCARR,

CC_PERFIL,CC_PLAN)

BD_MATERIAS(MA_CODMAT)

BD_MAT_CARR

N

N

Los campos dentro de parentesis son los que identifican las entidades, por simplicidad los otros no fueron agregados.

Los campos dentro de parentesis son los que identifican las entidades, por simplicidad los otros no fueron agregados.

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 7: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

MER del DW (II)

Estas materias a su vez agrupan asignaturas que son dictadas por un instituto.

BD_CARRERAS(CC_CODCARR,

CC_PERFIL,CC_PLAN)

BD_INSTITUTOS(IN_CODINST)

BD_MATERIAS(MA_CODMAT)

BD_MAT_CARR

N

N

N1

INSTITUTO_ASIGNATURA

N

1

BD_ASIGNATURAS(AS_CODAS)

ASIGNATURAS_CARRERAS_

MATERIAS

En rojo se encuentran las relaciones que no tenían correspondiente en la base de datos.

En rojo se encuentran las relaciones que no tenían correspondiente en la base de datos.

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 8: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

MER del DW (III)

Por otro lado están los estudiantes, que estudian en diferentes carreras, y tienen cierto desempeño; al mismo tiempo que avanzan en las materias de la carrera.

BD_CARRERAS(CC_CODCARR,

CC_PERFIL,CC_PLAN)

BD_ESTUDIANTES(ES_CI)

BD_EST_CARRBD_AVANCE

BD_MATERIAS(MA_CODMAT)

BD_MAT_CARR

N

N

N

N

N

N

BD_DESEMPENIO

N

N

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 9: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

BD_CARRERAS(CC_CODCARR,

CC_PERFIL,CC_PLAN)

BD_ESTUDIANTES(ES_CI)

BD_EST_CARR

BD_EGRESOS_TITULOS(ET_CODTITULO)

BD_LUGARES(LU_CODLUGAR)

N

N

LUGAR_ESTUDIANTEN1

ESTUDIANTES_DE_CARRERAS_QUE

_EGRESAN

MER del DW (IV)

Los estudiantes son de distintos lugares, y egresan de las carreras en las que estudian obteniendo títulos.

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 10: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

MER del DW (V)

Estos estudiantes, de asignaturas que corresponden a materias, registran actividades, asociadas a institutos.

BD_ACTIVIDADES(AC_FECHA,

AC_TIPOACT,AC_CURRI)

BD_ESTUDIANTES(ES_CI)

BD_INSTITUTOS(IN_CODINST)

BD_MATERIAS(MA_CODMAT)

REGISTRO_ACTIVIDAD

INSTITUTO_ACTIVIDAD

1

N

BD_ASIGNATURAS(AS_CODAS)

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Como habiamos visto las asignaturas tambien se relacionaban con Institutos

Como habiamos visto las asignaturas tambien se relacionaban con Institutos

Page 11: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

MER del DW (VI)

Finalmente, los estudiantes de asignaturas (correspondientes con materias) se inscriben a cursos dictados por estos institutos (claramente el instituto debe dictar la asignatura, etc., etc.).

BD_ESTUDIANTES(ES_CI)

BD_INSTITUTOS(IN_CODINST)

BD_MATERIAS(MA_CODMAT)

BD_INSCUR(IC_ANIO,

IC_NROCURSO)

INSCRIPCION_ASIGNATURA

INSTITUTO_INSCRIPCION1 N

INSTITUTO_ASIGNATURA

N

1

BD_ASIGNATURAS(AS_CODAS)

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 12: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Diseño Físico del DW

Básicamente solo para mostrar la complejidad del diseño de este.

BD_ESTUDIANTES

PK ES_CI

ES_NOMESTES_FECHANACES_NROESTES_SEXOES_GENERACIONES_SECUNDARIA

FK1 LU_CODLUGAR

BD_LUGARES

PK LU_CODLUGAR

LU_NOMLUGAR

BD_EST_CARR

PK,FK2 ES_CIPK,FK1 CC_CODCARRPK,FK1 CC_PLANPK,FK1 CC_PERFIL

EC_FECHAINGEC_CALINSCEC_FECHAFINEC_PORCAMBIO

FK2 ES_GENERACION

BD_CARRERAS

PK,FK1,FK2,FK3 CC_CODCARRPK,FK1,FK2 CC_PLANPK,FK1,FK2,FK3,FK3 CC_PERFIL

CC_NOMCARRCC_NOMPERFILCC_TIPOPLANCC_CREDITOSMIN

BD_INSCUR

PK,FK2 ES_CIPK,FK4 MA_CODMATPK,FK1 AS_CODASPK IC_ANIOPK IC_NROCURSO

FK2 ES_GENERACIONFK3 IN_CODINST

BD_MATERIAS

PK MA_CODMAT

MA_NOMMAT

BD_ASIGNATURAS

PK CC_CODCARRPK CC_PLANPK CC_PERFILPK,FK3 MA_CODMATPK,FK1 AS_CODAS

AS_NOMASAS_CREDITOSAS

FK2 IN_CODINSTAS_SEMESTRE

BD_INSTITUTOS

PK IN_CODINST

IN_NOMINST

BT_MAT_CARR

PK,FK1 CC_CODCARRPK,FK1 CC_PLANPK,FK1 CC_PERFILPK,FK2 MA_CODMAT

MA_CREDITOSMIN

BD_EGRESOS_TITULOS

PK,FK2 ES_CIPK,FK1 CC_CODCARRPK,FK1 CC_PLANPK,FK1 CC_PERFILPK ET_CODTITULO

ET_FECHATITET_NOMTITET_TIPOTITET_REVALIDA

BD_DESEMPENIO

PK,FK1,FK2 ES_CIPK,FK1 CC_CODCARRPK,FK1 CC_PLANPK,FK1 CC_PERFIL

FK1 EC_FECHAINGRDE_ANIODE_DESEMPENIODE_AVANCE

BD_ACTIVIDADES

PK,FK1 ES_CIPK,FK3 MA_CODMATPK AS_CODASPK AC_FECHAPK AC_TIPOACTPK AC_CURRI

FK1 ES_GENERACIONAC_PERIODOAC_NOMPERIODOAC_TIPOACTIVIDADAC_TIPORESULTADOAC_NOTAAC_CREDITOSAC_ANIOAC_APRUEBAASAC_TIPOGEN

FK2 IN_CODINST

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Las claves foraneas se deducieron, dado que no estaban en el manual [MANDWE] porque lo que tome fue un manual de usuario.

Tampoco se si en realidad se establecieron.

Las claves foraneas se deducieron, dado que no estaban en el manual [MANDWE] porque lo que tome fue un manual de usuario.

Tampoco se si en realidad se establecieron.

Page 13: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Arquitectura del DW (II)

La segunda capa o capa intermedia corresponde a aquellas tablas que son cargadas con los datos extraídos mediante los scripts de la base de datos de Bedelía.

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 14: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Diseño Físico de la Capa Intermedia

IN_GRUPOS

GRPNOMGRPCRMINCRMAX

IN_EGRESOS

CARRCICLOTITULONOMTITESTCIFECEGREVALIDATIPOTIT

IN_ACTIVIDADES

ESTCIASIGTACTNOTAFECHACURRITGENPERTIPOPERCODINSTOBS

IN_INSCUR

ESTCIASIGFECINSNROCURSO

IN_INSTIT

INSTNOMINST

IN_LUGARES

LUGARNOMLUGAR

IN_ESTCARR

ESTCICARRCICLOFECINGFECEGLUGAROBSCALINSCPORCAMBIO

IN_ASIGCARR

CARRCICLOASIGNOMASIGCODMATTIPOEXOCREDITOSINST

IN_MATERIAS

CARRCICLOCODMATNOMMATCRMAT

IN_ESTUDIANTES

ESTCINOMESTLUGARNACIDOSEXOANIOINSTDIRTELEST

IN_ASIGRUP

GRPASIGTACT

IN_CARRERAS

CARRNOMCARRPLANCICLONOMCICTIPOCICCRMINC

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 15: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Problemas vistos al revisar la Capa Intermedia

Problemas vistos al revisar la documentación:– Las tablas de datos para esta capa no tienen

claves.– Problemas con tipos de datos (p.e.

IN_ACTIVIDADES.FECHA Numeric(18,0))

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 16: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Arquitectura del DW (III)

– La primer capa está formada por tablas auxiliares y tablas que se utilizan para establecer correspondencias entre los datos de Bedelía y los datos del Data Warehouse.

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 17: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Diseño Físico de la Capa Auxiliar

Estas tablas, básicamente de mapeos, catalogos internos y logs forman la capa intermedia.

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

AX_ASIG_SEM

PK CARRPK CICLOPK CODMATPK ASIGORI

NOMASIGCREDITOSSEMESTRENUEVA

AX_MAPEO_CARRERAS

PK CARRPK CICLO

CC_CODCARRCC_PLANCC_PERFILCC_NOMPERFILCC_CREDITOSMIN

AX_CARRERAS

PK CC_CODCARR

CC_NOMCARR

AX_ERRORES

PK CODIGO

DESCRIPCION

AX_MAPEO_MATERIAS

PK CODMATORIPK CODMATUNIPK CARRPK CICLO

NOMMATUNICC_CODCARRCC_PLANCC_PERFIL

AX_LOG_CARGA

NOM_PACKNOM_TRASNFFECHAT_ORIGT_DESTERRMAS_INFO

AX_RESPA_MATERIAS

PK CODMATORIPK CODMATUNIPK CARRPK CICLO

NOMMATUNICC_CODCARRCC_PLANCC_PERFILMA_CREDITOSMIN

AX_MAPEO_ASIGNATURAS

PK ASIGORIPK ASIGUNIPK CARRPK CICLOPK CODMATUNI

NOMASIGUNICODMATORIINSTCREDITOSSEMESTRECC_CODCARRCC_PLANCC_PERFIL AX_PARAMETROS

PK AXPARA1

AXPARA2ACTIVIDADESASIGYRELACIONADOSESTYRELACIONADOSINSCRIPACURSOMANTCREDMATALTAMAPEOCARRBAJAMAPEOCARRALTAMAPEOMATBAJAMAPEOMATALTACARRDWBAJACARRDWMODCARRDWCAPAINTERMEDIACAPAINTERMEDIAINSCCAPAINTERMEDIAACTSAVANCEDESEMPEÑOMANTSEMASIGCREDCARR

Page 18: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Datos de la Capa Auxiliar

Catalogos:– AX_CARRERAS, AX_ERRORES, AX_ASIG_SEM

Mapeos:– AX_MAPEO_ASIGNATURAS,

AX_MAPEO_CARRERAS, AX_MAPEO_MATERIAS,

Logs:– AX_PARAMETROS, AX_LOG_CARGA

Datos Auxiliares yCorrespondencias

Repositorio deDatos Fuente

Data Warehouse

Page 19: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Proceso de Carga

Procesos:1. Capa Intermedia

1. Base de Datos2. Inscripciones a Curso3. Actividades

2. Data Warehouse1. Estudiantes, Carreras,

Inscripción a Carreras, Egresos

2. Inscripciones a Curso3. Actividades4. Avance por Materia5. Desempeño por Carrera

3. Data Warehouse (II)1. Asignaturas, Materias,

Materias de Carreras, Asignaturas de Carreras

P 1.1

Capa Intermedia

Data Warehouse

P 1.2

P 1.3

P 2.1

P 2.2

P 2.3

P 2.4

P 2.5

P 3.1

Page 20: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P1.1 (Capa Intermedia – Base de Datos)

En este proceso se realiza la carga de la capa intermedia (con datos de estudiantes, carreras, asignaturas, etc.)

Por lo que entiendo de este proceso básicamente se trata de levantar datos de archivos ASCII (porque por alguna razón no se dio acceso a los datos de Bedelia directamente). Por lo que aparentemente no reviste ninguna complejidad y podría ser realizado con cualquier utilitario para importar archivos de texto en tablas.

Page 21: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P1.2 (Capa Intermedia – Inscripciones a Curso)

Con este proceso se realiza la carga de la capa intermedia con datos de inscripciones a curso.

Merece la misma observación que en el caso anterior, o sea aparentemente no reviste complejidad excesiva.

IN_INSCUR

ESTCIASIGFECINSNROCURSO

Page 22: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P1.3 (Capa Intermedia – Actividades)

Con este proceso se realiza la carga de la capa intermedia con datos de las actividades de los estudiantes.

Nuevamente lo mismo que en el caso anterior.IN_ACTIVIDADES

ESTCIASIGTACTNOTAFECHACURRITGENPERTIPOPERCODINSTOBS

Page 23: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P2.1 (DW – Estudiantes, Carreras, Estudiantes insc. Carreras, Egresos)

En esta etapa se cargan en el DW a partir de lo ya tomado en la capa intermedia todo lo que se lista en el titulo de esta diapositiva.

Como se mostrara con dos ejemplos (Estudiantes y Carreras) tomando “conceptualmente” lo que hay que hacer se podría realizar usando SQL.

Es de notar que no se llego al detalle de los procesos, por lo que podría haber aspectos que invaliden esta suposición.

Page 24: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Mapeo de Estudiantes

Conjeturando la siguiente SQL podría realizar la carga:

select ESTCI as ES_CI, NOMEST as ES_NOMEST, NACIDO as ES_FECHANAC, EST as ES_NROEST, SEXO as ES_SEXO, “Generación” + FECING as ES_GENERACION, INST as ES_SECUNDARIA, LUGAR as LU_CODLUGAR

from IN_ESTUDIANTES, IN_LUGARES, IN_ESTCARR

where IN_ESTUDIANTES.ESTCI = IN_ESTCARR.ESTCI and IN_ESTCARR.FECING = (select min (FECING)from IN_ESTCARRwhere ESTCI = IN_ESTUDIANTES.ESTCI)

BD_ESTUDIANTES

PK ES_CI

ES_NOMESTES_FECHANACES_NROESTES_SEXOES_GENERACIONES_SECUNDARIA

FK1 LU_CODLUGAR

IN_ESTUDIANTES

ESTCINOMESTLUGARNACIDOSEXOANIOINSTDIRTELEST

IN_LUGARES

LUGARNOMLUGAR

BD_LUGARES

PK LU_CODLUGAR

LU_NOMLUGAR

IN_ESTCARR

ESTCICARRCICLOFECINGFECEGLUGAROBSCALINSCPORCAMBIO

Page 25: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Mapeo de Estudiantes (II)

Finalmente nos falto:select LUGAR as

LU_CODLUGAR, NOMLUGAR as LU_NOMLUGAR

from IN_LUGARES

BD_ESTUDIANTES

PK ES_CI

ES_NOMESTES_FECHANACES_NROESTES_SEXOES_GENERACIONES_SECUNDARIA

FK1 LU_CODLUGAR

IN_ESTUDIANTES

ESTCINOMESTLUGARNACIDOSEXOANIOINSTDIRTELEST

IN_LUGARES

LUGARNOMLUGAR

BD_LUGARES

PK LU_CODLUGAR

LU_NOMLUGAR

IN_ESTCARR

ESTCICARRCICLOFECINGFECEGLUGAROBSCALINSCPORCAMBIO

Page 26: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Mapeo de Carreras

Carreras– Se fusionan varios códigos de carrera en uno único.– Se ofrecen valores por defecto.

Mapeo de carreras– <Carrera, Ciclo, Nombre Carrera, Nombre Ciclo, Plan,

Créditos> => <Carrera, Nombre Carrera>– Mapeo 1:1.– Si no hay créditos se solicitan en el momento de establecer el

Mapeo. Créditos de Carreras

– En base al mapeo establecido y que cada mapeo tiene créditos se permiten modificar.

Page 27: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Mapeo de Carreras (II)

BD_CARRERAS

PK,FK1,FK2,FK3 CC_CODCARRPK,FK1,FK2 CC_PLANPK,FK1,FK2,FK3,FK3 CC_PERFIL

CC_NOMCARRCC_NOMPERFILCC_TIPOPLANCC_CREDITOSMIN

IN_CARRERAS

FK1 CARRNOMCARRPLAN

FK1 CICLONOMCICTIPOCICCRMINC

AX_CARRERAS

PK CC_CODCARR

CC_NOMCARR

AX_MAPEO_CARRERAS

PK CARRPK CICLO

FK1,FK2 CC_CODCARRFK1 CC_PLANFK1 CC_PERFIL

CC_NOMPERFILCC_CREDITOSMIN

Tabla final en el Data Warehouse Tablas Auxiliares

de Mapeo y Definicion.

Tabla Original

Page 28: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Mapeo de Carreras (III)

En la diapositiva anterior se puede ver como todos los datos en el data warehouse se obtienen directamente de las dos capas inferiores.

Conjeturando se podría obtener con una SQL como esta (o una variación operando con los campos para formar nuevos valores concatenando cosas):select CC_CODCARR, CC_PLAN, CC_PERFIL, CC_NOMCARR,

CC_NOMPERFIL, TIPOCIC AS CC_TIPOPLAN, CC_CREDITOSMINfrom AX_MAPEO_CARRERAS, AX_CARRERAS, IN_CARRERASwhere AX_MAPEO_CARRERAS.CC_CODCARR =

AX_CARRERAS.CC_CODCARR and AX_MAPEO_CARRERAS.CARR = IN_CARRERAS.CARR and AX_MAPEO_CARRERAS.CICLO = IN_CARRERAS.CICLO

Page 29: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Otros Datos Auxiliares

Además de los procesos anteriores en esta etapa se procesan datos ingresados por el usuario para agregarlos al Data Warehouse. Como por ejemplo:– Mapeo de Materias

Debido a que en la base de datos de Bedelía no se maneja el concepto de materia.

Mapeo N:1.

– Semestres de Asignaturas

Page 30: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Procedimientos Almacenados Relacionados

Obviamente hay otro tipo de acciones que son tomadas en este momento, por ejemplo el calculo de los creditos minimos de una carrera.

Para esto se encontro un procedimiento almacenado que hacia el procesamiento, el cual se muestra a continuacion.

Page 31: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Procedimientos Almacenados Relacionados (II)

create procedure ActualMATERIASas

-- variables locales al procedimientodeclare @CARR intdeclare @PLAN varchar(30)declare @PERFIL intdeclare @CODMAT varchar(6)declare @CNTCRED int

declare Materias cursor forselect C.CC_CODCARR, C.CC_PLAN, C.CC_PERFIL, MC.MA_CODMATfrom BD_MAT_CARR MC, BD_CARRERAS Cwhere upper(C.CC_TIPOPLAN) <> 'C' and C.CC_CODCARR =

MC.CC_CODCARR and C.CC_PLAN = MC.CC_PLAN and C.CC_PERFIL = MC.CC_PERFIL

OPEN Materiasfetch next from Materias INTO @CARR, @PLAN, @PERFIL, @CODMAT

Page 32: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Procedimientos Almacenados Relacionados (III)

WHILE (@@FETCH_STATUS = 0) BEGINbegin transactionset @CNTCRED = 0set @CNTCRED = (

select count(*) from BD_ASIGNATURAS Awhere A.CC_CODCARR = @CARR and A.CC_PLAN = @PLAN and

A.CC_PERFIL = @PERFIL and A.MA_CODMAT = @CODMAT )

if (@CNTCRED is null) beginset @CNTCRED = 0

end

update BD_MAT_CARR set MA_CREDITOSMIN = @CNTCRED where CC_CODCARR = @CARR and CC_PLAN = @PLAN and CC_PERFIL = @PERFIL and

MA_CODMAT = @CODMAT

commit transactionfetch next from Materias INTO @CARR, @PLAN, @PERFIL, @CODMAT

END

CLOSE MateriasDEALLOCATE Materias

GO

Page 33: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Procedimientos Almacenados Relacionados (IV)

La duda que me queda es porque esto no se realizo cuando se cargaba por primera vez la tabla, tal vez algo escape a mi vision pero no podria haberse hecho de esta forma:select ......,

(select count(*) from BD_ASIGNATURAS Awhere A.CC_CODCARR = @CARR and A.CC_PLAN = @PLAN and A.CC_PERFIL =

@PERFIL and A.MA_CODMAT = @CODMAT) as CREDITOSMIN.....

from ....

Cuando se cargaro la tabla BD_MAT_CARR, o como otra opcion colocando los datos en una vista para consultarlos en el momento de cargar BD_MAT_CARR??

Page 34: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P2.2 (DW – Inscripciones a Curso)

Con este proceso se realiza la carga del Data Warehouse con datos de inscripciones a curso.

Lo que se realiza a mi entender podría ser comparable con lo mostrado anteriormente, es decir armar consultas para reunir información y así tenerla disponible para el DW. Claramente estoy hablando muy superficialmente del proceso dado que no llegue a estudiarlo.

Page 35: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P2.3 (DW – Actividades)

De la misma manera que antes este proceso me parece comparable con los anteriores (misma observacion).

Un aspecto a tener en cuenta que pudo haber guiado la implementacion podria haber sido la performance obtenida al hacerlo con consultas.– Optimizacion de Consultas vs Programacion

Estructurada, para resolver el mismo problema.

Page 36: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P2.4 (DW – Avance por Materia)

Este procedimiento parece claramente mas complicado.

No voy a mostrar el procedimiento almacenado que realiza esto (porque llevaria muchas transparencias y no aportaria a mi entender) pero conceptualmente creo se entiende lo que hace para calcular el avance.

Sin embargo si mostrare algunas secciones que me parecen interesantes, mas por lo que se puede ver a simple vista que por el codigo mismo.

Page 37: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P2.4 (DW – Avance por Materia) (II)

IF (Upper(@CCTIPOPLAN) = 'C') BEGIN

SET @TOT =(select case when SUM(AC_CREDITOS) is null then 0 else SUM(AC_CREDITOS) end

from BD_ACTIVIDADES

where Upper(AC_APRUEBAAS) = 'S' and

Upper(AC_TIPORESULTADO) = 'APROBADO' and

ES_CI = @ESTCI and

MA_CODMAT = @MAT)

END

ELSE BEGIN

SET @TOT = (select COUNT(*) from BD_ACTIVIDADES

where Upper(AC_APRUEBAAS) = 'S' and

Upper(AC_TIPORESULTADO) = 'APROBADO' and

ES_CI = @ESTCI and

MA_CODMAT = @MAT)

END

Page 38: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P2.4 (DW – Avance por Materia) (III)

IF (not (@CREDMIN is null)) BEGINIF (@CREDMIN <> 0) BEGIN

IF ( not (@TOT is null)) BEGINSET @VALOR = ((@TOT * 100) / @CREDMIN) IF (@VALOR >=0 and @VALOR <= 10) BEGIN

SET @AV = '0 a 10%'ENDELSE BEGIN

IF (@VALOR > 10 and @VALOR <= 70) BEGINSET @AV = '11 a 70%'

ENDELSE BEGIN

IF (@VALOR > 70 and @VALOR <= 99) BEGINSET @AV = '71 a 99%'

ENDELSE BEGIN

SET @AV = '100%'END

ENDEND

END

Page 39: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P2.4 (DW – Avance por Materia) (IV)

ELSE BEGIN

SET @VALOR = 0

SET @AV = 'NO CALC. SUM NULL'

END

END

ELSE BEGIN

SET @VALOR = 0

SET @AV = 'NO CALC. CRED 0'

END

END

ELSE BEGIN

SET @VALOR = 0

SET @AV = 'NO CALC. CRED NULL'

END

insert into BD_AVANCE values (@ESTCI,@CCCODCARR,@CCPLAN,@CCPERFIL,@MAT,@FECHA_ACT,@VALOR,@AV)

Page 40: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P2.5 (DW – Desempeño por Carrera)

Nuevamente lo mismo que en el caso anterior el procedimiento parece claramente complicado.

Claramente es del mismo corte que el anterior. En ambos procedimientos me quedo la duda

que no se podria hacer sin usar SQL (porque no lo pude mirar en detalle).

Page 41: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

P3.1 (DW – Asignaturas, Materias, Materias de Carreras, Asignaturas de Carreras)

Aquí por lo que pude entender se realiza un procesamiento similar al realizado en 2.1 (DW – Estudiantes, Carreras, Estudiantes insc. Carreras, Egresos).

Para mi la razon de la separacion es que es necesario tener cargado lo anterior al procesar este paso.

Page 42: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Proceso de Carga (II)

Casi finalizando:– El sistema mantiene el estado de la carga

(utilizando una tabla por lo que pude deducir).– Permite borrar el contenido del Warehouse excepto

la información para históricos.– No vi nada que controlara la recarga de datos

(entiendo por esto volver a cargar los mismos datos), no se si seria importante tampoco.

– Hay ciertos parámetros que son pedidos en tiempo de ejecución de la carga (p.e. Año de referencia para calcular el desempeño).

Page 43: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Sobre Log’s

Por actividad del proceso de carga (es decir por nodo que se represento en el grafo).

Filtrado por fecha de ejecución. Código de error general reúne todas las posibles fallas. Información disponible (referente a DTS):

– Nombre del paquete.– Nombre de la transformación.– Fecha.– Tabla Original.– Los demás datos no aparecían en el Manual, vi algunos en las tablas

pero son los que uno imaginaria, código de error, etc.

Page 44: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Posibles lineas de Trabajo

Completar la conceptualizacion de todo el trabajo. Tratar de encontrar versiones alternativas del proceso

utilizando SQL puro de ser posible y marcando que cosas no son realizables.

Tratar de expresar la transformacion mediante primitivas.

No encontre vi nada que indicara cuanto tiempo lleva una carga. Seria interesante saber cuanto demora y si se pudieran sustituir partes por p.e. SQL cuanto se penzaliza o no el proceso.

Page 45: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Conclusiones

Por la poca profundidad que se pudo alcanzar no se pudo detectar porque el proceso no podria ser exclusivamente SQL. Pero aparentemente esta puerta aun esta abierta.

Cual es el aporte de DTS finalmente ??– Pareceria que el proceso es controlado por la

aplicación en el sentido en que se marcan expresamente los procesos ya realizados y la interfase sugiere y guia la secuencia de ejecucion.

Page 46: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Conclusiones (II)

El problema global no parece excesivamente complejo (mirandolo desde mi punto de vista).

Page 47: Concepción de Sistemas de Información Instituto de Computación – Facultad de Ingeniería – Universidad de la República Estudio de modelos y técnicas de

Bibliografía

[SIAEE] Sistema informático de apoyo a la evaluación de la enseñanza.

[MANDWE]: Manual de Usuario, Data Warehouse de Enseñanza.