breogán gonda [email protected] ¿desarrollo orientado a procesos u orientado a datos? reflexiones...

66
Breogán Gonda [email protected] ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de Bases de Datos

Upload: luis-castellon

Post on 28-Jan-2016

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Breogán [email protected]

¿Desarrollo orientado a procesos u orientado a datos?Reflexiones en el 40° aniversario de los Sistemas de Gerencia de Bases de Datos

Page 2: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Bases de Datos: grandes actores

Durante los últimos 40 años, unos pocos grandes actores hicieron la historia. Los principales son:

Personas: Charles Bachman, Edgar F. Codd

Empresas: IBM, ORACLE

Durante los últimos 40 años, unos pocos grandes actores hicieron la historia. Los principales son:

Personas: Charles Bachman, Edgar F. Codd

Empresas: IBM, ORACLE

Page 3: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

¿Desarrollo orientado a procesos u orientado a datos?

¿Son esenciales los “sistemas algorítmicos”?

¿Por qué tenemos que prever todo y desarrollar algoritmos para cada necesidad potencial de cada usuario?

¿Son esenciales los “sistemas algorítmicos”?

¿Por qué tenemos que prever todo y desarrollar algoritmos para cada necesidad potencial de cada usuario?

Page 4: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

¿Desarrollo orientado a procesos y orientado a datos?

¡Porque no tenemos bases de datos inteligentes!

¡Porque no tenemos bases de datos inteligentes!

Page 5: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Bases de Datos “inteligentes”

Les damos el conocimiento necesario (reglas del negocio, reglas de precedencia y/o de flujo, reglas de autorización) en forma declarativa

El usuario, de una manera simple, hace todo aquello que desea y está autorizado a hacer, sin necesidad de programar

Les damos el conocimiento necesario (reglas del negocio, reglas de precedencia y/o de flujo, reglas de autorización) en forma declarativa

El usuario, de una manera simple, hace todo aquello que desea y está autorizado a hacer, sin necesidad de programar

Page 6: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Bases de Datos

Las bases de datos son esenciales para tener buenos sistemas

El mundo de las bases de datos siempre ha sido desparejo

Las bases de datos son el soporte del desarrollo orientado a datos

Las bases de datos son esenciales para tener buenos sistemas

El mundo de las bases de datos siempre ha sido desparejo

Las bases de datos son el soporte del desarrollo orientado a datos

Page 7: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

El contexto: un poco de historia

La tercera generación de computadores y la guerra comercial desatada en 1963

Los actores: Honeywell, IBM, General Electric, RCA, Univac

Hardware y software

Sistemas Operativos

Lenguajes de programación estándar

1970: la guerra a terminado, IBM ha ganado ampliamente

La tercera generación de computadores y la guerra comercial desatada en 1963

Los actores: Honeywell, IBM, General Electric, RCA, Univac

Hardware y software

Sistemas Operativos

Lenguajes de programación estándar

1970: la guerra a terminado, IBM ha ganado ampliamente

Page 8: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

La justicia de los EE UU y la industria del software

Obligación de cotizar y comercializar por separado software y hardware

Obligación de cotizar y comercializar por separado software y hardware

Page 9: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Charles Bachman y el primer SGBD

En 1963 GE y BULL-GE lanzan el primer Sistema de Gerencia de Base de datos:

el IDS

En 1963 GE y BULL-GE lanzan el primer Sistema de Gerencia de Base de datos:

el IDS

Page 10: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Charles Bachman y el primer SGBD

Las ideas de Charles Bachman son:

la base de datos contiene todos los datos de la empresa u organización;

y los mecanismos de acceso necesarios para su uso;

y los mecanismos de aseguramiento de la integridad;

todos los programas interactúan con la base de datos (no hay datos fuera de ella)

Las ideas de Charles Bachman son:

la base de datos contiene todos los datos de la empresa u organización;

y los mecanismos de acceso necesarios para su uso;

y los mecanismos de aseguramiento de la integridad;

todos los programas interactúan con la base de datos (no hay datos fuera de ella)

Page 11: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Charles Bachman y el primer SGBD

¡El acceso a los datos y su consistencia quedan en manos del SGBD!,

¡estábamos en 1963!

¡El acceso a los datos y su consistencia quedan en manos del SGBD!,

¡estábamos en 1963!

Page 12: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

El primer SGBD: IDS

Arquitectura del IDS

Estructura de red:Integridad de entidadIntegridad referencial “cada hijo tiene, al menos, un padre”

Implementación:Acceso randómico por llave primariaAcceso por vía de pointers: “padre a hijos”, “hijo a padre”, “hermano a hermano”

Arquitectura del IDS

Estructura de red:Integridad de entidadIntegridad referencial “cada hijo tiene, al menos, un padre”

Implementación:Acceso randómico por llave primariaAcceso por vía de pointers: “padre a hijos”, “hijo a padre”, “hermano a hermano”

Page 13: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Cliente

Factura

Producto

Factura

Líneas dela Factura

Cliente

Factura Factura

Líneas dela Factura Líneas de

la Factura

Líneas dela Factura

Líneas dela FacturaLíneas de

la Factura

Líneas dela Factura

Líneas dela Factura Líneas de

la Factura

Líneas dela Factura

Factura

Líneas dela Factura

Líneas dela Factura

Producto

Producto

Primer diagrama de Bachman

Page 14: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Diagrama de Bachman

Cliente

Factura

Producto

Líneas dela Factura

Page 15: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

El éxito del IDS y la respuesta del mercado

Gran éxito del IDS en las aplicaciones muy complejas

Sólo enormes empresas usan bases de datos

Las respuestas básicas las da IBM

