Monday, August 01, 2005

Servicios? o no Servicios?


Terminé una presentación y vinieron muchas dudas a mi..

Ayer terminé toda toda la ppt que mostré hace unos dias...,

la verdad, sentia que le faltaba algo, asi que me puse a revisar cada slide, y pensando pensando, empecé a agregarle lineas por aqui, recortes por allá, como si estuviera rehaciendo la misma...

un poco cansado, llegué a una sección, que sin querer estaba evitando,

servicios web XML,
y bueno, la verdad es que yo he visto mas de una ppt de web services y casi siempre hablan de lo mismo, entonces, luego una breve reflexion (en realidad no muy breve...)

decidi que lo mejor seria, mencionar la funcionalidad ya conocida de un XMLWs, de manera resumida, pero, buscando un punto en donde las personas a las que quiero llegar, logren comprender el concepto de lo que es, un servicio...


El concepto de lo que es un servicio...
En pocas palabras, un servicio, es "algo" que hace "algo" por nosotros, un ejemplo, que no proviene de su loco mundo del Software...
El servicio de lavanderia...que dicen?, acaso no lava la ropa por nosotros...??(perdoname mamá =D), humm acaso nos debe preocupar como laven?, solo que lo hagan bien, y en un tiempo considerablemente aceptable,
entonces ya estamos hablando de calidad de servicio...

Calidad de Servicio...
Que hagan una tarea por nosotros, y que certifiquen que el resultado es bueno, eficaz y eficiente.

Volviendo al software...
El concepto de servicio, toma el mismo papel, que el conocido en el mundo real,se debe buscar entidades, que realicen algunas tareas por nosotros, al hablar de algunas tareas, se busca que sea un conjunto de las mismas, de tal forma que el que brinda el servicio, domina y certifica ademas que los resultados son validos.
Es decir, darle a un especialista la tarea que mejor haría.

La propuesta realizada por SOA, o Arquitectura Orientada a Servicios, tiene como uno de sus principales preceptos, el modelo con los siguientes componentes...
- Entidad que necesita el servicio (si vamos al ejemplo del mundo sin SoftWare, seriamos nosotros mismos, esperando a que alguien nos lave la ropa =D)

- Entidad que brinda el servicio (Lavanderias...)

Hasta aqui todo bien, solo si conocemos las lavanderias a las cuales podemos dejar nuestra ropa...

Pero si no conocemos, a donde iriamos?
- Entidad publicadora de Servicios (un registro de los servicios disponibles, ojo solo los que han sido registrados, y la forma de llegar a ellos)

No quiero mencionar el ejemplo ese de las paginas amarillas, pero creo que ya es implicto...

Ahora, que es lo que hace ademas la entidad publicadora?, pues enlaza al proveedor con el consumidor.

El consumidor, hace el pedido, y el proveedor, por medio del servicio, retorna el resultado del pedido hacia el usuario,

El usuario, es decir, el consumidor, no debe importarle mucho, como es que se ha procesado la información, y el proveedor, no sabe para que o como estan usando la informacion resultante,

Ahora, para aprovechar la potencia de esta propuesta, se busca que el servicio, abarque bloques de tareas, como por ejemplo,
es mucho mejor que validar si un usuario existe o no,
retornar algo de informacion y registrar dicha validacion, es decir, mas de una tarea por servicio, pero ojo, tareas que abarquen el mismo dominio.


Esto, es lo mágico de los servicios, aunque hay una mucho camino por recorrer, esto es lo poco que debe saberse para empezar
con todo este largo camino...

Indigo... alla voy!!!!

Say no more

J.

No comments: