SlideShare una empresa de Scribd logo
1 de 159
Descargar para leer sin conexión
cenidet
   Centro Nacional de Investigación y Desarrollo Tecnológico
                   Departamento de Ciencias Computacionales



TESIS DE MAESTRÍA EN CIENCIAS EN CIENCIAS
           DE LA COMPUTACIÓN

          Generador semiautomático de perfiles de usuario
                         mediante OWL

                                    presentada por

                         Christian Eloy Rojas Roldán
               Ing. en Sistemas Computacionales por el I. T. de Acapulco

                  como requisito para la obtención del grado de:
              Maestría en Ciencias en Ciencias de la Computación


                                 Director de tesis:
                           Dr. Juan Gabriel González Serna

                                         Jurado:
                        Dr. Javier Ortiz Hernández – Presidente
                       Dra. Azucena Montes Rendón – Secretario
                          M.C. Hugo Estrada Esquivel – Vocal
                   Dr. Juan Gabriel González Serna – Vocal Suplente

Cuernavaca, Morelos, México.                             15 de Septiembre de 2009




Rojas, Christian
                                                                             i
DEDICATORIA

                       A Dios, por todas las bendiciones otorgadas

                                                    A mis padres:
  Dr. Eloy Mario Rojas Nava y Dra. Aida Roldán Monroy, como
     insignificante retribución a todo lo que sin reparos me han
                                            puesto en las manos.

                   A mi novia Xiomara, por todo el apoyo y alegría.

  A mi hermano, por apoyarme en lo que necesité, este triunfo
                                           también es tuyo.




Rojas, Christian
                                                               ii
AGRADECIMIENTOS
A Dios. Siempre primero.

A mis padres, por tanta paciencia, apoyo, y por enseñarme con amor y ejemplo
que todo es posible cuando te lo propones. A mi hermano que nunca dijo un no,
cuando lo necesité. Sin ellos nunca lo hubiera logrado.

A mi novia Xiomara, que con su sonrisa alegró cada día desde el principio hasta el
fin. Por contagiarme de su paciencia y ser mi compañera.

Al Centro Nacional de Investigación y Desarrollo Tecnológico por permitirme un lugar
entre sus alumnos y obtener mis estudios de maestría.

Al Consejo Nacional de Ciencia y Tecnología por la beca para manutención otorgada
y por permitirme conocer el viejo continente con excelente compañía.

A mi director de tesis Dr. Juan Gabriel González Serna, por haberme elegido como su
tesista, por todas esas horas de paciencia otorgadas, por la amabilidad y
respetuosidad que lo caracterizan y sobre todo por ser un buen amigo.

A mis revisores de tesis: Dr. Hugo Estrada Esquivel, Dra. Azucena Montes Rendón,
Dr. Javier Ortíz Hernández, por todas las recomendaciones, apoyo y tiempo dedicado

A mi gente de Acapulco, abuelos, tíos, primos, amigos, que siempre me obsequiaron
ánimos, oraciones, suerte y bienestar cada vez que partía de regreso a mis labores.

A esos compañeros de generación que ahora son amigos: Israel, Rubi, Omar, Yanet,
Jose Luis e Itzel por todos los buenos ratos que pasamos juntos y en especial por
haber mitigado la tristeza de no pasar navidad y fin de año con la familia, cuando
España fue nuestro hogar.

Aunque me resulta imposible agradecer en solo este espacio a todas esas personas
que hicieron posible éste logro. A todos ellos:




Rojas, Christian
                                                                               iii
RESUMEN
La identificación de las preferencias del usuario en función de su perfil (su edad,
gustos, nivel socioeconómico, nivel cultural, y de conocimientos en un área
específica), permitirá a la siguiente generación de aplicaciones Web 3.0 y de
sistemas de recomendación contextuales, por un lado, personalizar los contenidos
Web de acuerdo al perfil del usuario y por otro, presentar resultados pertinentes
para el mismo.


Los perfiles de usuarios son una importante herramienta para personalizar
respuestas y entornos. Por lo anterior, en este documento se presenta una
metodología innovadora basada en el uso de ontologías definidas con lenguaje
OWL y agrupamientos de secciones de información en clústeres y mecanismos de
deducción que minimizan de manera significativa el atosigamiento e intrusión en
el proceso de extracción de información personal del usuario.


Esta metodología permite identificar, clasificar y agrupar componentes del perfil
del usuario en una base de datos semántica que permitirá a diversas aplicaciones
explotar esta información para la personalización de contenidos Web.


Además, esta base de datos semántica también podrá ser utilizada para la
selección de resultados pertinentes en búsquedas contextuales de servicios.




Rojas, Christian
                                                                              iv
ÍNDICE
Lista de figuras ................................................................................................................................. ix
Lista de tablas.................................................................................................................................... x
Lista de Gráficos ............................................................................................................................... x
Glosario de términos y siglas ......................................................................................................... xi
1.     Capítulo I. Introducción ............................................................................................................ 1
     1.1       Introducción ......................................................................................................................... 2
     1.2       Descripción del problema .................................................................................................... 2
     1.3       Objetivo ............................................................................................................................... 3
     1.4       Justificación ......................................................................................................................... 4
     1.5       Beneficios ............................................................................................................................ 8
     1.6       Trabajos relacionados ......................................................................................................... 8
       1.6.1          Principios de marketing ............................................................................................... 8
       1.6.2          Improving Ontology-Based User Profiles .................................................................... 9
       1.6.3          Learning implicit user interest hierarchy for context in personalization ..................... 10
       1.6.4          Need for Context-Aware Topographic Maps in Mobile Devices................................ 11
       1.6.5          Matching User's Semantics with Data Semantics in Location-Based Services ........ 11
           1.6.5.1        Perfil de usuario ..................................................................................................................................11
           1.6.5.2        Perfiles de datos .................................................................................................................................12

       1.6.6          Exploiting Hierarchical Relationships in Conceptual search ..................................... 12
       1.6.7          SOUPA: Standard ontology for ubiquitous and pervasive applications .................... 12
           1.6.7.1        SOUPA Core.......................................................................................................................................13
           1.6.7.2        SOUPA Extensión ...............................................................................................................................13

       1.6.8          A MDD strategy for developing context-aware pervasive systems ........................... 13
       1.6.9          Categorizaciones independientes de un Usuario. ..................................................... 14
           1.6.9.1        GEEK ..................................................................................................................................................14
           1.6.9.2        AKTORS .............................................................................................................................................15
           1.6.9.3        Amigo de un amigo (FOAF: FRIEND Of A Friend)...............................................................................15

     1.7       Alcance del proyecto de tesis ............................................................................................ 17
     1.8       Organización del documento ............................................................................................. 17
Capítulo II. Marco teórico ............................................................................................................... 18
     2.1       Conceptos semánticos ...................................................................................................... 20
       2.1.1          OWL........................................................................................................................... 20
       2.1.2          RDF ........................................................................................................................... 20
       2.1.3          W3C ........................................................................................................................... 21
       2.1.4          Ontología ................................................................................................................... 21
     2.2       Conceptos generales ........................................................................................................ 22
       2.2.1          XSD ........................................................................................................................... 22
Rojas, Christian
                                                                                                                                                                         v
3.     Capítulo III. Análisis y diseño ................................................................................................. 23
     3.1       Análisis .............................................................................................................................. 24
       3.1.1          Análisis de operación con clases .............................................................................. 25
       3.1.2          Estructura de URI´s (Uniform Resource Indicator). .................................................. 37
           3.1.2.1        Árbol de abstracción de nombres ........................................................................................................38

       3.1.3          Manejo de tipos ......................................................................................................... 40
       3.1.4          Análisis de la interfaz................................................................................................. 42
           3.1.4.1        Dominio Básico. ..................................................................................................................................43
           3.1.4.2        Dominio Médico ..................................................................................................................................43
           3.1.4.3        Dominio Familiar .................................................................................................................................43
           3.1.4.4        Dominio Profesional ............................................................................................................................44
           3.1.4.5        Dominio Educativo ..............................................................................................................................44

     3.2       Diseño ............................................................................................................................... 44
       3.2.1          Actividades del proyecto............................................................................................ 48
           3.2.1.1        Conexión con ontología.......................................................................................................................48
           3.2.1.2        Usuario nuevo .....................................................................................................................................49
           3.2.1.3        Usuario existente ................................................................................................................................50
           3.2.1.4        Guardado en ontología........................................................................................................................51
           3.2.1.5        Modificar en ontología .........................................................................................................................53
           3.2.1.6        Eliminado de ontología ........................................................................................................................54
           3.2.1.7        Elección de dominio ............................................................................................................................55
           3.2.1.8        Elección de operación en ontología.....................................................................................................55

4.     Capítulo IV. Desarrollo de la solución ................................................................................... 55
     4.1       Recopilación, discriminación e integración de datos ........................................................ 58
     4.2       Estructura de la ontología ................................................................................................. 61
       4.2.1          Núcleo........................................................................................................................ 62
       4.2.2          Extensibilidad ............................................................................................................ 62
           4.2.2.1        Extensibilidad satelital .........................................................................................................................63

               4.2.2.1.1          Ejemplo .......................................................................................................... 64
               4.2.2.1.2          Formalización de extensibilidad satelital........................................................ 65
           4.2.2.2        Extensibilidad parcial ..........................................................................................................................66

               4.2.2.2.1          Ejemplo .......................................................................................................... 67
               4.2.2.2.2          Formalización de extensibilidad parcial ......................................................... 69
           4.2.2.3        Extensibilidad nuclear .........................................................................................................................70

               4.2.2.3.1          Ejemplo .......................................................................................................... 71
               4.2.2.3.2          Formalización de extensibilidad nuclear. ....................................................... 72
5.     Capítulo V. Implementación ................................................................................................... 75
     5.1       Conexión con ontología ..................................................................................................... 76
     5.2       Usuario nuevo y usuario existente .................................................................................... 77

Rojas, Christian
                                                                                                                                                                     vi
5.3       Volcado de ontología ......................................................................................................... 79
     5.4       Guardado de ontología ...................................................................................................... 80
     5.5       Lectura y modificación de ontología .................................................................................. 82
     5.6       Eliminar ontología .............................................................................................................. 82
6.     Capítulo VI. Pruebas................................................................................................................ 85
     6.1       Introducción ....................................................................................................................... 86
     6.2       Descripción del Plan .......................................................................................................... 86
       6.2.1          Características a ser probadas ................................................................................. 86
       6.2.2          Características excluidas de las pruebas .................................................................. 87
       6.2.3          Enfoque ..................................................................................................................... 87
       6.2.4          Criterio pasa/ no pasa de casos de prueba. ............................................................. 87
       6.2.5          Criterios de suspensión y requerimientos de reanudación. ...................................... 87
       6.2.6          Tareas de pruebas. ................................................................................................... 87
       6.2.7          Liberación de pruebas. .............................................................................................. 88
       6.2.8          Requisitos ambientales. ............................................................................................ 88
       6.2.9          Responsabilidades. ................................................................................................... 88
       6.2.10         Riesgos y contingencias. ........................................................................................... 88
     6.3       Casos de Pruebas. ............................................................................................................ 89
       6.3.1          Características a probar ............................................................................................ 89
       6.3.2          Grupos de pruebas .................................................................................................... 89
           6.3.2.1        Operación con la ontología .................................................................................................................89
           6.3.2.2        Estructuración ontológica ....................................................................................................................89
           6.3.2.3        Enlace con ontología ...........................................................................................................................89
           6.3.2.4        Elección de dominio de la aplicación ...................................................................................................89

       6.3.3          Procedimiento de Pruebas ........................................................................................ 89
     6.4       USOG-101 Pruebas de operación con la ontología .......................................................... 90
       6.4.1          Propósito ................................................................................................................... 90
       6.4.2          Entorno de prueba. .................................................................................................... 90
       6.4.3          USOG-101-001 Lectura de la ontología .................................................................... 90
           6.4.3.1        Propósito.............................................................................................................................................90
           6.4.3.2        Entorno de prueba. .............................................................................................................................90
           6.4.3.3        Proceso...............................................................................................................................................90
           6.4.3.4        Resultado esperado. ...........................................................................................................................90

       6.4.4          USOG-101-002 Escritura en ontología ..................................................................... 91
           6.4.4.1        Propósito.............................................................................................................................................91
           6.4.4.2        Entorno de prueba. .............................................................................................................................91
           6.4.4.3        Proceso...............................................................................................................................................91
           6.4.4.4        Resultado esperado. ...........................................................................................................................91

       6.4.5          USOG-101-003 Eliminado de la ontología ................................................................ 91

Rojas, Christian
                                                                                                                                                                        vii
6.4.5.1         Propósito.............................................................................................................................................91
          6.4.5.2         Entorno de prueba. .............................................................................................................................91
          6.4.5.3         Proceso...............................................................................................................................................91
          6.4.5.4         Resultado esperado. ...........................................................................................................................91

       6.4.6          USOG-201 Pruebas de estructuración ontológica .................................................... 91
          6.4.6.1         Propósito.............................................................................................................................................91
          6.4.6.2         Entorno de prueba. .............................................................................................................................92

       6.4.7          USOG-201-001 Estructuración de individualizaciones ............................................. 92
          6.4.7.1         Propósito.............................................................................................................................................92
          6.4.7.2         Entorno de prueba. .............................................................................................................................92
          6.4.7.3         Proceso...............................................................................................................................................92
          6.4.7.4         Resultado esperado. ...........................................................................................................................92

       6.4.8          USOG-301 Prueba de enlace con ontología ............................................................. 92
          6.4.8.1         Propósito.............................................................................................................................................92
          6.4.8.2         Entorno de prueba. .............................................................................................................................92

       6.4.9          USOG-301-001 Conexión con ontología................................................................... 93
          6.4.9.1         Propósito.............................................................................................................................................93
          6.4.9.2         Entorno de prueba. .............................................................................................................................93
          6.4.9.3         Proceso...............................................................................................................................................93
          6.4.9.4         Resultado esperado. ...........................................................................................................................93

       6.4.10             USOG-401 Prueba de elección del dominio de la aplicación ............................... 93
          6.4.10.1        Propósito.............................................................................................................................................93
          6.4.10.2        Entorno de prueba. .............................................................................................................................93

       6.4.11         USOG-401-001 Elección del dominio de la aplicación ............................................. 93
          6.4.11.1        Propósito.............................................................................................................................................93
          6.4.11.2        Entorno de prueba. .............................................................................................................................93
          6.4.11.3        Proceso...............................................................................................................................................94
          6.4.11.4        Resultado esperado. ...........................................................................................................................94

   6.5         Pruebas ............................................................................................................................. 94
       6.4.1          Pruebas Funcionales ................................................................................................. 95
       6.4.2          Pruebas operativas .................................................................................................. 106
   6.5         Observaciones generales ................................................................................................ 136
Capítulo VII. Conclusiones ........................................................................................................... 139
   7.1         Conclusiones ................................................................................................................... 140
   7.2         Aportaciones .................................................................................................................... 141
   7.3         Trabajos futuros............................................................................................................... 142
   7.4         Publicaciones .................................................................................................................. 143
Bibliografía ..................................................................................................................................... 144
Anexo 1 ........................................................................................................................................... 147
Anexo 2 ........................................................................................................................................... 148
Rojas, Christian
                                                                                                                                                                        viii
LISTA DE FIGURAS
Figura 1.1 Perspectiva de SOUPA + CoBrA para modelar a un usuario. ........................................... 4
Figura 1.2 Perspectiva de GEEK para modelar a un usuario ............................................................. 5
Figura 1.3 Perspectiva de AKTORS para modelar a un usuario ........................................................ 6
Figura 1.4 Perspectiva de FOAF para modelar a un usuario ............................................................. 7
Figura 1.5 Mapa del comportamiento del comprador ......................................................................... 9
Figura 1.6 Ontologías integrantes de SOUPA .................................................................................. 13
Figura 3.1 Diagrama de bloques del proceso general del proyecto ................................................. 24
Figura 3.2 Diagrama general de casos de uso ................................................................................. 25
Figura 3.3 Diagrama de casos de uso de Operar con la ontología .................................................. 26
Figura 3.4 Diagrama de actividad del caso de uso CU-1 Operar con la ontología ........................... 28
Figura 3.5 Diagrama de actividad del caso de uso Elegir operación de altas, bajas y consultas .... 30
Figura 3.6 Diagrama de actividad del caso de uso Elegir dominio de aplicación ............................. 32
Figura 3.7 Diagrama de actividad del caso de uso Enlazar con la ontología ................................... 34
Figura 3.8 Diagrama de casos de uso de Estructuración ontológica................................................ 35
Figura 3.9 Diagrama de actividad del caso de uso Estructuración ontológica ................................. 36
Figura 3.10 Identificador del atributo “nombre” de la ontología en protégé ...................................... 37
Figura 3.11 Árbol de elementos de la ontología ............................................................................... 39
Figura 3.12 Árbol de elementos de la ontología ............................................................................... 39
Figura 3.13 Resultado del método para nombrar individualizaciones .............................................. 40
Figura 3.14 Esquema de manejo de los tipos de datos .................................................................... 41
Figura 3.15 Diagrama de clases del proyecto ................................................................................... 44
Figura 3.16 Diagrama de clases del paquete mx.edu.cenidet.userontology.axiomsinference ......... 45
Figura 3.17 Diagrama de clases del paquete mx.edu.cenidet.userontology.Front ........................... 47
Figura 3.18 Diagrama de secuencias para la Conexión con la ontología ........................................ 49
Figura 3.19 Diagrama de secuencias para ingresar al sistema como usuario nuevo ...................... 50
Figura 3.20 Diagrama de secuencias para ingresar al sistema como usuario existente.................. 51
Figura 3.21 Diagrama de secuencias del proceso Guardar ontología.............................................. 53
Figura 3.22 Diagrama de secuencias del proceso Modificación de ontología .................................. 54
Figura 3.23 Diagrama de secuencias del proceso Eliminación de la ontología ............................... 54
Figura 4.1. Estructura ontológica ...................................................................................................... 60
Figura 4.2. Enfermedades crónico-degenerativas en México ........................................................... 61
Figura 4.3. Estructura de la clase “Minusvalía”. ................................................................................ 64
Figura 4.4. Estructura de la clase “Ayuda_tecnica” .......................................................................... 64
Figura 4.5. Esquema de “Extensibilidad satelital” ............................................................................. 65
Figura 4.6. Esquema de extensibilidad parcial ................................................................................ 67
Figura 4.7. Estructura de la clase “Contacto” .................................................................................... 68
Figura 4.8. Estructura de la clase “Nivel_computo” .......................................................................... 68
Figura 4.9. Relación y cobertura entre las clases “Nivel_computo” y “Contacto” ............................. 69
Figura 4.10. Estructura de la clase “Personales” .............................................................................. 71
Figura 4.11. Estructura de la clase “Origen” ..................................................................................... 71
Figura 4.12. Esquema de extensibilidad nuclear .............................................................................. 72
Figura 5.1. Conexión con ontología .................................................................................................. 77
Figura 5.2. Autenticación de usuario.1 .............................................................................................. 77
Figura 5.3. Autenticación de usuario.2 .............................................................................................. 78
Figura 5.4. Autenticación de usuario.3 .............................................................................................. 79
Figura 5.5. Volcado de datos a la ontología ...................................................................................... 80
Figura 5.6. Relación de elementos en la ontología ........................................................................... 81
Figura 5.7. Lectura de datos desde la ontología ............................................................................... 82
Figura 5.8. Eliminación de datos en la ontología .............................................................................. 83
Figura 6.1. Datos de la ontología en protégé .................................................................................... 95
Figura 6.2. Autenticación invalida ..................................................................................................... 95
Figura 6.3. Autenticación válida y elección de operación con ontología .......................................... 95
Rojas, Christian
                                                                                                                                   ix