BOMP: red limitada a dos niveles (los “hijos” no son “padres”

IMS: árboles (cada “hijo” tiene un y un solo “padre”

Gran éxito del IDS en las aplicaciones muy complejas

Sólo enormes empresas usan bases de datos

Las respuestas básicas las da IBM

BOMP: red limitada a dos niveles (los “hijos” no son “padres”

IMS: árboles (cada “hijo” tiene un y un solo “padre”

Page 16: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

El IMS

Entre el BOMP y el IMS, IBM opta por el IMS

Se crea la empresa Cincom Systems que, sobre las ideas básicas del BOMP lanza el TOTAL

Entre el BOMP y el IMS, IBM opta por el IMS

Se crea la empresa Cincom Systems que, sobre las ideas básicas del BOMP lanza el TOTAL

Page 17: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

El IMS

Se pretendió representar la realidad de una manera jerárquica

Las visiones de la realidad que los humanos somos capaces de manejar con comodidad son jerárquicas

Pero…. la realidad no es jerárquica

Se pretendió representar la realidad de una manera jerárquica

Las visiones de la realidad que los humanos somos capaces de manejar con comodidad son jerárquicas

Pero…. la realidad no es jerárquica

Page 18: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Cliente

Factura

Producto

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Árboles

Page 19: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Árboles redundantes

Cliente

Factura Factura Factura

Producto

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Page 20: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Poder expresivo y facilidad / dificultad de reorganización

IDS: redes libresMuy alto poder expresivo (cero programación para el acceso e integridad)Reorganización muy dificultosa

TOTAL: redes de 2 nivelesPoder expresivo medio (poca programación para el acceso, programación de la integridad cuando existen más de 2 niveles)Reorganización de dificultad media

IMS: bosque de árbolesPoder expresivo muy bajo (programación para el acceso y la integridad)Reorganización muy fácil

IDS: redes libresMuy alto poder expresivo (cero programación para el acceso e integridad)Reorganización muy dificultosa

TOTAL: redes de 2 nivelesPoder expresivo medio (poca programación para el acceso, programación de la integridad cuando existen más de 2 niveles)Reorganización de dificultad media

IMS: bosque de árbolesPoder expresivo muy bajo (programación para el acceso y la integridad)Reorganización muy fácil

Page 21: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

IMS

Ante el insuficiente poder expresivo de los bosques de árboles:

redundancia

redes donde hojas de árboles apuntan a otras de otros árboles

Ante el insuficiente poder expresivo de los bosques de árboles:

redundancia

redes donde hojas de árboles apuntan a otras de otros árboles

Page 22: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Árboles virtuales

Cliente

Factura Factura Factura

Producto

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Líneas dela Factura

Page 23: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

TOTAL

TOTAL presenta una concepción equilibrada y una implementación realista

Funciona potencialmente con cualquier hardware

Rápidamente domina el mercado de las empresas medias, que es el que más crece

TOTAL presenta una concepción equilibrada y una implementación realista

Funciona potencialmente con cualquier hardware

Rápidamente domina el mercado de las empresas medias, que es el que más crece

Page 24: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Cliente

FacturaProducto

Líneas dela Factura

Cliente/Factura

Page 25: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Cliente

FacturaProducto

Líneas dela Factura

Cliente/Factura

Integridadmanual

Integridadautomática

Page 26: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

…un comentario al pasar…

Era tan difícil y costosa la reorganización física de las bases de datos que no veíamos que había un problema teóricamente más grave: la pérdida de validez de los programas

Era tan difícil y costosa la reorganización física de las bases de datos que no veíamos que había un problema teóricamente más grave: la pérdida de validez de los programas

Page 27: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

La respuesta a la complejidad estructural: sistemas basados en índices

Datacom

Adabas

¿Vsam?

Datacom

Adabas

¿Vsam?

Page 28: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

La respuesta a la complejidad estructural: sistemas basados en índices

Poder expresivo: muy bajo

facilitan el acceso

el cuidado de la integridad queda totalmente en manos del programador

primeras implementaciones de la “independencia de datos”

Velocidad: muy buena (¡y creciente!)

Facilidad de reorganización: muy buena

Poder expresivo: muy bajo

facilitan el acceso

el cuidado de la integridad queda totalmente en manos del programador

primeras implementaciones de la “independencia de datos”

Velocidad: muy buena (¡y creciente!)

Facilidad de reorganización: muy buena

Page 29: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

La búsqueda de la simplificación y la “usabilidad”: Codd y el modelo relacional

¿la realidad es tan compleja o los humanos nos complicamos inútilmente para representarla?

¿la realidad es tan compleja o los humanos nos complicamos inútilmente para representarla?

Page 30: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

La búsqueda de la simplificación y la “usabilidad”: Codd y el modelo relacional

La “era del usuario”:

Codd quiere tornar disponibles las bases de datos – en todos los aspectos – para todo el mundo, quitándolas del ámbito de los súper especialistas

La “era del usuario”:

Codd quiere tornar disponibles las bases de datos – en todos los aspectos – para todo el mundo, quitándolas del ámbito de los súper especialistas

Page 31: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

La búsqueda de la simplificación y la “usabilidad”: Codd y el modelo relacional

El modelo relacional

Representación simple

Criterios para identificar / controlar la redundancia

Reglas y operadores para manipular automáticamente los datos

¿Reglas de integridad?

El modelo relacional

Representación simple

Criterios para identificar / controlar la redundancia

Reglas y operadores para manipular automáticamente los datos

¿Reglas de integridad?

Page 32: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Las bases de datos relacionales

IBM especifica y publica el lenguaje SQL IBM especifica y publica el lenguaje SQL

Page 33: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Las bases de datos relacionales

Todo el mundo se declara favorable a las bases de datos relacionales y “adopta” el SQL, pero…

Todo el mundo se declara favorable a las bases de datos relacionales y “adopta” el SQL, pero…

Page 34: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

La ineficiencia de los prototipos de los SGBD relacionales: siguen las implementaciones casuísticas

Teorización excesiva de los implementadores

Bases de datos sin mecanismos de acceso….

“Es una muy buena idea, pero….”

“Memorias de burbujas magnéticas”….

¡Estábamos ante una idea tan buena que parecía que no era necesario que hiciéramos nada!

¡“Mi base de datos es relacional”!

Teorización excesiva de los implementadores

Bases de datos sin mecanismos de acceso….

“Es una muy buena idea, pero….”

“Memorias de burbujas magnéticas”….

¡Estábamos ante una idea tan buena que parecía que no era necesario que hiciéramos nada!

¡“Mi base de datos es relacional”!

Page 35: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

¿Desarrollo orientado a datos o desarrollo orientado a procesos?

Desarrollo orientado a procesos

Análisis, Proyecto y Programación Estructurados

DFDs, énfasis en los algoritmos, ….

Djikstra, Yourdon, Constantine, De Marco, Gane, Sarson…

Desarrollo orientado a procesos

Análisis, Proyecto y Programación Estructurados

DFDs, énfasis en los algoritmos, ….

Djikstra, Yourdon, Constantine, De Marco, Gane, Sarson…

Page 36: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

¿Desarrollo orientado a datos o desarrollo orientado a procesos?

Desarrollo orientado a datos

Warnier, Orr, Jackson

Especificación rigurosa de las estructurasVisiones de usuariosVisiones de programasArchivos o Bases de DatosProgramas

Énfasis en las estructuras

¿Operadores para trabajar con las estructuras?

Desarrollo orientado a datos

Warnier, Orr, Jackson

Especificación rigurosa de las estructurasVisiones de usuariosVisiones de programasArchivos o Bases de DatosProgramas

Énfasis en las estructuras

¿Operadores para trabajar con las estructuras?

Page 37: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

¿Desarrollo orientado a datos o desarrollo orientado a procesos?

¿Podríamos pensar en reglas y operadores para trabajar con las estructuras?

Si lo hiciéramos se simplificaría bastante el desarrollo y mantenimiento de sistemas

¡Warnier, Orr y Jackson lo hicieron!

¿Podríamos pensar en reglas y operadores para trabajar con las estructuras?

Si lo hiciéramos se simplificaría bastante el desarrollo y mantenimiento de sistemas

¡Warnier, Orr y Jackson lo hicieron!

Page 38: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Metodología Warnier-Orr

Fines de la década del 60 hasta principios de los 80

Se utilizó bastante en el Uruguay

Muchos sistemas eran aún “batch” con archivos secuenciales

Personalmente, no seguí con este abordaje cuando mis clientes pasaron a sistemas interactivos con bases de datos: acepté el “estado del arte”: ¡fue un gran error!

Fines de la década del 60 hasta principios de los 80

Se utilizó bastante en el Uruguay

Muchos sistemas eran aún “batch” con archivos secuenciales

Personalmente, no seguí con este abordaje cuando mis clientes pasaron a sistemas interactivos con bases de datos: acepté el “estado del arte”: ¡fue un gran error!

Page 39: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

¿Desarrollo orientado a datos u orientado a procesos?

La lentitud en la implementación y uso de las bases de datos relacionales definió la cuestión – durante muchos años - a favor del desarrollo orientado a procesos

La lentitud en la implementación y uso de las bases de datos relacionales definió la cuestión – durante muchos años - a favor del desarrollo orientado a procesos

Page 40: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

En 1979 ¡ORACLE!

En 1979 una pequeña empresa que luego tomó el nombre de su producto lanzó el primer SGBD relacional que funcionaba eficientemente y lo hacía en una computadora pequeña

El producto se llamaba ORACLE

Nada volvería a ser igual luego de su lanzamiento

En 1979 una pequeña empresa que luego tomó el nombre de su producto lanzó el primer SGBD relacional que funcionaba eficientemente y lo hacía en una computadora pequeña

El producto se llamaba ORACLE

Nada volvería a ser igual luego de su lanzamiento

Page 41: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

En 1979 ¡ORACLE!

¡Se acabaron las excusas!

Todos pasamos a desarrollar SGBD relacionales

¡Todos los fabricantes garantizaban que sus sistemas (tal como estaban) eran relacionales!

La comunidad informática demoró aún más de 10 años en aceptarlos masivamente

¡Se acabaron las excusas!

Todos pasamos a desarrollar SGBD relacionales

¡Todos los fabricantes garantizaban que sus sistemas (tal como estaban) eran relacionales!

La comunidad informática demoró aún más de 10 años en aceptarlos masivamente

Page 42: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

SUPRA

En la década de los 80, Cincom Systems lanza un SGBD revolucionario: SUPRA

SUPRA tenía niveles de “independencia de datos” mucho mayores que el SQL

¿Por qué fracasa?¿Porque, en vez de presentarlo como un superconjunto del SQL, se le da una sintaxis totalmente diferente?

¿Porque el fabricante había permanecido demasiado tiempo con el TOTAL?

En la década de los 80, Cincom Systems lanza un SGBD revolucionario: SUPRA

SUPRA tenía niveles de “independencia de datos” mucho mayores que el SQL

¿Por qué fracasa?¿Porque, en vez de presentarlo como un superconjunto del SQL, se le da una sintaxis totalmente diferente?

¿Porque el fabricante había permanecido demasiado tiempo con el TOTAL?

Page 43: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Epílogo: ¿qué ocurrió desde 1990?

Es bueno dividir lo que ocurrió en 4 partes:

SGBD

Orientación a procesos

Plataformas de ejecución

XML y la “orientación a Mensajes”

Es bueno dividir lo que ocurrió en 4 partes:

SGBD

Orientación a procesos

Plataformas de ejecución

XML y la “orientación a Mensajes”

Page 44: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Sistemas de Gerencia de Base de Datos

Estándar SQL muy consolidado dificulta innovación cualitativa no hay nuevos actores

Ley de Darwin: quedan unos pocos productos muy sólidos (disponibilidad, seguridad, eficiencia, escalabilidad)

Unos pocos fabricantes dominan el mercado principal: IBM (DB2, Informix), Microsoft (SQL Server), Oracle

Nivel de inteligencia muy bajo

“Independencia de datos” muy pobre

¿Sistemas PosRelacionales?, ¿TRDBMS?...

Estándar SQL muy consolidado dificulta innovación cualitativa no hay nuevos actores

Ley de Darwin: quedan unos pocos productos muy sólidos (disponibilidad, seguridad, eficiencia, escalabilidad)

Unos pocos fabricantes dominan el mercado principal: IBM (DB2, Informix), Microsoft (SQL Server), Oracle

Nivel de inteligencia muy bajo

“Independencia de datos” muy pobre

¿Sistemas PosRelacionales?, ¿TRDBMS?...

Page 45: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Independencia de datos muy pobre

Clientes (Cliente, Nombre, Direccion)

Productos (Producto, Descripcion, Precio, Stock)

Facturas (Factura, Fecha, Cliente)

LineasFacturas (Factura, Producto, Cantidad)

Clientes (Cliente, Nombre, Direccion)

Productos (Producto, Descripcion, Precio, Stock)

Facturas (Factura, Fecha, Cliente)

LineasFacturas (Factura, Producto, Cantidad)

Page 46: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Independencia de datos muy pobre

Cliente Nombre Factura Fecha Producto Descripcion Cantidad

Page 47: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Independencia de datos muy pobre

Debemos especificar:

Select Clientes.Cliente, Nombre, Facturas.Factura, Fecha, Productos.Producto, Descripción, CantidadWhere Clientes.Cliente = Facturas.Cliente andFacturas. Producto = Productos.Producto

y, sin embargo, sería suficiente con:

Select Cliente, Nombre, Factura, Fecha, Producto, Descripción, Cantidad

Debemos especificar:

Select Clientes.Cliente, Nombre, Facturas.Factura, Fecha, Productos.Producto, Descripción, CantidadWhere Clientes.Cliente = Facturas.Cliente andFacturas. Producto = Productos.Producto

y, sin embargo, sería suficiente con:

Select Cliente, Nombre, Factura, Fecha, Producto, Descripción, Cantidad

Page 48: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Sistemas de Gerencia de Base de Datos

Finalmente (1995) SQL soporta, de una forma estándar, la integridad referencial

LINUX SQL de bajo costo o gratuitos (Postgres, MySQL)

Escritura de procedimientos almacenados en lenguajes de uso general

¿Virus?

Finalmente (1995) SQL soporta, de una forma estándar, la integridad referencial

LINUX SQL de bajo costo o gratuitos (Postgres, MySQL)

Escritura de procedimientos almacenados en lenguajes de uso general

¿Virus?

Page 49: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Sistemas de Gerencia de Base de Datos

Evolución de la arquitecturas:

Centralizada (hasta 1995)

Cliente / Servidor (desde 1995)

¿Distribuida?

Multi-servidor, orientada a la red (va ganando terreno con el afianzamiento de las plataformas Java y .net)

Evolución de la arquitecturas:

Centralizada (hasta 1995)

Cliente / Servidor (desde 1995)

¿Distribuida?

Multi-servidor, orientada a la red (va ganando terreno con el afianzamiento de las plataformas Java y .net)

Page 50: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Orientación a procesos

Se pasó de los métodos estructurados a la orientación a objetos

Cuando se trata de datos en memoria la orientación a objetos trae ventajas muy importantes

Eslabón débil aún: ¿Cómo comunicarse bien con la base de datos?

¿OODBMS?

¿ORM?

Se pasó de los métodos estructurados a la orientación a objetos

Cuando se trata de datos en memoria la orientación a objetos trae ventajas muy importantes

Eslabón débil aún: ¿Cómo comunicarse bien con la base de datos?

¿OODBMS?

¿ORM?

Page 51: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Plataformas de ejecución

Java: lanzada por Sun en 1996

Lenguaje Java

Sólido estándar de hecho y de derecho

Plataforma de ejecución que funciona sobre múltiples sistemas operativos

No es más necesario “instalar” las aplicaciones

Facilidades para aplicaciones multi-capa

Java: lanzada por Sun en 1996

Lenguaje Java

Sólido estándar de hecho y de derecho

Plataforma de ejecución que funciona sobre múltiples sistemas operativos

No es más necesario “instalar” las aplicaciones

Facilidades para aplicaciones multi-capa

Page 52: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Plataformas de ejecución

.net: lanzada por Microsoft en 2001

Lenguajes: C# y VB.net de Microsoft y múltiples otros de terceros

Sofisticada implementación de las mismas ideas básicas del Java

Plataforma de ejecución que “puede funcionar sobre múltiples sistemas operativos”, pero que, en principio, funciona sobre Windows

No es más necesario “instalar” las aplicaciones

Facilidades para aplicaciones multi-capa

Fuerte impulso de Microsoft

.net: lanzada por Microsoft en 2001

Lenguajes: C# y VB.net de Microsoft y múltiples otros de terceros

Sofisticada implementación de las mismas ideas básicas del Java

Plataforma de ejecución que “puede funcionar sobre múltiples sistemas operativos”, pero que, en principio, funciona sobre Windows

No es más necesario “instalar” las aplicaciones

Facilidades para aplicaciones multi-capa

Fuerte impulso de Microsoft

Page 53: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Plataformas de ejecución

¿Por qué desarrollaría para una “plataforma de ejecución” en vez de un sistema operativo?

Costos operativos mucho menores

Portabilidad

¿Qué ocurrirá con los sistemas operativos?

Se tornan “commodities”

¿Por qué desarrollaría para una “plataforma de ejecución” en vez de un sistema operativo?

Costos operativos mucho menores

Portabilidad

¿Qué ocurrirá con los sistemas operativos?

Se tornan “commodities”

Page 54: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

XML y la “orientación a Mensajes”

Sistema de mensajes autodescritos

Estándar de hecho y de derecho

Web Services

Bases de datos extendidas

¿Almacenar árboles en las bases de datos relacionales?

Sistema de mensajes autodescritos

Estándar de hecho y de derecho

Web Services

Bases de datos extendidas

¿Almacenar árboles en las bases de datos relacionales?

Page 55: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Resumen

40 años después, el sueño de Bachman se ha cumplido

33 años después el sueño de Codd está muy lejos de cumplirse

40 años después, el sueño de Bachman se ha cumplido

33 años después el sueño de Codd está muy lejos de cumplirse

Page 56: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Mi idea sobre el futuro

Page 57: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Mi idea sobre el futuro

Creo en “bases de datos inteligentes” que nos permitan alimentar en forma declarativa todo el conocimiento necesario de manera que cualquier usuario, de una manera simple, pueda hacer todo aquello que quiera, y esté autorizado a hacer, sin necesidad de programar

Creo en “bases de datos inteligentes” que nos permitan alimentar en forma declarativa todo el conocimiento necesario de manera que cualquier usuario, de una manera simple, pueda hacer todo aquello que quiera, y esté autorizado a hacer, sin necesidad de programar

Page 58: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Mi idea sobre el futuro

Cuales son las dificultades principales:

¿Tecnología?

¿Estándares? / ¿mentalidades conservadoras? / intereses comerciales

Cuales son las dificultades principales:

¿Tecnología?

¿Estándares? / ¿mentalidades conservadoras? / intereses comerciales

Page 59: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Mi idea sobre el futuro

¿Se puede seguir con el “estado del arte” actual?¿Se puede seguir con el “estado del arte” actual?

Page 60: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Mi idea sobre el futuro

Siempre se puede seguir, pero hacerlo implica muchos problemas

Ineficiencia del desarrollo y mantenimiento de sistemas

Países desarrollados importan recursos humanos

Se sacrifican flexibilidad y personalidad adoptando paquetes estándar

Auge de la contratación de mano de obra barata

La industria de software pasa a tener grandes problemas

Siempre se puede seguir, pero hacerlo implica muchos problemas

Ineficiencia del desarrollo y mantenimiento de sistemas

Países desarrollados importan recursos humanos

Se sacrifican flexibilidad y personalidad adoptando paquetes estándar

Auge de la contratación de mano de obra barata

La industria de software pasa a tener grandes problemas

Page 61: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Mi idea sobre el futuro

Sólo alguno de los grandes fabricantes de SGBD puede, con éxito, abandonar el estándar SQL y optar por soluciones mucho más evolucionadas

¿Cuál de ellos lo hará?

Sólo alguno de los grandes fabricantes de SGBD puede, con éxito, abandonar el estándar SQL y optar por soluciones mucho más evolucionadas

¿Cuál de ellos lo hará?

Page 62: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Mi idea sobre el futuro

Si ninguno de ellos lo hiciera,

El actual estándar SQL tendrá una vida larga y relativamente pacífica

El progreso es inevitable: ningún estándar lo detendrá

Las “bases de datos inteligentes” se obtendrán con sistemas de más alto nivel, basados en conocimiento, que “operen” automáticamente al SQL, en el bajo nivel

Si ninguno de ellos lo hiciera,

El actual estándar SQL tendrá una vida larga y relativamente pacífica

El progreso es inevitable: ningún estándar lo detendrá

Las “bases de datos inteligentes” se obtendrán con sistemas de más alto nivel, basados en conocimiento, que “operen” automáticamente al SQL, en el bajo nivel

Page 63: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Mi idea sobre el futuro

De alguna manera, estos sistemas de alto nivel basados en conocimiento serán al SQL lo que las plataformas de ejecución son a los sistemas operativos

De alguna manera, estos sistemas de alto nivel basados en conocimiento serán al SQL lo que las plataformas de ejecución son a los sistemas operativos

Page 64: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

……

¿y Genexus? ¿y Genexus?

Page 65: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de

Breogán [email protected]

¿Desarrollo orientado a procesos u orientado a datos?Reflexiones en el 40° aniversario de los Sistemas de Gerencia de Bases de Datos

Page 66: Breogán Gonda bgv@artech.com.uy ¿Desarrollo orientado a procesos u orientado a datos? Reflexiones en el 40° aniversario de los Sistemas de Gerencia de