En este blog podréis ir viendo el desarrollo día a día de un proyecto software bajo la Métrica v3 del grupo 3 de Ingeniería del Software III (Ingeniería Informática) de la Universidad Carlos III de Madrid.

Mostrando entradas con la etiqueta web services. Mostrar todas las entradas
Mostrando entradas con la etiqueta web services. Mostrar todas las entradas

viernes, 4 de enero de 2008

Opiniones sobre: Web 2.0

Mientras esperamos el resultado de la valoración de los blogs realizado por el departamento de la asignatura, en la entrada de hoy expondremos nuestra opinión sobre la Web 2.0. El objetivo es que la gente entienda a qué se refiere este termino tan general, aplicable tanto en el mundo de la informática como en cualquier otra materia dada la extensión actual de la Web. De forma concreta lo que pretendemos es aclarar este concepto tan de moda actualmente (¡si se introduce en Google se obtienen 85.000.000 de resultados!) para que cualquier usuario de Internet diferencia si una aplicación está diseñada hacia la Web 2.0 o no.

Lo primero de todo es responder a la siguiente pregunta: ¿Qué es la Web 2.0? Aunque mucha gente piense que pueda ser un estándar, una tecnología, herramienta o plataforma; es más sencillo que todo esto: es una cambio en la actitud o diseño de las aplicaciones Web de forma que estén orientadas al usuario final. Se trata de que éstos (los usuarios finales) no sean únicamente receptores de la información, sino que también sean capaces de generarla y compartirla con el creador de la página y con otros usuarios finales. El ejemplo más inmediato es este blog: vosotros ya no sois meros lectores, si queréis podéis participar en la creación del mismo mediante la introducción de comentarios a las diferentes entradas que vamos escribiendo, los cuales serán publicados y leídos por nuevos usuarios.

La siguiente cuestión es: ¿Qué páginas en la actualidad son Web 2.0? Para comprender mejor esto de la Web 2.0 os detallamos a continuación plataformas que si están orientadas hacia la Web 2.0:
Un caso concreto de ellos es Wikipedia. Si la comparamos con su antagonista de la Web 1.0: la enciclopedia británica, la diferencia de porqué una está enfocada a la Web 2.0 y la otra no, es que en Wikipedia además de leer el artículo podemos modificarlo y añadir nueva información que será útil para futuros lectores, mientras que en la enciclopedia británica no se puede: el artículo es realizado exclusivamente por una persona.

La tercera y última pregunta: ¿Cómo se relaciona la Web 2.0 con la ingeniería del software? Cada vez es más común que los proyectos cuya plataforma es la Web se enfoquen hacia la Web 2.0, por esta razón es fundamental que las personas relacionadas con el desarrollo de este tipo de sistemas software entiendan qué es la Web 2.0, y , en especial los clientes, comerciantes y jefes de proyectos para que sepan lo que piden, venden y dirigen respectivamente.

Pues hasta aquí esta entrada, espero que os haya aclarado las principales dudas sobre la Web 2.0 y hasta la próxima. Un saludo.

domingo, 18 de noviembre de 2007

Web Services

Buenas a todos nuestros seguidores. En la entrada de hoy, vamos a exponer nuestra opinión sobre los Web-Services (WS) por ser una tecnología de comunicación distribuida que está en auge e implantándose cada vez en más sistemas de información, y que además, hemos decidido utilizarla para diseñar una API de acceso remoto al sistema de marcadores sociales que se está desarrollando. Nos centraremos única y exclusivamente en la opinión que tenemos: analizar las ventajas qué nos proporcionan y las limitaciones qué nos imponen, dejando en un segundo plano la colección de protocolos que conforman este mecanismo de comunicación: SOAP, WSDL, HTTP, etc. En cuanto a las fuentes y referencias de información de web-services, son muchas y variadas, destacando principalmente las siguientes:

  1. Conocimientos obtenidos de la asignatura de Servidores de Información.
  2. Experiencia en el ámbito laboral.
  3. Artículos técnicos y blogs sobre los WS: http://sistemas3.wordpress.com/2007/06/14/web-services/, http://www.w3.org/2002/ws/,http://en.wikipedia.org/wiki/Web_service...

En cuanto a las ventajas que hemos observado, hay que destacar por encima de todo la increíble transportabilidad e interoperabilidad que existe en su comunicación: permiten compartir, obtener y generar información independientemente del lenguaje de las aplicaciones, la plataforma o entorno de ejecución y las arquitecturas de los dispositivos implicados. Pero además de esta gran ventaja, tras haber trabajado en otros paradigmas de comunicación distribuida: RMI, CORBA, RPC, etc., los WS permiten unas ayudas que no hay que olvidar como son:
  • Proceso de transporte realizado por HTTP, provocando que las políticas de proxys y firewall de una empresa tras la implantación de los WS no se vea modificada.
  • Permiten procesos de autenticación y seguridad, de forma que se puedan restringir el uso a máquinas que cumplan ciertas características: tengan un determinado certificado, estar en un dominio concreto, etc.
  • Facilidad de uso desde la perspectiva del programador. Al final, los WS se reducen exclusivamente en una definición de funciones desde el lado del servidor, sin importar los procesos de binding, autenticación y otros de más bajo nivel; y en el lado del cliente, al uso de una "libreria de funciones" importada desde el servidor, una vez más sin importar procesos de bajo nivel.

Todo esto aplicado en una situación real, se puede ver con el siguiente ejemplo. Se tenían dos sistemas de información: un gestor de alumnos, y una plataforma de e-learning. Ambos sistemas eran desarrollados por dos empresas diferentes, en diferentes lenguajes: el primero en Java y el segundo en PHP e implantados en el mismo organismos oficial. Lo que se pretendía era que el gestor de cursos ofreciese unos servicios de matriculación al gestor de alumnos. Se procedió al estudio de las alternativas a la solución, y la que mejor se acoplaba a las necesidades solicitadas eran los Web Services. Al final, la implementación de los Web Services para PHP mediante la librería Nu-SOAP resultó todo un éxito, tanto en el tiempo que se realizó como en el funcionamiento final.


Por último, como todo en esta vida siempre hay ventajas pero también desventajas, y los WS no iban a ser una excepción. Lo primero hay que señalar que todavía se trata de una tecnología que está en plena fase de crecimiento y por tanto, la poca documentación existente y las modificaciones en el estándar no serían extrañas con el consiguiente riesgo que conllevaría. Otra desventaja que hemos observado es la sobrecarga que puede sufrir el canal por el uso de XML en el transporte de mensajes, a diferencia de RMI y CORBA que usan estrategias de marshall y unmarshall en los datos para enviar, produciendo un notable mejora en la velocidad de la comunicación. Finalmente, y aunque lo hemos citado como una ventaja, que la comunicación se realice mediante HTTP puede ser un "arma de doble filo", es decir, estará expuesto a todos los riesgos que se dan en este protocolo: captura de la información por terceros al no ir cifrada (a menos que se utilice HTTPs), WS desarrollados para producir un efecto negativo en el cliente y que esquivarían a los firewall fácilmente, etc.

Pues esto ha sido todo, esperamos vernos en la siguiente entrada ya que esta semana hay la primera eliminación de blogs. ¡Un saludo!