Figura 6.4. Datos de la ontología en protégé .................................................................................... 96
Figura 6.5. Creación de nuevo usuario y elección del dominio de aplicación .................................. 96
Figura 6.6. Introducción de datos en el perfil .................................................................................... 97
Figura 6.7. Datos en la ontología después de la operación .............................................................. 97
Figura 6.8. Contenido de la instancia de la clase miembro en la ontología ..................................... 98
Figura 6.9. Eliminación de un individuals en la ontología ................................................................. 99
Figura 6.10. Resultado en la ontología después de la operación ..................................................... 99
Figura 6.11. Guardado de datos ontológicos. ................................................................................. 100
Figura 6.12. Árbol de abstracción de nombres de la ontología creada. ......................................... 100
Figura 6.13. Estructuración ontológica de la ontología en protégé................................................. 101
Figura 6.14. Contenido de password en la clase personales de la ontología ................................ 101
Figura 6.15. Autenticación en la ontología existente ...................................................................... 102
Figura 6.16. Cambio de contraseña en la ontología ....................................................................... 102
Figura 6.17. Valores ontológicos posteriores a la operación. ......................................................... 103
Figura 6.18. Autenticación y visualización de clases organizadas según el dominio de aplicación
Hospital ............................................................................................................................................ 104
Figura 6.19. Dominio de aplicación antes de la operación ............................................................. 104
Figura 6.20. Dominio de aplicación después de la operación ........................................................ 105
Figura 6.21. visualización de clases organizadas según el dominio de aplicación Universidad .... 105




LISTA DE TABLAS
Tabla 1.1. Análisis comparativo del estado del arte.......................................................................... 16
Tabla 3.1 Descripción del caso de uso Operar con la ontología ...................................................... 26
Tabla 3.2 Descripción del caso de uso Elegir operación de altas, bajas y consultas ....................... 28
Tabla 3.3 Descripción del caso de uso Elegir dominio de aplicación ............................................... 31
Tabla 3.4 Descripción del caso de uso Enlazar con la ontología ..................................................... 32
Tabla 3.5 Descripción del caso de uso Estructuración ontológica .................................................... 35
Tabla 4.1. Recopilación de atributos pertinentes para perfilar a un usuario. .................................... 58
Tabla 6.1 Tareas a desarrollar a las pruebas ................................................................................... 87
Tabla 6.2. Caso de prueba: Lectura de la ontología ......................................................................... 95
Tabla 6.3 Caso de prueba: Escritura en ontología............................................................................ 96
Tabla 6.4 Caso de prueba: Eliminado de la ontología ...................................................................... 98
Tabla 6.5 Caso De Prueba: Estructuración De Individualizaciones ................................................ 100
Tabla 6.6 Caso De Prueba: Estructuración De Individualizaciones ................................................ 101
Tabla 6.7 Caso De Prueba: Estructuración De Individualizaciones ................................................ 103




LISTA DE GRÁFICOS
Grafico 1 Clases Accedidas Por El Grupo De Prueba .................................................................... 137
Grafico 2 Estadística de salida ........................................................................................................ 138




Rojas, Christian
                                                                                                                                                 x
GLOSARIO DE TÉRMINOS Y SIGLAS

IEEE               Institute of Electrical and Electronics Engineers (IEEE). Instituto de
                   Ingenieros Eléctricos y Electrónicos, una asociación técnico-profesional
                   mundial dedicada a la estandarización, entre otras cosas. Es la mayor
                   asociación internacional sin fines de lucro formada por profesionales de
                   las nuevas tecnologías, como ingenieros de telecomunicaciones,
                   ingenieros electrónicos, ingenieros en informática e Ingenieros en
                   computación.

URI                Un URI es una cadena corta de caracteres que identifica
                   inequívocamente un recurso (servicio, página, documento, dirección de
                   correo electrónico, enciclopedia, etc.). Normalmente estos recursos son
                   accesibles en una red o sistema.




Todas las definiciones se tomaron de [wiki09].




Rojas, Christian
                                                                                    xi
1. CAPÍTULO I. INTRODUCCIÓN


En este capítulo se presenta la descripción del problema que dio origen al presente
trabajo de tesis, su objetivo, justificación y beneficios. También los trabajos
relacionados. Y por último la organización del documento.
Introducción


1.1     INTRODUCCIÓN

Debido a la inexactitud de los sistemas y estudios actuales para perfilar o modelar a
un usuario real, se ha visto la necesidad de analizar las posibles categorizaciones del
mismo, basadas en áreas como la mercadotecnia, psicología, y computación. Esto
con la finalidad de obtener un conjunto de datos que permitan perfilar de un modo
eficiente a un usuario en cuestión.

Un simple documento legible por una persona y una lista de datos no son suficientes,
por lo que se necesita un entorno de diseño en algún lenguaje procesable como lo
puede ser (OWL/RDF) y alguna interfaz que permita la captura de estos datos.

Uno de los principales intereses de este proyecto es entonces obtener una ontología
que permita modelar a un usuario, así como sus costumbres, deficiencias, roles
cotidianos y características, y poblarla mediante alguna interfaz gráfica de un
ambiente de desarrollo para poder instanciarla y explotarla.

Debido a que la información obtenida del usuario será proporcionada de manera
explícita, es decir, directamente por el usuario, se investigarán e implementarán una
serie de técnicas para evitar en la medida de lo posible la intrusión excesiva de sus
datos, y por consiguiente obtener sólo los necesarios para un cierto dominio de
aplicación, sin menoscabar la pertinencia de los mismos.



1.2     DESCRIPCIÓN DEL PROBLEMA

Los perfiles de usuarios son una importante herramienta para personalizar
respuestas, entornos y evitar la intrusión excesiva de datos secundarios, así como
para minimizar costos por manejo de datos impertinentes.

En el mercado se pueden encontrar distintas categorizaciones de usuario [Geek09]
[Akt08] [Miller00], sin embargo aunque cada una de ellas comparte en gran medida su
conjunto de datos básico (nombre, edad, sexo, etc.), también poseen datos
especializados, que sólo poseerán aquellos usuarios que estén en el dominio de
aplicación de esa categorización.

Es entonces necesaria, una depuración de los datos de un usuario, dispuestos por
Web sociales, servicios independientes y estudios de áreas como la computación,
mercadotecnia y psicología. [Yu05] [Plans03] [Trajkova04] [Chan07] [Gauch04]
[Nivala03] Así como la adición de elementos considerados pertinentes. [Issste02]
[Cif00] [Icf08] [Disc08] [Croja08] [Gzlez08] [Disca08]

Rojas, Christian
                                                                                 2
Introducción

Un simple documento legible por una persona y una lista de datos no son suficientes,
por lo que se necesita un entorno de diseño en algún lenguaje procesable como lo
puede ser OWL/RDF (Ontology Web Language/Resource Description Framework)
[W3C04] y una interfaz amigable que permita la captura de estos datos.

La necesidad objetiva de este proyecto es entonces obtener una ontología que
cumpla con las características citadas, modelando a un usuario y tomando en cuenta
sus costumbres, deficiencias, roles cotidianos y características, y poblarla mediante
una interfaz gráfica para poder instanciarla y explotarla.

Debido a que la información para perfilar al usuario deberá ser directamente
introducida por el mismo, se investigaron e implementaron una serie de técnicas para
evitar, en la medida de lo posible, la intrusión excesiva de datos del usuario, y por
consiguiente obtener sólo los necesarios para un cierto dominio de aplicación, sin
menoscabar la pertinencia de los mismos.

Una de las problemáticas inmersas en el uso de ontologías es nombrar
semánticamente de forma unívoca a los elementos en la ontología, como lo son
atributos, clases e individuals (instancia de una clase); los cuales son representados
mediante una URI (Uniform Resource Indicator) siguiendo un mismo patrón. [W3C04]
[Protege09].

Esto ocasiona que no pueda ser identificado un elemento a partir de su URI, y en el
peor de los casos esta nomenclatura arbitraria ocasionará que se tengan que
implementar heurísticas más complejas para la recuperación de elementos a partir de
un conjunto de identificadores conceptuales unívocos.

Para resolver estos problemas, en esta tesis se propone una técnica para el
tratamiento de los identificadores conceptuales mediante la generación de un árbol de
abstracción de nombres a partir de un conjunto de reglas.



1.3     OBJETIVO

Obtener una ontología que modele a un usuario, tomando en cuenta sus costumbres,
deficiencias, roles cotidianos y características, y poblarla mediante una interfaz gráfica
para poder instanciarla y explotarla.




Rojas, Christian
                                                                                    3
Introducción

1.4     JUSTIFICACIÓN

Una gran cantidad de interpretaciones para categorizar a un usuario están disponibles
en el mercado, sin embargo, la mayoría de estas, contemplan una estructura
influenciada por el domino hacia el cual intencionalmente fueron creadas, es decir,
que los datos que consideran capturar son divergentes, debido a que cada
categorización especializa los datos a sus intereses.

Aunque muchas de estas categorizaciones son similares en sus datos básicos (datos
personales), existe la variabilidad en su formato, es decir, estos conjuntos de datos
están dispuestos en diferentes formas como por ejemplo: texto plano, bases de datos,
lenguaje procesable (OWL), etc.

En las siguientes figuras se muestran distintas apreciaciones para categorizar a un
usuario.

En la figura 1.1 se muestra una perspectiva de acuerdo a SOUPA + CoBrA [Chen04],
la cual toma en cuenta datos generales y algunos basados en contacto.


                        • Nombre
    Información         • Género
                        • Edad
    básica de           • Fecha de nacimiento
    perfil

                        • Correo
                        • Dirección                           Perspectiva
    Información         • Página personal
                                                              SOUPA +
                        • Número telefónico
    de contacto         • Mensajería instantanea              CoBrA
                        • Id. de chat



                        • Amigos
                        • Dependientes de organizacion
    Profesional
    y social



                   Figura 1.1 Perspectiva de SOUPA + CoBrA para modelar a un usuario.



Rojas, Christian
                                                                                        4
Introducción

En la figura 1.2, se aprecia una perspectiva de GEEK [Geek09], en la que se enfatiza
sobre las preferencias del usuario.




                             Figura 1.2 Perspectiva de GEEK para modelar a un usuario

La siguiente lista muestra los detalles de algunos elementos marcados con la letra
asignada en la figura anterior.

   A.   Pretty Good Privacy o PGP (privacidad bastante buena) es un programa
        desarrollado por Phil Zimmermann y cuya finalidad es proteger la información
        distribuida a través de Internet mediante el uso de criptografía de clave pública,
        así como facilitar la autenticación de documentos gracias a firmas digitales.
        Fuente: Wikipedia.
   B. Interesado en otros códigos GEEKS [Geek09], y habido de memorizarlos.

En la figura 1.3, se aprecia la perspectiva de AKTORS para perfilar a un usuario,
tomando en cuenta datos referentes a su ubicación y preferencias del mismo. [Akt08]



Rojas, Christian
                                                                                               5
Introducción




                   Figura 1.3 Perspectiva de AKTORS para modelar a un usuario


La siguiente lista muestra los detalles de algunos elementos marcados con la letra
asignada en la figura 1.3.

    A. Refiere a la ubicación geográfica según el uso horario (GMT)
    B. Referente al origen de la persona. (Lugar natal)
    C. Indica cómo le gusta a la persona ser llamada (parte de su nombre)
    D. Indica el título de la persona en sociedad preferido por la persona (Ing. Sr.
       Srita. Dr. Lic. etc.)
    E. Indica bajo qué tipo de contratación trabaja en su dependencia (Honorarios,
       Confianza, Base, Contrato, Sindicalizado, etc.)
    F. Indica el tipo de trabajo de la persona de entre una lista proporcionada por
       AKTORS (Administrador, diseñador multimedia, desarrollador, diseñador
       grafico, secretario, empleado educacional, soporte académico, interés en
       investigación, etc.)


En la figura 1.4 se muestra la perspectiva de Friend of a Friend (FOAF), para perfilar a
un usuario tomando en cuenta que estos datos están inclinados a cuestiones de
contacto debido a la naturaleza del proyecto en el que está inmerso, la cual toma
como base los microformatos [Miller00].



Rojas, Christian
                                                                                       6
Introducción




                   Figura 1.4 Perspectiva de FOAF para modelar a un usuario

La siguiente lista muestra los detalles de algunos elementos marcados con la letra
asignada en la figura 1.4.

A.   Organización fundada por un proyecto o persona
B.   Una imagen utilizada para representar algo en específico
C.   Documento que representa un tema principal
D.   Algo que fue hecho o fabricado por esta persona
E.   Algún agente que hizo algo
F.   Liga a las publicaciones de esta persona
G.   Una muestra en imagen de algo interesante.
Como se puede apreciar en las figuras anteriores, las categorizaciones para un
usuario son dedicadas a cierto dominio y en algunos casos de gran tamaño, estas se
justifican así mismas en su contenido, y son muy útiles para el contexto de
investigación, pero tienen el inconveniente de no ser del mismo formato de operación,
esto es, que el caso de GEEK, corresponde a un formato de texto plano, mientras que
las demás categorizaciones corresponden a ontologías en lenguaje procesable
(OWL), ocasionando una incompatibilidad en la explotación integral de al menos,
estas categorías.




Rojas, Christian
                                                                                     7
Introducción

1.5     BENEFICIOS

El principal beneficio que se obtuvo de esta tesis es una herramienta que permite
modelar usuarios basándose en el contexto propio, mediante el uso de ontologías en
lenguaje procesable, utilizando una interfaz gráfica. Las aplicaciones que pueden
realizarse con esta herramienta son:

        Captura personalizada de los datos del usuario. Una interfaz gráfica que
        permite la captura de datos pertinentes de acuerdo al usuario en cuestión,
        tomando en cuenta características, atributos, preferencias, y datos
        almacenados en el perfil.
        Un esquema ontológico basado en núcleo + extensiones. Este tipo de
        estructura, permitirá el crecimiento de la ontología dependiendo del contexto
        del usuario en cuestión.
        Explotación y reutilización de la ontología resultante. Debido a que el
        resultado (perfil de usuario) estará dispuesto en un formato liviano bajo un
        lenguaje procesable (OWL), permitirá a otras aplicaciones o servicios
        consumidores hacer uso de la información obtenida de manera más intuitiva y
        ordenada.
        Detallado de reglas para la obtención de un mapa ontológico. Un método
        que define un conjunto de reglas bajo un algoritmo específico, que permitirá
        estandarizar los identificadores conceptuales generados por la ontología y
        también permitirá presentar el resultado obtenido.
        De esta manera es posible la explotación de la ontología de una manera más
        efectiva ya que el mapa generado manualmente a partir de las reglas
        mencionadas hace innecesario el conocimiento de lenguaje de consultas para
        la exploración puntual de un elemento en la estructuración de la ontología.


1.6     TRABAJOS RELACIONADOS

En primera instancia se describe un estudio del área mercadotécnica, en el cual se
perfila a un usuario, denominado técnicamente como “comprador”. Posteriormente se
muestra un conjunto de artículos asociados al tema, y por último dos tesis (doctorales
y de maestría) involucradas por igual


1.6.1 Principios de marketing
Este trabajo representa un estudio basado en la mercadotecnia, el cual maneja el
concepto de cliente (sinónimo con usuario para fines del proyecto de tesis)

Aquí se definen dos conceptos muy distintos entre sí, pero que aparentan una
similitud, estos son: “Cliente” y “Consumidor”, pero contempla no sólo productos sino
servicios por igual en estas definiciones. Debido a esta separación de definiciones,
Rojas, Christian
                                                                                8
Introducción

consideran necesarias las categorizaciones de los comportamientos de estos dos
actores, fijando la atención en el comprador (cliente). Véase figura 1.5.




                      Figura 1.5 Mapa del comportamiento del comprador

Se especifican también los roles de compra que son diferentes métricas adoptadas
según la(s) rutina(s) en las que se desenvuelve el usuario, así como los tipos de
comportamiento del comprador y demás estudios relacionados con el tema.

Como se puede apreciar, el tipo de categorización realizada hacia el usuario
(denominado comprador) se realiza de modo vectorial, es decir, sin subclasificaciones
de datos. De modo que al no explayarse los datos internos de las categorías, solo los
grupos, dejan espacio a ambigüedades. [Plans03]


