Desarrollo de aplicaciones web 3.0 (linked data + bpm + cloud)

3,717 views
3,491 views

Published on

En esta sesión veremos como se puede utilizar la herramienta open source SemanticWebBuilder para acelerar el desarrollo e implementación de aplicaciones web 3.0, con las que puedes realizar tareas como construcción de portales web semánticos, así como diseño e implementación de procesos de negocio y todo esto en ambientes tradicionales o distribuidos.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,717
On SlideShare
0
From Embeds
0
Number of Embeds
36
Actions
Shares
0
Downloads
90
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Desarrollo de aplicaciones web 3.0 (linked data + bpm + cloud)

  1. 1. #SGWeb3.0  
  2. 2. Presentación  de    Desarrollo  de  Aplicaciones  Web  3.0     Linked  Data  +  BPM  +  Cloud  
  3. 3. Agenda  1 ¿Quién  es  INFOTEC?   2 Evolución  de  la  Web   2 La  Web  SemánMca   3 Linked  Data   4 Desarrollo  Dirigido  por  Ontologías   5 Demo   6 Preguntas  
  4. 4. ¿Quién  es  INFOTEC?  
  5. 5. ¿Quién  es  INFOTEC?  Somos  un  Centro  Público  de  Inves2gacion  y  Desarrollo  Tecnológico  que  contribuye  a  la  compe22vidad  del  Gobierno  y  de  las  PyMEs,  a  través  del  uso  estratégico  de  Tecnologías  de  Información  y  Comunicaciones.   INFOTEC  =  I  +  D  +  DT  x  i   Estrategia  basada  en   Oferta   Arquitecturas   Empresariales   InvesBgación  Aplicada  y  Bajo   Demanda   Formación  de  Capital  Humano   Consultoría  Estratégica   Sistemas  de  Información  Estratégica   Administración  Integral  de   Infraestructura  
  6. 6. Evolución  de  la  Web  
  7. 7. Evolución  de  la  Web  La  evolución  de  la  Web  podría  dividirse  en  tres  niveles   principalmente:   •  Web  1.0  -­‐  Personas  conectándose  a  la   Web     •  Web  2.0  -­‐  Personas  conectándose  a   personas  -­‐  redes  sociales,  wikis,   colaboración,  posibilidad  de   comparMr.     •  Web  SemánBca  -­‐  Aplicaciones  Web   conectándose  a  aplicaciones  Web,  a   fin  de  enriquecer  la  experiencia  de  las   personas.    
  8. 8. La  Web  SemánMca  
  9. 9. La  Web  SemánBca  Cómo  Representar  el  mundo  en  una  máquina  (IA)  
  10. 10. La  Web  SemánBca  Cómo  percibimos  y  describimos  el  mundo   Es  una  construcción  de  piedra  y  madera  que  sirve  para  vivir.   Está  dividida  en  habitaciones  con  puertas  y  ventanas  para  el  acceso  de  los   habitantes.  
  11. 11. Qué  es  SemánBca  Cómo  percibimos  y  describimos  el  mundo   hecha  de   usada  para   hecha  de   Mene   Mene   es  una   pertenece  a   Mene  
  12. 12. La  Web  SemánBca  según  Tim  Berners  Lee   Una  web  semánMca  es  una  red  de   datos  que  pueden  ser  procesados   directa  o  indirectamente  por   máquinas.       Es  una  web  extendida  que  permiMrá  a   humanos  y  máquinas  trabajar  en   cooperación  mutua.  
  13. 13. El  problema…   ?  
  14. 14. Web  SemánBca  
  15. 15. Predicción  de  Gartner   •  En   2012   el   80%   de   los   siMos   web   públicos   usarán   algún   nivel   de   hipertexto   semánMco   para   crear   documentos   de   la   Web   SemánMca   […]   el   15%   de   los   siMos   web   públicos   usarán   ontologías   basadas   en   Web   SemánMca   más   amplias   para   crear  bases  de  datos  semánMcas   •  En   el   2017   esperamos   la   visión   de   la   Web   SemánMca   […]   la   mayoría   de   las   páginas   web  están  decoradas  con  alguna  forma  de  hipertexto  semánMco   •  Fuente:  “Finding  and  exploiMng  value  in  semanMc  web  technologies  on  the  web”,  Informe  de   InvesMgación  de  Gartner,  Mayo  de  2007  
  16. 16. Visión  de  la  Web  SemánBca   El  objeMvo  detrás  de  darle  significado  a  la  información  es  crecer  al  Internet  a  un   plano  de  conocimiento.  
  17. 17. Componentes  de  la  Web  SemánBca  No  se  trata  de  una  inteligencia  arMficial  mágica  que  permita  a  las  máquinas  entender  las   palabras   de   los   usuarios,   es   sólo   la   habilidad   de   una   máquina   para   resolver  problemas  bien  definidos,  a  través  de  operaciones  bien  definidas  que  se  llevarán  a  cabo  sobre  datos  existentes  bien  definidos.    Para   obtener   esa   adecuada   definición   de   los   datos,   la   Web   SemánBca   uMliza  esencialmente  RDF,  SPARQL,  y  OWL,  mecanismos  que  ayudan  a  converMr  la  Web  en  una   infraestructura   global   en   la   que   es   posible   comparMr,   y   reuMlizar   datos   y  documentos  entre  diferentes  aplicaciones  y  usuarios.  
  18. 18. ¿Qué  es  Resource  DefiniBon  Framework?   RDF   es   un   modelo   de   datos   para   los   recursos   y   las   relaciones   que   se   puedan   establecer   entre   ellos.   Aporta   una   semánMca   básica   para   este   modelo   de   datos   que   puede  representarse  mediante  XML.       RDF  proporciona  información  descripMva  simple  sobre  los  recursos  que  se  encuentran   en  la  Web  y  que  se  uMliza,  por  ejemplo,  en  catálogos  de  libros,  directorios,  colecciones   personales  de  música,  fotos,  eventos,  etc.     TRIPLAS   <casa><hecha  de><piedra>   <casa><hecha  de><madera>   <casa><usada  para><vivir>  Triple:   <casa><Mene><habitación>   <casa><es  una><construcción>  Sujeto  –  Propiedad  –  Objeto   <casa><pertenece  a><Homero  Simpson>   <  habitación><Mene><puerta>   <  habitación><Mene><ventana>  
  19. 19. ¿Qué  es  SPARQL?   SPARQL  es  lenguaje  de  consulta  sobre  RDF,  que  permite  hacer  búsquedas  sobre  los   recursos  de  la  Web  SemánBca  uMlizando  disMntas  fuentes  datos.    
  20. 20. DBPedia.org  
  21. 21. ¿Qué  es  Ontology  Web  Language?   OWL  es  un  mecanismo  para  desarrollar  temas  o  vocabularios  específicos  en  los  cuales   asociar   los   recursos.   Lo   que   hace   OWL   es   proporcionar   un   lenguaje   para   definir   ontologías   estructuradas   que   pueden   ser   uMlizadas   a   través   de   diferentes   sistemas.   Las  ontologías  incluyen  definiciones  de  conceptos  básicos  en  un  campo  determinado  y   la  relación  entre  ellos.       Específicamente  OWL  es  un  vocabulario  para  describir  las  propiedades  y  las  clases  de   los   recursos   RDF,  ya  que  permite  establecer  jerarquías  de  generalización  entre  dichas   propiedades  y  clases,  además  de  describir  relaciones  entre  clases  como  disyunción,   cardinalidad   (por   ejemplo   "únicamente   uno"),   igualdad,   Mpologías   de   propiedades   más   complejas,   caracterización   de   propiedades   (por   ejemplo   simetría)   o   clases   enumeradas.    
  22. 22. Visión  de  la  Infraestructura  de  la  Web  
  23. 23. Linked  Data  
  24. 24.  ¿Linked  Data?  Linked   Data   es   una   propuesta   para   ayudar   a   construir  la  Web  SemánMca.      Linked  Data  describe  la  forma  de  exponer,  comparMr  y  conectar   piezas   de   datos,   información   y   conocimiento  a  través  de  la  web  
  25. 25. Reglas  para  construir  datos  enlazados  (Linked  Data)  1.  UMliza  URIs  como  nombres  para  objetos  2.  UMliza   URIs   HTTP   para   que   las   personas   pueda   buscar   esos   nombres.  3.  Cuando  alguien  busque  un  URI,  proporcionar  información  úMl,   uMlizando  las  normas  (RDF,  SPARQL)  4.  Incluir   enlaces   a   otros   URIs   para   que   puedan   descubrir   más   cosas  (Datos  enlazados).  
  26. 26. ¿Open  Data?      Open  Data  es  una  forma  de  publicar  datos  de  organizaciones  públicas  y  privadas,  en  formatos  que  sean  reuMlizables  por  personas  e  insMtuciones.    En   su   planteamiento,   Open   Data   se   asemeja   al   movimiento   Open   Source,   pero   a  diferencia   de   éste   no   apunta   a   desarrollar   sotware   sino   a   posibilitar   el   acceso   y  reuMlización  de  datos.    Wikipedia:    Open   Data   es   una   filosoua   y   prácMca   que   persigue   que   determinados   datos   estén  disponibles   de   forma   libre   a   todo   el   mundo,   sin   restricciones   de   copyright,   patentes   u  otros  mecanismos  de  control.    Tiene  una  éMca  similar  a  otros  movimientos  y  comunidades  abiertos  como  el  código  abierto  (open  source  en  inglés)  y  el  acceso  libre  (open  access  en  inglés).    
  27. 27. Las  cinco  estrellas  del  Open  Linked  Data      •  Una  estrella:  ofrecer  los  datos  en  cualquier  formato,  aunque  sean  diuciles  de   manipular,  como  un  pdf  por  ejemplo  o  una  imagen  escaneada..  •  Dos  estrellas:  entregar  los  datos  de  manera  estructurada,  como  en  un  archivo   excel  con  extension  xls.  •  Tres  estrellas:  entregar  los  datos  en  un  formato  que  no  sea  propietario,  como   csv  en  vez  de  excel,  xml,  rdf,  etc.  •  Cuatro   estrellas:   usar   URI   (que   es   una   dirección   web   de   un   dato   que   sirve   para   enlazarlo   con   otros   datos)   para   idenMficar   cosas   y   propiedades,   de   manera  que  se  pueda  apuntar  a  los  datos.  De  preferencia  usar  el  estándar  de   RDF  •  Cinco   estrellas:   vincular   sus   datos   con   los   de   otras   personas,   dotándolos   de   contexto.   En   la   prácMca,   a   que   la   información   entregada   también   apunte   a   otras   fuentes   de   datos.   Por   ejemplo,   si   coloco   un   país   dentro   de   mis   datos,   puedo   agregar   una   URI   de   referencia   que   apunte   a   los   datos   de   ese   país   en   Dbpedia  o  a  Geonames.  
  28. 28. Crecimiento  de  la  nube  de  Linked  Data   Mayo  2007  (12  Datasets)     Linking  Open  Data  cloud  diagram,  by  Richard  Cyganiak  and  Anja  Jentzsch.  hwp://lod-­‐cloud.net/  
  29. 29. Crecimiento  de  la  nube  de  Linked  Data  SepMembre    2008  (45  Datasets)     Linking  Open  Data  cloud  diagram,  by  Richard  Cyganiak  and  Anja  Jentzsch.  hwp://lod-­‐cloud.net/  
  30. 30. Crecimiento  de  la  nube  de  Linked  Data  Julio  2009  (95  Datasets)     Linking  Open  Data  cloud  diagram,  by  Richard  Cyganiak  and  Anja  Jentzsch.  hwp://lod-­‐cloud.net/  
  31. 31. Crecimiento  de  la  nube  de  Linked  Data  SepMembre  2010  (203  Datasets)     Linking  Open  Data  cloud  diagram,  by  Richard  Cyganiak  and  Anja  Jentzsch.  hwp://lod-­‐cloud.net/  
  32. 32. Crecimiento  de  la  nube  de  Linked  Data  SepMembre  2011  (295  Datasets,  31  billions  de  triples)     Linking  Open  Data  cloud  diagram,  by  Richard  Cyganiak  and  Anja  Jentzsch.  hwp://lod-­‐cloud.net/  
  33. 33. Desarrollo  Dirigido   por  Ontologías  
  34. 34. Linea  de  Tiempo  del  Desarrollo  de  la    Familia  SemanBcWebBuilder   +  SemánMca   Necesidades de! Navegación y SWB  Social  Process        ●   Búsqueda! SWB  Social        ●   SWB  Cloud        ●   SWB  Search        ●  Necesidades de! SWProcess        ●   2012  Administración y Publicación! SWB  Pla{orm        ●   2011   2010   SWB        ●   2009   WB  3.2  Open  Source    ●   2007   WB  3.1        ●   2006   WB  3.0        ●   2005   WB  2.5        ●   2004   WB  2.1        ●   2003   WB  2.0        ●   WB  1.0   WB  1.5   2002   ●   ●   2000   2001  
  35. 35. Desarrollo  Dirigido  por  Ontologías   El   Desarrollo   Dirigido   por   Ontologías   es   un   nuevo   paradigma   de   desarrollo   que   toma   como   punto   de   parMda   el   conocimiento   de   un   dominio   capturado   en   una   ontología   para   generar   de   manera   automáMca   la   arquitectura   y   funcionalidad   básica   de   un   sistema   de   sodware   cuyos   objetos   son   persistentes   de   manera   naMva  en  RDF  
  36. 36. Evolución  de  los  paradigmas  de  desarrollo   Desarrollo  Dirigido  por  Ontologías   Modelos  Ontológicos  (conocimiento)   Nivel  de  complejidad   Nivel  de  abstracción   Desarrollo  Dirigido  por  Modelos   Modelos  orientados  a  objetos  (relaciones)   Programación  Orientada  a  Objetos   Lenguajes  de  Programación  (objetos)  
  37. 37. Transformación  de  Modelo  Ontológico  a  Código   Generar  Código  
  38. 38. Transformación  de  Modelo  Ontológico  a  Código   Generar  Código  
  39. 39. ¿Qué  es  SemanBcWebBuilder?   SemanBcWebBuilder   es   una   suite   de   herramientas   para   el   desarrollo   de   aplicaciones   y   portales  semánMcos.  
  40. 40. SemanBcWebBuilder  Suite  Las  herramientas  que  integran  la  suite  del  SemanMcWebBuilder  son:     SW  Process   •  Modelador  de  Procesos  (BPMN  2.0)   •  Motor  de  procesos   SWB  Portal   •  Servidor  de  Portales   •  Administración  de  contenidos   •  Administración  de  contextos  de  información   •  Administración  de  Usuarios   SWB  Ontology  Editor  (En  desarrollo)   •  Modelado  de  Información  (Definir  significado)   •  Editor  de  Ontologías  (OWL)     SWB  Plaeorm   •  Plataforma  SemánMca   •  Punto  de  acceso  para  consultas  semánMcas  (SPARQL)   •  Integración  de  Información  (Fuentes  externas)   •  Generación  de  código  basado  en  ontologías   •  Soporte  a  Cloud   SWB  Triple  Store   •  Persistencia  de  Datos  (RDF)  
  41. 41. SemanBcWebBuilder  como  Código  Abierto     En   INFOTEC   por   su   naturaleza   como   Centro   de   InvesMgación   y   Desarrollo   Tecnológico   del   CONACYT   y   buscando   como   principal   objeMvo   el   apoyo   a   la   comunidad  más  que  el  beneficio  económico,  se  tomo  la  decisión  de  liberar  el   producto  bajo  un  esquema  de  código  abierto  con  la  finalidad  de:     –  Apoyar  al  crecimiento  de  la  industria  de  TI  en  el  país   –  Abrir  una  oportunidad  de  negocia  a  la  inicia:va  privada   –  Buscar  el  apoyo  de  la  comunidad  para  crecer  y  evolucionar  la  herramienta   –  Incrementar  el  potencial  de  penetración  en  el  mercado     Esta   decisión   esta   encaminada   a   brindar   a   la   sociedad   en   general   la   oportunidad   de   contar   con   herramientas   que   le   permitan   el   desarrollo   de   nuevas  oportunidades  de  negocio  en  disMntos  ámbitos.  
  42. 42. Ontología  VisitMexico  
  43. 43. Demo  
  44. 44. Ontología  SWB  Portal  
  45. 45. Ontología  SWB  Process  
  46. 46. SemanBcWebBuilder  Suite  
  47. 47. Arquitectura  de  capas   Niveles (Core Model) Ontología Código Autogenerado Código Personalizado SemWB Platform Cache, Sincronización SemWB TripleStore RDF Library SemWB Base
  48. 48. Arquitectura  de  capas   Componentes SWBPortal SWBForms SWBModel SWBPlatform SWBTripleStore RDF Library SWBBase
  49. 49. CaracterísBcas  tecnológicas     Estándares   Persistencia  SemánMca   •  RDF,  RDFS   •  Memoria   •  OWL   •  Sistema  de  archivos   •  SPARQL   •  Base  de  Datos  Relacional  (HSQLDB,  MySQL,   •  HTML   PostgreSQL,  Derby,  Oracle,   •  XHTML   Microsot  SQL  Server)   •  XML   •  Base  de  Datos  RDF  NaMvas  (Virtuoso,  Oracle  11g   •  JSR  168:  Portlet  SpecificaMon   RDF,  Allegro  Graph)   •  JSR  170:  Content  Repository  for  JavaTM   •  Bigdata   technology  API     •  JSR  286:  Portlet  SpecificaMon  2.0   Soporte  a  Cloud   •  JSR-­‐223:  Script  engines  for  many  languages   •  Sincronizacion  automaMca  de  cache  de   •  WSRP  (Web  Services  for  Remote  Portlets)   Instancias   •  JAAS   •  Soporte  a  Cloud-­‐Front   •  LDAP  v3  (cliente)   •  Full  Page  Cache  en  base  a  alertas   •  XMLRPC     •  BPMN  2.0   Otras  tecnologías   •  XPDL  2.1   •  Dojo     •  Jena,  ARQ   Lenguajes  de  desarrollo   •  Java  script   •  Java  JEE  (servidor)   •  Ajax   •  .Net  Framework  3.5  (cliente  office)    
  50. 50. Ventajas  del  Desarrollo  Dirigido  por    Ontologías   •  Se  enfocan  los  esfuerzos  del  equipo  de  desarrollo  en  el  correcto  modelado  del  dominio  más   que  en  la  definición  y  programación  del  sistema   •  El   modelo   del   sistema   es   comprensible   por   todas   las   partes   involucradas   en   el   desarrollo,   pues  se  usan  conceptos  en  un  alto  nivel  de  abstracción   •  Un   cambio   en   el   modelo   afecta   al   código   base   del   sistema,   pero   un   cambio   en   el   código   extendido  no  afecta  al  modelo,  lo  que  permite  mantener  y  reuMlizar  la  funcionalidad  existente   •  El   API   se   programación   semánMca   permite   a   los   programadores   trabajar   con   ontologías,   RDF   y   TripleStores  sin  requerir  conocimientos  profundos  en  esos  tópicos   •  Los   recursos   humanos   y   el   Bempo   necesarios   para   el   desarrollo   se   reducen   considerablemente   •  Los  datos  de  la  aplicación  se  almacenan  de  manera  semánMca,  por  lo  que  es  posible  realizar   consultas  complejas  y  muy  específicas  
  51. 51. Conclusiones  La   Web   SemanMca   y   el   Desarrollo   de   aplicaciones   Web   3.0   es   ya   una   realidad   y   nos  abre  las  puertas  a  un  nuevo  mundo  de  posibilidades,  en  donde  la  integracion  de  datos  de  diferentes  fuentes  es  el  puento  principal.    Actualmente  existen  muchas  fuentes  de  datos  accesibles  por  medio  de  APIs  de  la  Web  2.0  como  eBay,  Amazon,  Yahoo,  Google.  La  tecnología  SemánMca  Mene  la  ventaja  de  proveer  un  solo  mecanismo  estandar  para  el  intercambio  de  datos,  permiMendo  a  las  fuentes  de  datos  sea:    •  Más  facil  para  indexar  por  los  buscadores  •  Es  accesible  por  los  navegadores  genericos  •  Permite  ligar  datos  de  diferenctes  fuentes.  El  uMlizar  los  conceptos  de  la  Web  SemanMca  para  el  desarrollo  de  aplicaciones  abre  la  posibilidad   de   construir   una   nueva   generación   de   aplicaciones   a   una   fraccion   del  Mempo   y   cuya   caracterisMca   principal   se   centra   en   la   posibilidad   de   administrar  información  compleja  y  distribuida.  
  52. 52. Preguntas  
  53. 53. Gracias   http://www.infotec.com.mxhttp://www.semanticwebbuilder.org.mx javier.solis@infotec.com.mx @softjei gdnps@infotec.com.mx

×