1.6.2 Improving Ontology-Based User Profiles
Intenta clasificar intereses del usuario, siendo su principal objetivo investigar técnicas
que implican la construcción de perfiles de usuario basados en ontologías. La idea es
construir perfiles sin interacción humana, esto es, de manera automática, con el
simple monitoreo de los hábitos del usuario.

Toma mucha importancia el definir los conceptos más importantes en la construcción
o categorización de estos usuarios al igual que involucran estos conceptos o
características de un modo jerárquico y cuestionan firmemente la cantidad de niveles
necesarios para categorizar al usuario.

Rojas, Christian
                                                                                    9
Introducción


Sin embargo las principales problemáticas se basan en la elección de los elementos
pertinentes para la elaboración de dicho perfil y cómo proyectar estos datos en el
mismo, ya que se explayan dos técnicas para obtener estos datos, las cuales son
implícitas (observación y exploración de su actividad) y explicitas (preguntas directas).
Direccionando la metodología de este proyecto hacia la explotación implícita.

Referente a la alimentación del perfil, esta se lleva a cabo de manera jerárquica y no
vectorial, esto es, aplicando niveles de abstracción con cierta ponderación.
[Trajkova04]


1.6.3 Learning implicit user interest hierarchy for context in
      personalization
El contenido de este documento presenta una visión de la categorización de un
usuario a partir de sus intereses, analizada a partir de la navegación Web del mismo.

Utilizan un método de estructuración basado en jerarquías para la creación de un
perfil, tomando los niveles de la misma como niveles de abstracción de los conceptos,
de modo que si un usuario en diferentes consultas o navegaciones toca temáticas
muy distintas entre sí, puede darse el caso que en un nivel de abstracción no tengan
relación, sin embargo, si se eleva el nivel de abstracción de esas navegaciones, se
hace que pertenezcan al mismo concepto.

Este artículo utiliza para la generación de un perfil de usuario una estructura
jerárquica, denominada por ellos como: UIH (jerarquía de intereses del usuario por
sus siglas en inglés).

Se propone que la alimentación de las jerarquías y de los conceptos inmersos en ellas
sean por un medio automático, esto es, dinámicamente, por medio de la navegación
Web del usuario, usando la lógica de que los intereses se contemplan como pasivos
cuando el nivel de abstracción es más alto y más activos cuando el nivel de
abstracción es más bajo, es decir, de más genérico a más específico.

La alimentación de la jerarquía utilizada es dinámica al defender el hecho de que los
perfiles son constantemente actualizados por el usuario, y no es práctico el definir un
perfil como estático ya sea en su contenido o incluso en su estructura.

Según este artículo, la manipulación de los intereses de un modo jerárquico es más
precisa que una realizada de un modo vectorial o lineal, sobre todo por cuestiones
ontológicas. [Chan07]




Rojas, Christian
                                                                                   10
Introducción

1.6.4 Need for Context-Aware Topographic Maps in Mobile Devices
Este trabajo se especializa en servicios que facilitan mapas cartográficos a usuarios, y
uno de sus principales factores a tomar en cuenta es la capacidad que se tiene o no
para darle al usuario algo en específico que cumpla con sus expectativas, todo esto
con el fin de hacer los productos más usables y comerciales.

Los mapas no son un medio de comunicación, pero si, un medio de aproximación
para localización de detalles vía espacial, (esto debido a que aplican ontologías para
la solución de los mismos) y por lo tanto la exactitud de estos debe de ser por demás
precisa, tomando en cuenta todos los detalles que conlleva.

Para la eficiente provisión de los mapas solicitados se emplean las siguientes
categorías de acuerdo al momento de la solicitud de los mismos:

Contexto de cómputo
Contexto del usuario: Refiere a habilidades físicas, habilidades perceptuales y
                      cognitivas, y diferentes personalidades del usuario en cuestión.
Contexto Físico
Contexto de tiempo.
Contexto de historia

Sin embargo, debido a que el destino final de estos mapas son los dispositivos
móviles, estos términos cambian con base en adaptabilidad. [Nivala03]


1.6.5 Matching User's Semantics with Data Semantics in Location-Based
      Services
Relación de semántica de usuarios con semántica de datos en LBS

Propone cierta flexibilidad a los servicios de información para que puedan entender
correctamente lo que está siendo solicitado por el usuario, y como seleccionar la
información que esa relevante para esta solicitud, tomando en cuenta la gestión, el
diseño y los factores humanos. En este artículo se definen los siguientes conceptos:


1.6.5.1 Perfil de usuario
Son dinámicos. Dos usuarios en las mismas condiciones, en la misma ubicación y
haciendo la misma petición pueden tener resultados distintos (polimorfismo) de
acuerdo a su perfil.

Se definen también los perfiles de usuario de tipo estático (explicito), y de tipo
dinámico (implícito), es decir, alimentados por preguntas directas acerca de sus
características, hábitos o comportamiento, y alimentada por el análisis constante de
su comportamiento mediante su navegación u otro método, respectivamente.
Rojas, Christian
                                                                                  11
Introducción

1.6.5.2 Perfiles de datos
Los perfiles de datos describen servicios de datos. Del mismo modo en que un
esquema describe una base de datos, un perfil de datos proporciona información
acerca de los datos provistos por un servicio. [Yu05]


1.6.6 Exploiting Hierarchical Relationships in Conceptual search
Debido al constante crecimiento de sitios Web, la pertinencia de muchas de las
respuestas arrojadas hacia un usuario que los consulta, dependen de una cierta
personalización, la cual, no existe al momento, porque a pesar de que los
mecanismos son más novedosos en cuestiones de navegación y búsqueda, los
principios son los mismos, utilizando palabras clave para hacer sus búsquedas.

El problema en la actualidad es que si dos usuarios realizan una consulta utilizando la
misma palabra de búsqueda, el motor de búsqueda arroja como resultado el mismo
conjunto de respuestas, siendo que es muy probable que cada uno de ellos se haya
referido a un contexto distinto. [Gauch04]

La herramienta que ellos desarrollaron denominada KeyConcept toma en cuenta tanto
estas palabras clave como los conceptos o temas relacionados de su consulta directa
y automáticamente de Open Directory. [Odp08]

Este artículo entonces, utiliza una estructuración de tipo jerárquica para poder realizar
la alimentación de una ontología adoptando los beneficios de este tipo de
estructuración en contraste con una de tipo vectorial, además de que toma en cuenta
un mejoramiento iterativo, refinándose la jerarquía automáticamente.


1.6.7 SOUPA: Standard ontology for ubiquitous and pervasive
      applications
En este artículo se explica a detalle el SOUPA, ésta ontología se           diseñó para
modelar y soportar aplicaciones de cómputo pervasivo.

Esta ontología está definida en lenguaje OWL, la cual incluye un componente modular
de vocabulario para representar agentes inteligentes asociados a intenciones, deseos,
creencias, perfiles de usuario, información de contexto, acciones y políticas de
seguridad y privacidad, y además se explica cómo puede ser extendida y usada para
soportar aplicaciones de CoBrA [Chen2005] para la construcción de cuartos
inteligentes (habitaciones con sensores de radio frecuencia); y MoGATU, un gestor de
datos peer-to-peer para ambientes pervasivos. [Chen04]

A continuación se definen los componentes de las ontologías integrantes de SOUPA:



Rojas, Christian
                                                                                   12
Introducción




                          Figura 1.6 Ontologías integrantes de SOUPA


1.6.7.1 SOUPA Core.
Define el vocabulario genérico y universal para la construcción de aplicaciones de
computo pervasivas. Este conjunto de ontologías consiste en vocabularios para
expresar conceptos que son asociados con personas, agentes, intenciones, deseos y
creencias; acciones políticas, tiempo, espacio y eventos. Véase figura 1.6
1.6.7.2 SOUPA Extensión
Se extiende de SOUPA Core. Define vocabulario adicional para el soporte de tipos
específicos de aplicaciones y ejemplos provenientes de la definición de nuevas
extensiones de ontología. figura arriba

Estas ontologías son definidas con dos propósitos:
o Definir y extender el conjunto de vocabularios para soportar tipos específicos de
   dominios y aplicaciones pervasivas.
o Demostrar cómo definir nuevas ontologías por medio de la extensión de las
   ontologías SOUPA Core.


1.6.8 A MDD strategy for developing context-aware pervasive systems
Esta tesis propone un enfoque metodológico al desarrollo de sistemas pervasivos
conscientes de los contextos basados en ontologías y normas del MDD (Model-Driven
Development), y ofrece las siguientes contribuciones:

    1. Un conjunto de modelos para la captura de datos del contexto en tiempo de
       modelado.
    2. Una ontología de contexto y un repositorio contextual OWL basado en esta
       ontología para capturar datos del contexto en tiempo de ejecución.

Rojas, Christian
                                                                              13
Introducción

      3. Un framework para almacenamiento automático, gestión y procesamiento de
         información del contexto en tiempo de ejecución.
      4. Una infraestructura para la adaptación del sistema pervasivo con la finalidad de
         mejorar la vida del usuario

Estos sistemas no solo deben capturar información del contexto, también deben
entenderlo y adaptar su comportamiento acorde a éste a partir de las preferencias del
usuario. En esta tesis se define una ontología de contexto y un repositorio contextual
OWL como un sistema capaz de almacenar en una máquina de lenguaje procesable
tanto la información contextual actual como la información contextual histórica.

Este framework automáticamente actualiza el repositorio contextual OWL de acuerdo
a los cambios producidos en la información contextual al tiempo de ejecución. Para
poder gestionar la localización del usuario se requiere que cada uno de ellos tenga un
dispositivo de localización (por ejemplo, un brazalete de identificación por radio
frecuencia) para ser identificados por los propios sensores. [Serral07]


1.6.9 Categorizaciones independientes de un Usuario.
1.6.9.1 GEEK
Un geek es una persona hábil para la informática, la electrónica y la tecnología, y
además tiene interés por los gadgets1 y accesorios digitales y/o novedosos.

Tanta fama ha cobrado este término que aquellos que se consideran GEEKS, han
desarrollado un código para poder distinguirse de entre las personas que no lo son.
Este código carente de sentido a simple vista contiene caracteres que identifican y
describen no sólo los conocimientos de la persona sobre los temas arriba mostrados,
sino también, de ciertas características físicas, de intereses socio-político-
económicos, de entretenimiento y más.

Cabe mencionar que cada una de las categorías y de las opciones operadas por esta
categorización tiene asignado un símbolo univoco (conjunto de caracteres carentes de
sentido en un contexto habitual), y formando una concatenación de acuerdo al orden
de petición, es como se forma el código geek, cuyo análisis y ejemplo cae fuera de los
intereses de este documento.




1. Gadget (Gizmo)
Obtenido de: http://es.wikipedia.org/wiki/Gadget ; Ultima consulta: Julio 2009
Es un dispositivo que tiene un propósito y una función específica, generalmente de pequeñas proporciones, práctico y a la vez novedoso. Los gadgets suelen
tener un diseño más ingenioso que el de la tecnología corriente.



Rojas, Christian
                                                                                                                                                 14
Introducción

1.6.9.2 AKTORS
AKTORS es una ontología creada por AKT (Advanced Kwnoledge Technologies), el
cual es fundado en EPSCR (Engineering and Physical Sciences Research Council)
el cual tienen como objetivo desarrollar y extender un rango de tecnologías
provenientes de métodos y servicios integrados de captura, modelado, publicación,
rehúso y gestión del conocimiento. [Akt08]

Ellos han creado una ontología para modelar a un usuario tomando en cuenta en gran
medida su ubicación física y los datos de geolocalización.


1.6.9.3 Amigo de un amigo (FOAF: FRIEND Of A Friend)
FOAF es un proyecto para la Web semántica que se inició en el año 2000, utilizando
tecnologías desarrolladas dentro de la Web semántica para describir relaciones
mediante RDF que puedan ser procesadas fácilmente por máquinas.

La idea detrás de FOAF es simple: la Web trata de realizar todas las conexiones entre
las cosas. FOAF proporciona algunos mecanismos básicos para que nos ayuden a
decirle a la agentes sobre las conexiones entre las cosas que interesan a los usuarios
finales.

FOAF es una tecnología sencilla que facilita el compartir y utilizar la información sobre
las personas y sus actividades (por ejemplo, fotos, calendarios, diarios), para
transferir información entre los sitios Web, y para extender automáticamente, fusionar
y re-usar en línea. [Miller00]

Para representar el lenguaje FOAF se ha descrito una especificación con diccionarios
de nombres, propiedades y clases usando tecnología RDF de W3C.

En la tabla 1, se muestra el análisis sintético de cada uno de los elementos
estudiados anteriormente, reflejando los parámetros más importantes.




Rojas, Christian
                                                                                   15
Introducción

                                 Tabla 1.1. Análisis comparativo del estado del arte.




                                                                                                    Uso en ambiente
                                                 Roles de Usuario




                                                                                                                                                        procesable OWL
                                                                                                                      Retroalimentación
                                                                                                                      o autoaprendizaje
                                                                                   Uso de agentes
                                                                    ponderancias
                                  Arquitectura
                   Exploración




                                                                                                                                          Seguridad /
                                                                                                                                          Privacidad

                                                                                                                                                        Lenguaje
                                                                                                    domótico
Nombre




                                                                    Uso de
[PLANS03]          Ninguna        Ninguna

[TRAJKOVA04]       Implícita     Jerárquica

[CHAN07]           Implícita      Jerárquica

[GAUCH04]          Implícita      Jerárquica

[SARJAKOSKI03]     N/E            Lineal
                   Explicita /
[YU05]                            Ninguno
                   Implícita
                                  Núcleo +
[CHEN05]           Explicita
                                  Extensión
                                  Núcleo +
[CHEN04]           Explicita
                                  Extensión
[SERRAL07]         Explicita      Lineal

[GEEK08]           Explicita      Lineal

[AKTORS08]         Explicita      Jerárquica

[MILLER00]         Explicita      Lineal

                                  Núcleo +
Nuestro Enfoque    Explicita
                                  Extensión


         N/E= No Especificado




Rojas, Christian
                                                                                                                                                                 16
Introducción

1.7     ALCANCE DEL PROYECTO DE TESIS

El proyecto de tesis que se dispone en este documento, se conforma de acuerdo a 5
puntos importantes:

    Los perfiles generados serán definidos en un lenguaje procesable (OWL).
    Los perfiles generados responderán a un árbol de abstracción de nombres para su
    explotación posterior (Véase 3.1.2)
    La interfaz gráfica resultante tendrá módulos dinámicos que responderán de
    acuerdo al contexto de los datos capturados al momento de la operación de dichos
    módulos.
    La ontología resultante en cada perfil corresponderá en su tamaño de acuerdo
    con los datos capturados por el usuario correspondiente, conteniendo el núcleo
    más las extensiones pertinentes y acordes a cada perfil.
    La ontología resultante de cada perfil tendrá una correspondencia directa en las
    clases y datos contenidos de acuerdo a un cierto dominio de aplicación. (Véase
    3.1.2.3.1)



1.8     ORGANIZACIÓN DEL DOCUMENTO

Este documento de tesis ésta estructurado de la siguiente manera: En el capítulo 2 se
presentan los conceptos sobre las tecnologías involucradas en el desarrollo de la
tesis. En el capítulo 3, se muestran los casos de uso, escenarios, diagramas de
actividad, clases y secuencia que representan el análisis y diseño del proyecto
realizado. En el capítulo 4, se detalla el procedimiento seguido para la obtención del
prototipo. En el capítulo 5, se explica el uso de la aplicación así como segmentos de
código importantes. En el capítulo 6, se presentan los resultados de las pruebas. En el
capítulo 7, se presentan las aportaciones de la tesis, los trabajos futuros y las
publicaciones realizadas durante el desarrollo de la tesis.




Rojas, Christian
                                                                                 17
Introducción




Rojas, Christian
                          18
CAPÍTULO II. MARCO TEÓRICO

En este capítulo se presenta la teoría relacionada con el tema semántico aplicado en
éste trabajo de tesis. Se inicia describiendo los conceptos relacionados con el
proyecto en el ámbito semántico y continúa con los conceptos generales que se
utilizaran en el transcurso de este documento.
Marco teórico


2.1     CONCEPTOS SEMÁNTICOS
2.1.1 OWL
El Lenguaje de Ontologías Web (OWL) está diseñado para ser usado en aplicaciones
que necesitan procesar el contenido de la información en lugar de únicamente
representar información para los humanos. OWL facilita un mecanismo de
interoperabilidad de contenido Web más eficiente que los mecanismos admitidos por
XML, RDF, y esquema RDF (RDF-S) proporcionando vocabulario adicional junto con
una semántica formal. OWL tiene tres sub-lenguajes, con un nivel de expresividad
creciente: OWL Lite, OWL DL, y OWL Full.

La Web semántica se basará en la capacidad de XML para definir esquemas de
etiquetas a medida y en la aproximación flexible de RDF para representar datos. El
primer nivel requerido por encima de RDF para la Web semántica es un lenguaje de
ontologías que pueda describir formalmente el significado de la terminología usada en
los documentos Web.

OWL añade más vocabulario para describir propiedades y clases: entre otros,
relaciones entre clases (por ejemplo, desunión), cardinalidad (por ejemplo, "uno
exacto"), igualdad, más tipos de propiedades, características de propiedades (por
ejemplo, simetría), y clases enumeradas. [OWL09]


2.1.2 RDF
El fundamento o base de RDF es un modelo para representar propiedades
designadas y valores de propiedades. El modelo RDF se basa en principios
perfectamente establecidos de varias comunidades de representación de datos.

Las propiedades RDF pueden recordar a atributos de recursos y en este sentido
corresponden con los tradicionales pares de atributo-valor. Las propiedades RDF
representan también la relación entre recursos y por lo tanto, un modelo RDF puede
parecer un diagrama entidad-relación. (De forma más precisa, los esquemas RDF que
son objetos específicos de la categoría del modelo de datos RDF) son diagramas ER
(Entidad Relación). En la terminología del diseño orientado a objetos, los recursos
corresponden con objetos y las propiedades corresponden con objetos específicos y
variables de una categoría.

El modelo de datos de RDF es una forma de sintaxis-neutral para representar
expresiones RDF. La representación del modelo de datos se usa para evaluar la
equivalencia en significado. Dos expresiones RDF son equivalentes si y sólo si sus
representaciones del modelo de datos son las mismas. Esta definición de
equivalencia permite algunas variaciones sintácticas en expresiones sin alterar el
significado.

El modelo de datos básico consiste en tres tipos de objetos:
Rojas, Christian
                                                                                20
Marco teórico


Recursos        Todas las cosas descritas por expresiones RDF se denominan
                recursos. Un recursos puede ser una página Web completa; tal
                como el documento HTML "http://www.w3.org/Overview.html" por
                ejemplo. Un recurso puede ser una parte de una página Web. Un
                recurso puede ser también una colección completa de páginas o un
                objeto que no sea directamente accesible vía Web.
Propiedades     Una propiedad es un aspecto específico, característica, atributo, o
                relación utilizado para describir un recurso. Cada propiedad tiene un
                significado específico, define sus valores permitidos, los tipos de
                recursos que puede describir, y sus relaciones con otras
                propiedades.
Sentencias      Un recurso específico junto con una propiedad denominada, más el
[declaraciones, valor de dicha propiedad para ese recurso es una sentencia RDF
enunciados]     [RDF statement]. Estas tres partes individuales de una sentencia se
                denominan, respectivamente, sujeto, predicado y objeto. El objeto de
                una sentencia (es decir, el valor de la propiedad) puede ser otro
                recurso o pude ser un literal; es decir, un recurso (especificado por
                un URI) o una cadena simple de caracteres [string] u otros tipos de
                datos primitivos definidos por XML. [RDF09]


2.1.3 W3C
Es un consorcio que tiene como visión la de guiar la Web a su potencialidad máxima a
modo de foro de información, comercio, comunicación y conocimiento colectivo,
mediante tecnologías inter-operativas, especificaciones, líneas maestras, software y
herramientas. [W3C04]


2.1.4 Ontología
Existen varias definiciones sobre éste concepto, entre ellas se encuentran:

Una ontología constituye "Una especificación formal y explicita de una
conceptualización compartida”. En esta definición, convertida ya en estándar,
conceptualización se refiere a un modelo abstracto de algún fenómeno del mundo del
que se identifican los conceptos que son relevantes; hace referencia a la necesidad
de especificar de forma consciente los distintos conceptos que conforman una
ontología. [Gruber]

“Una ontología es una base de datos que describe los conceptos en el mundo y
algunos dominios, algunas de sus propiedades y como los conceptos se relacionan
unos con otros”. [Weigand]




Rojas, Christian
                                                                                21
Marco teórico

Ontología describe una cierta realidad con un vocabulario específico, usando un
conjunto de premisas de acuerdo con un sentido intencional de palabras del
vocabulario. [Guarino]



2.2     CONCEPTOS GENERALES
2.2.1 XSD
XML Schema es un lenguaje de esquema utilizado para describir la estructura y las
restricciones de los contenidos de los documentos XML de una forma muy precisa,
más allá de las normas sintácticas impuestas por el propio lenguaje XML. Se consigue
así una percepción del tipo de documento con un nivel alto de abstracción. Fue
desarrollado por el World Wide Web Consortium (W3C) y alcanzó el nivel de
recomendación en mayo de 2001. [XSD09]




Rojas, Christian
                                                                               22
3. CAPÍTULO III. ANÁLISIS Y DISEÑO


En este capítulo se presentan los diagramas de caso de uso, la definición de escenarios y
los diagramas de actividad que corresponden a la fase de análisis. Así mismo se presenta
los diagramas de clase y de secuencia correspondiente a la etapa del diseño.
Análisis y diseño


3.1     ANÁLISIS
La figura 3.1 muestra el proceso de trabajo del proyecto, tomando en cuenta
bloques de manera abstracta.




                   Figura 3.1 Diagrama de bloques del proceso general del proyecto

Como se puede apreciar en la figura 3.1, el proceso de desarrollo se dividió en dos
segmentos, los referentes al entorno gráfico de la aplicación denominado “Interfaz”
y el referente a la programación inmersa, denominado “Operación con clases”, las
cuales se encuentran unidas mediante código.

A continuación se presentan los diagramas de caso de uso, la definición de
escenarios y los diagramas de actividad que corresponden a la fase de análisis del
proyecto, respectivo a la sección de “operación con clases” de acuerdo a figura
3.1. Y posteriormente se mostraran las partes importantes de análisis de la
sección de “Interfaz” de acuerdo a figura 3.1.

Rojas, Christian
                                                                                     24
Análisis y diseño

3.1.1 Análisis de operación con clases
En la figura 3.2 se muestra el diagrama general de casos de uso del proyecto y se
muestran las funciones principales que ofrece.




                          Figura 3.2 Diagrama general de casos de uso

En la figura 3.2 el usuario accede o crea su ontología previa autenticación y realiza
modificaciones en ella mediante el uso de la interfaz. Una vez que se ha
autenticado y definido si se creará, modificará o eliminará su ontología, el usuario
elegirá cual será el dominio de la aplicación hacia la cual se inclinaran los datos de
la captura.

Este caso de uso contempla el paquete:

mx.edu.cenidet.userontology.axiomsInference y mx.edu.cenidet.userontology.front




Rojas, Christian
                                                                                    25
Análisis y diseño




                        Figura 3.3 Diagrama de casos de uso de Operar con la ontología

Como se puede apreciar en la figura 3.3, se introdujeron dos actores más,
denominados “API de conexión” referida a OWL API la cual fue únicamente
consumida por el proyecto y como su nombre lo indica, tiene como funcionalidad
la de ofrecer un repositorio hábil para el manejo de una ontología definida; y
“Ontología” la cual es operada por la aplicación o creada si es que no existe, en la
cual recaerán todas las operaciones realizadas en el proyecto.


                         Tabla 3.1 Descripción del caso de uso Operar con la ontología
               ID: CU-1    El diagrama de actividades que incluye el escenario de éxito
                           y los escenarios de fracaso se muestra en la figura 3.4
Nombre         del Operar con la ontología
caso de uso
Actores                 Usuario, API de conexión, Ontología
Descripción             Permite al usuario realizar operaciones sobre la ontología, como lo son
                        agregar, modificar y eliminar tanto de manera global como detallada.
Precondiciones          Requisitos mínimos del sistema comunes para cualquier aplicación.
Poscondiciones          Se obtendrá la ontología del usuario para poder ser reutilizada
Escenario   de             1. El usuario ingresa al sistema para crear una nueva ontología
éxito 1                    2. El proceso de autenticación es univoco y se comienza la captura de
                               datos
                           3. Se elige el dominio de la aplicación para la captura
                           4. La ontología es creada
Escenario          de      1. El usuario ingresa al sistema para modificar su ontología
éxito 2                    2. El proceso de autenticación es correcto
                           3. Se realizan las modificaciones pertinentes apropiadamente
                           4. La ontología es guardada
Escenario          de      1. El usuario ingresa al sistema para borrar su ontología
éxito 3                    2. El proceso de autenticación es correcto

Rojas, Christian
                                                                                          26
Análisis y diseño

                   3. Se realiza el borrado de la ontología
Escenario   de     1. El usuario ingresa al sistema para realizar un agregado,
fracaso 1              modificación o borrado de su ontología.
                   2. El proceso de autenticación no es univoco y se lanza una
                       excepción controlada.
Escenario   de     1. El usuario ingresa al sistema para realizar un agregado,
fracaso 1              modificación o borrado de su ontología.
                   2. El proceso de autenticación es correcto.
                   3. El usuario elije incorrectamente el dominio de la aplicación
                   4. Es necesario reiniciar el proceso de elección.
Incluye        CU-1.1 Elegir operación de altas, bajas y consultas, CU-1.2 Elegir dominio
               de aplicación, CU-1.1 Enlazar con ontología
Suposiciones   Se supone que la aplicación importa la librería en donde se encuentra la
               API




Rojas, Christian
                                                                                27
Análisis y diseño

 act CU-1 Operar con la ontología



                                                                          Existent e
                                                                                           Autenticar                         Enlazar con ontología
                                                                                                                                      (API)



                                                                                                        Razonador
                                Nuevo
         Validar usuario y
                                                Elegir tipo de usuario
         passw ord nuev o


                                                                                                                                                  No
                                                                                                                     Ontología consistent e            Cancelar
                                                                                                                                                       peticiones
                                                                                  Si


         Elegir dominio de
            aplicacion                                                    Autenticacion correcta          Si
                                                                                                                Elegir operación a
                                                                                                                    ontología



                                               Informar Ex cepción




                                                  Accesar a clases




                                                   Extensibilidad y
                                                     Deducción




                                                Enlazar con ontología
                                                        (API)




                                                    Razonador
                                                                             Cancelar peticiones y
                                                                            Rollback a ej ecuciones
                                                                                   truncas                 No

                                    Si                                                                                 Informar Ex cepción
         Operar en Ontología                     Ontología consistent e




                        Figura 3.4 Diagrama de actividad del caso de uso CU-1 Operar con la ontología

A continuación se muestran las tablas de descripción de los casos de uso para
cada caso de uso dependiente de Operar con la ontología, así como su
correspondiente diagrama de actividad.

                     Tabla 3.2 Descripción del caso de uso Elegir operación de altas, bajas y consultas
                             ID: CU-1.1     El diagrama de actividades que incluye el escenario de éxito y
                                            los escenarios de fracaso se muestra en la figura 3.5.
Nombre                       del Elegir operación de altas, bajas y consultas
caso de uso
Actores                                  Elegir asunto de conexión.
Descripción                              Permitirá al usuario elegir cuál será el motivo de acceso a la ontología para
                                         que el sistema utilice la interfaz adecuada para dicha acción.

Rojas, Christian
                                                                                                                                                       28
Análisis y diseño

Precondiciones             1. El usuario deberá haber pasado el proceso de autenticación
                              correctamente.
                           2. Deberá haberse seleccionado ya la ontología a utilizar ya sea nueva
                              o existente.
Poscondiciones             1. El usuario accederá a la interfaz pre programada para la operación
                              con las clases.
Escenario          de      1. El usuario se autentica correctamente.
éxito 1                    2. El usuario elige la operación a realizar.
                           3. La ontología es creada, modificada o eliminada correctamente.
                           4. La ontología es guardada.
Escenario          de      1. El usuario ingresa al sistema para realizar un agregado, modificación
fracaso 1                     o borrado de su ontología.
                           2. La ontología es inconsistente por cuestiones ajenas a la aplicación y
                              es detectada por el razonador.
                           3. Actuación del manejador de la excepción generada.
Incluye
Suposiciones            Se supone que la aplicación importa la librería en donde se encuentra la API




Rojas, Christian
                                                                                         29
Análisis y diseño

 act CU-1.1 Eleccion operacion con ontología




                                                                                                             Seleccionar operacion a
                                                                                                                    ontología




                                                                                                             Enlazar con ontología
                                                                                                                     (API)




                                                                                                                  Raz onador




                                                                                                              Ontología consistent e
                                                                                                                                         No
                                                                                                                                              Informar Ex cepción



                                                                                                Si




                                                                         Operación                             Leer y nav egar en la
                                                                                                                     ontología


                                                   Modficar

                                            Mostrar interfaz apropiada                    Eliminar

                                                                                              Eliminar obj etos

                                            Adaptar extensibilidad y
                                                  deducción                                 Eliminar indiv iduals




                                                                 Enlazar con ontología
                                                                         (API)




                                                                       Raz onador




                                                                                                        Si
                                                                 Ontología consistent e
                                       No
                                                                                                             Operar en ontología


                          Informar ex cepción


       Manej ar excepción




   Figura 3.5 Diagrama de actividad del caso de uso Elegir operación de altas, bajas y consultas




Rojas, Christian
                                                                                                                                                        30
Análisis y diseño

                   Tabla 3.3 Descripción del caso de uso Elegir dominio de aplicación
               ID: CU-1.2    El diagrama de actividades que incluye el escenario de éxito y
                             los escenarios de fracaso se muestra en la figura 3.6
Nombre         del Elegir dominio de aplicación
caso de uso
Actores        Elegir modo de captura
Descripción    Permitirá al usuario elegir cuál será la inclinación del proceso de captura,
               para que el sistema haga distinguir visualmente cuales son los campos
               recomendados y los optativos para el usuario de este dominio.
Precondiciones    1. El usuario deberá haber pasado el proceso de autenticación
                       correctamente.
                  2. Deberá haberse seleccionado la opción de una ontología nueva.
Poscondiciones    1. Las clases disponibles para la captura estarán distribuidas de
                       acuerdo al dominio de la aplicación elegido.
Escenario   de    1. El usuario se autentica correctamente.
éxito 1           2. El usuario elige crear una ontología, y elige el dominio de la
                       aplicación.
                  3. El usuario captura los datos en una o varias corridas de la aplicación.
Escenario   de    1. El usuario se autentica correctamente.
fracaso 1         2. El usuario elige crear una ontología, y elige el dominio de la
                       aplicación.
                  3. Debido a un error en la captura, la ontología se vuelve inconsistente y
                       es notada por el razonador.
                  4. Se lanza una excepción
Incluye
Suposiciones   Se supone que la aplicación importa la librería en donde se encuentra la API




Rojas, Christian
                                                                                        31
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL
Generador semiautomático de perfiles de usuario mediante OWL

Más contenido relacionado

La actualidad más candente

Dimensiones Sociales de los Problemas Ambientales que inciden en los procesos...
Dimensiones Sociales de los Problemas Ambientales que inciden en los procesos...Dimensiones Sociales de los Problemas Ambientales que inciden en los procesos...
Dimensiones Sociales de los Problemas Ambientales que inciden en los procesos...Silvana Ciña
 
Entendiendo redd a través de los pueblos indígenas
Entendiendo redd a través de los pueblos indígenasEntendiendo redd a través de los pueblos indígenas
Entendiendo redd a través de los pueblos indígenasLarcery Díaz Barrantes
 
Proyecto integrador de saberes 4
Proyecto integrador de saberes 4Proyecto integrador de saberes 4
Proyecto integrador de saberes 4nicole vera
 
Microcontroladores: Construcción de un tablero electrónico para demostración ...
Microcontroladores: Construcción de un tablero electrónico para demostración ...Microcontroladores: Construcción de un tablero electrónico para demostración ...
Microcontroladores: Construcción de un tablero electrónico para demostración ...SANTIAGO PABLO ALBERTO
 

La actualidad más candente (9)

08 0300 cs
08 0300 cs08 0300 cs
08 0300 cs
 
Proyecto tinoco
Proyecto tinocoProyecto tinoco
Proyecto tinoco
 
Filosofia [trabajo final]
Filosofia [trabajo final]Filosofia [trabajo final]
Filosofia [trabajo final]
 
Dimensiones Sociales de los Problemas Ambientales que inciden en los procesos...
Dimensiones Sociales de los Problemas Ambientales que inciden en los procesos...Dimensiones Sociales de los Problemas Ambientales que inciden en los procesos...
Dimensiones Sociales de los Problemas Ambientales que inciden en los procesos...
 
Entendiendo redd a través de los pueblos indígenas
Entendiendo redd a través de los pueblos indígenasEntendiendo redd a través de los pueblos indígenas
Entendiendo redd a través de los pueblos indígenas
 
Trabajo
TrabajoTrabajo
Trabajo
 
Pascual pascual miguel_2009
Pascual pascual miguel_2009Pascual pascual miguel_2009
Pascual pascual miguel_2009
 
Proyecto integrador de saberes 4
Proyecto integrador de saberes 4Proyecto integrador de saberes 4
Proyecto integrador de saberes 4
 
Microcontroladores: Construcción de un tablero electrónico para demostración ...
Microcontroladores: Construcción de un tablero electrónico para demostración ...Microcontroladores: Construcción de un tablero electrónico para demostración ...
Microcontroladores: Construcción de un tablero electrónico para demostración ...
 

Similar a Generador semiautomático de perfiles de usuario mediante OWL

Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...Gabriel Gonzalez Serna
 
Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...
Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...
Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...Gabriel Gonzalez Serna
 
Personalización de contenidos Web del dominio de egobierno mediante ontologías
Personalización de contenidos Web del dominio de egobierno mediante ontologíasPersonalización de contenidos Web del dominio de egobierno mediante ontologías
Personalización de contenidos Web del dominio de egobierno mediante ontologíasGabriel Gonzalez Serna
 
Sistema de soporte de decisiones para la gestión académica de la ULADECH
Sistema de soporte de decisiones para la gestión académica de la ULADECHSistema de soporte de decisiones para la gestión académica de la ULADECH
Sistema de soporte de decisiones para la gestión académica de la ULADECHJulio César Álvarez Reyes
 
Redes Neuronales Artificiales y Estadística
Redes Neuronales Artificiales y EstadísticaRedes Neuronales Artificiales y Estadística
Redes Neuronales Artificiales y EstadísticaBanco Santander Chile
 
Servicios de localización conscientes del contexto aplicando perfiles de movi...
Servicios de localización conscientes del contexto aplicando perfiles de movi...Servicios de localización conscientes del contexto aplicando perfiles de movi...
Servicios de localización conscientes del contexto aplicando perfiles de movi...Gabriel Gonzalez Serna
 
Plan estrategico de educacion ambiental
Plan estrategico de educacion ambientalPlan estrategico de educacion ambiental
Plan estrategico de educacion ambientalJose Pineda
 
Servicios de Recomendación Contextual para Instituciones de Educación Superio...
Servicios de Recomendación Contextual para Instituciones de Educación Superio...Servicios de Recomendación Contextual para Instituciones de Educación Superio...
Servicios de Recomendación Contextual para Instituciones de Educación Superio...Gabriel Gonzalez Serna
 
IIDH (2018) Herramientas Defensa Territorio.pdf
IIDH (2018) Herramientas Defensa Territorio.pdfIIDH (2018) Herramientas Defensa Territorio.pdf
IIDH (2018) Herramientas Defensa Territorio.pdfClaudiaLTern
 
SISTEMA DE INFORMACIÓN PARA EL MANTENIMIENTO DEL PROCESO DE CARACTERIZACIÓN B...
SISTEMA DE INFORMACIÓN PARA EL MANTENIMIENTO DEL PROCESO DE CARACTERIZACIÓN B...SISTEMA DE INFORMACIÓN PARA EL MANTENIMIENTO DEL PROCESO DE CARACTERIZACIÓN B...
SISTEMA DE INFORMACIÓN PARA EL MANTENIMIENTO DEL PROCESO DE CARACTERIZACIÓN B...Jairo Acosta Solano
 
Tesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfTesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfjbsysatm
 
Tesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfTesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfjbsysatm
 
Metodología Investigacion Cientifica 6ta Ed..pdf
Metodología Investigacion Cientifica 6ta Ed..pdfMetodología Investigacion Cientifica 6ta Ed..pdf
Metodología Investigacion Cientifica 6ta Ed..pdfJhonnCharless
 
Libro de Sampieri Hernadez .pdf
Libro de Sampieri Hernadez .pdfLibro de Sampieri Hernadez .pdf
Libro de Sampieri Hernadez .pdfToloksTamulte
 
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...Gabriel Gonzalez Serna
 

Similar a Generador semiautomático de perfiles de usuario mediante OWL (20)

Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
Sistema de Recomendación Contextual Basado en Ontologías para Ambientes Organ...
 
Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...
Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...
Generación y Explotación de Mapas Semánticos de Instalaciones Organizacionale...
 
Personalización de contenidos Web del dominio de egobierno mediante ontologías
Personalización de contenidos Web del dominio de egobierno mediante ontologíasPersonalización de contenidos Web del dominio de egobierno mediante ontologías
Personalización de contenidos Web del dominio de egobierno mediante ontologías
 
Sistema de soporte de decisiones para la gestión académica de la ULADECH
Sistema de soporte de decisiones para la gestión académica de la ULADECHSistema de soporte de decisiones para la gestión académica de la ULADECH
Sistema de soporte de decisiones para la gestión académica de la ULADECH
 
Sistema de-informacion
Sistema de-informacionSistema de-informacion
Sistema de-informacion
 
Redes Neuronales Artificiales y Estadística
Redes Neuronales Artificiales y EstadísticaRedes Neuronales Artificiales y Estadística
Redes Neuronales Artificiales y Estadística
 
Servicios de localización conscientes del contexto aplicando perfiles de movi...
Servicios de localización conscientes del contexto aplicando perfiles de movi...Servicios de localización conscientes del contexto aplicando perfiles de movi...
Servicios de localización conscientes del contexto aplicando perfiles de movi...
 
Plan estrategico de educacion ambiental
Plan estrategico de educacion ambientalPlan estrategico de educacion ambiental
Plan estrategico de educacion ambiental
 
Servicios de Recomendación Contextual para Instituciones de Educación Superio...
Servicios de Recomendación Contextual para Instituciones de Educación Superio...Servicios de Recomendación Contextual para Instituciones de Educación Superio...
Servicios de Recomendación Contextual para Instituciones de Educación Superio...
 
IIDH (2018) Herramientas Defensa Territorio.pdf
IIDH (2018) Herramientas Defensa Territorio.pdfIIDH (2018) Herramientas Defensa Territorio.pdf
IIDH (2018) Herramientas Defensa Territorio.pdf
 
SISTEMA DE INFORMACIÓN PARA EL MANTENIMIENTO DEL PROCESO DE CARACTERIZACIÓN B...
SISTEMA DE INFORMACIÓN PARA EL MANTENIMIENTO DEL PROCESO DE CARACTERIZACIÓN B...SISTEMA DE INFORMACIÓN PARA EL MANTENIMIENTO DEL PROCESO DE CARACTERIZACIÓN B...
SISTEMA DE INFORMACIÓN PARA EL MANTENIMIENTO DEL PROCESO DE CARACTERIZACIÓN B...
 
Tesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfTesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdf
 
Tesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfTesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdf
 
Tesis
TesisTesis
Tesis
 
Tesis
TesisTesis
Tesis
 
Tesis (1).pdf
Tesis (1).pdfTesis (1).pdf
Tesis (1).pdf
 
Metodología Investigacion Cientifica 6ta Ed..pdf
Metodología Investigacion Cientifica 6ta Ed..pdfMetodología Investigacion Cientifica 6ta Ed..pdf
Metodología Investigacion Cientifica 6ta Ed..pdf
 
Libro de Sampieri Hernadez .pdf
Libro de Sampieri Hernadez .pdfLibro de Sampieri Hernadez .pdf
Libro de Sampieri Hernadez .pdf
 
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
Herramienta para la Generación de Estilos Definidos por el Usuario para su As...
 
DIAGNÓSTICO DE LA INFLUENCIA.pdf
DIAGNÓSTICO DE LA INFLUENCIA.pdfDIAGNÓSTICO DE LA INFLUENCIA.pdf
DIAGNÓSTICO DE LA INFLUENCIA.pdf
 

Más de Gabriel Gonzalez Serna

Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
Metodología para la Generación de Explicaciones para Sistemas de Recomendació...Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
Metodología para la Generación de Explicaciones para Sistemas de Recomendació...Gabriel Gonzalez Serna
 
Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
 Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct... Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...Gabriel Gonzalez Serna
 
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...Gabriel Gonzalez Serna
 
Tutorial Near Field Communication (NFC)
Tutorial Near Field Communication (NFC)Tutorial Near Field Communication (NFC)
Tutorial Near Field Communication (NFC)Gabriel Gonzalez Serna
 
Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...
Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...
Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...Gabriel Gonzalez Serna
 
Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...
Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...
Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...Gabriel Gonzalez Serna
 
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...Gabriel Gonzalez Serna
 
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles apli...
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles apli...Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles apli...
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles apli...Gabriel Gonzalez Serna
 
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...Gabriel Gonzalez Serna
 
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...Gabriel Gonzalez Serna
 
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...Gabriel Gonzalez Serna
 
Servicios de recomendación contextual para Instituciones de Educación Superio...
Servicios de recomendación contextual para Instituciones de Educación Superio...Servicios de recomendación contextual para Instituciones de Educación Superio...
Servicios de recomendación contextual para Instituciones de Educación Superio...Gabriel Gonzalez Serna
 
Mapas SVG Contextuales a partir de Ontologías organizacionales Multidimension...
Mapas SVG Contextuales a partir de Ontologías organizacionales Multidimension...Mapas SVG Contextuales a partir de Ontologías organizacionales Multidimension...
Mapas SVG Contextuales a partir de Ontologías organizacionales Multidimension...Gabriel Gonzalez Serna
 

Más de Gabriel Gonzalez Serna (18)

Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
Metodología para la Generación de Explicaciones para Sistemas de Recomendació...Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
Metodología para la Generación de Explicaciones para Sistemas de Recomendació...
 
Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
 Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct... Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
Clasificación Automática de Objetos de Conocimiento con Contenido no Estruct...
 
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
Metodología para Evaluación de SRSC Centrada en el Usuario, Basada en Caracte...
 
Tutorial Near Field Communication (NFC)
Tutorial Near Field Communication (NFC)Tutorial Near Field Communication (NFC)
Tutorial Near Field Communication (NFC)
 
Context-Aware Recommender System
Context-Aware Recommender System�Context-Aware Recommender System�
Context-Aware Recommender System
 
Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...
Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...
Cómputo Consciente del Contexto: Cognición Aumentada mediante Interfaz Cerebr...
 
Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...
Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...
Tecnologías de Interacción Humano-Computadora para Sistemas de Información Co...
 
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
Gateway SMS Pull para Servicios Basados en Localización con una Arquitectura ...
 
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles apli...
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles apli...Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles apli...
Generador de mapas croquis en formato SVG-Tiny para dispositivos móviles apli...
 
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
Búsquedas contextuales de Servicios Basados en Localización en un entorno de ...
 
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
Poblado Semiautomático de Ontologías Organizacionales a Partir de Análisis de...
 
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
API para servicios de localización en interiores basada en tecnología Wi-Fi, ...
 
Servicios de recomendación contextual para Instituciones de Educación Superio...
Servicios de recomendación contextual para Instituciones de Educación Superio...Servicios de recomendación contextual para Instituciones de Educación Superio...
Servicios de recomendación contextual para Instituciones de Educación Superio...
 
Mapas SVG Contextuales a partir de Ontologías organizacionales Multidimension...
Mapas SVG Contextuales a partir de Ontologías organizacionales Multidimension...Mapas SVG Contextuales a partir de Ontologías organizacionales Multidimension...
Mapas SVG Contextuales a partir de Ontologías organizacionales Multidimension...
 
Examen ngf2012
Examen ngf2012Examen ngf2012
Examen ngf2012
 
Hoas
HoasHoas
Hoas
 
Proyecto t guia_ies-cenidet
Proyecto t guia_ies-cenidetProyecto t guia_ies-cenidet
Proyecto t guia_ies-cenidet
 
RFID Tutorial
RFID TutorialRFID Tutorial
RFID Tutorial
 

Último

POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 

Último (13)

POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 

Generador semiautomático de perfiles de usuario mediante OWL

  • 1. cenidet Centro Nacional de Investigación y Desarrollo Tecnológico Departamento de Ciencias Computacionales TESIS DE MAESTRÍA EN CIENCIAS EN CIENCIAS DE LA COMPUTACIÓN Generador semiautomático de perfiles de usuario mediante OWL presentada por Christian Eloy Rojas Roldán Ing. en Sistemas Computacionales por el I. T. de Acapulco como requisito para la obtención del grado de: Maestría en Ciencias en Ciencias de la Computación Director de tesis: Dr. Juan Gabriel González Serna Jurado: Dr. Javier Ortiz Hernández – Presidente Dra. Azucena Montes Rendón – Secretario M.C. Hugo Estrada Esquivel – Vocal Dr. Juan Gabriel González Serna – Vocal Suplente Cuernavaca, Morelos, México. 15 de Septiembre de 2009 Rojas, Christian i
  • 2. DEDICATORIA A Dios, por todas las bendiciones otorgadas A mis padres: Dr. Eloy Mario Rojas Nava y Dra. Aida Roldán Monroy, como insignificante retribución a todo lo que sin reparos me han puesto en las manos. A mi novia Xiomara, por todo el apoyo y alegría. A mi hermano, por apoyarme en lo que necesité, este triunfo también es tuyo. Rojas, Christian ii
  • 3. AGRADECIMIENTOS A Dios. Siempre primero. A mis padres, por tanta paciencia, apoyo, y por enseñarme con amor y ejemplo que todo es posible cuando te lo propones. A mi hermano que nunca dijo un no, cuando lo necesité. Sin ellos nunca lo hubiera logrado. A mi novia Xiomara, que con su sonrisa alegró cada día desde el principio hasta el fin. Por contagiarme de su paciencia y ser mi compañera. Al Centro Nacional de Investigación y Desarrollo Tecnológico por permitirme un lugar entre sus alumnos y obtener mis estudios de maestría. Al Consejo Nacional de Ciencia y Tecnología por la beca para manutención otorgada y por permitirme conocer el viejo continente con excelente compañía. A mi director de tesis Dr. Juan Gabriel González Serna, por haberme elegido como su tesista, por todas esas horas de paciencia otorgadas, por la amabilidad y respetuosidad que lo caracterizan y sobre todo por ser un buen amigo. A mis revisores de tesis: Dr. Hugo Estrada Esquivel, Dra. Azucena Montes Rendón, Dr. Javier Ortíz Hernández, por todas las recomendaciones, apoyo y tiempo dedicado A mi gente de Acapulco, abuelos, tíos, primos, amigos, que siempre me obsequiaron ánimos, oraciones, suerte y bienestar cada vez que partía de regreso a mis labores. A esos compañeros de generación que ahora son amigos: Israel, Rubi, Omar, Yanet, Jose Luis e Itzel por todos los buenos ratos que pasamos juntos y en especial por haber mitigado la tristeza de no pasar navidad y fin de año con la familia, cuando España fue nuestro hogar. Aunque me resulta imposible agradecer en solo este espacio a todas esas personas que hicieron posible éste logro. A todos ellos: Rojas, Christian iii
  • 4. RESUMEN La identificación de las preferencias del usuario en función de su perfil (su edad, gustos, nivel socioeconómico, nivel cultural, y de conocimientos en un área específica), permitirá a la siguiente generación de aplicaciones Web 3.0 y de sistemas de recomendación contextuales, por un lado, personalizar los contenidos Web de acuerdo al perfil del usuario y por otro, presentar resultados pertinentes para el mismo. Los perfiles de usuarios son una importante herramienta para personalizar respuestas y entornos. Por lo anterior, en este documento se presenta una metodología innovadora basada en el uso de ontologías definidas con lenguaje OWL y agrupamientos de secciones de información en clústeres y mecanismos de deducción que minimizan de manera significativa el atosigamiento e intrusión en el proceso de extracción de información personal del usuario. Esta metodología permite identificar, clasificar y agrupar componentes del perfil del usuario en una base de datos semántica que permitirá a diversas aplicaciones explotar esta información para la personalización de contenidos Web. Además, esta base de datos semántica también podrá ser utilizada para la selección de resultados pertinentes en búsquedas contextuales de servicios. Rojas, Christian iv
  • 5. ÍNDICE Lista de figuras ................................................................................................................................. ix Lista de tablas.................................................................................................................................... x Lista de Gráficos ............................................................................................................................... x Glosario de términos y siglas ......................................................................................................... xi 1. Capítulo I. Introducción ............................................................................................................ 1 1.1 Introducción ......................................................................................................................... 2 1.2 Descripción del problema .................................................................................................... 2 1.3 Objetivo ............................................................................................................................... 3 1.4 Justificación ......................................................................................................................... 4 1.5 Beneficios ............................................................................................................................ 8 1.6 Trabajos relacionados ......................................................................................................... 8 1.6.1 Principios de marketing ............................................................................................... 8 1.6.2 Improving Ontology-Based User Profiles .................................................................... 9 1.6.3 Learning implicit user interest hierarchy for context in personalization ..................... 10 1.6.4 Need for Context-Aware Topographic Maps in Mobile Devices................................ 11 1.6.5 Matching User's Semantics with Data Semantics in Location-Based Services ........ 11 1.6.5.1 Perfil de usuario ..................................................................................................................................11 1.6.5.2 Perfiles de datos .................................................................................................................................12 1.6.6 Exploiting Hierarchical Relationships in Conceptual search ..................................... 12 1.6.7 SOUPA: Standard ontology for ubiquitous and pervasive applications .................... 12 1.6.7.1 SOUPA Core.......................................................................................................................................13 1.6.7.2 SOUPA Extensión ...............................................................................................................................13 1.6.8 A MDD strategy for developing context-aware pervasive systems ........................... 13 1.6.9 Categorizaciones independientes de un Usuario. ..................................................... 14 1.6.9.1 GEEK ..................................................................................................................................................14 1.6.9.2 AKTORS .............................................................................................................................................15 1.6.9.3 Amigo de un amigo (FOAF: FRIEND Of A Friend)...............................................................................15 1.7 Alcance del proyecto de tesis ............................................................................................ 17 1.8 Organización del documento ............................................................................................. 17 Capítulo II. Marco teórico ............................................................................................................... 18 2.1 Conceptos semánticos ...................................................................................................... 20 2.1.1 OWL........................................................................................................................... 20 2.1.2 RDF ........................................................................................................................... 20 2.1.3 W3C ........................................................................................................................... 21 2.1.4 Ontología ................................................................................................................... 21 2.2 Conceptos generales ........................................................................................................ 22 2.2.1 XSD ........................................................................................................................... 22 Rojas, Christian v
  • 6. 3. Capítulo III. Análisis y diseño ................................................................................................. 23 3.1 Análisis .............................................................................................................................. 24 3.1.1 Análisis de operación con clases .............................................................................. 25 3.1.2 Estructura de URI´s (Uniform Resource Indicator). .................................................. 37 3.1.2.1 Árbol de abstracción de nombres ........................................................................................................38 3.1.3 Manejo de tipos ......................................................................................................... 40 3.1.4 Análisis de la interfaz................................................................................................. 42 3.1.4.1 Dominio Básico. ..................................................................................................................................43 3.1.4.2 Dominio Médico ..................................................................................................................................43 3.1.4.3 Dominio Familiar .................................................................................................................................43 3.1.4.4 Dominio Profesional ............................................................................................................................44 3.1.4.5 Dominio Educativo ..............................................................................................................................44 3.2 Diseño ............................................................................................................................... 44 3.2.1 Actividades del proyecto............................................................................................ 48 3.2.1.1 Conexión con ontología.......................................................................................................................48 3.2.1.2 Usuario nuevo .....................................................................................................................................49 3.2.1.3 Usuario existente ................................................................................................................................50 3.2.1.4 Guardado en ontología........................................................................................................................51 3.2.1.5 Modificar en ontología .........................................................................................................................53 3.2.1.6 Eliminado de ontología ........................................................................................................................54 3.2.1.7 Elección de dominio ............................................................................................................................55 3.2.1.8 Elección de operación en ontología.....................................................................................................55 4. Capítulo IV. Desarrollo de la solución ................................................................................... 55 4.1 Recopilación, discriminación e integración de datos ........................................................ 58 4.2 Estructura de la ontología ................................................................................................. 61 4.2.1 Núcleo........................................................................................................................ 62 4.2.2 Extensibilidad ............................................................................................................ 62 4.2.2.1 Extensibilidad satelital .........................................................................................................................63 4.2.2.1.1 Ejemplo .......................................................................................................... 64 4.2.2.1.2 Formalización de extensibilidad satelital........................................................ 65 4.2.2.2 Extensibilidad parcial ..........................................................................................................................66 4.2.2.2.1 Ejemplo .......................................................................................................... 67 4.2.2.2.2 Formalización de extensibilidad parcial ......................................................... 69 4.2.2.3 Extensibilidad nuclear .........................................................................................................................70 4.2.2.3.1 Ejemplo .......................................................................................................... 71 4.2.2.3.2 Formalización de extensibilidad nuclear. ....................................................... 72 5. Capítulo V. Implementación ................................................................................................... 75 5.1 Conexión con ontología ..................................................................................................... 76 5.2 Usuario nuevo y usuario existente .................................................................................... 77 Rojas, Christian vi
  • 7. 5.3 Volcado de ontología ......................................................................................................... 79 5.4 Guardado de ontología ...................................................................................................... 80 5.5 Lectura y modificación de ontología .................................................................................. 82 5.6 Eliminar ontología .............................................................................................................. 82 6. Capítulo VI. Pruebas................................................................................................................ 85 6.1 Introducción ....................................................................................................................... 86 6.2 Descripción del Plan .......................................................................................................... 86 6.2.1 Características a ser probadas ................................................................................. 86 6.2.2 Características excluidas de las pruebas .................................................................. 87 6.2.3 Enfoque ..................................................................................................................... 87 6.2.4 Criterio pasa/ no pasa de casos de prueba. ............................................................. 87 6.2.5 Criterios de suspensión y requerimientos de reanudación. ...................................... 87 6.2.6 Tareas de pruebas. ................................................................................................... 87 6.2.7 Liberación de pruebas. .............................................................................................. 88 6.2.8 Requisitos ambientales. ............................................................................................ 88 6.2.9 Responsabilidades. ................................................................................................... 88 6.2.10 Riesgos y contingencias. ........................................................................................... 88 6.3 Casos de Pruebas. ............................................................................................................ 89 6.3.1 Características a probar ............................................................................................ 89 6.3.2 Grupos de pruebas .................................................................................................... 89 6.3.2.1 Operación con la ontología .................................................................................................................89 6.3.2.2 Estructuración ontológica ....................................................................................................................89 6.3.2.3 Enlace con ontología ...........................................................................................................................89 6.3.2.4 Elección de dominio de la aplicación ...................................................................................................89 6.3.3 Procedimiento de Pruebas ........................................................................................ 89 6.4 USOG-101 Pruebas de operación con la ontología .......................................................... 90 6.4.1 Propósito ................................................................................................................... 90 6.4.2 Entorno de prueba. .................................................................................................... 90 6.4.3 USOG-101-001 Lectura de la ontología .................................................................... 90 6.4.3.1 Propósito.............................................................................................................................................90 6.4.3.2 Entorno de prueba. .............................................................................................................................90 6.4.3.3 Proceso...............................................................................................................................................90 6.4.3.4 Resultado esperado. ...........................................................................................................................90 6.4.4 USOG-101-002 Escritura en ontología ..................................................................... 91 6.4.4.1 Propósito.............................................................................................................................................91 6.4.4.2 Entorno de prueba. .............................................................................................................................91 6.4.4.3 Proceso...............................................................................................................................................91 6.4.4.4 Resultado esperado. ...........................................................................................................................91 6.4.5 USOG-101-003 Eliminado de la ontología ................................................................ 91 Rojas, Christian vii
  • 8. 6.4.5.1 Propósito.............................................................................................................................................91 6.4.5.2 Entorno de prueba. .............................................................................................................................91 6.4.5.3 Proceso...............................................................................................................................................91 6.4.5.4 Resultado esperado. ...........................................................................................................................91 6.4.6 USOG-201 Pruebas de estructuración ontológica .................................................... 91 6.4.6.1 Propósito.............................................................................................................................................91 6.4.6.2 Entorno de prueba. .............................................................................................................................92 6.4.7 USOG-201-001 Estructuración de individualizaciones ............................................. 92 6.4.7.1 Propósito.............................................................................................................................................92 6.4.7.2 Entorno de prueba. .............................................................................................................................92 6.4.7.3 Proceso...............................................................................................................................................92 6.4.7.4 Resultado esperado. ...........................................................................................................................92 6.4.8 USOG-301 Prueba de enlace con ontología ............................................................. 92 6.4.8.1 Propósito.............................................................................................................................................92 6.4.8.2 Entorno de prueba. .............................................................................................................................92 6.4.9 USOG-301-001 Conexión con ontología................................................................... 93 6.4.9.1 Propósito.............................................................................................................................................93 6.4.9.2 Entorno de prueba. .............................................................................................................................93 6.4.9.3 Proceso...............................................................................................................................................93 6.4.9.4 Resultado esperado. ...........................................................................................................................93 6.4.10 USOG-401 Prueba de elección del dominio de la aplicación ............................... 93 6.4.10.1 Propósito.............................................................................................................................................93 6.4.10.2 Entorno de prueba. .............................................................................................................................93 6.4.11 USOG-401-001 Elección del dominio de la aplicación ............................................. 93 6.4.11.1 Propósito.............................................................................................................................................93 6.4.11.2 Entorno de prueba. .............................................................................................................................93 6.4.11.3 Proceso...............................................................................................................................................94 6.4.11.4 Resultado esperado. ...........................................................................................................................94 6.5 Pruebas ............................................................................................................................. 94 6.4.1 Pruebas Funcionales ................................................................................................. 95 6.4.2 Pruebas operativas .................................................................................................. 106 6.5 Observaciones generales ................................................................................................ 136 Capítulo VII. Conclusiones ........................................................................................................... 139 7.1 Conclusiones ................................................................................................................... 140 7.2 Aportaciones .................................................................................................................... 141 7.3 Trabajos futuros............................................................................................................... 142 7.4 Publicaciones .................................................................................................................. 143 Bibliografía ..................................................................................................................................... 144 Anexo 1 ........................................................................................................................................... 147 Anexo 2 ........................................................................................................................................... 148 Rojas, Christian viii
  • 9. LISTA DE FIGURAS Figura 1.1 Perspectiva de SOUPA + CoBrA para modelar a un usuario. ........................................... 4 Figura 1.2 Perspectiva de GEEK para modelar a un usuario ............................................................. 5 Figura 1.3 Perspectiva de AKTORS para modelar a un usuario ........................................................ 6 Figura 1.4 Perspectiva de FOAF para modelar a un usuario ............................................................. 7 Figura 1.5 Mapa del comportamiento del comprador ......................................................................... 9 Figura 1.6 Ontologías integrantes de SOUPA .................................................................................. 13 Figura 3.1 Diagrama de bloques del proceso general del proyecto ................................................. 24 Figura 3.2 Diagrama general de casos de uso ................................................................................. 25 Figura 3.3 Diagrama de casos de uso de Operar con la ontología .................................................. 26 Figura 3.4 Diagrama de actividad del caso de uso CU-1 Operar con la ontología ........................... 28 Figura 3.5 Diagrama de actividad del caso de uso Elegir operación de altas, bajas y consultas .... 30 Figura 3.6 Diagrama de actividad del caso de uso Elegir dominio de aplicación ............................. 32 Figura 3.7 Diagrama de actividad del caso de uso Enlazar con la ontología ................................... 34 Figura 3.8 Diagrama de casos de uso de Estructuración ontológica................................................ 35 Figura 3.9 Diagrama de actividad del caso de uso Estructuración ontológica ................................. 36 Figura 3.10 Identificador del atributo “nombre” de la ontología en protégé ...................................... 37 Figura 3.11 Árbol de elementos de la ontología ............................................................................... 39 Figura 3.12 Árbol de elementos de la ontología ............................................................................... 39 Figura 3.13 Resultado del método para nombrar individualizaciones .............................................. 40 Figura 3.14 Esquema de manejo de los tipos de datos .................................................................... 41 Figura 3.15 Diagrama de clases del proyecto ................................................................................... 44 Figura 3.16 Diagrama de clases del paquete mx.edu.cenidet.userontology.axiomsinference ......... 45 Figura 3.17 Diagrama de clases del paquete mx.edu.cenidet.userontology.Front ........................... 47 Figura 3.18 Diagrama de secuencias para la Conexión con la ontología ........................................ 49 Figura 3.19 Diagrama de secuencias para ingresar al sistema como usuario nuevo ...................... 50 Figura 3.20 Diagrama de secuencias para ingresar al sistema como usuario existente.................. 51 Figura 3.21 Diagrama de secuencias del proceso Guardar ontología.............................................. 53 Figura 3.22 Diagrama de secuencias del proceso Modificación de ontología .................................. 54 Figura 3.23 Diagrama de secuencias del proceso Eliminación de la ontología ............................... 54 Figura 4.1. Estructura ontológica ...................................................................................................... 60 Figura 4.2. Enfermedades crónico-degenerativas en México ........................................................... 61 Figura 4.3. Estructura de la clase “Minusvalía”. ................................................................................ 64 Figura 4.4. Estructura de la clase “Ayuda_tecnica” .......................................................................... 64 Figura 4.5. Esquema de “Extensibilidad satelital” ............................................................................. 65 Figura 4.6. Esquema de extensibilidad parcial ................................................................................ 67 Figura 4.7. Estructura de la clase “Contacto” .................................................................................... 68 Figura 4.8. Estructura de la clase “Nivel_computo” .......................................................................... 68 Figura 4.9. Relación y cobertura entre las clases “Nivel_computo” y “Contacto” ............................. 69 Figura 4.10. Estructura de la clase “Personales” .............................................................................. 71 Figura 4.11. Estructura de la clase “Origen” ..................................................................................... 71 Figura 4.12. Esquema de extensibilidad nuclear .............................................................................. 72 Figura 5.1. Conexión con ontología .................................................................................................. 77 Figura 5.2. Autenticación de usuario.1 .............................................................................................. 77 Figura 5.3. Autenticación de usuario.2 .............................................................................................. 78 Figura 5.4. Autenticación de usuario.3 .............................................................................................. 79 Figura 5.5. Volcado de datos a la ontología ...................................................................................... 80 Figura 5.6. Relación de elementos en la ontología ........................................................................... 81 Figura 5.7. Lectura de datos desde la ontología ............................................................................... 82 Figura 5.8. Eliminación de datos en la ontología .............................................................................. 83 Figura 6.1. Datos de la ontología en protégé .................................................................................... 95 Figura 6.2. Autenticación invalida ..................................................................................................... 95 Figura 6.3. Autenticación válida y elección de operación con ontología .......................................... 95 Rojas, Christian ix
  • 10. Figura 6.4. Datos de la ontología en protégé .................................................................................... 96 Figura 6.5. Creación de nuevo usuario y elección del dominio de aplicación .................................. 96 Figura 6.6. Introducción de datos en el perfil .................................................................................... 97 Figura 6.7. Datos en la ontología después de la operación .............................................................. 97 Figura 6.8. Contenido de la instancia de la clase miembro en la ontología ..................................... 98 Figura 6.9. Eliminación de un individuals en la ontología ................................................................. 99 Figura 6.10. Resultado en la ontología después de la operación ..................................................... 99 Figura 6.11. Guardado de datos ontológicos. ................................................................................. 100 Figura 6.12. Árbol de abstracción de nombres de la ontología creada. ......................................... 100 Figura 6.13. Estructuración ontológica de la ontología en protégé................................................. 101 Figura 6.14. Contenido de password en la clase personales de la ontología ................................ 101 Figura 6.15. Autenticación en la ontología existente ...................................................................... 102 Figura 6.16. Cambio de contraseña en la ontología ....................................................................... 102 Figura 6.17. Valores ontológicos posteriores a la operación. ......................................................... 103 Figura 6.18. Autenticación y visualización de clases organizadas según el dominio de aplicación Hospital ............................................................................................................................................ 104 Figura 6.19. Dominio de aplicación antes de la operación ............................................................. 104 Figura 6.20. Dominio de aplicación después de la operación ........................................................ 105 Figura 6.21. visualización de clases organizadas según el dominio de aplicación Universidad .... 105 LISTA DE TABLAS Tabla 1.1. Análisis comparativo del estado del arte.......................................................................... 16 Tabla 3.1 Descripción del caso de uso Operar con la ontología ...................................................... 26 Tabla 3.2 Descripción del caso de uso Elegir operación de altas, bajas y consultas ....................... 28 Tabla 3.3 Descripción del caso de uso Elegir dominio de aplicación ............................................... 31 Tabla 3.4 Descripción del caso de uso Enlazar con la ontología ..................................................... 32 Tabla 3.5 Descripción del caso de uso Estructuración ontológica .................................................... 35 Tabla 4.1. Recopilación de atributos pertinentes para perfilar a un usuario. .................................... 58 Tabla 6.1 Tareas a desarrollar a las pruebas ................................................................................... 87 Tabla 6.2. Caso de prueba: Lectura de la ontología ......................................................................... 95 Tabla 6.3 Caso de prueba: Escritura en ontología............................................................................ 96 Tabla 6.4 Caso de prueba: Eliminado de la ontología ...................................................................... 98 Tabla 6.5 Caso De Prueba: Estructuración De Individualizaciones ................................................ 100 Tabla 6.6 Caso De Prueba: Estructuración De Individualizaciones ................................................ 101 Tabla 6.7 Caso De Prueba: Estructuración De Individualizaciones ................................................ 103 LISTA DE GRÁFICOS Grafico 1 Clases Accedidas Por El Grupo De Prueba .................................................................... 137 Grafico 2 Estadística de salida ........................................................................................................ 138 Rojas, Christian x
  • 11. GLOSARIO DE TÉRMINOS Y SIGLAS IEEE Institute of Electrical and Electronics Engineers (IEEE). Instituto de Ingenieros Eléctricos y Electrónicos, una asociación técnico-profesional mundial dedicada a la estandarización, entre otras cosas. Es la mayor asociación internacional sin fines de lucro formada por profesionales de las nuevas tecnologías, como ingenieros de telecomunicaciones, ingenieros electrónicos, ingenieros en informática e Ingenieros en computación. URI Un URI es una cadena corta de caracteres que identifica inequívocamente un recurso (servicio, página, documento, dirección de correo electrónico, enciclopedia, etc.). Normalmente estos recursos son accesibles en una red o sistema. Todas las definiciones se tomaron de [wiki09]. Rojas, Christian xi
  • 12. 1. CAPÍTULO I. INTRODUCCIÓN En este capítulo se presenta la descripción del problema que dio origen al presente trabajo de tesis, su objetivo, justificación y beneficios. También los trabajos relacionados. Y por último la organización del documento.
  • 13. Introducción 1.1 INTRODUCCIÓN Debido a la inexactitud de los sistemas y estudios actuales para perfilar o modelar a un usuario real, se ha visto la necesidad de analizar las posibles categorizaciones del mismo, basadas en áreas como la mercadotecnia, psicología, y computación. Esto con la finalidad de obtener un conjunto de datos que permitan perfilar de un modo eficiente a un usuario en cuestión. Un simple documento legible por una persona y una lista de datos no son suficientes, por lo que se necesita un entorno de diseño en algún lenguaje procesable como lo puede ser (OWL/RDF) y alguna interfaz que permita la captura de estos datos. Uno de los principales intereses de este proyecto es entonces obtener una ontología que permita modelar a un usuario, así como sus costumbres, deficiencias, roles cotidianos y características, y poblarla mediante alguna interfaz gráfica de un ambiente de desarrollo para poder instanciarla y explotarla. Debido a que la información obtenida del usuario será proporcionada de manera explícita, es decir, directamente por el usuario, se investigarán e implementarán una serie de técnicas para evitar en la medida de lo posible la intrusión excesiva de sus datos, y por consiguiente obtener sólo los necesarios para un cierto dominio de aplicación, sin menoscabar la pertinencia de los mismos. 1.2 DESCRIPCIÓN DEL PROBLEMA Los perfiles de usuarios son una importante herramienta para personalizar respuestas, entornos y evitar la intrusión excesiva de datos secundarios, así como para minimizar costos por manejo de datos impertinentes. En el mercado se pueden encontrar distintas categorizaciones de usuario [Geek09] [Akt08] [Miller00], sin embargo aunque cada una de ellas comparte en gran medida su conjunto de datos básico (nombre, edad, sexo, etc.), también poseen datos especializados, que sólo poseerán aquellos usuarios que estén en el dominio de aplicación de esa categorización. Es entonces necesaria, una depuración de los datos de un usuario, dispuestos por Web sociales, servicios independientes y estudios de áreas como la computación, mercadotecnia y psicología. [Yu05] [Plans03] [Trajkova04] [Chan07] [Gauch04] [Nivala03] Así como la adición de elementos considerados pertinentes. [Issste02] [Cif00] [Icf08] [Disc08] [Croja08] [Gzlez08] [Disca08] Rojas, Christian 2
  • 14. Introducción Un simple documento legible por una persona y una lista de datos no son suficientes, por lo que se necesita un entorno de diseño en algún lenguaje procesable como lo puede ser OWL/RDF (Ontology Web Language/Resource Description Framework) [W3C04] y una interfaz amigable que permita la captura de estos datos. La necesidad objetiva de este proyecto es entonces obtener una ontología que cumpla con las características citadas, modelando a un usuario y tomando en cuenta sus costumbres, deficiencias, roles cotidianos y características, y poblarla mediante una interfaz gráfica para poder instanciarla y explotarla. Debido a que la información para perfilar al usuario deberá ser directamente introducida por el mismo, se investigaron e implementaron una serie de técnicas para evitar, en la medida de lo posible, la intrusión excesiva de datos del usuario, y por consiguiente obtener sólo los necesarios para un cierto dominio de aplicación, sin menoscabar la pertinencia de los mismos. Una de las problemáticas inmersas en el uso de ontologías es nombrar semánticamente de forma unívoca a los elementos en la ontología, como lo son atributos, clases e individuals (instancia de una clase); los cuales son representados mediante una URI (Uniform Resource Indicator) siguiendo un mismo patrón. [W3C04] [Protege09]. Esto ocasiona que no pueda ser identificado un elemento a partir de su URI, y en el peor de los casos esta nomenclatura arbitraria ocasionará que se tengan que implementar heurísticas más complejas para la recuperación de elementos a partir de un conjunto de identificadores conceptuales unívocos. Para resolver estos problemas, en esta tesis se propone una técnica para el tratamiento de los identificadores conceptuales mediante la generación de un árbol de abstracción de nombres a partir de un conjunto de reglas. 1.3 OBJETIVO Obtener una ontología que modele a un usuario, tomando en cuenta sus costumbres, deficiencias, roles cotidianos y características, y poblarla mediante una interfaz gráfica para poder instanciarla y explotarla. Rojas, Christian 3
  • 15. Introducción 1.4 JUSTIFICACIÓN Una gran cantidad de interpretaciones para categorizar a un usuario están disponibles en el mercado, sin embargo, la mayoría de estas, contemplan una estructura influenciada por el domino hacia el cual intencionalmente fueron creadas, es decir, que los datos que consideran capturar son divergentes, debido a que cada categorización especializa los datos a sus intereses. Aunque muchas de estas categorizaciones son similares en sus datos básicos (datos personales), existe la variabilidad en su formato, es decir, estos conjuntos de datos están dispuestos en diferentes formas como por ejemplo: texto plano, bases de datos, lenguaje procesable (OWL), etc. En las siguientes figuras se muestran distintas apreciaciones para categorizar a un usuario. En la figura 1.1 se muestra una perspectiva de acuerdo a SOUPA + CoBrA [Chen04], la cual toma en cuenta datos generales y algunos basados en contacto. • Nombre Información • Género • Edad básica de • Fecha de nacimiento perfil • Correo • Dirección Perspectiva Información • Página personal SOUPA + • Número telefónico de contacto • Mensajería instantanea CoBrA • Id. de chat • Amigos • Dependientes de organizacion Profesional y social Figura 1.1 Perspectiva de SOUPA + CoBrA para modelar a un usuario. Rojas, Christian 4
  • 16. Introducción En la figura 1.2, se aprecia una perspectiva de GEEK [Geek09], en la que se enfatiza sobre las preferencias del usuario. Figura 1.2 Perspectiva de GEEK para modelar a un usuario La siguiente lista muestra los detalles de algunos elementos marcados con la letra asignada en la figura anterior. A. Pretty Good Privacy o PGP (privacidad bastante buena) es un programa desarrollado por Phil Zimmermann y cuya finalidad es proteger la información distribuida a través de Internet mediante el uso de criptografía de clave pública, así como facilitar la autenticación de documentos gracias a firmas digitales. Fuente: Wikipedia. B. Interesado en otros códigos GEEKS [Geek09], y habido de memorizarlos. En la figura 1.3, se aprecia la perspectiva de AKTORS para perfilar a un usuario, tomando en cuenta datos referentes a su ubicación y preferencias del mismo. [Akt08] Rojas, Christian 5
  • 17. Introducción Figura 1.3 Perspectiva de AKTORS para modelar a un usuario La siguiente lista muestra los detalles de algunos elementos marcados con la letra asignada en la figura 1.3. A. Refiere a la ubicación geográfica según el uso horario (GMT) B. Referente al origen de la persona. (Lugar natal) C. Indica cómo le gusta a la persona ser llamada (parte de su nombre) D. Indica el título de la persona en sociedad preferido por la persona (Ing. Sr. Srita. Dr. Lic. etc.) E. Indica bajo qué tipo de contratación trabaja en su dependencia (Honorarios, Confianza, Base, Contrato, Sindicalizado, etc.) F. Indica el tipo de trabajo de la persona de entre una lista proporcionada por AKTORS (Administrador, diseñador multimedia, desarrollador, diseñador grafico, secretario, empleado educacional, soporte académico, interés en investigación, etc.) En la figura 1.4 se muestra la perspectiva de Friend of a Friend (FOAF), para perfilar a un usuario tomando en cuenta que estos datos están inclinados a cuestiones de contacto debido a la naturaleza del proyecto en el que está inmerso, la cual toma como base los microformatos [Miller00]. Rojas, Christian 6
  • 18. Introducción Figura 1.4 Perspectiva de FOAF para modelar a un usuario La siguiente lista muestra los detalles de algunos elementos marcados con la letra asignada en la figura 1.4. A. Organización fundada por un proyecto o persona B. Una imagen utilizada para representar algo en específico C. Documento que representa un tema principal D. Algo que fue hecho o fabricado por esta persona E. Algún agente que hizo algo F. Liga a las publicaciones de esta persona G. Una muestra en imagen de algo interesante. Como se puede apreciar en las figuras anteriores, las categorizaciones para un usuario son dedicadas a cierto dominio y en algunos casos de gran tamaño, estas se justifican así mismas en su contenido, y son muy útiles para el contexto de investigación, pero tienen el inconveniente de no ser del mismo formato de operación, esto es, que el caso de GEEK, corresponde a un formato de texto plano, mientras que las demás categorizaciones corresponden a ontologías en lenguaje procesable (OWL), ocasionando una incompatibilidad en la explotación integral de al menos, estas categorías. Rojas, Christian 7
  • 19. Introducción 1.5 BENEFICIOS El principal beneficio que se obtuvo de esta tesis es una herramienta que permite modelar usuarios basándose en el contexto propio, mediante el uso de ontologías en lenguaje procesable, utilizando una interfaz gráfica. Las aplicaciones que pueden realizarse con esta herramienta son: Captura personalizada de los datos del usuario. Una interfaz gráfica que permite la captura de datos pertinentes de acuerdo al usuario en cuestión, tomando en cuenta características, atributos, preferencias, y datos almacenados en el perfil. Un esquema ontológico basado en núcleo + extensiones. Este tipo de estructura, permitirá el crecimiento de la ontología dependiendo del contexto del usuario en cuestión. Explotación y reutilización de la ontología resultante. Debido a que el resultado (perfil de usuario) estará dispuesto en un formato liviano bajo un lenguaje procesable (OWL), permitirá a otras aplicaciones o servicios consumidores hacer uso de la información obtenida de manera más intuitiva y ordenada. Detallado de reglas para la obtención de un mapa ontológico. Un método que define un conjunto de reglas bajo un algoritmo específico, que permitirá estandarizar los identificadores conceptuales generados por la ontología y también permitirá presentar el resultado obtenido. De esta manera es posible la explotación de la ontología de una manera más efectiva ya que el mapa generado manualmente a partir de las reglas mencionadas hace innecesario el conocimiento de lenguaje de consultas para la exploración puntual de un elemento en la estructuración de la ontología. 1.6 TRABAJOS RELACIONADOS En primera instancia se describe un estudio del área mercadotécnica, en el cual se perfila a un usuario, denominado técnicamente como “comprador”. Posteriormente se muestra un conjunto de artículos asociados al tema, y por último dos tesis (doctorales y de maestría) involucradas por igual 1.6.1 Principios de marketing Este trabajo representa un estudio basado en la mercadotecnia, el cual maneja el concepto de cliente (sinónimo con usuario para fines del proyecto de tesis) Aquí se definen dos conceptos muy distintos entre sí, pero que aparentan una similitud, estos son: “Cliente” y “Consumidor”, pero contempla no sólo productos sino servicios por igual en estas definiciones. Debido a esta separación de definiciones, Rojas, Christian 8
  • 20. Introducción consideran necesarias las categorizaciones de los comportamientos de estos dos actores, fijando la atención en el comprador (cliente). Véase figura 1.5. Figura 1.5 Mapa del comportamiento del comprador Se especifican también los roles de compra que son diferentes métricas adoptadas según la(s) rutina(s) en las que se desenvuelve el usuario, así como los tipos de comportamiento del comprador y demás estudios relacionados con el tema. Como se puede apreciar, el tipo de categorización realizada hacia el usuario (denominado comprador) se realiza de modo vectorial, es decir, sin subclasificaciones de datos. De modo que al no explayarse los datos internos de las categorías, solo los grupos, dejan espacio a ambigüedades. [Plans03] 1.6.2 Improving Ontology-Based User Profiles Intenta clasificar intereses del usuario, siendo su principal objetivo investigar técnicas que implican la construcción de perfiles de usuario basados en ontologías. La idea es construir perfiles sin interacción humana, esto es, de manera automática, con el simple monitoreo de los hábitos del usuario. Toma mucha importancia el definir los conceptos más importantes en la construcción o categorización de estos usuarios al igual que involucran estos conceptos o características de un modo jerárquico y cuestionan firmemente la cantidad de niveles necesarios para categorizar al usuario. Rojas, Christian 9
  • 21. Introducción Sin embargo las principales problemáticas se basan en la elección de los elementos pertinentes para la elaboración de dicho perfil y cómo proyectar estos datos en el mismo, ya que se explayan dos técnicas para obtener estos datos, las cuales son implícitas (observación y exploración de su actividad) y explicitas (preguntas directas). Direccionando la metodología de este proyecto hacia la explotación implícita. Referente a la alimentación del perfil, esta se lleva a cabo de manera jerárquica y no vectorial, esto es, aplicando niveles de abstracción con cierta ponderación. [Trajkova04] 1.6.3 Learning implicit user interest hierarchy for context in personalization El contenido de este documento presenta una visión de la categorización de un usuario a partir de sus intereses, analizada a partir de la navegación Web del mismo. Utilizan un método de estructuración basado en jerarquías para la creación de un perfil, tomando los niveles de la misma como niveles de abstracción de los conceptos, de modo que si un usuario en diferentes consultas o navegaciones toca temáticas muy distintas entre sí, puede darse el caso que en un nivel de abstracción no tengan relación, sin embargo, si se eleva el nivel de abstracción de esas navegaciones, se hace que pertenezcan al mismo concepto. Este artículo utiliza para la generación de un perfil de usuario una estructura jerárquica, denominada por ellos como: UIH (jerarquía de intereses del usuario por sus siglas en inglés). Se propone que la alimentación de las jerarquías y de los conceptos inmersos en ellas sean por un medio automático, esto es, dinámicamente, por medio de la navegación Web del usuario, usando la lógica de que los intereses se contemplan como pasivos cuando el nivel de abstracción es más alto y más activos cuando el nivel de abstracción es más bajo, es decir, de más genérico a más específico. La alimentación de la jerarquía utilizada es dinámica al defender el hecho de que los perfiles son constantemente actualizados por el usuario, y no es práctico el definir un perfil como estático ya sea en su contenido o incluso en su estructura. Según este artículo, la manipulación de los intereses de un modo jerárquico es más precisa que una realizada de un modo vectorial o lineal, sobre todo por cuestiones ontológicas. [Chan07] Rojas, Christian 10
  • 22. Introducción 1.6.4 Need for Context-Aware Topographic Maps in Mobile Devices Este trabajo se especializa en servicios que facilitan mapas cartográficos a usuarios, y uno de sus principales factores a tomar en cuenta es la capacidad que se tiene o no para darle al usuario algo en específico que cumpla con sus expectativas, todo esto con el fin de hacer los productos más usables y comerciales. Los mapas no son un medio de comunicación, pero si, un medio de aproximación para localización de detalles vía espacial, (esto debido a que aplican ontologías para la solución de los mismos) y por lo tanto la exactitud de estos debe de ser por demás precisa, tomando en cuenta todos los detalles que conlleva. Para la eficiente provisión de los mapas solicitados se emplean las siguientes categorías de acuerdo al momento de la solicitud de los mismos: Contexto de cómputo Contexto del usuario: Refiere a habilidades físicas, habilidades perceptuales y cognitivas, y diferentes personalidades del usuario en cuestión. Contexto Físico Contexto de tiempo. Contexto de historia Sin embargo, debido a que el destino final de estos mapas son los dispositivos móviles, estos términos cambian con base en adaptabilidad. [Nivala03] 1.6.5 Matching User's Semantics with Data Semantics in Location-Based Services Relación de semántica de usuarios con semántica de datos en LBS Propone cierta flexibilidad a los servicios de información para que puedan entender correctamente lo que está siendo solicitado por el usuario, y como seleccionar la información que esa relevante para esta solicitud, tomando en cuenta la gestión, el diseño y los factores humanos. En este artículo se definen los siguientes conceptos: 1.6.5.1 Perfil de usuario Son dinámicos. Dos usuarios en las mismas condiciones, en la misma ubicación y haciendo la misma petición pueden tener resultados distintos (polimorfismo) de acuerdo a su perfil. Se definen también los perfiles de usuario de tipo estático (explicito), y de tipo dinámico (implícito), es decir, alimentados por preguntas directas acerca de sus características, hábitos o comportamiento, y alimentada por el análisis constante de su comportamiento mediante su navegación u otro método, respectivamente. Rojas, Christian 11
  • 23. Introducción 1.6.5.2 Perfiles de datos Los perfiles de datos describen servicios de datos. Del mismo modo en que un esquema describe una base de datos, un perfil de datos proporciona información acerca de los datos provistos por un servicio. [Yu05] 1.6.6 Exploiting Hierarchical Relationships in Conceptual search Debido al constante crecimiento de sitios Web, la pertinencia de muchas de las respuestas arrojadas hacia un usuario que los consulta, dependen de una cierta personalización, la cual, no existe al momento, porque a pesar de que los mecanismos son más novedosos en cuestiones de navegación y búsqueda, los principios son los mismos, utilizando palabras clave para hacer sus búsquedas. El problema en la actualidad es que si dos usuarios realizan una consulta utilizando la misma palabra de búsqueda, el motor de búsqueda arroja como resultado el mismo conjunto de respuestas, siendo que es muy probable que cada uno de ellos se haya referido a un contexto distinto. [Gauch04] La herramienta que ellos desarrollaron denominada KeyConcept toma en cuenta tanto estas palabras clave como los conceptos o temas relacionados de su consulta directa y automáticamente de Open Directory. [Odp08] Este artículo entonces, utiliza una estructuración de tipo jerárquica para poder realizar la alimentación de una ontología adoptando los beneficios de este tipo de estructuración en contraste con una de tipo vectorial, además de que toma en cuenta un mejoramiento iterativo, refinándose la jerarquía automáticamente. 1.6.7 SOUPA: Standard ontology for ubiquitous and pervasive applications En este artículo se explica a detalle el SOUPA, ésta ontología se diseñó para modelar y soportar aplicaciones de cómputo pervasivo. Esta ontología está definida en lenguaje OWL, la cual incluye un componente modular de vocabulario para representar agentes inteligentes asociados a intenciones, deseos, creencias, perfiles de usuario, información de contexto, acciones y políticas de seguridad y privacidad, y además se explica cómo puede ser extendida y usada para soportar aplicaciones de CoBrA [Chen2005] para la construcción de cuartos inteligentes (habitaciones con sensores de radio frecuencia); y MoGATU, un gestor de datos peer-to-peer para ambientes pervasivos. [Chen04] A continuación se definen los componentes de las ontologías integrantes de SOUPA: Rojas, Christian 12
  • 24. Introducción Figura 1.6 Ontologías integrantes de SOUPA 1.6.7.1 SOUPA Core. Define el vocabulario genérico y universal para la construcción de aplicaciones de computo pervasivas. Este conjunto de ontologías consiste en vocabularios para expresar conceptos que son asociados con personas, agentes, intenciones, deseos y creencias; acciones políticas, tiempo, espacio y eventos. Véase figura 1.6 1.6.7.2 SOUPA Extensión Se extiende de SOUPA Core. Define vocabulario adicional para el soporte de tipos específicos de aplicaciones y ejemplos provenientes de la definición de nuevas extensiones de ontología. figura arriba Estas ontologías son definidas con dos propósitos: o Definir y extender el conjunto de vocabularios para soportar tipos específicos de dominios y aplicaciones pervasivas. o Demostrar cómo definir nuevas ontologías por medio de la extensión de las ontologías SOUPA Core. 1.6.8 A MDD strategy for developing context-aware pervasive systems Esta tesis propone un enfoque metodológico al desarrollo de sistemas pervasivos conscientes de los contextos basados en ontologías y normas del MDD (Model-Driven Development), y ofrece las siguientes contribuciones: 1. Un conjunto de modelos para la captura de datos del contexto en tiempo de modelado. 2. Una ontología de contexto y un repositorio contextual OWL basado en esta ontología para capturar datos del contexto en tiempo de ejecución. Rojas, Christian 13
  • 25. Introducción 3. Un framework para almacenamiento automático, gestión y procesamiento de información del contexto en tiempo de ejecución. 4. Una infraestructura para la adaptación del sistema pervasivo con la finalidad de mejorar la vida del usuario Estos sistemas no solo deben capturar información del contexto, también deben entenderlo y adaptar su comportamiento acorde a éste a partir de las preferencias del usuario. En esta tesis se define una ontología de contexto y un repositorio contextual OWL como un sistema capaz de almacenar en una máquina de lenguaje procesable tanto la información contextual actual como la información contextual histórica. Este framework automáticamente actualiza el repositorio contextual OWL de acuerdo a los cambios producidos en la información contextual al tiempo de ejecución. Para poder gestionar la localización del usuario se requiere que cada uno de ellos tenga un dispositivo de localización (por ejemplo, un brazalete de identificación por radio frecuencia) para ser identificados por los propios sensores. [Serral07] 1.6.9 Categorizaciones independientes de un Usuario. 1.6.9.1 GEEK Un geek es una persona hábil para la informática, la electrónica y la tecnología, y además tiene interés por los gadgets1 y accesorios digitales y/o novedosos. Tanta fama ha cobrado este término que aquellos que se consideran GEEKS, han desarrollado un código para poder distinguirse de entre las personas que no lo son. Este código carente de sentido a simple vista contiene caracteres que identifican y describen no sólo los conocimientos de la persona sobre los temas arriba mostrados, sino también, de ciertas características físicas, de intereses socio-político- económicos, de entretenimiento y más. Cabe mencionar que cada una de las categorías y de las opciones operadas por esta categorización tiene asignado un símbolo univoco (conjunto de caracteres carentes de sentido en un contexto habitual), y formando una concatenación de acuerdo al orden de petición, es como se forma el código geek, cuyo análisis y ejemplo cae fuera de los intereses de este documento. 1. Gadget (Gizmo) Obtenido de: http://es.wikipedia.org/wiki/Gadget ; Ultima consulta: Julio 2009 Es un dispositivo que tiene un propósito y una función específica, generalmente de pequeñas proporciones, práctico y a la vez novedoso. Los gadgets suelen tener un diseño más ingenioso que el de la tecnología corriente. Rojas, Christian 14
  • 26. Introducción 1.6.9.2 AKTORS AKTORS es una ontología creada por AKT (Advanced Kwnoledge Technologies), el cual es fundado en EPSCR (Engineering and Physical Sciences Research Council) el cual tienen como objetivo desarrollar y extender un rango de tecnologías provenientes de métodos y servicios integrados de captura, modelado, publicación, rehúso y gestión del conocimiento. [Akt08] Ellos han creado una ontología para modelar a un usuario tomando en cuenta en gran medida su ubicación física y los datos de geolocalización. 1.6.9.3 Amigo de un amigo (FOAF: FRIEND Of A Friend) FOAF es un proyecto para la Web semántica que se inició en el año 2000, utilizando tecnologías desarrolladas dentro de la Web semántica para describir relaciones mediante RDF que puedan ser procesadas fácilmente por máquinas. La idea detrás de FOAF es simple: la Web trata de realizar todas las conexiones entre las cosas. FOAF proporciona algunos mecanismos básicos para que nos ayuden a decirle a la agentes sobre las conexiones entre las cosas que interesan a los usuarios finales. FOAF es una tecnología sencilla que facilita el compartir y utilizar la información sobre las personas y sus actividades (por ejemplo, fotos, calendarios, diarios), para transferir información entre los sitios Web, y para extender automáticamente, fusionar y re-usar en línea. [Miller00] Para representar el lenguaje FOAF se ha descrito una especificación con diccionarios de nombres, propiedades y clases usando tecnología RDF de W3C. En la tabla 1, se muestra el análisis sintético de cada uno de los elementos estudiados anteriormente, reflejando los parámetros más importantes. Rojas, Christian 15
  • 27. Introducción Tabla 1.1. Análisis comparativo del estado del arte. Uso en ambiente Roles de Usuario procesable OWL Retroalimentación o autoaprendizaje Uso de agentes ponderancias Arquitectura Exploración Seguridad / Privacidad Lenguaje domótico Nombre Uso de [PLANS03] Ninguna Ninguna [TRAJKOVA04] Implícita Jerárquica [CHAN07] Implícita Jerárquica [GAUCH04] Implícita Jerárquica [SARJAKOSKI03] N/E Lineal Explicita / [YU05] Ninguno Implícita Núcleo + [CHEN05] Explicita Extensión Núcleo + [CHEN04] Explicita Extensión [SERRAL07] Explicita Lineal [GEEK08] Explicita Lineal [AKTORS08] Explicita Jerárquica [MILLER00] Explicita Lineal Núcleo + Nuestro Enfoque Explicita Extensión N/E= No Especificado Rojas, Christian 16
  • 28. Introducción 1.7 ALCANCE DEL PROYECTO DE TESIS El proyecto de tesis que se dispone en este documento, se conforma de acuerdo a 5 puntos importantes: Los perfiles generados serán definidos en un lenguaje procesable (OWL). Los perfiles generados responderán a un árbol de abstracción de nombres para su explotación posterior (Véase 3.1.2) La interfaz gráfica resultante tendrá módulos dinámicos que responderán de acuerdo al contexto de los datos capturados al momento de la operación de dichos módulos. La ontología resultante en cada perfil corresponderá en su tamaño de acuerdo con los datos capturados por el usuario correspondiente, conteniendo el núcleo más las extensiones pertinentes y acordes a cada perfil. La ontología resultante de cada perfil tendrá una correspondencia directa en las clases y datos contenidos de acuerdo a un cierto dominio de aplicación. (Véase 3.1.2.3.1) 1.8 ORGANIZACIÓN DEL DOCUMENTO Este documento de tesis ésta estructurado de la siguiente manera: En el capítulo 2 se presentan los conceptos sobre las tecnologías involucradas en el desarrollo de la tesis. En el capítulo 3, se muestran los casos de uso, escenarios, diagramas de actividad, clases y secuencia que representan el análisis y diseño del proyecto realizado. En el capítulo 4, se detalla el procedimiento seguido para la obtención del prototipo. En el capítulo 5, se explica el uso de la aplicación así como segmentos de código importantes. En el capítulo 6, se presentan los resultados de las pruebas. En el capítulo 7, se presentan las aportaciones de la tesis, los trabajos futuros y las publicaciones realizadas durante el desarrollo de la tesis. Rojas, Christian 17
  • 30. CAPÍTULO II. MARCO TEÓRICO En este capítulo se presenta la teoría relacionada con el tema semántico aplicado en éste trabajo de tesis. Se inicia describiendo los conceptos relacionados con el proyecto en el ámbito semántico y continúa con los conceptos generales que se utilizaran en el transcurso de este documento.
  • 31. Marco teórico 2.1 CONCEPTOS SEMÁNTICOS 2.1.1 OWL El Lenguaje de Ontologías Web (OWL) está diseñado para ser usado en aplicaciones que necesitan procesar el contenido de la información en lugar de únicamente representar información para los humanos. OWL facilita un mecanismo de interoperabilidad de contenido Web más eficiente que los mecanismos admitidos por XML, RDF, y esquema RDF (RDF-S) proporcionando vocabulario adicional junto con una semántica formal. OWL tiene tres sub-lenguajes, con un nivel de expresividad creciente: OWL Lite, OWL DL, y OWL Full. La Web semántica se basará en la capacidad de XML para definir esquemas de etiquetas a medida y en la aproximación flexible de RDF para representar datos. El primer nivel requerido por encima de RDF para la Web semántica es un lenguaje de ontologías que pueda describir formalmente el significado de la terminología usada en los documentos Web. OWL añade más vocabulario para describir propiedades y clases: entre otros, relaciones entre clases (por ejemplo, desunión), cardinalidad (por ejemplo, "uno exacto"), igualdad, más tipos de propiedades, características de propiedades (por ejemplo, simetría), y clases enumeradas. [OWL09] 2.1.2 RDF El fundamento o base de RDF es un modelo para representar propiedades designadas y valores de propiedades. El modelo RDF se basa en principios perfectamente establecidos de varias comunidades de representación de datos. Las propiedades RDF pueden recordar a atributos de recursos y en este sentido corresponden con los tradicionales pares de atributo-valor. Las propiedades RDF representan también la relación entre recursos y por lo tanto, un modelo RDF puede parecer un diagrama entidad-relación. (De forma más precisa, los esquemas RDF que son objetos específicos de la categoría del modelo de datos RDF) son diagramas ER (Entidad Relación). En la terminología del diseño orientado a objetos, los recursos corresponden con objetos y las propiedades corresponden con objetos específicos y variables de una categoría. El modelo de datos de RDF es una forma de sintaxis-neutral para representar expresiones RDF. La representación del modelo de datos se usa para evaluar la equivalencia en significado. Dos expresiones RDF son equivalentes si y sólo si sus representaciones del modelo de datos son las mismas. Esta definición de equivalencia permite algunas variaciones sintácticas en expresiones sin alterar el significado. El modelo de datos básico consiste en tres tipos de objetos: Rojas, Christian 20
  • 32. Marco teórico Recursos Todas las cosas descritas por expresiones RDF se denominan recursos. Un recursos puede ser una página Web completa; tal como el documento HTML "http://www.w3.org/Overview.html" por ejemplo. Un recurso puede ser una parte de una página Web. Un recurso puede ser también una colección completa de páginas o un objeto que no sea directamente accesible vía Web. Propiedades Una propiedad es un aspecto específico, característica, atributo, o relación utilizado para describir un recurso. Cada propiedad tiene un significado específico, define sus valores permitidos, los tipos de recursos que puede describir, y sus relaciones con otras propiedades. Sentencias Un recurso específico junto con una propiedad denominada, más el [declaraciones, valor de dicha propiedad para ese recurso es una sentencia RDF enunciados] [RDF statement]. Estas tres partes individuales de una sentencia se denominan, respectivamente, sujeto, predicado y objeto. El objeto de una sentencia (es decir, el valor de la propiedad) puede ser otro recurso o pude ser un literal; es decir, un recurso (especificado por un URI) o una cadena simple de caracteres [string] u otros tipos de datos primitivos definidos por XML. [RDF09] 2.1.3 W3C Es un consorcio que tiene como visión la de guiar la Web a su potencialidad máxima a modo de foro de información, comercio, comunicación y conocimiento colectivo, mediante tecnologías inter-operativas, especificaciones, líneas maestras, software y herramientas. [W3C04] 2.1.4 Ontología Existen varias definiciones sobre éste concepto, entre ellas se encuentran: Una ontología constituye "Una especificación formal y explicita de una conceptualización compartida”. En esta definición, convertida ya en estándar, conceptualización se refiere a un modelo abstracto de algún fenómeno del mundo del que se identifican los conceptos que son relevantes; hace referencia a la necesidad de especificar de forma consciente los distintos conceptos que conforman una ontología. [Gruber] “Una ontología es una base de datos que describe los conceptos en el mundo y algunos dominios, algunas de sus propiedades y como los conceptos se relacionan unos con otros”. [Weigand] Rojas, Christian 21
  • 33. Marco teórico Ontología describe una cierta realidad con un vocabulario específico, usando un conjunto de premisas de acuerdo con un sentido intencional de palabras del vocabulario. [Guarino] 2.2 CONCEPTOS GENERALES 2.2.1 XSD XML Schema es un lenguaje de esquema utilizado para describir la estructura y las restricciones de los contenidos de los documentos XML de una forma muy precisa, más allá de las normas sintácticas impuestas por el propio lenguaje XML. Se consigue así una percepción del tipo de documento con un nivel alto de abstracción. Fue desarrollado por el World Wide Web Consortium (W3C) y alcanzó el nivel de recomendación en mayo de 2001. [XSD09] Rojas, Christian 22
  • 34. 3. CAPÍTULO III. ANÁLISIS Y DISEÑO En este capítulo se presentan los diagramas de caso de uso, la definición de escenarios y los diagramas de actividad que corresponden a la fase de análisis. Así mismo se presenta los diagramas de clase y de secuencia correspondiente a la etapa del diseño.
  • 35. Análisis y diseño 3.1 ANÁLISIS La figura 3.1 muestra el proceso de trabajo del proyecto, tomando en cuenta bloques de manera abstracta. Figura 3.1 Diagrama de bloques del proceso general del proyecto Como se puede apreciar en la figura 3.1, el proceso de desarrollo se dividió en dos segmentos, los referentes al entorno gráfico de la aplicación denominado “Interfaz” y el referente a la programación inmersa, denominado “Operación con clases”, las cuales se encuentran unidas mediante código. A continuación se presentan los diagramas de caso de uso, la definición de escenarios y los diagramas de actividad que corresponden a la fase de análisis del proyecto, respectivo a la sección de “operación con clases” de acuerdo a figura 3.1. Y posteriormente se mostraran las partes importantes de análisis de la sección de “Interfaz” de acuerdo a figura 3.1. Rojas, Christian 24
  • 36. Análisis y diseño 3.1.1 Análisis de operación con clases En la figura 3.2 se muestra el diagrama general de casos de uso del proyecto y se muestran las funciones principales que ofrece. Figura 3.2 Diagrama general de casos de uso En la figura 3.2 el usuario accede o crea su ontología previa autenticación y realiza modificaciones en ella mediante el uso de la interfaz. Una vez que se ha autenticado y definido si se creará, modificará o eliminará su ontología, el usuario elegirá cual será el dominio de la aplicación hacia la cual se inclinaran los datos de la captura. Este caso de uso contempla el paquete: mx.edu.cenidet.userontology.axiomsInference y mx.edu.cenidet.userontology.front Rojas, Christian 25
  • 37. Análisis y diseño Figura 3.3 Diagrama de casos de uso de Operar con la ontología Como se puede apreciar en la figura 3.3, se introdujeron dos actores más, denominados “API de conexión” referida a OWL API la cual fue únicamente consumida por el proyecto y como su nombre lo indica, tiene como funcionalidad la de ofrecer un repositorio hábil para el manejo de una ontología definida; y “Ontología” la cual es operada por la aplicación o creada si es que no existe, en la cual recaerán todas las operaciones realizadas en el proyecto. Tabla 3.1 Descripción del caso de uso Operar con la ontología ID: CU-1 El diagrama de actividades que incluye el escenario de éxito y los escenarios de fracaso se muestra en la figura 3.4 Nombre del Operar con la ontología caso de uso Actores Usuario, API de conexión, Ontología Descripción Permite al usuario realizar operaciones sobre la ontología, como lo son agregar, modificar y eliminar tanto de manera global como detallada. Precondiciones Requisitos mínimos del sistema comunes para cualquier aplicación. Poscondiciones Se obtendrá la ontología del usuario para poder ser reutilizada Escenario de 1. El usuario ingresa al sistema para crear una nueva ontología éxito 1 2. El proceso de autenticación es univoco y se comienza la captura de datos 3. Se elige el dominio de la aplicación para la captura 4. La ontología es creada Escenario de 1. El usuario ingresa al sistema para modificar su ontología éxito 2 2. El proceso de autenticación es correcto 3. Se realizan las modificaciones pertinentes apropiadamente 4. La ontología es guardada Escenario de 1. El usuario ingresa al sistema para borrar su ontología éxito 3 2. El proceso de autenticación es correcto Rojas, Christian 26
  • 38. Análisis y diseño 3. Se realiza el borrado de la ontología Escenario de 1. El usuario ingresa al sistema para realizar un agregado, fracaso 1 modificación o borrado de su ontología. 2. El proceso de autenticación no es univoco y se lanza una excepción controlada. Escenario de 1. El usuario ingresa al sistema para realizar un agregado, fracaso 1 modificación o borrado de su ontología. 2. El proceso de autenticación es correcto. 3. El usuario elije incorrectamente el dominio de la aplicación 4. Es necesario reiniciar el proceso de elección. Incluye CU-1.1 Elegir operación de altas, bajas y consultas, CU-1.2 Elegir dominio de aplicación, CU-1.1 Enlazar con ontología Suposiciones Se supone que la aplicación importa la librería en donde se encuentra la API Rojas, Christian 27
  • 39. Análisis y diseño act CU-1 Operar con la ontología Existent e Autenticar Enlazar con ontología (API) Razonador Nuevo Validar usuario y Elegir tipo de usuario passw ord nuev o No Ontología consistent e Cancelar peticiones Si Elegir dominio de aplicacion Autenticacion correcta Si Elegir operación a ontología Informar Ex cepción Accesar a clases Extensibilidad y Deducción Enlazar con ontología (API) Razonador Cancelar peticiones y Rollback a ej ecuciones truncas No Si Informar Ex cepción Operar en Ontología Ontología consistent e Figura 3.4 Diagrama de actividad del caso de uso CU-1 Operar con la ontología A continuación se muestran las tablas de descripción de los casos de uso para cada caso de uso dependiente de Operar con la ontología, así como su correspondiente diagrama de actividad. Tabla 3.2 Descripción del caso de uso Elegir operación de altas, bajas y consultas ID: CU-1.1 El diagrama de actividades que incluye el escenario de éxito y los escenarios de fracaso se muestra en la figura 3.5. Nombre del Elegir operación de altas, bajas y consultas caso de uso Actores Elegir asunto de conexión. Descripción Permitirá al usuario elegir cuál será el motivo de acceso a la ontología para que el sistema utilice la interfaz adecuada para dicha acción. Rojas, Christian 28
  • 40. Análisis y diseño Precondiciones 1. El usuario deberá haber pasado el proceso de autenticación correctamente. 2. Deberá haberse seleccionado ya la ontología a utilizar ya sea nueva o existente. Poscondiciones 1. El usuario accederá a la interfaz pre programada para la operación con las clases. Escenario de 1. El usuario se autentica correctamente. éxito 1 2. El usuario elige la operación a realizar. 3. La ontología es creada, modificada o eliminada correctamente. 4. La ontología es guardada. Escenario de 1. El usuario ingresa al sistema para realizar un agregado, modificación fracaso 1 o borrado de su ontología. 2. La ontología es inconsistente por cuestiones ajenas a la aplicación y es detectada por el razonador. 3. Actuación del manejador de la excepción generada. Incluye Suposiciones Se supone que la aplicación importa la librería en donde se encuentra la API Rojas, Christian 29
  • 41. Análisis y diseño act CU-1.1 Eleccion operacion con ontología Seleccionar operacion a ontología Enlazar con ontología (API) Raz onador Ontología consistent e No Informar Ex cepción Si Operación Leer y nav egar en la ontología Modficar Mostrar interfaz apropiada Eliminar Eliminar obj etos Adaptar extensibilidad y deducción Eliminar indiv iduals Enlazar con ontología (API) Raz onador Si Ontología consistent e No Operar en ontología Informar ex cepción Manej ar excepción Figura 3.5 Diagrama de actividad del caso de uso Elegir operación de altas, bajas y consultas Rojas, Christian 30
  • 42. Análisis y diseño Tabla 3.3 Descripción del caso de uso Elegir dominio de aplicación ID: CU-1.2 El diagrama de actividades que incluye el escenario de éxito y los escenarios de fracaso se muestra en la figura 3.6 Nombre del Elegir dominio de aplicación caso de uso Actores Elegir modo de captura Descripción Permitirá al usuario elegir cuál será la inclinación del proceso de captura, para que el sistema haga distinguir visualmente cuales son los campos recomendados y los optativos para el usuario de este dominio. Precondiciones 1. El usuario deberá haber pasado el proceso de autenticación correctamente. 2. Deberá haberse seleccionado la opción de una ontología nueva. Poscondiciones 1. Las clases disponibles para la captura estarán distribuidas de acuerdo al dominio de la aplicación elegido. Escenario de 1. El usuario se autentica correctamente. éxito 1 2. El usuario elige crear una ontología, y elige el dominio de la aplicación. 3. El usuario captura los datos en una o varias corridas de la aplicación. Escenario de 1. El usuario se autentica correctamente. fracaso 1 2. El usuario elige crear una ontología, y elige el dominio de la aplicación. 3. Debido a un error en la captura, la ontología se vuelve inconsistente y es notada por el razonador. 4. Se lanza una excepción Incluye Suposiciones Se supone que la aplicación importa la librería en donde se encuentra la API Rojas, Christian 31