You are on page 1of 146

Facultad de Ingeniera de Sistemas, Cmputo y

Telecomunicaciones
Sistema a Distancia

TECNOLOGAS WEB
DANIEL ALEJANDRO YUCRA SOTOMAYOR
SANTIAGO RAL GONZLES SNCHEZ

2012
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

NDICE
PRIMERA UNIDAD: Internet y World Wide Web 8

Leccin 1: Evolucin de Internet 10

1.1 Internet 11
1.2 Breve Historia de Internet 11
1.3 Protocolos de Internet 12
1.4 La Web como Tecnologa de Internet 13

Leccin 2: World Wide Web y Tecnologas Webs 14

2.1 Historia de la World Wide Web 14


2.2 HTML 15
2.2.1 HTML Bsico 15
2.2.2 Hojas de Estilo (CSS) 16
2.2.3 HTML Dinmico 17
2.2.4 HTML 5 17
2.3 Protocolo HTTP 18
2.3.1 Versiones de HTTP 20
2.4 Tecnologa Web 21
2.5 Tecnologas para el desarrollo Web 22
2.5.1 Navegadores Web 22
2.5.2 Servidores Web 22
2.5.3 Lenguajes de programacin para el desarrollo web 23
2.6 Arquitectura Cliente/Servidor 23

Leccin 3: Estndares Web 24

3.1 Estndares y otras especificaciones tcnicas 24


3.2 World Wide Web Consortium (W3C) 24

Leccin 4: Implementacin de un Servidor Web 26

4.1 Introduccin a los Servidores Web 26


4.2 Servidor Web Apache 26
4.3 Implementacin de un Servidor web 27
4.3.1 Compilacin de las fuentes del Servidor Web 27
4.3.2 Instalacin de un servidor web utilizando GNU/Linux 28

SEGUNDA UNIDAD: Web 2.0 y Web 3.0 46

Leccin 5: Fundamentos de la Web 2.0 48

5.1 Historia y Evolucin de la Web 48


5.2 Web 1.0 49
5.3 Qu es la Web 2.0? 50
5.4 Aplicaciones ms populares de la Web 2.0 50

2 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

5.5 Redes Sociales 52


5.6 Weblogs y Blogsfera 53
5.7 Implementacin de un blog personal 53
5.8 Sistema de Gestin de Aprendizaje (LMS) 56
5.8.1 Implementacin de un LMS 56
5.9 Sistema de Gestin de Contenidos 59
5.9.1 Implementacin de un CMS 60

Leccin 6: Fundamentos de la Web 3.0 63

6.1 Qu es la Web 3.0? 63

6.2 Aplicaciones de la Web 3.0 64


6.2.1 SOA 64
6.2.2 Web 3D 65
6.2.3 Realidad Aumentada 65
6.2.4 Apps 66

Leccin 7: Web Services 68

7.1 Qu son los Web Services? 68


7.2 Estndares que usan los Web Services 68
7.2.1 Hypertext Transfer Protocol (HTTP) 68
7.2.2 Extensible Markup Language (XML) 69
7.2.3 Simple Object Access Protocol (SOAP) 69
7.2.4 Web Services Description Language (WSDL) 69
7.2.5 Universal Description, Discovery and Integration (UDDI) 69
7.3 Caractersticas de los Web Services 69
7.4 Arquitectura de los Web Services 70

Leccin 8: Web Semntica 71

8.1 Qu es la Web Semntica? 71

8.2 Componentes de la Web Semntica 75

TERCERA UNIDAD: Tecnologas para el desarrollo Web 89

Leccin 9: Arquitectura Web 91

9.1 Presentacin Distribuida 91


9.2 Aplicacin Distribuida 91
9.3 Arquitectura de las aplicaciones Web 91

Leccin 10: Lenguajes de Programacin 95

10.1 Historia de las aplicaciones Web 95


10.2 CGI 96
10.3 PHP 97

3 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

10.4 Java Servlets 98


10.5 Java Server Pages (JSP) 99

Leccin 11: Acceso a Base de Datos 101

11.1 PostgreSQL 101


11.2 MySQL 101
11.3 MariaDB 102
11.4 FirebirdSQL 102

Leccin 12: Framework 104

12.1 JSF 104


12.2 Ruby On Rails 105
12.3 Web2Py 105
12.4 Zend Framework 106

CUARTA UNIDAD: Fundamentos de Seguridad Web 117

y Aplicaciones Empresariales

Leccin 13: Seguridad en la Web 119

13.1 Consideraciones en la Seguridad en la Web 121


13.2 Control de acceso al Servidor Web 122

Leccin 14: Protocolos de seguridad para la Web 123

14.1 Protocolo de comunicacin cifrado (HTTPS) 123


14.2 Protocolo de seguridad para transacciones seguras (SET) 123
14.3 Certificados Digitales 125

Leccin 15: Aplicaciones Web Empresariales 128

15.1 OpenBravo 128


15.2 OpenERP 128
15.3 Intalio BPM 128
15.4 Pentaho 129
15.5 OS-Commerce 129
15.6 Liferay 130
15.7 Alfresco 130
15.8 Drupal 130

Leccin 16: Sistema Operativo Web 131

16.1 Qu es el Sistema Operativo Web? 131


16.2 EyeOS 132

4 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

INTRODUCCIN
La Web se caracteriza por ser una tecnologa muy utilizada y ampliamente
difundida en Internet. Despus del correo electrnico es la herramienta que ha
tenido mucho auge y la que ms ha evolucionado. En este contexto, los
desarrolladores, integradores y arquitectos de software web tienen un gran reto de
desarrollar aplicaciones y sistemas basada en la web.

Las tecnologas web han estado en funcin de la evolucin de Internet.


Recientemente, la disponibilidad de mayor acceso a Internet, millones de
servidores web y una gran cantidad de tecnologas relacionadas para la web, ha
permitido el desarrollo del World Wide Web (www). Esta tendencia se ha
acelerado por el desarrollo de herramientas de software que permiten el diseo de
aplicaciones web. Estas tecnologas cuentan con estndares que ha permitido
consolidar el desarrollo de las aplicaciones web.

La World Wide Web es un sistema distribuido basado en hipertexto o hipermedias


enlazados y accesibles a travs de Internet. Generalmente con un navegador
Web, un usuario visualiza la aplicacin web que puede contener texto, imgenes,
videos u otros contenidos multimedia y navega a travs de ellas usando
hiperenlaces.

El propsito de este texto es que el estudiante conozca el manejo de las


tecnologas web y alternativas orientadas al desarrollo de aplicaciones web,
adems puedan conocer tecnologas distribuidas en entornos heterogneos y e
interoperativos.

Los autores

5 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

ORIENTACIONES METODOLGICAS

SUMILLA
Internet y la World Wide Web han evolucionado rpidamente en su uso y
desarrollo gracias a la cantidad de herramientas, protocolos y estndares,
existentes.

El desarrollo de Internet, y la informtica, han permitido que la Web sea uno de


los inventos ms fructferos de la historia en la humanidad, y lo que ahora vemos
es slo el principio de un futuro influido por estas tecnologas, no solo ha
transformado a las personas tambin a las sociedades, las empresas y la cultura
de los pueblos.

En este contexto, resulta de vital relevancia, para la formacin del Ingeniero de


Sistemas y Cmputo, conocer distintas aplicaciones o soluciones para
implementar con xito proyectos de desarrollo basados en aplicaciones Web.

Esta asignatura, de formacin profesional especializada, de naturaleza terico-


prctica, tiene como propsito que el estudiante sintetice en un nivel de
competencia, los conceptos, las herramientas, las tecnologas que estn
influyendo en el uso y desarrollo de la World Wide Web. Para este fin, la
asignatura desarrolla los siguientes temas centrales: Internet, World Wide Web,
Web 2.0, Web 3.0, Tecnologas para el desarrollo Web, Fundamentos de
Seguridad Web y descripcin de las principales Aplicaciones Web Empresariales.

DESCRIPCIN DE UNIDADES
Los contenidos se han organizado en cuatro unidades temticas. stas se
desarrollan en lecciones que incluyen conceptos, descripcin de tecnologas,
estrategias de implementacin y arquitecturas web, aplicaciones web y soluciones
web empresariales que ayuden a clarificar los contenidos desarrollados.

En la Unidad 1, comprende, eficientemente, los conceptos asociados al origen y


funcionamiento de la Internet y la World Wide Web, el papel que desempea los
organismos de normalizacin de Internet a nivel mundial y el funcionamiento de
los Servidores Web.

En la Unidad 2, conoce las nociones bsicas de la Web 2.0 y Web 3.0


implementando, eficientemente, distintas herramientas tecnolgicas, apreciando
la trascendencia de los sistemas a travs de Web Services, as mismo identifica
los componentes principales de la Web Semntica, permitiendo su comprensin
en su actividad personal.

En la Unidad 3, describe las distintas tecnologas aplicado para el desarrollo Web


permitiendo expandir su conocimiento para la seleccin de una mejor solucin en
su formacin profesional.

6 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

En la Unidad 4, conoce las caractersticas y consideraciones para la seguridad en


la Web, tales como: control de acceso a los Servidores Web, principales
Protocolos de comunicacin y seguridad; y Certificados Digitales, as mismo,
aplicaciones Empresariales en entorno Web permitiendo con ello mejorar su
capacidad y desarrollo profesional.

OBJETIVO DE LA ASIGNATURA
El objetivo general es que el estudiante identifique los principios de la Tecnologa
Web, en conocer aplicaciones y tipos lenguajes de programacin, que permitan el
desarrollo de sistemas basados en Web, de las distintas herramientas
tecnolgicas y medidas de seguridad que debe adoptar, implementando
soluciones reales, permitiendo con ello mejorar su capacidad y desarrollo
profesional.

METODOLOGA
En cada unidad, el estudiante encontrar la sumilla y los objetivos, permitiendo
valorar sus alcances y logros, tambin se presentan los fundamentos y elementos
esenciales que permita poner en prctica a travs de las propuestas tecnolgicas.
Al finalizar la unidad, se brinda un resumen, una lectura seleccionada, ejercicios
propuestos, as como un apartado de autoevaluacin que fortalezca el proceso
del aprendizaje.

ESTRATEGIAS DE APRENDIZAJE Y EVALUACIN


El estudiante, bajo esta modalidad debe planificar el tiempo en el desarrollo de
cada unidad, poniendo en prctica los ejercicios propuestos, compartiendo sus
experiencias con el tutor y realizando actividades de auto aprendizaje. En tal
sentido, el tutor dispondr de un horario que permita interactuar con el alumno
resolviendo consultas o dudas, a travs de Internet.

Respecto a la evaluacin del aprendizaje, el alumno dispone, al finalizar de cada


unidad una serie de preguntas de autoevaluacin que permita medir su
aprendizaje. Al mismo tiempo, se dispone de ejercicios propuestos que deber
desarrollar para un mejor entendimiento de las lecciones. Esto ser un indicador
para el tutor que se est poniendo en prctica lo aprendido. Para obtener el
promedio final de la asignatura se suman el examen parcial, final y el promedio de
las actividades planteadas en la asignatura.

7 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

PRIMERA UNIDAD

Internet y World Wide Web

Sumario

La presente unidad sintetiza la evolucin de la Internet y la World Wide Web como


las tecnologas ms innovadores de los ltimos tiempos. Adems, sus protocolos
de comunicacin, las tecnologas para su uso y desarrollo, estndares web,
navegadores y servidores web.
Tambin presenta a HTML en sus diferentes versiones y evoluciones, como
explica la importancia del protocolo web HTTP con sus mtodos y la arquitectura
Cliente/Servidor que trabaja.
Al finalizar la unidad describe las alternativas para instalar, configurar y poner en
marcha un Servidor Web sobre plataformas GNU/Linux.

8 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Objetivos

Al finalizar esta unidad, el estudiante ser capaz de:

Definir y describir los diferentes conceptos relacionados a Internet y la World


Wide Web.
Conceptualizar las terminologas que estn relacionas con las Tecnologas
Web.
Identificar y conocer los estndares involucrados que participan en las
tecnologas web.
Conocer los aspectos tcnicos para la implementacin de un servidor web y
los componentes que participan.
Comprender, analizar y evaluar las diferentes formas de implementacin de un
servidor web.
Identificar las principales aplicaciones Web Empresariales.

9 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Leccin 1: Evolucin de Internet

1.1 Internet
El trmino Internet viene del ingls Interconnected Networks, vale decir, Redes
interconectadas, a veces podemos definir como la red de redes, y es la suma de
diversas redes de ordenadores de todo el mundo que, gracias a las innovaciones
tecnolgicas, hace posible que puedan comunicarse los usuarios que hay por
todo el mundo.
Esta red de ordenadores est repartida geogrficamente en diferentes partes del
mundo que utilizan las mismas normas y protocolos de comunicacin.
Segn, el diario Wall Street Journal describe al Internet como ... la cadena de
redes que es, en general, la forma ms fcil y barata de que los negocios se
comuniquen electrnicamente con el mundo exterior, esta definicin es descrito
desde el punto de vista empresarial.
La trascendencia de Internet radica en su cobertura a escala mundial, adems de
su superestructura que comprende contenidos, herramientas y utilidad para todos
los usuarios; para muchos es considerado como herramienta de trabajo pasando
como una herramienta para vender productos o incluso de ocio, etc.
"Internet constituye un fenmeno sociocultural de importancia creciente, una
nueva manera de entender las comunicaciones que estn transformando el
mundo, gracias a los millones de individuos que acceden a la mayor fuente de
informacin que jams haya existido y que provocan un inmenso y continuo
trasvase de conocimiento entre ellos" (Vertices, 2008, p. 7).
Se pueden destacar cuatro caractersticas de Internet:
- Cambiante: Siempre se adapta continuamente a las nuevas necesidades y
circunstancias de sus usuarios.
- Grande: Es la mayor red de computadoras del planeta.
- Descentralizada: Nadie controla oficialmente a Internet.
- Diversa: Todos estn involucrados mquinas, software y personas de
diferentes ndoles, fabricantes de diferentes tecnologas, medios fsicos de
transmisin y comunicacin, usuarios, etc.
Segn Hervo (2007), Internet, tambin llamado Autopista de la informacin, Net,
Ciberespacio..., designa un conjunto de redes informticas relacionadas entre s y
cuya finalidad es de permitir a los usuarios de todo el mundo comunicarse entre
s. Se trata de conjuntos de redes interconectadas ms vasto del mundo. Internet
es una red abierta, todo lo contrario de la mayor parte de las redes: todo el mundo
puede conectarse a ella para disfrutar de sus servicios (p. 3).
Internet est regido por organismos que definen las normas tcnicas a seguir,
reparten las direcciones IP, crean continuamente estndares y nuevos protocolos
que regulan la red de redes.
Internet crece solo a un ritmo vertiginoso, prcticamente incalculable, siendo un
severo problema para los seguimientos y estadistas y un caldo de cultivo para las
exageraciones (Odlyzko, 2000, p. 15).

10 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Figura 1.1: Arquitectura de Internet [Raymond, 2000]

1.2 Breve Historia de Internet


El departamento estadounidense de defensa en el ao de 1969, decide
desarrollar una red experimental que permita el intercambio de informacin entre
sus centros de investigacin y desarrollo alejados remotamente entre s y que
funcione sin interrupciones incluso en una hipottica guerra nuclear. Esta nueva
red se llam ARPANET.
La descentralizacin de las transmisiones de comunicaciones eran la piedra
angular de esta red, cada vez que una lnea de comunicacin no puede utilizarse,
los equipos buscan una nueva ruta para transferir los datos.
En 1972, como resultado de una conferencia sobre la posibilidad de
intercomunicar todos los ordenadores y todas las redes entre s, nace el protocolo
TCP/IP (Maas, 2004, p. 25).
A principio de los 80, al intercomunicar varias redes entre s, ARPANET se
convierte en INTERNET (International Network), (Maas, 2004, p. 25).
Con la aparicin, en 1992, de la web y otras herramientas de sencillo manejo, la
red ha crecido a una velocidad vertiginosa.
El xito de internet es evidente, segn Maas (2004) "El crecimiento exponencial
de equipos conectados debe interpretarse en tres fases. Entre 1968 y 1984
pasamos de 4 a 1.000 equipos, que son experimentos de laboratorio para
demostrar que conmutacin de paquetes funciona mientras se disean los
protocolos adecuados. Entre 1985 y 1992 la red crece hasta 1.000.000 de
equipos con un carcter pre comercial: se usa con cargo a proyectos de
investigacin. A partir de los 90 la red es una realidad comercial madura" (p. 27).

11 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

1.3 Protocolos de Internet


Internet tiene varias formas de comunicacin entre los ordenadores y stas se
realizan mediante Protocolos, que son reglas y normas de comunicacin que han
de adoptarse para ser entendido por las otros ordenadores de la red.
Para Cancelo y Giraldez (2007), "Lo que hace que una red funcione
adecuadamente no es la conexin fsica de cables, como podra pensarse, sino el
mantenimiento de los estndares de comunicacin llamados protocolos, para que
los distintos ordenadores se comuniquen entre s" (p. 94).
Los dos protocolos ms importantes son Protocolo de Control de Transmisin
(Transfer Control Protocol) y el Protocolo de Internet (Internet Protocol). El
protocolo TCP ms conocido como de transporte, divide en paquetes los
mensajes generados en origen, asignndoles un nmero de secuencia y la
direccin de destino, y los recompone en destino, mientras que IP se ocupa del
direccionamiento de los paquetes, que pueden recorrer el camino por rutas
diversas, incluso con tecnologas diferentes. Usualmente, se trata a estos dos
protocolos como si fueran uno solo TCP/IP, porque ambos se complementan.
La aparicin a principios de los noventa de la World Wide Web (WWW) signific
un gran impulso para que los usuarios particulares se conectaran a Internet. Con
esta aparicin, se tuvo que proponer nuevos protocolos como el HyperText
Transfer Protocol (HTTP), que comenz a extenderse y el crecimiento del trfico
de Internet ha sido exponencial hasta estos tiempos.

Tabla 1: Protocolos ms usados en Internet


Fuente: Atelin, P. (2007) TCP/IP y protocolos de Internet (p.47)
Nombre Acrnimo Puerto Descripcin
File Transfer FTP 21 Transferencia de ficheros
Protocol
Secure Shell SSH 22 Permite las comunicaciones
seguras entre dos sistemas usando
una arquitectura cliente/servidor
Simple Mail SMTP 25 Envo de correo electrnico
Transfer Protocol

Domain Name DNS 53 Resolucin de nombres de dominio


System

HyperText Transfer HTTP 80 Transferencia de pginas


Protocol Web

Post Office POP3 110 Recepcin de correo electrnico


Protocol v3

Network News NNTP 119 Acceso a foros de discusin


Transfer Protocol

12 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

1.4 La Web como tecnologa de Internet


Las empresas estn migrando hoy en da rpidamente todos sus servicios,
aplicaciones, servicios, sus tiendas, correo electrnico, etc., a un entorno Web
que permita a sus clientes y usuarios acceder a todo ello a travs de Internet.
Internet est destinado a convertirse en un servicio universal de comunicaciones,
permitiendo una comunicacin universal por lo tanto la Web, se ha convertido,
junto con el correo electrnico, en las principales herramientas de internet. sta
ha dejado de ser una inmensa biblioteca de pginas estticas para convertirse
en un servicio que permite acceder a multitud de prestaciones y funciones.
Este sistema, al que ya nos hemos referido, ha sido creado para navegar por la
red Internet y acceder a miles de servidores donde los usuarios pueden encontrar
informacin simplificada en su proceso de bsqueda y que proporciona
informacin como: texto, sonido, video, color, movimiento, etc.
Al igual que Internet, el desarrollo de la Web no se debe a una sola persona. El
padre de la Web, es Tim Berners-Lee un cientfico que trabajaba en el Laboratorio
Europeo de Fsica de Partculas de Ginebra (CERN), crea el World Wide Web
(WWW). A l se debe los tres elementos que fueron importantes en el nacimiento
de la Web.
HTML, como lenguaje para crear los contenidos de la Web, basado en
Standard Generalized Markup Language (SGML).
HTTP, como protocolo de comunicacin entre las computadoras de la Web,
encargado de la trasferencia de las pginas Web y dems recursos.
URL, como medio de localizacin de los distintos recursos de Internet.

Figura 1.2: Elementos pilares de la World Wide Web

13 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Leccin 2: World Wide Web

2.1 Historia de la World Wide Web


La Web es una parte esencial en nuestras vidas, y las aplicaciones son
herramientas indispensables para esta sociedad de informacin, as como fue en
su momento el telfono.
En 1989 Tim Berners-Lee crea la WWW (World Wide Web), desarrollando las
especificaciones de tres recursos esenciales: el lenguaje de marcas de hipertexto
HTML (HyperText Markup Language), el protocolo de transferencia de hipertexto
HTTP (HyperText Transfer Protocol) y un software cliente denominado navegador
Web.
En 1992 en Estados Unidos, se crea la ISOC (Internet Society), organismo sin
fines de lucrativos que asumi las responsabilidades por la parte tcnica y
directiva de Internet determina protocolos para las computadoras como para las
aplicaciones de software (De Viveiros, 2011, p.18).
El 25 de noviembre de 1991, la Internet Assigned Numbers Authority (IANA) y la
Internet Corporation for Assigned Names and Numbers (ICANN) le asignaron a la
Red Cientfica Peruana la administracin de nombres de dominio para el Per,
conocido actualmente como el .pe. De esta manera el Per puede registrar
dominios para sitios Web (En el portal Punto.pe, http://punto.pe/history.php, se
muestra una resea de la Evolucin del dominio .pe en Per).
Luego, en 1993 nacen los sitios Web oficiales de la Casa Blanca
(http://www.whitehouse.gov) y las Naciones Unidas (http://www.un.org), de esta
manera Internet empieza a ser tomada en consideracin por los medios de
comunicacin y el sector empresarial. As mismo, la National Science Foundation
(NSF) crea INTERNIC (INTERnet Network Information Center), organismo de
administracin de Internet, dedicado a proveer servicios especficos de Internet,
como bases de datos y directorios, registro de dominios e informacin. (De
Viveiros, 2011, p. 17).
En este mismo ao se incorporan los dominios regionales de Bulgaria (.bg), Costa
Rica (.cr), Egipto (.eg), Emiratos rabes Unidos (.ae), Fiyi (.fj), Ghana (.gh), Guam
(.gu), Indonesia (.id), Islas Vrgenes (.vi), Kazajstn (.kz), Kenia (.ke),
Liechtenstein (.li), Per (.pe), Rumana (.ro), Rusia (.ru), Turqua (.tr) y Ucrania
(.ua).
El 1 de Octubre de 1994 se constituy el organismo de coordinacin, W3C (World
Wide Web Consortium). Liderado inicialmente desde el Laboratory for Computer
Science del MIT por el mismo creador de la WWW, Tim Berners-Lee y Al Vezza,
el W3C ha tomado bajo su responsabilidad la evolucin de varios protocolos y
estndares relacionados con el Web. (Aubry, 2009, p. 12).
En el mismo ao, se da inicio al desarrollo de los buscadores el primero en ser
presentado fue Yahoo, (un directorio de internet) desarrollado por dos estudiantes
de maestra de la Universidad de Stanford (David Filo y Jerry Yang), que
inmediatamente tuvo un xito masivo.
En septiembre de 1998 se constituy la compaa 'Google Inc.', con Larry Page
como Director General y Sergey Brin como Presidente [Lester, 2011].

14 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

2.2 HTML
2.2.1 HTML Bsico
HTML es un lenguaje de etiquetas que est conformado por documentos de texto
plano, donde el formato del texto se especifica mediante marcas de texto
(llamados etiquetas, tags), que delimitan los contenidos a los que afecta la
etiqueta, por lo tanto tenemos etiquetas de inicio o apertura y etiquetas de
marcado final o cierre.
Ejemplos de etiquetas de HTML son:
<title>Ttulo de documento</title>
<P>Este es un prrafo </P>
<B>Negrilla<I>Itlica</I>Negrilla</B>
Los atributos de las etiquetas, que especifican parmetros adicionales a la
etiqueta, se incluyen en la etiqueta de inicio de la siguiente forma:
<ETIQUETA parametro1=ATRIBUTO parametro2=ATRIBUTO ...> Contenido
</ETIQUETA>
Por ejemplo:
<A HREF=http://www.w3c.org>Enlace</A>
<IMG SRC=miimagen.jpg BORDER=1 ALT=NOMBRE IMAGEN>
HTML permite omitir en algunos casos la etiqueta de cierre, como es el caso de la
etiqueta IMG. Muchos visualizadores o programas clientes Web que utilizamos no
entiende alguna etiqueta, la ignorar y har lo mismo con todo el texto afectado
por sta etiqueta, por consiguiente es importante tener actualizado el navegador
para que entienda el lenguaje HTML.
Todos los documentos HTML siguen aproximadamente la misma estructura. Todo
el documento debe ir contenido en una etiqueta HTML, dividindose en dos
partes: la cabecera, contenida en una etiqueta HEAD y el cuerpo del documento
(donde est la informacin del documento), que est envuelto por una etiqueta
BODY.
Un documento en HTML bsico contiene bsicamente las siguientes etiquetas:

<HTML>
<HEAD>
<TITLE>Ttulo del documento</TITLE>
</HEAD>
<BODY>
Texto del documento
</BODY>
</HTML>

15 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

A la hora de desarrollar pginas HTML bsico, se debe tener presente el tipo de


visualizador que utilizarn los potenciales usuarios.

2.2.2 Hojas de Estilo (CSS)


Las hojas de estilo o simplemente llamados CSS son estndares creador por la
W3C, que sirve para separar el formato de representacin y presentacin del
contenido de un documento HTML o XML. Eso se consigue asociando atributos
de presentacin a cada una de las etiquetas de HTML.
Por ejemplo, si deseamos que todos los prrafos de nuestro documento (definidos
por <P></P>) tengan el fondo azul (blue en ingles) y el texto en amarillo (yellow
en ingles) usaremos el siguiente cdigo:
<STYLE TYPE=text/css>
P {color: blue; background:yellow;}
</STYLE>
Para indicar qu estilos debemos usar en una pgina, disponemos de la etiqueta
STYLE, la etiqueta LINK, que nos permite indicar un fichero externo que
contendr nuestros estilos.
La etiqueta STYLE tiene que estar en la cabecera de la pgina. Dispondremos de
un parmetro TYPE que nos permite indicar qu sintaxis usaremos para definir los
estilos, que en nuestro caso ser text/css. La etiqueta LINK, para poder definir
una hoja de estilos externa, tiene la siguiente apariencia:
<LINK REL=stylesheet HREF=estilo.css TYPE=text/css>
Es recomendable usar la etiqueta LINK para la definicin de las hojas de estilo
asociadas a una pgina, ya que de ese permitir mejor la actualizacin o el
mantenimiento de las pginas web que invocan hojas de estilo.
Es importante resaltar que la sintaxis de las hojas de estilo (CSS) es sensible a
maysculas y minsculas.
Es importante entender que esta sintaxis nos permitira definir el formato que
deseamos para los prrafos de nuestra Web. Existe una extensin de dicha
sintaxis que hace posible definir un estilo que slo se aplicar a ciertas partes de
nuestro documento.
En concreto, nos permite definir clases de elementos a los que aplicaremos el
estilo.
Por ejemplo, para definir una clase de prrafo que llamaremos destacado:
P.destacado {color: blue; background:yellow;}
Podemos usar luego el atributo CLASS que HTML 4.0 aadi a HTML para definir
la clase de cada prrafo:
<P>Un prrafo normal sin el atributo CLASS</P
<P CLASS=destacado>Este es un prrafo especial</P>
<P CLASS=destacado>Otro tambin destacado</P>

16 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

En resumen, Las hojas de estilo definen cmo se muestran los elementos HTML,
tal como lo hacia la etiqueta <font> o el atributo de color en HTML 3.2. Las hojas
de estilo se guardan, normalmente, en archivos CSS externos. Estas hojas de
estilo externas estn disponibles para cambiar la apariencia y la maquetacin de
todas las pginas de un sitio web, solamente editando un documento CSS (Egea,
2007, p. 134).

2.2.3 HTML Dinmico


El HTML dinmico (DHTML o del ingls dynamic HTML) no es un estndar
definido por el W3C, sino que es un trmino de marketing que utilizaron Netscape
y Microsoft para referirse al conjunto de nuevas tecnologas de Web. Dicho
conjunto comprende:
- HTML, especialmente la versin HTML 4.0.
- Hojas de estilo (CSS o Hoja de estilo).
- Javascript (Lenguaje de programacin).
Tambin se suele denominar como DHTML a este conjunto de tecnologas,
especialmente en aquellos casos en que operan conjuntamente para enriquecer
la experiencia Web del usuario. La propuesta es ofrecer al usuario interfaces
grficas mucho ms ricas y complejas, controlar formularios de forma ms
eficiente. El cdigo Javascript se ejecuta en el lado del cliente, para mejorar el
rendimiento de la pgina DHTML.
Uno de los puntos claves de DHTML es DOM (document object model), que
define una jerarqua de objetos accesibles mediante Javascript, que representan
todos y cada uno de los elementos del documento HTML.

2.2.4 HTML 5
HTML 5 es la quinta versin importante de HTML. Es una tecnologa creada para
modernizar la web y el desarrollo de las aplicaciones web, en lnea y fuera de
lnea. Se ha elaborado en base a la versin HTML 4, XHTML 1 y DOM Nivel 2
(DOM - Document Objetc Model), (Ramos, 2011, p. 30).
Esta es la primera vez que HTML y XHTML se han desarrollado en paralelo.
Todava se encuentra en modo experimental, segn menciona la misma W3C;
aunque ya es usado por mltiples desarrolladores y arquitectos web por sus
notables mejoras, avances y ventajas.
Por el momento son pocos los navegadores que reconocen las etiquetas HTML
como: Internet Explorer 9, Mozilla Firefox 8, Google Chrome 16. Por lo tanto se
recomienda al usuario comn actualizar a la versin ms actual, para poder
disfrutar de todo el potencial que trae HTML 5.
El desarrollo de esta versin es controlado y regulado por el Consorcio World
Wide Web Consortium (W3C).
Entre las caractersticas de HTML 5, podemos citar:
a) Estructura del cuerpo: HTML 5 permite agrupar elementos como cabecera,
pie, bloques arriba, bloques abajo, bloque derecha, bloque izquierda, etc.

17 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

en nuevas etiquetas que representarn cada uno de las partes tpicas de


una pgina web.
b) Etiquetas para contenido especfico: Generalmente se utiliza una nica
etiqueta para incorporar tipos de contenido enriquecido, como
animaciones, aplicaciones con flash o incluso vdeos. En HTML se utiliza
etiquetas especficas para cada tipo de contenido en particular, como
audio, vdeo, animaciones, etc.
c) Canvas: Se trata de una nueva una gran innovacin que permite dibujar en
la web, utilizando las funciones de un API, estos dibujos o formas pueden
estar animadas y responder a interaccin del usuario. La idea central es
reemplazar lo que hace Flash, pero dentro de la especificacin de esta
versin HTML.
d) Bases de datos locales: Si la idea es trabajar offline (sin conexin a
internet), HTML 5 permitir el uso de una base de datos local, con la que
se podr trabajar en una pgina Web por medio del cliente y a travs de un
API.
e) Web Workers: Se trata de procesos que requieren bastante tiempo de
procesamiento por parte del navegador, pero que se podrn realizar en un
segundo plano, para que el usuario no tenga que esperar que se terminen
para empezar a usar la pgina.
f) Geolocalizacin: Las pginas Web se podrn localizar geogrficamente por
medio de un API que permita la Geolocalizacin.
g) API para mejorar la interfaz de usuario: Se trata de dar enfoque al uso de
"drag & drop" (arrastrar y soltar) en las interfaces de usuario de los
programas convencionales, tambin incorporadas por medio de un API.
h) Fin de las etiquetas de presentacin: Todas las etiquetas que tienen que
ver con la presentacin del documento, es decir, que modifican estilos de la
pgina, sern depuradas. La definicin del aspecto de una Web estar a
cargo nicamente de una hoja de estilo (CSS).
i) Video: La presentacin de los videos en la web ya no depender ms de un
plugin correspondiente, en ocasiones cuando encontramos videos en
algunas pginas web nos solicita la instalacin del plugin. HTML 5 permitir
la presentacin y reproduccin de videos e incrustarlos en pginas sin la
necesidad de un plugin.

2.3 Protocolo HTTP


HTTP (HyperText Transfer Protocol) es el protocolo de transferencia de
hipertexto, se trata de un conjunto de reglas que rigen la transferencia de datos en
una comunicacin Web de un servidor web y un cliente web.
Se trata de un protocolo de aplicacin para transferencia de hipertexto, basado en
peticiones de URL.
Este protocolo de transferencia de hipertextos basado fundamentalmente en
HTML, fue implementado inicialmente en el ao de 1991 y se denomino HTTP
0.9. El protocolo fue definido en 1992 e implementado en marzo de 1993. La

18 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

versin 1.0, esta primer versin fue desarrollado por Tim Berners-Lee y la ltima
versin es la 1.1 desarrollada en la RFC 2616, (Salavert, 2003, p. 142).
Entre las caractersticas ms importantes que podemos citar:
- Liviano: Capaz de ser implementado en cualquier servidor y utilizado por
un cliente web sin consumir enormes cantidades de recursos
computacionales
- Rpido: Para facilitar la recuperacin rpida de informacin.
- Sin Estado: Basado en peticiones y respuestas. Cada nueva solicitud
establece una nueva conexin con el servidor.
En el Internet, las comunicaciones HTTP generalmente toman lugar sobre
conexiones TCP. El puerto por omisin es el 80, pero tambin pueden ser usados
otros puertos.

Figura 2.1: Protocolo HTTP en una arquitectura Cliente/Servidor

El intercambio de mensajes de solicitud y de respuestas entre el servidor y cliente


consta de 4 fases:
a. Apertura de la conexin mediante el empleo del navegador por parte del
usuario.
b. Peticin de una solicitud al servidor por parte del usuario desde su navegador.
Esto incluye la versin del protocolo, el mtodo, el URL y otros parmetros
tales como las MIME y la informacin del usuario.
c. El servidor enva la respuesta al usuario, con los mensajes de error si son
necesario.
d. Finalmente se cierra la conexin.

19 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

2.3.1 Versiones HTTP


a) Versin HTTP 0.9
Primera versin HTTP/0.9 solo soportaba el mtodo GET.

b) Versin HTTP 1.0


El desarrollo de HTTP 1.0. se inici en 1992 pero la versin final fue liberada en
1996. (Salavert, 2003, p. 143)
La primera versin slida se conoce como HTTP 1.0. Protocolo inicial (HTTP 0.9.)
resultaba insatisfactorio. No haba como devolver de vuelta la informacin sobre el
pedido Era imposible para un cliente enviar informacin al servidor.
Adems incorpora la mayor parte de los elementos de lo que se conoce en la
actualidad.
Concepto tipo de medio (adopt MIME - Multipurpose Internet Mail Extensions, en
espaol - Extensiones de Correo Internet Multipropsito).
Adems se introduce por primera vez la autentificacin bsica.
Se crean los mtodos: GET, POST y HEAD, adems de los tipos de peticiones
que los clientes pueden enviar.

- Mtodo GET
Es un tipo de peticin simple y muy usada por las aplicaciones web, que sirve
para recuperar recursos estticos del servidor.
Puede usarse para recuperar recursos dinmicos enviando parmetros al
servidor:
http://www.somoslibres.org/aplicacionDinamica?parametro=valor
Los parmetros van codificados en la misma URL

- Mtodo POST
Se usa para mandar parmetros al servidor web, generalmente sirve para
recuperar recursos generados dinmicamente. Su funcionamiento es igual al
de GET, slo que los parmetros se envan en el cuerpo de la peticin, no son
visibles en la URL.

- Mtodo HEAD
Slo devuelve cabeceras (no el cuerpo), se usa para implementar cachs de
navegadores, informar al usuario del tamao del recurso antes de intentar
recuperarlo.

c) La versin HTTP 1.1


HTTP 1.0 presentaba algunas limitaciones importantes:

20 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

- Lentitud de establecer TCP.


- Una transaccin por conexin.
- Modelo simple y primitivo de cach.
- Mecanismos de autentificacin dbil.
Con la presentacin de HTTP 1.1, desarrollado en 1997, incorpora un modelo de
conexin persistente, adems tiene soporte para manejo de servidores virtuales,
un sistema de cach ms sofisticado y esquema seguro de autentificacin
(Salavert, 2003, p. 143).

Figura 2.2: Comparacin de versiones del protocolo HTTP

2.4 Tecnologa Web


Son las aplicaciones web que hacen uso de las Tecnologas Web, las mismas que
ofrecen ventajas enormes en cuanto a eficiencia, adems el Software basado en
esta tecnologa, flexible y rpido.
Las tecnologas relacionadas a la Web su gestin se simplifica mucho y el soporte
al usuario se puede realizar a distancia.
La Tecnologa Web se ha convertido un rea de investigacin donde se
incorporan tcnicas, mtodos, metodologas, mecanismos para su desarrollo.
Las funciones habituales con la tecnologa Web podemos citar:
a) Permite facilitar la bsqueda y localizacin de informacin.
b) Acceso a diferentes tipos de recursos de informacin en lnea.
c) Posibilitar la comunicacin con otras personas.
d) Permite publicar informacin en Internet.
e) Permite el aprendizaje de diferente tipo de conocimientos.
f) Posibilita realizar negocios, actividades comerciales y telegestin.

21 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

g) Permite actuar como un excelente medio de publicidad y mercadeo.

2.5 Tecnologas para el desarrollo Web


Las tecnologas Web son un conjunto de herramientas que permiten lograr el
proceso de desarrollo de un sitio Web de gran calidad, eficiencia, seguridad,
usabilidad, funcionamiento y capacidad de rendimiento. Existe un gran nmero de
herramientas para el uso y desarrollo web que desarrolladores utilizan para el
comercio, marketing, educacin, salud, entre otros.
Entre las que se destacan tenemos: navegadores web, servidores web y sobre
todo lenguaje de programacin

2.5.1 Navegadores Web


Son herramientas que nos permiten visualizar el contenido web, interpretando la
informacin de archivos y sitios Web. De esta forma el navegador interpreta el
cdigo, HTML generalmente, en el que est escrita la pgina Web y lo presenta
en pantalla, permitiendo al usuario interactuar con su contenido mediante enlaces
o hipervnculos.
Existen un gran nmero de navegadores, tales como: Mozilla Firefox, Google
Chrome, Amaya, Epiphany, Galeon, Internet Explorer, Konqueror, Opera, Safari,
Seamonkey, Shiira, Flock, Arora, K-Meleon, entre otros.
La mayora de estos navegadores tambin funcionan en los dispositivos mviles y
tablet PC.

2.5.2 Servidores Web


Un servidor Web es un sistema distribuido que procesa una aplicacin del lado del
servidor. El cdigo recibido por el cliente suele ser compilado y ejecutado por un
navegador Web. Para la comunicacin entre el servidor y cliente se utiliza el
protocolo de comunicacin HTTP, perteneciente a la capa de aplicacin del
modelo OSI.
Para Mateu (2004), Un servidor web es un programa que atiende y responde a
las diversas peticiones de los navegadores, proporcionndoles los recursos que
solicitan mediante el protocolo HTTP o el protocolo HTTPS (la versin segura,
cifrada y autenticada de HTTP), (p. 23).
Un servidor Web bsico tiene un esquema de funcionamiento muy sencillo,
ejecutando de forma infinita el bucle siguiente:
a) Espera peticiones en el puerto TCP asignado
b) Recibe una peticin de un cliente web.
c) Busca el recurso en la cadena de peticin.
d) Enva el recurso por la misma conexin por donde ha recibido la peticin.
e) Vuelve a recibir otra peticin.

22 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Un servidor Web que sigue este esquema cumple con los requisitos bsicos de
los servidores HTTP.
Algunos servidores web importantes son: Apache, IIS, Cherokee, Tomcat, ighttpd,
thttpd y muchos ms

2.5.3 Lenguajes de programacin para el desarrollo Web


Existen un gran nmero de lenguajes de programacin para el desarrollo web en
el lado del servidor, entre los que podemos citar: PHP, Java Servlets y JavaServer
Pages (JSP), Javascript, Perl, Ruby, Python, ASP/ASP.NET, C#, entre otros
lenguajes.

2.6 Arquitectura Cliente/Servidor


Este esquema de comunicaciones "cliente-servidor, es utilizado por las
tecnologas Web, donde el protocolo de comunicacin comn es el HTTP, tal
como se muestra en la figura 2.2.
La arquitectura cliente/servidor es un modelo de aplicacin en un sistema
distribuido, y es la arquitectura comn que ms utilizan las tecnologas Web,
donde las tareas se reparten entre los proveedores denominado servidores y
los que solicitan la informacin denominados clientes. Un cliente realiza
peticiones a otra aplicacin, el servidor, que devuelve una respuesta.
De acuerdo a Sommerville (2006) "En una arquitectura cliente-servidor, una
aplicacin se modela como un conjunto de servicios proporcionados por los
servidores y un conjunto de clientes que usan estos servicios" (p. 245).
Los clientes necesitan conocer qu servidores estn disponibles. Pero
normalmente no conocen la existencia de otros clientes. Clientes y Servidores son
procesos diferentes, como se muestra en la figura 2.3, que representa un modelo
lgico de una arquitectura distribuida cliente/servidor.

Figura 2.3: Arquitectura Cliente/Servidor


La mayora de los servicios de Internet son tipo de cliente/servidor. Tan solo el
hecho de visitar un sitio Web requiere una arquitectura cliente/servidor, ya que el
servidor Web muestra las pginas Web al navegador.

23 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Leccin 3: Estndares Web

3.1 Estndares y otras especificaciones tcnicas


La Web se basa de una gran diversidad de tecnologas y estndares, en ese
sentido ninguna tecnologa puede pretender cubrir todas las necesidades de la
Web, la construccin de los inicios de la Web requiere seguir un proceso
imprescindible para asegurar la interoperabilidad de las tecnologas, por la
cantidad de sistemas operativos, lenguajes de programacin, gestores de base de
datos y dems tecnologas. Por lo tanto la Web debe ser de carcter universal y
accesible para todo el mundo.
Los estndares y dems especificaciones tcnicas aplicadas a la Web definen y
describen aspectos sobre el uso y desarrollo de la World Wide Web, asociado con
la tendencia de aprobar un conjunto de mejores prcticas estandarizadas para
construir y desarrollar sitios de contenido Web, diseo y desarrollo que incluyan
modelos, metodologas, tcnicas, mtodos y especificaciones abiertas.
Estas especificaciones y estndares no slo son para la World Wide Web,
tambin para otras herramientas y tecnologas de Internet, que en su mayora
consideran aspectos vinculados a la interoperabilidad, la accesibilidad y la
usabilidad de los sitios.
Esta es la lista de las organizaciones (Zeldman, 2005) que regulan y estandarizan
la web:
- Recomendaciones publicadas por la World Wide Web Consortium (W3C).
- Engineering Task Force (IETF), aplicada para estndares de Internet en
general.
- Request For Comments (RFC), peticin de comentarios documentos
publicados por la IETF.
- ISO, estndares publicados por la Organizacin Internacional para la
Estandarizacin.
- Ecma, estndares publicados por Ecma International.
- Internet Assigned Numbers Authority (IANA), estndares aplicados para
nombres.

3.2 World Wide Web Consortium (W3C)


W3C se gua por los principios de accesibilidad, internacionalizacin, e
independencia de dispositivo, entre otros. Esto facilita que el acceso a la Web sea
posible desde cualquier lugar, en cualquier momento y utilizando cualquier
dispositivo.
W3C (World Wide Web Consortium) es el encargado de formular la especificacin
de nmeros estndares para la World Wide Web entre las que desatacan: HTML,
CSS y XML.

24 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

a. HTML
HTML, siglas en ingls HyperText Markup Language (Lenguaje de Marcas de
Hipertexto), es el lenguaje de marcado utilizado para la construccin de pginas
web.

b. XML
XML, siglas en ingls de eXtensible Markup Language (Lenguaje de marcas
extensible), es un metalenguaje extensible de etiquetas desarrollado por el World
Wide Web Consortium (W3C). XML no es un lenguaje en particular, es una
manera de definir lenguajes para diferentes necesidades. Algunos de estos
lenguajes que usan XML para su definicin son XHTML, XPDL, BPEL, XSD, RSS,
SVG, MathML y muchos formatos derivados a partir de este lenguaje de marcas.
Se trata de un estndar para el intercambio de datos, interoperabilidad y utilizado
para la integracin de datos, aplicaciones y procesos.

c. CSS
Las hojas de estilo en cascada (en ingls Cascading StyleSheets), es un lenguaje
para definir la presentacin de un documento estructurado escrito en HTML o
XML y por extensin en XHTML.
A continuacin los resultados de los estndares que formulo hasta el ao 2004 la
W3C:

Figura 3.1: Estndares propuestos por la W3C hasta el ao 2004


Fuente: W3C http://www.w3c.es/Presentaciones/2005/0314-estandares-JA/7.html

25 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Leccin 4: Implementacin de un Servidor Web

4.1 Introduccin a los Servidores Web


El servidor Web es uno de los componentes ms importantes del ecosistema
Web, tambin conocido como servidor HTTP es un programa que procesa una
aplicacin del lado del servidor realizando conexiones bidireccionales y
unidireccionales. El cdigo recibido por el cliente suele ser compilado y ejecutado
por un navegador Web.
Los servidores Web se componen bsicamente de los siguientes componentes:

Figura 4.1: Componentes de un Servidor Web


Fuente: Elaboracin propia

Ncleo: Es el servidor como tal, y es el centro del servidor Web. Siempre est
cargado y funcionando cuando el servidor est encendido.
Mdulos: Los servidores Web son bastante complejos. Estos mdulos,
conocidos como extensiones del servidor, se instalan cuando se configuran los
servidores Web.
Pginas: En una determinada carpeta estn alojados las pginas webs donde
est guardada la informacin, estn estructurados en forma de rbol de
directorios.

4.2 Servidor Web Apache


Apache es un servidor Web de cdigo libre robusto cuya implementacin se
realiza de forma colaborativa, con prestaciones y funcionalidades equivalentes a
las de los servidores comerciales. El proyecto est dirigido y controlado por un
grupo de voluntarios de todo el mundo que, usando Internet y la web para
comunicarse, planifican y desarrollan el servidor y la documentacin relacionada
(Rivera, 2008, p.8).

26 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Se trata de un proyecto de software libre ms utilizado en internet, desarrollado


por el grupo Apache Software Foundation. Este servidor ha sido creado sobre los
principales sistemas operativos Unix y Linux, para ello los creadores ha
desarrollado el servidor con los requerimientos de: seguridad, eficiencia,
extensibilidad y estandarizacin. Estos objetivos junto con sus caractersticas de
producto de cdigo abierto han conseguido situarlo como uno de los servidores
web lderes en el mercado.

4.3 Implementacin de un Servidor Web


Tenemos dos opciones principales para instalar Apache: podemos compilar el
cdigo fuente o podemos instalarlo a partir de un paquete binario adecuado a
nuestro sistema operativo basado en GNU/Linux.

4.3.1 Compilacin de las fuentes del Servidor Web


Para compilar apache, a partir de cdigo fuente sobre plataforma GNU/Linux
Centos, debemos obtener, previamente, de la web de apache la versin del
siguiente sitio web: http://www.apache.org/dyn/closer.cgi, seleccione uno de los
mirrors, por ejemplo: http://apache.osuosl.org/httpd/ y luego descargue el paquete
httpd-2.2.21.tar.gz (corresponde a la ltima versin estable). Las versiones cuya
denominacin en el nombre figura como beta, esta no es recomendable para
implementar servidores en produccin.
Una vez descargado, seguiremos los siguientes pasos:
- Descomprimiremos el fichero que acabamos de descargar, que nos crear un
directorio donde estarn las fuentes del servidor.
# tar xzvf httpd-2.2.21.tar.gz -C /usr/local
- Luego ingresar al directorio donde se encuentra el programa fuente.
# cd /usr/local/httpd-2.2.21
A continuacin, configuraremos el cdigo para su compilacin. Para ello
ejecutaremos:
# ./configure --prefix=/usr/local/apache --enable-so
Disponemos de algunos parmetros para ajustar la compilacin de apache.
- Una vez configurado el cdigo fuente, si no se han producido errores
procederemos a compilarlo. Para ello ejecutaremos:
# make
Para compilar apache solo se requiere como mnimo, GNU Make y GNU CC.
- Una vez compilado, podemos instalarlo en el directorio que hemos
designado como destino de acuerdo a la configuracin anterior, con el
comando configure. Este paso se realiza usando uno de los objetivos que
ya tiene definido make. Concretamente lo realizaremos con:
# make install

27 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

- Una vez instalado, dispondremos, dentro del subdirectorio bin del directorio
de instalacin, especificado con prefix, un programa llamado apachectl que
nos permitir controlar el servidor. Para iniciar el servicio ejecutar los
siguientes comandos:
# cd /usr/local/apache/bin
# ./apachectl start
Para probar, si se ha procedido correctamente, colocar el nombre del servidor
localhost o la direccin ip del servidor en el navegador, donde debe mostrar la
siguiente imagen:

Figura 4.2: Probando el servidor web apache httpd

Finalmente para detener el servicio ejecutamos:


# cd /usr/local/apache/bin
# ./apachectl stop

4.3.2 Instalacin de un servidor Web utilizando GNU/Linux Ubuntu


La segunda opcin es instalar los archivos binarios sin necesidad de compilar las
fuentes, a continuacin se instalar Apache, PHP y MYSQL desde la lnea de
comandos de Linux, utilizando una conexin a internet.
Durante la instalacin puede que se necesite descargar archivos desde el sitio
web de la distribucin de Linux, en este caso ubuntu, por lo que es necesario
disponer de conexin a Internet; (Ramos, 2011, p. 12) los pasos a seguir son:
a. Se abre la consola, se escribe la orden sudo "su" y se pulsa la tecla "intro". A
continuacin, se escribe la contrasea del usuario del sistema operativo. Una
vez como sper usuario se escribe la orden para instalar Apache:
# apt-get install apache2
b. A continuacin, se escribe la orden para instalar MYSQL:
# apt-get install mysql-server
Al final, nos pide escribir una contrasea para el usuario root, el cual elegimos
a nuestra consideracin.

28 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

c. A continuacin, se escribe la siguiente orden para instalar PHP:


# apt-get install php5
d. A continuacin se escribe la siguiente instruccin en consola para instalar el
mdulo de Apache para autentificacin MYSQL:
# apt-get install libapache2-mod-auth-mysql
e. Finalmente, se escribe la siguiente instruccin para instalar el mdulo de
MYSQL para PHP:
# apt-get install php5-mysql
Para comprobar si el servidor web est funcionando, se abre el navegador web y
se escribe la URL http://localhost, debe aparecer la pantalla de apache.
Para comprobar si el servidor Mysql est trabajando, se escribe:
# mysql -u root -p
Y pulsar la tecla "Enter", nos pedir la contrasea del usuario "root" (por defecto
presionar la tecla Enter en vista que por defecto se encuentra sin clave).
Para salir del editor de comando de MySQL, escribir el comando exit.
Finalmente, para probar la instalacin de PHP se crea un archivo de nombre
"prueba.php" en la carpeta /var/www/html
# touch prueba.php
Utilizando el editor vi ingresar las siguiente lneas:
# vi prueba.php

<?
phpinfo();
?>

A continuacin, abrir el navegador e ingresar el siguiente URL


http://localhost/prueba.php, debiendo mostrar la siguiente figura:

Figura 4.4: Informacin de la Configuracin de php

29 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Con esto podemos iniciar a desarrollar aplicaciones con php y mysql en una
distribucin GNU/Linux ubuntu.

30 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

RESUMEN

La unidad desarrollada nos brinda una revisin de los fundamentos ms


importantes de Internet y la World Wide Web. Se describe histricamente su
evolucin, los protocolos de comunicacin y las tecnologas relacionadas a la
web.
Adems se plantea a la World Wide Web como el mejor referente de Internet,
gracias a la evolucin del HTML, HTTP y componentes como los Navegadores
Web y Servidores Web que han permitido rpidamente la evolucin y el desarrollo
de Internet. Se hace nfasis a la arquitectura cliente/servidor como un modelo de
referente para las Tecnologas Web, adems de los lenguajes de programacin
que permiten el desarrollo de aplicaciones.
Se describe los estndares web que regulan el crecimiento y perfeccionamiento
de la web adems se presenta a la World Wide Web Consortium como la
institucin referente en definir y regular los estndares de la Web.
Finalmente, en esta unidad se describe y detalla la forma de implementar un
servidor web, conociendo sus componentes, para luego compilar el cdigo fuente
del servidor web apache o alternativamente instalando y configurando el Servidor
Web, utilizando una distribucin GNU/Linux Ubuntu.

31 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

LECTURA

UNA BREVE HISTORIA DE INTERNET

Autores: Barry M. Leiner, Vinton G. Cerf, David D. Clark, Robert E. Kahn, Leonard
Kleinrock, Daniel C. Lynch, Jon Postel, Lawrence G. Roberts, Stephen Wolff

La primera descripcin documentada acerca de las interacciones sociales que


podran ser propiciadas a travs del networking (trabajo en red) est contenida en
una serie de memorndums escritos por J.C.R. Licklider, del Massachusetts
Institute of Technology, en Agosto de 1962, en los cuales Licklider discute sobre
su concepto de Galactic Network (Red Galctica). El concibi una red
interconectada globalmente a travs de la que cada uno pudiera acceder desde
cualquier lugar a datos y programas. En esencia, el concepto era muy parecido a
la Internet actual. Licklider fue el principal responsable del programa de
investigacin en ordenadores de la DARPA desde Octubre de 1962. Mientras
trabaj en DARPA convenci a sus sucesores Ivan Sutherland, Bob Taylor, y el
investigador del MIT Lawrence G. Roberts de la importancia del concepto de
trabajo en red.
En julio de 1961 Leonard Kleinrock public desde el MIT el primer documento
sobre la teora de conmutacin de paquetes. Kleinrock convenci a Roberts de la
factibilidad terica de las comunicaciones va paquetes en lugar de circuitos, lo
cual result ser un gran avance en el camino hacia el trabajo informtico en red.
El otro paso fundamental fue hacer dialogar a los ordenadores entre s. Para
explorar este terreno, en 1965, Roberts conect un ordenador TX2 en
Massachusetts con un Q-32 en California a travs de una lnea telefnica
conmutada de baja velocidad, creando as la primera (aunque reducida) red de
ordenadores de rea amplia jams construida. El resultado del experimento fue la
constatacin de que los ordenadores de tiempo compartido podan trabajar juntos
correctamente, ejecutando programas y recuperando datos a discrecin en la
mquina remota, pero que el sistema telefnico de conmutacin de circuitos era
totalmente inadecuado para esta labor. La conviccin de Kleinrock acerca de la
necesidad de la conmutacin de paquetes qued pues confirmada.
A finales de 1966, Roberts se traslad a la DARPA a desarrollar el concepto de
red de ordenadores y rpidamente confeccion su plan para ARPANET,
publicndolo en 1967. En la conferencia en la que present el documento se
expona tambin un trabajo sobre el concepto de red de paquetes a cargo de
Donald Davies y Roger Scantlebury del NPL. Scantlebury le habl a Roberts
sobre su trabajo en el NPL as como sobre el de Paul Baran y otros en RAND. El
grupo RAND haba escrito un documento sobre redes de conmutacin de
paquetes para comunicacin vocal segura en el mbito militar, en 1964. Ocurri
que los trabajos del MIT (1961-67), RAND (1962-65) y NPL (1964-67) haban
discurrido en paralelo sin que los investigadores hubieran conocido el trabajo de
los dems. La palabra packet (paquete) fue adoptada a partir del trabajo del NPL
y la velocidad de la lnea propuesta para ser usada en el diseo de ARPANET fue
aumentada desde 2,4 Kbps hasta 50 Kbps.

32 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

En Agosto de 1968, despus de que Roberts y la comunidad de la DARPA


hubieran refinado la estructura global y las especificaciones de ARPANET,
DARPA lanz un RFQ para el desarrollo de uno de sus componentes clave: los
conmutadores de paquetes llamados interface message processors (IMPs,
procesadores de mensajes de interfaz). El RFQ fue ganado en Diciembre de 1968
por un grupo encabezado por Frank Heart, de Bolt Beranek y Newman (BBN). As
como el equipo de BBN trabaj en IMP con Bob Kahn tomando un papel principal
en el diseo de la arquitectura de la ARPANET global, la topologa de red y el
aspecto econmico fueron diseados y optimizados por Roberts trabajando con
Howard Frank y su equipo en la Network Analysis Corporation, y el sistema de
medida de la red fue preparado por el equipo de Kleinrock de la Universidad de
California, en Los ngeles.
A causa del temprano desarrollo de la teora de conmutacin de paquetes de
Kleinrock y su nfasis en el anlisis, diseo y medicin, su Network Measurement
Center (Centro de Medidas de Red) en la UCLA fue seleccionado para ser el
primer nodo de ARPANET. Todo ello ocurri en Septiembre de 1969, cuando BBN
instal el primer IMP en la UCLA y qued conectado el primer ordenador host. El
proyecto de Doug Engelbart denominado Augmentation of Human Intelect
(Aumento del Intelecto Humano) que inclua NLS, un primitivo sistema hipertexto
en el Instituto de Investigacin de Standford (SRI) proporcion un segundo nodo.
El SRI patrocin el Network Information Center, liderado por Elizabeth (Jake)
Feinler, que desarroll funciones tales como mantener tablas de nombres de host
para la traduccin de direcciones as como un directorio de RFCs (Request For
Comments). Un mes ms tarde, cuando el SRI fue conectado a ARPANET, el
primer mensaje de host a host fue enviado desde el laboratorio de Leinrock al
SRI. Se aadieron dos nodos en la Universidad de California, Santa Brbara, y en
la Universidad de Utah. Estos dos ltimos nodos incorporaron proyectos de
visualizacin de aplicaciones, con Glen Culler y Burton Fried en la UCSB
investigando mtodos para mostrar funciones matemticas mediante el uso de
"storage displays" (N. del T.: mecanismos que incorporan buffers de
monitorizacin distribuidos en red para facilitar el refresco de la visualizacin) para
tratar con el problema de refrescar sobre la red, y Robert Taylor e Ivan Sutherland
en Utah investigando mtodos de representacin en 3-D a travs de la red. As, a
finales de 1969, cuatro ordenadores host fueron conectados conjuntamente a la
ARPANET inicial y se hizo realidad una embrionaria Internet. Incluso en esta
primitiva etapa, hay que resear que la investigacin incorpor tanto el trabajo
mediante la red ya existente como la mejora de la utilizacin de dicha red. Esta
tradicin contina hasta el da de hoy.
Se siguieron conectando ordenadores rpidamente a la ARPANET durante los
aos siguientes y el trabajo continu para completar un protocolo host a host
funcionalmente completo, as como software adicional de red. En Diciembre de
1970, el Network Working Group (NWG) liderado por S. Crocker acab el
protocolo host a host inicial para ARPANET, llamado Network Control Protocol
(NCP, protocolo de control de red). Cuando en los nodos de ARPANET se
complet la implementacin del NCP durante el periodo 1971-72, los usuarios de
la red pudieron finalmente comenzar a desarrollar aplicaciones.
En octubre de 1972, Kahn organiz una gran y muy exitosa demostracin de
ARPANET en la International Computer Communication Conference. Esta fue la

33 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

primera demostracin pblica de la nueva tecnologa de red. Fue tambin en 1972


cuando se introdujo la primera aplicacin "estrella": el correo electrnico.
En marzo, Ray Tomlinson, de BBN, escribi el software bsico de envo-recepcin
de mensajes de correo electrnico, impulsado por la necesidad que tenan los
desarrolladores de ARPANET de un mecanismo sencillo de coordinacin. En
Julio, Roberts expandi su valor aadido escribiendo el primer programa de
utilidad de correo electrnico para relacionar, leer selectivamente, almacenar,
reenviar y responder a mensajes. Desde entonces, la aplicacin de correo
electrnico se convirti en la mayor de la red durante ms de una dcada. Fue
precursora del tipo de actividad que observamos hoy da en la World Wide Web,
es decir, del enorme crecimiento de todas las formas de trfico persona a
persona.

Documento extrado de "A Brief History of Internet".


Publicado en el nmero de Mayo/Junio de 1997, revista de la Internet Society,
http://www.internetsociety.org/internet/internet-51/history-internet/brief-history-internet
y se publica con la debida autorizacin.
El artculo est basado en otro publicado en el nmero de Febrero de 1997 de la revista
Communications de la ACM

34 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

AUTOEVALUACIN
1. Segn Vrtices, Internet se constituye como un fenmeno:
a. Poltico
b. Cultural
c. Social
d. Gubernamental
e. Sociocultural

2. Segn Hervo, Internet es considerado como una red:


a. Centralizada
b. Privada
c. Abierta
d. Restringuida
e. Cerrada

3. Es el encargado de administrar los dominios .pe en Per:


a. IANA
b. ISOC
c. RCP
d. El Estado Peruano
e. W3C

4. Para Cancelo y Giraldez lo que hace que una red funcione


adecuadamente es el mantenimiento de los estndares de comunicacin
llamados :
a. Ordenadores
b. Protocolos
c. Conexiones
d. Telecomunicaciones
e. Centro Procesamiento de Datos

5. El protocolo TCP de acuerdo al modelo TCP/IP corresponde a la capa:


a. Aplicacin
b. Transporte
c. Internet
d. Red
e. Enlace de datos

6. El siguiente ejemplo:
body {
padding-left: 11em;
font-family: Georgia, "Times New Roman", serif;
color: red;
background-color: #d8da3d;
}

h1 {
font-family: Helvetica, Geneva, Arial, sans-serif;
}

35 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Corresponde a:

a. html
b. java
c. css
d. html5
e. php

7. Se define como procesos que requieren bastante tiempo de


procesamiento por parte del navegador, pero que se podrn realizar en
un segundo plano:
a. APIS
b. Base de Datos
c. Aplicaciones Web
d. Web Workers
e. HTML

8. Aplicada para estndares de Internet en general.


a. W3C
b. RFC
c. IANA
d. IETF
e. ISO

9. Considerado un metalenguaje cuya simplificacin y adaptacin del SGML


permite definir la gramtica de lenguajes especficos:
a. html
b. jsp
c. xml
d. css
e. php

10. Es un modelo de aplicacin que ms utilizan las tecnologas web:


a. Peticin y Respuesta
b. Sistema Distribuido
c. Protocolo de Comunicacin
d. Cliente/Servidor
e. Estndares Web

36 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

RESPUESTAS DE CONTROL

1. e 2. c 3. c 4. b 5. b 6. c 7. d 8. d 9. c 10. d

37 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

EJERCICIOS PROPUESTOS

Caso: Instalacin y Configuracin del Servidor Web en GNU/Linux

Realizar la ejecucin de comandos como usuarios root.

1. Ingresar al sitio de internet http://www.php.net/downloads.php y descargar la


versin (Current stable) de php con extensin .tar.gz.

Ingresar al mirror Sitio Canad y descargar el paquete.

Para desempaquetar y descomprimir el paquete php-VERSION1.tar.gz ejecute


las siguientes lneas de comando:

Nota: reemplazar VERSION1 por la que corresponde. Ejemplo: VERSION1 =


5.3.8 superior.

cd /root/Desktop
tar xzvf php-VERSIN1.tar.gz -C /usr/local

2. Ingresar al sitio de internet http://www.apache.org/dyn/closer.cgi y luego dar


clic en cualquiera de los enlaces que muestra en pantalla. Un vez que ingreso
busque e identifique la carpeta httpd para luego dar clic sobre ella. Descargar
la ltima versin de httpd (apache) con extensin .tar.gz.

Para desempaquetar y descomprimir el paquete httpd-VERSION2.tar.gz en


/usr/local ejecute las siguientes lneas de comando:

Nota: reemplazar VERSION2 por la que corresponde. Ejemplo: VERSION2 =


2.2.21 superior.

cd /root/Desktop
tar xzvf httpd-VERSION2.tar.gz -C /usr/local

Para compilar, configurar e instalar apache ejecute las siguientes lneas de


comando:

cd /usr/local/httpd-VERSION2/
/configure --prefix=/usr/local/apache --enable-so
make
make install

3. Para activar el servicio del apache ejecute:

/usr/local/apache/bin/apachectl start

Luego abrir el browser y escriba en la barra de direccin lo siguiente:


http://localhost

38 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Debe de mostrar una pgina con el texto Its Work

Bajar el servicio de apache ejecutando la lnea de comando:

/usr/local/apache/bin/apachectl stop

4. Ingrese al directorio /usr/local/php-VERSION1

cd /usr/local/php-VERSION1

5. Ejecute la siguiente lnea de comando para la configuracin:

./configure --with-apxs2=/usr/local/apache/bin/apxs --with-mysql --with-gd


--with-jpeg-dir --with-png-dir --with-zlib --with-zlib-dir --with-freetype-dir
--with-kerberos --with-openssl-dir --with-pear=/usr/local/php-VERSION1/pear
--with-bz2 --with-iconv --enable-mbstring --enable-zip --with-gettext
--enable-gd-native-ttf --with-curl --with-xmlrpc --with-mysqli
6. Ejecute el comando make para la compilacin

make

7. Ejecute make install para la instalacin

make install

8. Copiar el archivo php.ini-development a /usr/local/lib/ como php.ini

cp php.ini-dist /usr/local/lib/php.ini

9. Editar el archivo de configuracin del Servidor Web Apache httpd.conf. Ingrese


al directorio /usr/local/apache/conf:

cd /usr/local/apache/conf
vi httpd.conf

a. A continuacin en la modifique la lnea:

#ServerName www.example.com

Retirar la almohadilla (#) e ingrese la IP o el HOSTNAME de su ordenador


quedando de la siguiente manera.

ServerName INGRESE_IP_DE_SU_ORDENADOR

Nota.- Para obtener la direccin IP del ordenador ejecute el comando


ifconfig

b. Identifique a continuacin el siguiente mdulo:

39 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

<IfModule dir_module>
DirectoryIndex index.htm
</IfModule>

Y modifquelo de la siguiente manera:

<IfModule dir_module>
DirectoryIndex index.php index.htm index.html default.htm
</IfModule>

c. Comprobar que la siguiente lnea se encuentre habilitada:

LoadModule php5_module modules/libphp5.so

Nota.- En caso de no visualizar la lnea anterior deber volver a ejecutar los


comandos a partir desde el paso 4.

d. Agregar al final, del archivo de configuracin de apache, lo siguiente:

<FilesMatch "\.ph(p[2-6]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>

<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>

Guardar los cambios.

10. Levantar el servicio de apache, ejecute la siguiente lnea de comando:

/usr/local/apache/bin/apachectl start

11. Para comprobar la configuracin del Servidor crear el siguiente archivo dentro
del directorio /usr/local/apache/htdocs

cd /usr/local/apache/htdocs
touch info.php

Con el editor vi crear el archivo

vi info.php

Agregue el siguiente contenido:

<?php
phpinfo();
?>

40 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Guardar los cambios.

12. En el browser o navegador ingrese el siguiente URL

http://IP_DE_SU_ORDENADOR/info.php

13. Ingresar al sitio de Internet


http://www.phpmyadmin.net/home_page/downloads.php y descargar el
paquete phpMyAdmin-VERSION3-all-languages.tar.gz

Nota: reemplazar VERSION3 por la que corresponde. Ejemplo: VERSION3 =


3.4.9 superior.

tar xzvf phpMyAdmin-VERSION3-all-languages.tar.gz -C


/usr/local/apache/htdocs

14. Renombrar la carpeta phpMyAdmin-VERSION3-all-languages de la siguiente


manera:

cd /usr/local/apache/htdocs
mv phpMyAdmin-VERSION3-all-languages phpmyadmin

En el browser abrir el siguiente URL

http://IP_DE_SU_ORDENADOR/phpmyadmin

Caso: Instalacin de otros servidores Web

a. Instalar y configurar el servidor Web Jetty y Apache Tomcat


b. Realizar una comparacin tcnica entre los servidores Web: thttpd, Roxen,
AOLServer y Glassfish

Caso: Versiones HTML

a. Desarrollar un formulario en versiones HTML bsico, HTML Dinmico y


HTML5 y mostrarlo en el servidor Web.
b. Crear un formulario utilizando HTML 4.0, su hoja de estilo ms su control
dinmico utilizando java script.

Caso: Hoja de Estilos (CSS)

Crear una pgina web con una hoja de estilo, donde caracterice el tipo de fuente,
tamao, justificacin y defina como background una imagen.

41 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

EXPLORACIN ON LINE

URL: http://www.w3c.es/
Sitio oficial de la World Wide Web Consortium (W3C) donde se definen los
estndares web como html, xml y rss. Recientemente definieron el estndar
HTML 5.0.
URL: http://www.internetsociety.org/
Sitio oficial de la Internet Society organizacin no gubernamental y sin nimo
de lucro, constituida como la nica organizacin dedicada exclusivamente al
desarrollo mundial de Internet
URL: https://developer.mozilla.org/en/Canvas_tutorial
Tutorial de Canvas desarrollado por la empresa Mozilla que promueve el uso
del estndar HTML 5.0, este componente permite crear imgenes incluso en
3D utilizando HTML
URL: http://cmapspublic2.ihmc.us/rid=1239136955718_1163871558_10281/
Publicacin acerca de la historia y evolucin de internet
URL: http://httpd.apache.org
Sitio oficial The Apache HTTP Server Project Apache, donde encontrar
documentacin para el proceso de instalacin, configuracin y soporte tcnico
de este servidor

42 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

REFERENCIA BIBLIOGRFICA

Aubry, C. (2009) CSS 2.1: adopte las hojas de estilo


para dominar los estndares de la Web.
Barcelona: Editorial Casa del Libro.
Atelin, P. (2007) TCP/IP y protocolos de internet.
Barcelona: Ediciones ENI
Bravo, C. y Redondo, M. A. (2005) Sistemas interactivos y
colaborativos en la web. Cuenca:
Ediciones de la Universidad de Castilla-La
Mancha
Cancelo, P. y Giraldez, J. A. (2007) La tercera Revolucin. La Corua:
Editorial NetBiblio, S.L.
De Viveiros, J.M. (2011) La Integracin de Internet en el
Aula. Alicante: Editorial Club Universitario.
Egea, C. (2007) Diseo Web para tod@s I:
accesibilidad al contenido en la Web.
Barcelona: Icaria Editorial
Hervo, C. (2007) Microsoft Internet Explorer 7.
Barcelona: Ediciones ENI
Lester, David. (2011) Como empezaron. 18 Buenas
ideas que se convirtieron en grandes
empresas, Ediciones PROFIT, Barcelona.
Maas, J.A. (2004) Mundo IP: Introduccin a los
secretos de internet y las redes de datos.
Madrid: Ediciones Nowtiles, S.L.
Mateu, C. (2004) Desarrollo de Aplicaciones Web.
Barcelona: Eureca Media, SL
Odlyzko, A.M. (2000) The history of communications and
its implications for the Internet. Minnesota
Ramos, A. (2011) Aplicaciones Web. Madrid:
Editorial Paraninfo
Raymond McLeod, Jr. (2000) Sistemas de Informacin
Gerencial, Sptima Edicin, Ediciones
Pearson Educacin.
Rivera, R. N. (2008) Tesis: Desarrollo de un sistema
automatizado para mejorar la eficiencia en
la gestin de pacientes del ISRI-CRIOR
de la ciudad de San Miguel. El Salvador:
Universidad de Oriente del San Salvador
Salavert, A. (2003) Los protocolos en las redes de
ordenadores. Barcelona: Ediciones UPC.

43 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

Sommerville, I. (2006) Ingeniera de Software (Sptima


Edicin). Madrid: Pearson Educacin, S.A.
Vrtices S.L. (2008) Introduccin a Internet. Mlaga:
Publicaciones Vrtice S.L.
Zeldman, J. (2005) Diseo con Estndares Web.
Madrid: Grupo Anaya Comercial.
W3C (2008) Gua Breve de Estndares
Web.URL:
www.w3c.es/divulgacion/guiasbreves/Esta
ndares. Obtenido 2 de Diciembre 2012)

44 Sistema a Distancia
Tecnologas Web (E) - Unidad I Daniel Yucra S. / Santiago Gonzles S.

BIBLIOGRAFA COMENTADA

- Cafasi, E. (1998) Internet: Polticas y Comunicaciones. Buenos Aires: Editorial


Biblos.
Puede revisar el captulo I, sobre la redefinicin de las esferas pblicas y
privadas a partir de la ampliacin del uso de internet. Adems la pgina 205
hasta la 220 sobre el Internet y las publicaciones cientficas
- Coulouris, G., Dollimore, J., & Kindberg, Tim (2007) Sistemas Distribuidos
Conceptos y Proyecto 4ta Edicin. Madrid: Addison Wesley.
Puede revisar la unidad 2, sobre los modelos de arquitectura de los sistemas
distribuidos.
- Lackerbauer, I. (2000) Internet. Barcelona: Marcombo S.A.
Puede revisar el captulo I sobre la historia y formacin de internet, adems de
la pgina 253 donde le explican cmo crear su propia pgina.
- Eck, M. (2002) Tecnologa: Mapas para el Futuro, La internet por dentro y por
fuera. New York: The Rosen Publishing Group.
Puede revisar la pgina 16, sobre el nacimiento de la World Wide Web, la
pgina 22 sobre la administracin de Internet y la pgina 40 sobre una
cronologa sobre Internet.
- Fernndez, A. (1998) Produccin y diseo grfico para la World Wide Web.
Barcelona: Editorial Paids.
Se recomienda revisar la unidad 6, sobre la estructura de la informacin en la
World Wide Web, adems de las Guas de estilo para diseo grfico en la
World Wide Web.

45 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

SEGUNDA UNIDAD

Web 2.0 y Web 3.0

Sumario

La siguiente unidad describe los fundamentos de la Web 2.0 y Web 3.0 y las
aplicaciones utilizadas para la gestin de contenidos y aplicaciones de inteligencia
artificial.
As mismo, se realiza la definicin de los Web Services, el uso de los estndares
ms utilizados, cuales son las caractersticas ms resaltantes y su arquitectura a
travs los componentes bsicos relacionados a los protocolos de comunicacin.
Al finalizar la unidad, definimos la Web Semntica y sus principales componentes
y mecanismos que ayudan a convertir la Web en una gran infraestructura global
para los usuarios.

46 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Objetivos

Al finalizar esta unidad, el estudiante ser capaz de:

Conocer los fundamentos de la Web 2.0 y las aplicaciones que se relacionan,


tales como: Redes Sociales, Sistema de Gestin de Contenidos y Aprendizaje.
Conocer los fundamentos de la Web 3.0 y las aplicaciones utilizadas en el
entorno Web.
Reconocer estndares, caractersticas y arquitectura de los Web Services.
Identificar los componentes de la Web Semntica.

47 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Leccin 5: Fundamentos de la Web 2.0

5.1 Historia y Evolucin de la Web


Los acontecimientos ms importantes en el nacimiento de la Web se remontan en
los aos cuarenta:
1945: Vannevar Bush escribe el artculo "As We May Thik" en el Atlantic
Monthy sobre un dispositivo fotoelctrico y mecnico, llamado menex, capaz
de crear y seguir enlaces entre distintos documentos almacenados en
microfichas (un sistema parecido a lo que hoy se conoce como hipertexto),
(Lujn, 2002, p. 15).
1965: Ted Nelson acua el trmino "hipertexto" en el artculo "A File Structure
for the Complex, the Changing and the Indeterminate". Comienza el desarrollo
del proyecto Xanadu, un sistema basado en hipertexto que nunca lleg a
completarse (Lujn, 2002, p. 15).
1980: Mientras trabaja en el CERN, Tim Berners-Lee escribe un programa
llamado Enqure-Within-Upon-Everuthing, que permite crear enlaces entre
nodos. (Lujn, 2002, p. 15-16).
1989 (marzo): Tim Berners-Lee escribe "Information Management:A proposal",
un informe interno que circula por el CERN (Lujn, 2002, p. 16).
1990 (septiembre): Mike Sendll, jefe de Tim Berners-Lee da el visto bueno a la
compra del ordenador NeXT, lo que permite a Tim seguir adelante y crear un
sistema global de hipertexto (Lujn, 2002, p. 16).
1990 (octubre): Tim Berners-Lee inicia el desarrollo de un editor y navegador
grfico de hipertexto para NEXTStep, el sistema operativo con entorno grfico
de los ordenadores NeXT. Elige WorldWideWeb como nombre del programa
"World Wide Web" como nombre del proyecto, despus de descartar una serie
de nombre: Information Mesh, Mine of Information e Information Mine (Lujn,
2002, p. 16).
1990 (noviembre): se instala el primer servidor Web y se pblica la primera
pgina Web.
1991 (junio): se celebra un seminario sobre WWW en el CERN
1991 (agosto): se publica en Internet los ficheros del primer navegador.
1991 (diciembre): Paul Kunz instala el primer servidor Web fuera de Europa en
Stanford Linear Accelerator Center (SLAC), (Garca, 2007, p. 19).
1992: aparecen los primeros navegadores de terceras partes, Erwise, Viola y
Midas.
1992: Marc Andreesen y Eric Bina comienzan a trabajar en un nuevo
navegador grfico para Unix en la Nation Center for Supercomputing
Applications (NSCA), (Garca, 2007, p. 20).
1993 (febrero): se publica el navegador grfico NCSA Mosaic para X-Window
sobre Unix, dando inicio a Nestcape y al resto de navegadores de hoy en da
(Aguilar, 2003, p. 131).

48 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

A continuacin las tecnologas y estndares que han permitido la evolucin de la


Web hasta la versin Web 4.0:

Figura 2.1: Evolucin de la Web


Fuente: Radas Networks y Nova Spivack 2007

Como hemos visto, la Web ha pasado por tres etapas o generaciones muy claras:
a) Primer Generacin de Contenido esttico
b) Segunda Generacin de Contenido Dinmico o Interactivo
c) Tercera Generacin o de Contenido Colaborativo
Sin embargo, la evolucin contina y desde el ao 2010 estamos en pleno
desarrollo de la web 3.0 donde destaca la Web Semntica e Inteligencia Web.

5.2 Web 1.0


La Web se inicia con la versin 1.0 o simplemente Web 1.0, donde las pginas
eran estticas y el usuario todava no poda interactuar con las pginas. Sus
caractersticas son:
Las pginas Web estaban escritas en un simple editor de texto utilizando solo
cdigo HTML. Las tareas de aadir, cambiar o actualizar algo en la pgina
web requera mucho tiempo y trabajo.
Los usuarios eran simples lectores que podan ver contenidos como textos e
imgenes y no podan registrarse ni comentar o aadir contenidos a las
pginas, era una labor tcnica y en algunos casos sin herramientas de apoyo.

49 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Todava no se defina alguna norma de diseo, con lo que era fcil


encontrarse pgina con mltiples colores y diseos incluso extravagantes.
En su inicio no se utilizaban gestores de base de datos para guardar o
almacenar informacin, por lo tanto no existan los usuarios ni el registro de
usuarios, todos eran visitantes.
En la Web 1.0 no exista Google, Altavista o Yahoo u otros buscadores. Tampoco
exista Facebook, Myspace, Messenger, menos mensajera instantnea.
Existiendo, en aquel momento, canales de IRC.
Los contenidos y el diseo estaban juntos en el cdigo HTML de las pginas. Si
alguien deseaba cambiar alguna caracterstica de la pgina, como el color o el
tipo de letra de un prrafo, era necesario cambiarlo en cada uno de ellas y se
incrementaba la labor por la gran cantidad de pginas que haba que mantener.

5.3 Qu es la Web 2.0?


El termino Web 2.0 fue utilizado por primera vez por una diseadora, Dacy
Dinucci, en 1999. Lo us en un artculo titulado <<Fragmented Future>> para
referirse a los cambios estticos y de diseo que empezaban a apreciarse en la
Web, ya que comenzaba a acceder a ella con diferentes tipos de dispositivos, no
slo ordenadores. Tim O'Reilly, el presidente de O'Reilly Media, en 2004, lo
acuo, como ttulo de una conferencia que estaba organizando. (Barza y Capella,
2010, pp. 20-21).
La Web 2.0 es la representacin de la evolucin de las aplicaciones tradicionales
hacia aplicaciones Web enfocadas al usuario final. La Web 2.0 es una actitud y no
necesariamente precisa de una tecnologa.
La Web 2.0 es la transicin que se ha dado de aplicaciones tradicionales hacia
aplicaciones que funcionan a travs de la Web enfocada al usuario final. Todo el
alto grado de interactividad es el comn denominador. Se trata de aplicaciones
que generen colaboracin y de servicios que reemplacen las aplicaciones de
escritorio desarrolladas en esa poca.
Es una etapa que ha definido nuevos proyectos en Internet y est preocupndose
por brindar mejores soluciones para el usuario final. Muchos aseguran que hemos
reinventado lo que era el Internet, otros hablan de burbujas e inversiones, pero la
realidad es que la evolucin natural del medio realmente ha propuesto cosas ms
interesantes como lo analizamos diariamente en las notas de actualidad.
La Web 2.0 no se trata de una nueva Internet tecnologa herramienta, se trata
de enfocar la Web en un nuevo rumbo con ms participacin de los usuarios que
lo utilizan.
Se trata de pensar la Web como una plataforma, plantea una arquitectura y una
visin de los intereses y necesidades de los usuarios.

5.4 Aplicaciones ms populares de la Web 2.0


Las aplicaciones Web 2.0 usan diferentes tecnologas que dan inicio a la
transformacin de Internet, cuyas caractersticas se pueden resaltar:

50 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

- Transformar las aplicaciones de escritorio hacia una plataforma


completamente Web.
- El uso de los estndares como el XHTML.
- Separacin de contenido del diseo con uso de hojas de estilo.
- Sindicacin de contenidos utilizando RSS.
- Uso de tcnicas como Ajax (combinacin de javascript asincrnico y xml) para
crear aplicaciones interactivas.
- Uso de los framework como Ruby on Rails para desarrollar otras aplicaciones
Web utilizando el patrn de diseo arquitectnico MVC.
- Utilizacin de redes sociales como facebook, twitter, identica y redes sociales
especializadas de acuerdo a alguna especialidad.
- Los usuarios toman el control del manejo de la informacin.
- Proveer API utilizando XML para que las aplicaciones puedan ser manipuladas
por otros.
- Uso de XML como lenguaje para la interoperabilidad e intercambio de datos.

Por lo tanto las aplicaciones ms significativas de la Web 2.0 podemos citar:


Wiki: Se trata de un tipo de aplicacin colaborativa que bajo la estructura de
un procesador de texto en lnea permite que cualquier usuario pueda escribir,
publicar o editar archivos o enlaces, sin ninguna complejidad.
Repositorios: Es una herramienta que permite compartir conocimientos entre
investigadores y acadmicos. Creados bajo la filosofa colaborativa, ofrecen la
posibilidad de subir o descargar de la Web, herramientas tales como: archivos
de multimedia, textos, sonidos o videos que pueden ser utilizadas con fines
cientficos o pedaggicos, principalmente en universidades y centros de
estudios.
Flickr: Es el nombre de una empresa que plante la posibilidad de compartir
imgenes a travs de Internet. Tambin se caracteriza por ofrecer un espacio
de almacenamiento gratuito y por contar con una interfaz intuitiva, permite
subir fotografas sin necesidad de instalar algn tipo de aplicacin en el
computador.
YouTube: Es una herramienta que le permite al usuario subir y compartir
videos o imgenes animadas sin contar con grandes recursos tecnolgicos.
YouTube usa un reproductor en lnea basado en Adobe Flash, actualmente
puede utilizar tambin un reproductor HTML.
Lectores RSS: Las aplicaciones RSS permiten que los usuarios se suscriban
y enlacen a una pgina con notificaciones cada vez que la pgina cambia o se
actualiza. Muy utilizado por todos los medios de comunicacin.
Podcasting: Mtodo distribucin de archivos en formatos de audio o video a
travs de Internet, para ser escuchados en dispositivos porttiles. La diferencia
entre un podcast y una descarga de audio o video es la suscripcin. Las
subscripciones se actualizan de manera sin visitar el sitio Web origen. Las
radios comerciales proporcionan sus contendidos con esta tecnologa.

51 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Redes Sociales: Se trata de comunidades participativas y colaborativas


donde se establecen relaciones entre usuarios en base a sus intereses
comunes. Se trata de aplicaciones muy visitadas e interactivas por los
usuarios de internet.
Weblogs: Es un espacio de comunicacin personal donde sus contenidos
abarcan cualquier tipo de tema y el usuario publica informacin de inters,
adems presentan una marcada estructura cronolgica, donde hay enlaces a
sitios web de referencia que tienen relacin con los contenidos del blog.

5.5 Redes Sociales


Se trata de uno de los desarrollos ms innovadores de la Web 2.0. Desde que
fueron concebidas, su finalidad ha sido la de crear un lugar de encuentro para que
miles de usuarios con inters comunes puedan comunicarse.
Actualmente, millones de usuarios comparten aficiones, amistades, ideas,
fotografas, vdeos y elementos multimedia de todo tipo. Su crecimiento ha si sido
tan enorme que se ha convertido en un fenmeno social.
Para Fernndez (2010) "Las redes sociales son Web que permiten a los usuarios
entrelazarse para poder comunicarse entre s, con los amigos que se encuentren
dentro de su propia red, en la cual pueden intercambiar fotos, video, mensajes
instantneos, comentarios en fotos, etc. Existen diferentes tipos de redes, stas
son las redes profesionales, temticas, mixtas, de ocio, personas, entre otros., y
an hoy siguen creciendo nuevos tipos de redes. Las redes que suelen utilizar los
jvenes son las redes personales de ocio." (p. 7).
Aplicaciones como Youtube, Myspace, Facebook, Twitter, este ltimo en ocupar
los primeros puestos en el ranking absoluto de los lugares ms visitados de
Internet, estn cambiando totalmente la forma de relacionarnos con nuestros
amigos, vecinos, conocidos, clientes, seguidores y compaeros de trabajo
(Ramos, 2011, p. 22).
El funcionamiento es sencillo. Una persona se registra en una red social (por
ejemplo en facebook) y empieza a invitar amigos y conocidos a formar parte de la
red para compartir intereses, preocupaciones, fotos, mensajes, etc.; los amigos y
conocidos reciben invitaciones y deciden unirse a la red; estos a su vez invitan a
otros amigos, proporcionando la posibilidad de interactuar y compartir intereses
con personas que no conocemos. Las redes sociales son sistemas abiertos que
se va construyendo con lo que cada miembro aporta y rompe el aislamiento de
muchas personas en una sociedad tan tecnificada como el actual, donde ha
tenido un uso masivo en los telfonos mviles.
Las ventajas de las redes sociales son numerosas, entre las que podemos
destacar:
a) Permiten la relacin e interaccin con otras personas.
b) Permite establecer contacto profesional e incluso encontrar oportunidad
laboral.
c) Plataforma ideal para el entretenimiento y ocio.
d) Posibilidad de publicar todo tipo de contenido, incluso la capacidad de
hacer una transmisin en vivo (lifestreaming).

52 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Sin embargo, como cualquier aplicacin, tambin tiene sus puntos dbiles, entre
los que destaca:
a) Nuestra privacidad puede verse en peligro, en caso que dejemos abierta el
perfil todo el mundo podra verlo.
b) Otro riesgo es la suplantacin de personalidad, que es una forma de
engao en la que una persona pretende ser o hacerse pasar por otra.
c) Falta de control de datos, sobre todo cuando publicamos, este puede
convertirse en propiedad de las redes sociales.

5.6 Weblogs y Blogsfera


Un blog, es una bitcora donde el usuario publica informacin, se trata de un
espacio o sitio Web peridicamente actualizado que recopila cronolgicamente
textos o artculos de uno o varios autores, apareciendo primero el ms reciente,
donde el autor conserva siempre la libertad de dejar publicado lo que crea
pertinente.
Un blog constituye una herramienta de colaboracin asincrnica que permite que
cualquiera pueda expresar ideas y poner contenidos a disposicin de otros en la
Web de una manera sencilla (Martnez, 2009, p.121).
Por lo general los blogs son entornos:
Colaborativos: ya que permiten que otros internautas aadan comentarios a
las entradas iniciadas por el creador del blog.
Definibles: es decir, se puede delimitar quines pueden aadir comentarios, lo
que hace posible que se creen entornos restringidos aunque a la vez sean
pblicos y visibles a cualquier otro usuario Web.
Interactivos: desde ellos pueden enlazarse otros sitios Web, videos, audios,
etc. dando acceso a otros contenidos y permitiendo la puesta en prctica de
otras habilidades lingsticas. Algunos espacios permiten incluso que se suban
archivos de audio (podcasts).
Gratuitos: al menos existe un gran nmero de espacios donde crear blogs que
incluso no incluyen ningn tipo de publicidad.
Blogsfera como un sistema virtual, en el que se establecen comunidades de
weblogs, categorizados temticamente o por perfiles de inters. Estos conforman,
pues, el mensaje y la blogosfera, el lugar para habitar en Internet (Cabero, 2006,
p.234)

5.7 Implementacin de un blog personal


Crear un blog es simple y fcil de editar a menudo, a continuacin estas son las
consideraciones que debe seguir, antes de iniciar la creacin de un blog:
1. Escoger un tema.
2. Escoger un buen nombre para tu blog.
3. Escoger una buena plataforma tecnolgica para tu blog.
4. Escoger una plantilla adecuada de acuerdo al tema.

53 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

5. Definir un tiempo de frecuencia para publicar los post.


6. Intentar ser perseverante y activo en la blogsfera.
7. Redactar artculos interesantes para tus lectores y de calidad.
Si puedes hacer esto, tu blog puede tener xito en la blogsfera.
A continuacin los pasos para crear un blog personal utilizando el sitio de
blogger.com de Google.
Lo primero que se debe hacer es escribir en la barra de direcciones del navegador
la siguiente URL http://www.blogger.com
Entonces aparecer la pgina principal del sitio Blogger, en la que vas a realizar
tres sencillos pasos para crear tu blog. Lo nico que necesitas es una cuenta de
correo electrnico de Google la empresa duea de este servicio de blogs.
A continuacin los pasos a seguir para crear el blog personal:
a. Crear una cuenta
Una vez en la pgina del sitio Blogger, nos invitan a crearnos un blog con el
lema: "Crea un blog. Es gratuito", la primera fase slo ser necesaria si no
tenemos cuenta en Google. Si la tenemos, hay que hacer clic en el enlace
"comenzar ", desde donde accederemos al segundo paso. A continuacin
aparece un formulario que debe completar la informacin requerida:
Una cuenta de correo electrnico existente, que tendremos que repetir en
el siguiente campo de texto. Aqu se escribe la direccin completa de la
cuenta.
Una contrasea escrita dos veces para evitar errores. Tiene que incluir
ocho caracteres como mnimo, y puede verificarse su fortaleza, es decir, su
calidad como contrasea, haciendo clic en el enlace correspondiente.
El nombre que aparecer como autor del blog y de los artculos. Se puede
optar por un apodo o por nuestro nombre real.
Una verificacin, que consiste en escribir las letras que aparecen en una
pequea imagen, lo cual se hace para evitar que se creen cuentas
automticamente.
Activar la casilla de aceptacin de las condiciones. Conviene leer estas
"Condiciones y usos del servicio de Blogger", que muchos encuentran
abusivas.
Una vez completado los campos hacemos clic en la flecha Continuar, y
continuamos con el siguiente paso

b. Elegir adecuadamente el nombre del blog


En esta fase simplemente escribiremos un nombre para nuestro blog, que
podremos cambiar ms tarde, y le asignaremos una direccin de Internet, Es
importante que la direccin sea corta, fcil de recordar y generalmente con
letras minsculas, sin caracteres especiales como tildes. La direccin suele
ser el nombre del blog o el nombre del autor, pero se puede poner lo que se
quiera.

54 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Por ejemplo un nombre de prueba puede ser tecnologiaweb". Despus


Blogger aade la parte final hasta quedar as:
http://tecnologiaweb.blogspot.com
Antes de continuar hay que hacer clic en el enlace que dice Comprobar la
disponibilidad para ver si ese nombre ya est elegido por otro usuario; y suele
ocurrir con frecuencia que ya est utilizado.

c. Elegir una plantilla


En este ltimo paso tendremos que elegir una plantilla o conocido un theme,
que es el diseo general del blog. Elegiremos la que ms nos guste, pero ms
adelante podremos cambiarla siempre que lo deseemos..

d. Acceder al blog
La forma ms sencilla es ir a la pgina principal de Blogger
http://www.blogger.com, y all nos presentan un formulario con un campo de
texto y otro de contrasea. En el primero escribimos nuestro nombre de
usuario, en este caso nuestra cuenta de Google o la direccin completa de la
cuenta de correo con que registramos nuestro blog. Cuando hagamos clic en
el enlace Acceder, llegaremos a nuestro Escritorio del blog.
Escribiendo la direccin completa del nuevo blog como, por ejemplo:
http://tecnologiaweb.blogspot.com. En este caso, aparecern unos enlaces en
la parte superior del blog. Hay que hacer clic en Acceder, que est en la parte
derecha, y entonces llegaremos a la pgina principal de Blogger para incluir
nuestros datos.
Y encima de ella veremos la barra de Blogger, con la que podremos entrar a la
seccin de Administracin y escribir una Nueva Entrada en el blog o elegir la
opcin Personalizar el Diseo, adems de otras funciones.

e. Panel de control
Cuando accedemos a nuestro blog, recin creado, nos encontramos con el
Escritorio, que nos da acceso a la parte privada del blog o administracin.
Desde aqu controlamos todos nuestros blogs y tambin, a la izquierda,
nuestro perfil de usuario y cuenta.
El perfil de usuario es importante para formar parte de la comunidad de
Blogger, que es muy extensa en todo el mundo. Estos datos personales los
podrn ver los visitantes de nuestro blog, pero tambin se vern mediante un
enlace cuando escribamos un comentario en otro blog. Siempre es
conveniente que escribamos algunos datos nuestros para que los dems nos
conozcan, aunque sea un poco, pues no hay que olvidar que el carcter
personal es importante en los blogs.
En el panel de control, aparecen otros enlaces importantes, que corresponden
a las principales secciones de la administracin del blog:

55 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Nueva entrada, para escribir un nuevo texto en nuestro blog.


Editar entradas, para ver todas las entradas escritas en el blog y editarlas.
Comentarios, si los hubiera, para mostrar todos los comentarios de nuestro
blog.
Configuracin, para configurar nuestro blog, es decir, una serie de opciones
para personalizarlo segn nuestros gustos y necesidades.
Diseo: para modificar el diseo elegido o escoger otro nuevo.
Monetizar: es una nueva opcin para ganar dinero con la publicidad de
AdSense, propia de Google.
Estadsticas, que nos proporciona unas breves estadsticas de las visitas a
nuestro blog.

5.8 Sistema de Gestin de Aprendizaje (LMS)


Sistema de Gestin de Aprendizaje, (Learning Management System - LMS) es
una aplicacin instalado en un servidor, que se emplea para administrar, distribuir
y controlar las actividades de formacin a distancia de una institucin u
organizacin.
Las principales funciones del LMS son: gestionar usuarios, recursos as como
materiales y actividades de formacin, administrar el acceso, controlar y hacer
seguimiento del proceso de aprendizaje, realizar evaluaciones, generar informes,
gestionar servicios de comunicacin como foros de discusin, videoconferencias,
entre otros.
Un LMS se focaliza en gestionar contenidos creados por fuentes diferentes, en
este caso un docente. La labor de crear los contenidos para las asignaturas se
desarrolla mediante un LCMS (Learning Content Management Systems). La
mayora de los LMS funciona con tecnologa internet cuya plataforma tecnologa
en un sistema cliente servidor web.
Un LMS es una aplicacin residente en un Servidor Web, en la que se desarrollan
acciones formativas. Es sinnimo de plataforma virtual. Es el lugar donde
alumnos, tutores, profesores o coordinadores se conectan a travs de Internet
(navegador web) para descargar contenidos, ver el programa de asignaturas,
enviar correos al profesor, charlar con los compaeros, debatir en un foro,
participar en una tutora, etc. (Varela, 2007, p. 54).

5.8.1 Implementacin de un LMS


Para iniciar el proceso de instalacin es necesario conocer los requisitos
necesarios en este caso vamos a proceder a utilizar el LMS Chamilo, una
aplicacin web de Software Libre.

a) Prerrequisitos
Chamilo puede ser instalado indiferentemente en servidores Windows, Linux, Mac
OS X y UNIX. Sin embargo, recomendamos el uso de un servidor Linux para una

56 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

ptima flexibilidad, control remoto y escalabilidad. (Chamilo puede ser instalado


indiferentemente en servidores Windows o Linux.
Chamilo es un LMS que se ejecuta con Apache, MySQL y PHP (triloga tambin
llamada AMP).
Puede ser enriquecida con la conversin a PowerPoint (caracterstica llamada
Dokeos Oogie) mediante el uso de OpenOffice.org + Java. Quizs tambin quiera
agregar el plugin de Videoconferencia de Chamilo mediante el uso de RED5
servidor de cdigo abierto de Flash.
Todo este software es software de cdigo abierto y est disponible libremente.
Para ejecutar Chamilo LMS en su servidor, necesita instalar WAMP, LAMP o
MAMP:
- Para instalar WAMP (AMP en Windows), recomendamos el instalador XAMPP
.exe
- Para instalar LAMP (AMP en Linux), use el administrador de paquetes de su
distribucin favorita (Synaptic, RPMFinder etc.). Por ejemplo, en un servidor
Ubuntu, use Shell o Synaptic siguiendo la Ubuntu guide on Apache y las
secciones siguientes.
- Para instalar MAMP (AMP en Mac OS X), referirse al sitio web dedicado a
MAMP.

b) Servidor de Base de Datos MySQL


Se necesitar una cuenta de acceso y una contrasea que le permita administrar
y crear al menos una base de datos. De manera predeterminada, Chamilo crear
una nueva base de datos para cada curso. Usted tambin puede instalar Chamilo
con una sola base de datos, en ese caso, deber seleccionar esta opcin durante
la instalacin.
Para aprovechar la ventaja de la conversin Oogie de PowerPoint / Impress,
necesita:
OpenOffice.org y Java Runtime Environment
Para aprovechar la ventaja de la Videoconferencia de Chamilo se necesita:
Servidor de Flash de Cdigo Abierto RED5.

c) Proceso de Instalacin de Chamilo LMS


- Descargar Chamilo LMS (http://www.chamilo.org/es/download-es)
- Descomprimirlo.
- Copiar el directorio de Chamilo en su directorio web de Apache. Este puede
ser C:\xampp\htdocs\ en un servidor Windows o /var/www/html/ en un servidor
Linux.
- Abrir su navegador web (Internet Explorer, Firefox...) y escribir
http://localhost/chamilo/ si se instala de manera local o
http://www.domain.com/chamilo/ si se instala remotamente.

57 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

- Seguir el proceso de instalacin web. Usted puede aceptar todos los valores
predeterminados. Considere cambiar la contrasea de administrador y
recurdela.
Los siguientes directorios necesitan tener permisos de lectura, escritura y
ejecucin para todo el mundo (remplace [chamilo] por el directorio en el cual est
ubicado su Chamilo):
[chamilo]/main/inc/conf/
[chamilo]/main/upload/users/
[chamilo]/main/default_course_document/images/
[chamilo]/archive/
[chamilo]/courses/
[chamilo]/home/
Opcionalmente, puede hacer lo mismo a los directorios siguientes si desea activar
la subida de paquetes de estilos CSS y la definicin de sub-idiomas:
[chamilo]/main/css/
[chamilo]/main/lang/
En Linux, Mac OS X y sistemas operativos BSD puede usar el comando CHMOD
0777. En Windows, es probable que necesite revisar las propiedades de los
directorios (mediante el uso del clic derecho en ellos).
Los siguientes archivos necesitan tener permisos de lectura y escritura para el
navegador web, slo durante la instalacin de Chamilo:
chamilo/main/inc/conf/configuration.php
En Linux, Mac OS X y sistemas operativos BSD usted puede usar el comando
CHMOD 666 para esto (aunque nosotros recomendamos que busque la ayuda de
un administrador de sistemas con experiencia). En Windows, es probable que
usted necesite revisar las propiedades de los directorios (mediante el uso del clic
derecho en ellos).

d) Configuracin PHP
Para obtener lo mejor de Chamilo, necesita ajustar la configuracin de PHP.
Considere:
Editar el archivo php.ini (en Windows puede estar ubicado en
C:\xampp\php\php.ini, en Ubuntu Linux : /etc/php5/apache2/php.ini
Buscar la palabra "max" y incrementar los valores para optimizar el servidor
Quizs desee terminar con los siguientes valores:
max_execution_time = 300 ; Tiempo mximo de ejecucin para cada script, en
segundos
max_input_time = 600 ; Tiempo mximo que cada script que puede emplear para
analizar los datos solicitados

58 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

memory_limit = 256M ; Mxima cantidad de memoria que un script puede


consumir (128MB)
post_max_size = 64M
upload_max_filesize = 100M
Algunos usuarios pueden encontrar problemas si en sus configuraciones de PHP
no se ajustan a las siguientes:
short_open_tag = On
safe_mode = Off
magic_quotes_gpc = On
magic_quotes_runtime = Off
En versiones de Chamilo/Dokeos anteriores se requerir que register_globals
estuviera configurada en On. Esto ya no necesario, puede estar configurado en
Off y Chamilo funcionar bien.
Si usa PHP 5.3 o superior, se necesita configurar la variable date.timezone a la
zona horaria de su servidor. Por ejemplo, si su servidor est en la zona horaria
'America/Lima', modificar en el php.ini:
date.timezone = 'America/Lima'

5.9 Sistema de Gestin de Contenidos


Popularmente conocido con su acrnimo CMS, es la herramienta software que
permite al usuario gestionar dinmicamente los elementos que componen un sitio
web. Desde la creacin de pginas, redaccin, diseo, archivos a permisos
(Rojas, 2006, p. 95).
Un Sistema de Administracin de Contenidos (CMS) provee las herramientas
necesarias para gestionar el ciclo de vida de los contenidos: creacin, gestin,
presentacin, mantenimiento y actualizacin de un portal web.
Los Sistemas de Administracin de Contenidos son programas que permite crear
una estructura de soporte para la creacin y administracin de contenidos por
parte de los participantes de un sitio web de manera sencilla, flexible y sin muchos
conocimientos tcnicos.
Consiste en una interfaz que controla una o varias bases de datos donde se aloja
el contenido del sitio. El sistema permite manejar de manera independiente el
contenido y el diseo. As, es posible manejar el contenido y darle en cualquier
momento un diseo distinto al sitio sin tener que darle formato al contenido de
nuevo, adems de controlar la publicacin en el sitio. Un ejemplo clsico son los
editores que cargan el contenido al sistema y otro de nivel superior que permite
que estos contenidos sean visibles a todo el pblico (Moro y Torres, 2008, p. 95).
Originalmente usado para la publicacin de sitios web, los primeros sistemas de
administracin de contenidos fueron desarrollados internamente por
organizaciones que publicaban en Internet, como revistas en lnea, peridicos y
publicaciones de algunas empresas. En 1995, CNET sac su sistema de primer

59 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

CMS y cre una compaa llamada Vignette, que abri el mercado para los
sistemas de administracin de contenido comerciales.
Las ventajas de los CMS:
Mantenimiento completamente descentralizado.
Los autores de los contenidos con pocos conocimientos tcnicos.
Consistencia del diseo y flexible su cambio.
Contenido almacenado en una sola base de datos.
Contenido dinmico y altamente actualizable.
Actualizaciones permanentes.
Coordinacin de tareas para publicar entradas entre los usuarios del CMS.
Programacin de contenido de acuerdo a un calendario establecido.
A continuacin se muestra una comparacin de cinco CMS en funcin de los
requerimientos del sistema, de la aplicacin del servidor, del costo y de las bases
de datos que utiliza cada CMS.

Tabla 5.1: Comparacin de CMS


Fuente: Adaptado de http://multimedia.uoc.edu/~wordpress/wp-content/uploads/cms.pdf
Bricolage Drupal Poseidon
CMS Joomla! 1.5.6 OLAT 5.2
1.10 6.4 0.6.1
Requerimientos
Bricolage Drupal Joomla! OLAT Poseidon
del sistema
Supports PHP
Aplicacin de PHP PHP
mod_perl (Apache Tomcat
servidor 4.3.5+ 4.3.0+
recommended)
Open-
Costo Source Gratuito Gratuito 0 Gratuito
(Gratuito)
MySQL,
Postgres,
MySQL, MySQL
Bases de datos PostgreSQL MySQL mSQL,
Postgres 4.0.3+
Interbase,
Sybase

5.9.1 Implementacin de un CMS


Se puede instalar en Windows Linux y estos son los requerimientos que se
necesitan:
Descarga alguna versin actual, del URL: http://www.joomlaspanish.org/
Un Servidor local Apache, previamente instalado, por lo menos una versin de
PHP 5.XX.XX o superior

60 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

A continuacin, los pasos a seguir para la instalacin:


a. Una vez descargado Joomla, lo descomprimiremos en la carpeta www., de
nuestro servidor local, o en la carpeta de inicio del servidor web, o en la
carpeta donde est la configuracin de su localhost.
b. El segundo paso, ser crear la base de datos, para este paso es necesario
tener instalado "phpmyadmin"
c. En "phpmyadmin", elegiremos un nombre para nuestra base de datos, por
ejemplo joomla, y haremos clic en el botn crear.
d. Una vez creada la base de datos, empezaremos con la instalacin de Joomla,
para esto escribiremos en nuestro navegador la siguiente URL
http://localhost/index.php, nos mostrar una pantalla donde tendremos que
elegir el idioma de instalacin, y despus haremos clic en el botn siguiente,
situado en la parte superior derecha.
e. En la siguiente pantalla, debemos verificar que todos los campos estn de
color verde, para as tener una instalacin completamente funcional y sin
ningn error. Si todo est bien, hacemos clic en siguiente.
f. El siguiente paso es leer la licencia del programa, y hacer clic en siguiente.
g. En la siguiente pantalla, debemos rellenar los campos con la informacin de
nuestra base de datos creada anteriormente. Para el tipo de la base de datos,
elegiremos la opcin, MySQL, en nombre del servidor escribiremos localhost,
en este campo casi siempre el nombre ser localhost,. En nombre de usuario y
contrasea, escribiremos los datos del usuario para conectarnos a nuestra
base de datos, como estamos en localhost, utilizaremos root, y colocamos la
contrasea correspondiente. El siguiente campo, ser ingresar el nombre de
nuestra base de datos antes creada, en este caso "joomla". Es importante
llenar completamente los campos y presionamos el botn siguiente.
h. Despus encontraremos una pantalla para la configuracin de la cuenta FTP,
este paso no es necesario llenarlo por ahora.
i. El paso siguiente ser llenar el nombre que tendr nuestro sitio web, el correo
del administrador, as como su contrasea. Tambin existe una opcin de
instalar los datos de ejemplo, esto es recomendado para principiantes, pero si
deseas hacer una instalacin limpia, no hagas clic sobre ese botn. Una vez
llenados los campos con los datos correctos, hacemos clic en el botn
siguiente.
j. En la siguiente pantalla, nos aparecer un mensaje que nos indica que
debemos eliminar completamente el directorio de instalacin.
k. Para eliminarlo, debemos entrar a los archivos de Joomla, que se encuentran
dentro de la carpeta www., y eliminar completamente la carpeta llamada
installation.
l. Con esto hemos terminado nuestra instalacin de Joomla, y podremos
acceder a nuestro panel de administracin desde la siguiente URL,
http://localhost/administrator/index.php, despus ingresamos nuestro nombre
de usuario que es Admin, y nuestra contrasea que ingresamos en el paso
donde se le asigno un password al administrador.

61 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

m. Una vez ingresado, ya estaremos en la administracin de Joomla. Y colocando


el URL http://localhost, tendremos el sitio web instalado con Joomla

62 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Leccin 6: Fundamentos de la Web 3.0

6.1 Qu es la Web 3.0?


La expresin Web 3.0 fue acuada por John Markoff, periodista que hace las
veces de corresponsal del New York Times en Silicon Valley, en el ao 2006. La
expresin se refera a la futura tercera generacin de servicios basados en
Internet que podran caracterizarse por una Web Inteligente y que incluiran
algunos conceptos como la Web Semntica, las bsquedas en lenguaje natural, el
aprendizaje de las mquinas, los agentes recomendadores y las tecnologas
relacionadas con inteligencia artificial, entre otras (Miltiadis, Lytras y Ordoez,
2009, p. 33).
Para Castello (2010), "La Web 3.0 representa una evolucin lgica de la Web 2.0,
en la que las capacidades de la Web participativa se acenta ms si cabe y la
interaccin a travs de espacios 3.0 se multiplican. Se trata de la prxima
generacin web que est aqu y cuyo estudio, por tanto, debe ser abordado desde
el mbito cientfico en sus diversas vertientes: social, comunicativa, tecnolgica,
etc." (p. 111),
La base de esta interpretacin de la Web 3.0 es que las mquinas podrn
procesar la informacin de una forma ms inteligente, dndonos mayor
productividad y una experiencia de usuario ms instintiva.
Sobre esta definicin de la Web 3.0, debemos extraer algunos conceptos para
explicarlos y reflexionar un poco ms sobre en qu medida estamos o no en ese
camino: la Web Semntica, el Lenguaje Natural y las Mquinas Inteligentes.
En resumen, se muestra algunas aplicaciones de las diferentes evoluciones de la
Web, en la siguiente tabla:

Tabla 5.1: Aplicaciones web en sus diferentes versiones


Fuente: Albal, E. (2011) Bienvenida Web 3.0: Gua para sobrevivir en la Internet 2011.
(pp. 12-13)
Web 1.0 Web 2.0 Web 3.0
Double click Google AdSense Publicidad Personalizada
Ofoto Flickr Bsquedas Visuales
Mp3.com Napster iTunes
Britannica Wikipedia Inteligencia Colectiva
Online
Pginas Web Blogs Twitter a travs de dispositivos
Personales mviles
Evite Upcoming-org Twitter y redes con
y EVDB Geoposicionamiento
Especulacin Optimizacin Posicionamiento social y en
con los en buscadores las tiendas de aplicaciones
nombres de
dominio
Pginas vistas Coste por clic Nmero de seguidores o de
descargas de Apps
Publicacin Participacin Interaccin dentro

63 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

del crculo social


Sistemas de gestin Wikis Apps de publicacin en redes
de sociales desde dispositivos
Contenidos mviles
Directorios Etiquetados Bsqueda semntica
(taxonoma) (folksonoma) (imgenes / App Stores) y
bsquedas sociales
Recuerdo de Sindicacin Vinculacin en redes,
direcciones web seguimiento en Twitter y
suscripcin en iTunes

6.2 Aplicaciones de la Web 3.0


La Web3.0 est centrado en motores de bsqueda visuales y con multimedia,
adems de la aplicacin de la inteligencia artificial Web, los juegos en 3D a travs
de la Web, la realidad aumentada transformar la Web, los mundos virtuales
sern un entorno comn donde los usuarios y estos podrn interactuar de manera
virtual y mucho ms interactiva que la Web 2.0.

6.2.1 SOA
"Una aplicacin SOA (Arquitectura Orientada a Servicios) es una coleccin de
servicios y un servicio es la unidad atmica de una SOA, los servicios encapsulan
procesos de negocios, los proveedores de servicios se registran solos, un servicio
involucra: Find, Bind, Execute y las instancias ms conocidas son los web
services" (Brooks, 2008).
La arquitectura orientada a servicios (SOA), es un marco de trabajo conceptual
que permite a las organizaciones unir los objetivos de negocio con la
infraestructura de TI integrando los datos y la lgica de negocio de sus sistemas
separados.
"Permite la creacin de sistemas altamente escalables que reflejan el negocio de
la organizacin, brinda una forma estndar de exposicin e invocacin de
servicios (comnmente pero no exclusivamente con Web Services), lo cual facilita
la interaccin entre diferentes sistemas propios o de terceros" (Bieberstein, 2003).
Con SOA, una empresa puede mantener sus inversiones en los sistemas
heredados y a la gente necesaria para mantenerlos, es una solucin prometedora
para los problemas de integracin de sistemas de informacin y aplicaciones.
La propuesta SOA implica, descomponer la lgica de negocio de una
organizacin en partes ms pequeas. Donde cada una de ellas contiene su
propia unidad lgica.
SOA es un enfoque para disear y desarrollar soluciones de negocio, a partir de
componentes independientes que exponen funciones como servicios accesibles
por otros componentes a travs de interfaces estndares.
SOA permite alinear las capacidades de TI con los objetivos de negocio y visin
del negocio, donde provee una infraestructura tcnica para responder a los
cambios de requerimientos del negocio.

64 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

6.2.2 Web 3D
Segn Revuelta y Prez (2009) "Se menciona que la Web 3D, liderada por el Web
3D Consortium (http://www.web3d.org/), forma parte de la Web 3.0 (p. 149).
El desarrollo de entornos virtuales 3D es un paradigma propio de los videojuegos
y de difcil aplicabilidad a la Web. El 3D en la Web por ahora se encuentra en fase
de desarrollo. Los principales estndares Web que se estn desarrollando van
enfocados a incluir el 3D como un estndar.
Los mundos virtuales requieren de una identidad virtual encarnada en un avatar,
con esta forma de identidad interactan los usuarios entre s. Los Mundos
virtuales generalmente son gratuitos aunque incluyen la posibilidad de compra
con dinero real bienes virtuales, formacin y otras funcionalidades.
La consultora KZero Worldswide (http://www.kzero.co.uk) afirma que las cuentas
abiertas en los diferentes mundos virtuales superan ya la cifra de los mil millones.
Los mil millones de cuentas pertenecen a nios y adolescentes (la mitad del
mundo a la que no escuchamos segn Marc Prensky, inventor del trmino nativos
digitales).
Se listan algunos de los principales mundos virtuales segn la consultora KZero
(Albal, 2011, p. 45) a finales del tercer trimestre de 2010:
- Poptropica (110 millones). Juego online de Pearson Education dirigido a nios
de entre 6 y 15 aos, donde los jugadores pueden viajar a travs del mundo
virtual, competir en diferentes juegos y comunicarse con los dems nios en
un entorno seguro.
- Moshi Monsters (27 millones). Juego gratuito en red para nios de 7 a 12 aos
en el que el jugador adopta y cuida como mascota a un monstruo. Los
jugadores ganan puntos y pasan a nuevos niveles, resolviendo pruebas
educacionales.
- BarbieGirls.com (19 millones). Mundo virtual para nias de entre 6 y 13 aos,
lanzado por Mattel y con las muecas Barbie como principal gancho.
- Neopets (63 millones). Otro sitio de mascotas virtuales que permite adoptar a
una de las 54 diferentes especies de mascotas virtuales y jugar a cientos de
juegos flash y otras actividades que posee, para as ganar neopntos, con los
que comprar diferentes objetos.
- Habbo (176 millones). Ya entrando en el mbito adolescente (el 90% de los
visitantes tiene entre 13 y 18 aos), Habbo es el mundo virtual lder por
nmero de usuarios. Tiene dos tipos de salas de chat virtual, las pblicas
(representan escenas tales como restaurantes, parques, cines, clubes y
discotecas) y las privadas, que son habitaciones que los usuarios pueden
personalizar a travs de decoracin y enseres que se compran con crditos.

6.2.3 Realidad Aumentada


Se trata de recreaciones virtuales donde el usuario recibe informacin
suplementaria virtual mientras recorren por el espacio fsico real. El ejemplo ms
destacado es el proyecto Archeoguide, en el que los visitantes al recinto de
Olimpia (Grecia) pueden ver una construccin virtual del santuario en un PDA,

65 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

junto con informacin asociada, mientras recorren entre los restos del yacimiento
(Carreras y Munilla, 2007, p. 87).
La realidad aumentada consiste en recrear virtualmente contenidos aadidos a los
objetos que tenemos por delante. Podemos distinguir dos vertientes principales:
- La generacin de objetos virtuales tridimensionales y en movimiento a partir de
una informacin fsica en dos dimensiones.
- La incorporacin de informacin sobre el entorno que nos rodea.
Se puede visualizar claramente la primera funcionalidad a travs del vdeo
http://www.youtube.com/watch?v=m3SJo2u7tQo
Otro ejemplo de este tipo de aplicaciones (en este caso enfocada a un pblico
diferente) la tenemos en http://www.youtube.com/watch?v=Y4M-vmA_m18
En el vdeo se puede ver un dispositivo instalado en tiendas de juguetes y como,
enfocando una caja de Lego cerrada a travs del mismo, se muestra en una
pantalla cmo ser el juguete una vez montadas todas las piezas.
La segunda posibilidad (la incorporacin de informacin sobre el entorno que nos
rodea) se explota precisamente saliendo de casa, y est muy ligada a los
dispositivos mviles. A travs de dispositivos mviles, permite reinterpretar la
realidad que nos circunda, ofreciendo datos aadidos sobre la imagen que
obtenemos desde el visor de la cmara.
El turismo es uno de los sectores que pueden salir muy beneficiados de este tipo
de aplicaciones. Un ejemplo puede verse en
http://www.youtube.com/watch?v=GTgocMYUiK8
En Espaa ya estn surgiendo algunas propuestas en este sentido como
http://www.gps.huescalamagia.es desarrollada por Trackglobe. Donde el turista
realiza una visita virtual y en directo por la provincia de Huesca, de la forma ms
cmoda, utilizando incluso su propio dispositivo mvil.

6.2.4 Apps
Se trata de programas que se instala en un dispositivo mvil en telfonos mviles
o tablet PC y se puede integrar a los equipos. Estos programas se pueden
actualizar automticamente.
Las Apps, para los dispositivos mviles, son pequeos programas que se
descargan para ejecutar alguna tarea concreta. Entre las Apps ms populares
podemos encontrar los accesos directos a sitios como Facebook, Youtube,
Twitter, incluso aplicaciones de geolocalizacin. (Albal, 2011, p. 70).
Andreas Constantinou director de investigacin de la consultora Vision Mobile,
considera que las Apps pueden considerarse como la nueva Web, ya que aaden
no slo nuevas formas de interaccin sino de descubrimiento, monetizacin y
utilizacin del contexto. Podemos ver un resumen de las diferencias que apunta
entre la Web y las Apps en la siguiente tabla

66 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Tabla 5.1: Comparaciones Apps y la Web convencional


Fuente: Albal, E. (2011) Bienvenida Web 3.0: Gua para sobrevivir en la Internet 2011.
(p. 74)

Descripcin Apps Web


Descubrimiento App Store Bsquedas o
direcciones URL
Utilizacin del contexto Geolocalizacin, Informacin
contexto social, proporcionada de forma
agenda explcita
Acceso Online / offile Online

Monetizacin Micropagos Publicidad

Diseo del interfaz A medida del usuario Buscando la


compatibilidad con los
navegadores y
buscadores

Interaccin Pantalla tctil, Teclado y ratn


sensores de
movimiento, teclado,
cmara
Usabilidad Enfocada en fines Enfocada en la
concretos navegacin
Modelo Econmico Consecucin de Economa de la
descargas atencin

67 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Leccin 7: Web Services

7.1 Qu son los Web Services?


Se trata de aplicaciones que utilizan los mismos estndares de internet y
protocolos que intercambian informacin entre diferentes sistemas, muchos
consideran como una "caja negra" a la que hay que proveer datos de entrada
especfica y obtener una respuesta determinada.
"...Los Servicios Web son aplicaciones ofrecidos a travs del Web, no son por
tanto nada nuevo, sino ms bien una re-invencin de la rueda con ideas
prestadas de Corba y DCOM" (Moliner, 2005, p. 238).
Un Web Services o Servicio Web se comunica por medio de mensajes, utilizando
el protocolo SOAP entre diferentes computadoras a travs de una red, de manera
transparente, independiente del lenguaje de programacin, independiente del
sistema operativo y de la plataforma.
"Los Servicios Web significan la evolucin de la informtica distribuida, cuyo
principio arquitectnico es permitir que aplicaciones de un entorno se conecten y
compartan datos y contenido con aplicaciones de otro entorno distinto" (Munilla y
Garca, 2003, p. 72).
Los Web Services se disean para permitir que los componentes se comuniquen
con otros una vez conectados, adems de ofrecer servicios de informacin y
operaciones transaccionales. Este tipo de tecnologa utiliza XML como formato
estndar para compartir informacin y datos, basado en estndares de Internet
(WSDL, SOAP y UDDI) para el registro de comunicaciones. Este tipo de
aplicaciones interactan con otras aplicaciones usando los protocolos de internet.
Como soluciones de intercambio de datos, usa la red de internet como plataforma
operacional y sirve como una prctica para implementar SOA (Arquitectura
Orientada a Servicios).

7.2 Estndares que usan los Web Services


Los Web Services, utilizan los mismos estndares de internet para construir y
habilitar Web Services, las que podemos mencionar a continuacin:
HTTP ((HyperText Transfer Protocol).
XML (Extensible Markup Language).
SOAP (Simple Object Access Protocol).
WSDL (Web Services Description Language).
UDDI (Universal Description, Discovery and Integration).

7.2.1 Hypertext Transfer Protocol (HTTP)


El Protocolo de transferencia de hipertexto, es un mecanismo ms extendido
utilizado por los servidores y los navegadores web para comunicarse. Este
protocolo regula las solicitudes de los navegadores y las transferencias de
ficheros HTML por parte de los servidores. Se encuentra orientado a las

68 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

transacciones bajo el esquema de peticin respuesta entre un cliente y un


servidor.

7.2.2 Extensible Markup Language (XML)


El Lenguaje de Marcas Extendida es un estndar para estructurar datos, formatos
y contenido para documentos electrnicos, donde se definen etiquetas
semnticas para organizar un documento. Adems XML es un metalenguaje que
permite disear un lenguaje propio de etiquetas.
A diferencia de un lenguaje de etiquetas normal HTML, utilizando XML te permite
definir su propio lenguaje.
XML es considerado como un lenguaje universal que sirve para intercambio de
datos e informacin entre aplicaciones, sistemas y dispositivos sobre la red de
Internet.

7.2.3 Simple Object Access Protocol (SOAP)


El Protocolo de Acceso de Objeto Simple, es un tipo de protocolo de mensajera
basada y construido en XML que se usa para codificar informacin de los
requerimientos de los Web Services, adems permite responder los mensajes
antes de enviarlos por la red.
Estos mensajes SOAP codificados en XML son independientes de los sistemas
operativos y pueden ser transportados por los protocolos que funcionan con
Internet, como SMTP, MIME y HTTP.

7.2.4 Web Services Description Language (WSDL)


El Lenguaje para la Descripcin de Web Services, es un formato basado en XML,
que permite definir la interfaz pblica para los servicios Web. Esta descripcin
definida en XML sirve para establecer una comunicacin con los Web Services.

7.2.5 Universal Description, Discovery and Integration (UDDI)


Es un directorio distribuido que opera en la Web, ofrece servicios para registrar,
publicar y buscar Web Services, adems de comprobar qu servicios web estn
disponibles. Es utilizado como mecanismo de descubrimiento de Web Services y
averiguar si estn disponibles.

7.3 Caractersticas de los Web Services


Los Web Services presentan diferencias sobre sistemas distribuidos tradicionales,
entre los que podemos citar:
Interoperabilidad: Los Web Services Consumidores pueden ser utilizados
para recuperar informacin de diferentes Web Services Proveedores que se
ejecutan en diferentes plataformas.

69 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Tipos de datos de las Interfaces: Los tipo de datos definidos para los
Servicios Web se corresponde con los tipos de datos definidos por la mayora
de lenguajes de programacin.
Acceso externo desde Internet: Los Web Services Proveedores realizan una
buena gestin para los accesos que provienen de los Web Services
Consumidores desde Internet.
Soporte de cualquier lenguaje de programacin: La puesta en marcha de
un Web Services no est ligada a un lenguaje de programacin en particular,
por lo tanto se puede implementar o usar un Web Services
independientemente del lenguaje de programacin en el que fue
implementado, por ejemplo: Java, Python, php .Net.
Uso de los estndares de Internet: Los Web Services utilizan los estndares
de Internet y estas soluciones evitan, en su medida de lo posible, reinventar
soluciones a problemas que ya estn resueltas.
Soporte para cualquier infraestructura de componentes distribuidas: Los
Web Services no estn ligados a una arquitectura de componentes
determinados. Los protocolos que utilizan estas soluciones facilitan las
comunicaciones entre las distintas infraestructuras de los objetos distribuidos.

7.4 Arquitectura de los Web Services


Los Web Services, en vez de obtener peticiones desde un navegador y devolver
pginas web como respuesta, recibe peticiones, mediante un mensaje formateado
con SOAP, desde otras aplicaciones realiza la labor que le han pedido y devuelve
un mensaje de respuesta en formato SOAP.
En la figura 7.1 muestra los componentes bsicos, sus relaciones protocolos de
comunicacin de los Web Services.

Figura 7.1: Arquitectura de un Web Services


Fuente: Adaptacin propia

70 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

La arquitectura bsica del modelo de Web Services describe a un consumidor, un


proveedor. Relacionados con estos agentes estn las operaciones para publicar,
encontrar y enlazar, tal como se muestra en la figura 7.1.
Bsicamente consiste en que un Web Services Proveedor pblica sus servicios
en un corredor en este caso el WSDL, luego un consumidor se conecta al
corredor utilizando el URL del WSDL para encontrar los servicios deseados
expresados en operaciones y una vez que lo hace esta conexin se realiza un
lazo entre el consumidor y el proveedor.

71 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Leccin 8: Web Semntica

8.1 Qu es la Web Semntica?


La Web semntica que promulga la Web 3.0 no depende del funcionamiento de
los buscadores sino de la estructura de la propia Web (ya que sus elementos
deben tener asociados atributos que otorguen significado).
La Web Semntica es la confluencia de la inteligencia Artificial y las tecnologas
Web que proponen introducir descripciones explcitas sobre el significado de los
recursos, para permitir que las propias mquinas tengan un nivel de comprensin
de la Web suficiente como para hacerse cargo de una parte, la ms costosa,
rutinaria, o fsicamente inabarcable, del trabajo que actualmente realizan
manualmente los usuarios que navegan e interactan con la Web. A partir de la
situacin actual de la Web y sus limitaciones, en este articulo se motivan y
explican las propuestas de la Web semntica, se describen las tecnologas ms
importantes desarrolladas para llevarlas a cabo, as como el punto en el que se
encuentra este proyecto promovido por el propio inventor de la Web (Bravo y
Redondo, 2005, p. 195).
En poco ms de una dcada desde su aparicin, la World Wide Web se ha
convertido en un instrumento de uso cotidiano en nuestra sociedad, comparable a
otros medios tan importantes como la radio, la televisin o el telfono, a los que
aventaja en muchos aspectos. La Web es hoy un medio extraordinariamente
flexible y econmico para la comunicacin, el comercio y los negocios, ocio y
entretenimiento, acceso a informacin y servicios, difusin de cultura, etc.
Paralelamente al crecimiento espectacular de la Web, las tecnologas que la
hacen posible han experimentado una rpida evolucin. Desde las primeras
tecnologas bsicas: HTML y HTTP, hasta nuestros das, han emergido
tecnologas como CGI, JavaScript, ASP, JSP, PHP, Flash, J2EE, XML, por citar
algunas de las ms conocidas, que permiten una Web mejor, amplia, potente,
flexible, o fcil de mantener. Estos cambios influyen, y son al mismo tiempo
influidos por la propia transformacin de lo que entendemos por WWW. La
generacin dinmica de pginas, el acoplamiento con bases de datos, la mayor
interactividad con el usuario, la concepcin de la Web como plataforma universal
para el despliegue de aplicaciones, la adaptacin al usuario, son algunas de las
tendencias evolutivas destacadas en los ltimos aos.
Entre las ltimas tendencias que pueden repercutir en el futuro de la Web a medio
plazo, a finales de los 90 surge la visin de lo que se denomina la Web semntica
(Berners-Lee 2001). Se trata de una corriente, promovida por el propio inventor
de la Web y presidente del consorcio W3C, cuyo fin es lograr que las mquinas
puedan entender, por tanto utilizar, lo que la Web contiene. Esta nueva Web
estara poblada por agentes o representantes de software capaces de navegar y
realizar operaciones por nosotros para ahorrarnos trabajo y optimizar los
resultados. Para conseguir esta meta, la Web semntica propone describir los
resultados de la Web con representaciones procesales (es decir, entendibles) no
slo por personas, sino por programas que puedan asistir, representar, o
reemplazar a las personas en tareas rutinarias o inabarcables para un humano,
Las tecnologas de la Web semntica buscan desarrollar una Web ms
cohesionada, donde sea an ms fcil localizar, compartir e integrar informacin y

72 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

servicios, para sacar un partido todava mayor de los recursos disponibles en la


Web.
Se basa en un conjunto de tecnologas pensadas en volver el contenido de los
recursos (imgenes, textos, vdeos, etc.) de la Web para que sean accesibles y
utilizables por los internautas. La Web Semntica fue creada por la World Wide
Web Consortium (W3C), el organismo de estandarizacin de los lenguajes web.
Este sistema permite unir las informaciones que hasta ese momento fueron
tratadas por separado. El funcionamiento de la Web Semntica integra en la Web
actual la posibilidad de agregar varios datos relacionados entre ellos, ya sea
semnticamente o por atributos que los determinan. Por ejemplo, para la siguiente
bsqueda "actor de Nueva York de 20 aos de edad", un motor de metadatos
ser capaz de producir una lista de referencias que corresponder exactamente a
los criterios solicitados de bsqueda.
Segn la W3C: La Web Semntica es una Web extendida, dotada de mayor
significado en la que cualquier usuario en Internet podr encontrar respuestas a
sus preguntas de forma ms rpida y sencilla gracias a una informacin mejor
definida. Al dotar a la Web de ms significado y, por lo tanto, de ms semntica,
se pueden obtener soluciones a problemas habituales en la bsqueda de
informacin gracias a la utilizacin de una infraestructura comn, mediante la
cual, es posible compartir, procesar y transferir informacin de forma sencilla.
(W3C http://www.w3c.es/divulgacion/guiasbreves/websemantica)
Esta Web extendida, se apoya en lenguajes universales que resuelven los
problemas ocasionados por una Web carente de semntica en la que, en
ocasiones, el acceso a la informacin se convierte en una tarea difcil y frustrante.
La Web ha cambiado profundamente la forma en la que nos comunicamos,
hacemos negocios y realizamos nuestro trabajo. La comunicacin prcticamente
con todo el mundo en cualquier momento y a bajo coste es posible hoy en da.
Podemos realizar transacciones econmicas a travs de Internet. Tenemos
acceso a millones de recursos, independientemente de nuestra situacin
geogrfica e idioma. Todos estos factores han contribuido al xito de la Web. Sin
embargo, al mismo tiempo, estos factores que han propiciado el xito de la Web,
tambin han originado sus principales problemas: sobrecarga de informacin y
heterogeneidad de fuentes de informacin con el consiguiente problema de
interoperabilidad.
La Web Semntica ayuda a resolver estos dos importantes problemas
permitiendo a los usuarios delegar tareas en software. Gracias a la semntica en
la Web, el software es capaz de procesar su contenido, razonar con este,
combinarlo y realizar deducciones lgicas para resolver problemas cotidianos
automticamente.

Ejemplo:
Supongamos que la Web tiene la capacidad de construir una base de
conocimiento sobre las preferencias de los usuarios y que, a travs de una
combinacin entre su capacidad de conocimiento y la informacin disponible en
Internet, sea capaz de atender de forma exacta las demandas de informacin por

73 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

parte de los usuarios en relacin, por ejemplo, a reserva de hoteles, vuelos,


mdicos, libros, etc.
Si esto ocurriese as en la vida real, el usuario, en su intento, por ejemplo, por
encontrar todos los vuelos a Praga para maana por la maana, obtendra unos
resultados exactos sobre su bsqueda. Sin embargo la realidad es otra.
La figura 8.1 muestra los resultados inexactos que se obtendran con el uso de
cualquier buscador actual, el cual ofrecera informacin variada sobre Praga pero
que no tiene nada que ver con lo que realmente el usuario buscaba. El paso
siguiente por parte del usuario es realizar una bsqueda manual entre esas
opciones que aparecen, con la consiguiente dificultad y prdida de tiempo.

Figura 8.1: Resultados de un buscador actual sin web semntica


Fuente: http://www.w3c.es/divulgacion/guiasbreves/websemantica

Con la incorporacin de semntica a la Web los resultados de la bsqueda seran


exactos. La figura 8.2 muestra los resultados obtenidos a travs de un buscador
semntico. Estos resultados ofrecen al usuario la informacin exacta que estaba
buscando. La ubicacin geogrfica desde la que el usuario enva su pregunta es
detectada de forma automtica sin necesidad de especificar el punto de partida,
elementos de la oracin como "maana" adquiriran significado, convirtindose en
un da concreto calculado en funcin de un "hoy".

74 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Figura 8.2: Resultados de un buscador actual sin web semntica


Fuente: http://www.w3c.es/divulgacion/guiasbreves/websemantica

Algo semejante ocurrira con el segundo "maana", que sera interpretado como
un momento determinado del da. Todo ello a travs de una Web en la que los
datos pasan a ser informacin llena de significado. El resultado final sera la
obtencin de forma rpida y sencilla de todos los vuelos a Praga para maana por
la maana.

8.2 Componentes de la Web Semntica


Para obtener esa adecuada definicin de los datos, la Web Semntica utiliza
esencialmente RDF, SPARQL, y OWL, mecanismos que ayudan a convertir la
Web en una infraestructura global en la que es posible compartir, y reutilizar datos
y documentos entre diferentes tipos de usuarios.
RDF: Proporciona informacin descriptiva simple sobre los recursos que se
encuentran en la Web y que se utiliza, por ejemplo, en catlogos de libros,
directorios, colecciones personales de msica, fotos, eventos, etc.
SPARQL: Es lenguaje de consulta sobre RDF, que permite hacer bsquedas
sobre los recursos de la Web Semntica utilizando distintas fuentes datos.
OWL: Es un mecanismo para desarrollar temas o vocabularios especficos en
los que asociar esos recursos. Lo que hace OWL es proporcionar un lenguaje
para definir ontologas estructuradas que pueden ser utilizadas a travs de
diferentes sistemas.
Las ontologas, que se encargan de definir los trminos utilizados para describir y
representar un rea de conocimiento, son utilizadas por los usuarios, las bases de
datos y las aplicaciones que necesitan compartir informacin especfica, es decir,
en un campo determinado como puede ser el de las finanzas, medicina, deporte,
etc. Las ontologas incluyen definiciones de conceptos bsicos en un campo
determinado y la relacin entre ellos.
Otra tecnologa que ofrece la Web Semntica para enriquecer los contenidos de
la Web tradicional es RDF. Mediante esta tecnologa se pueden representar los
datos estructurados visibles en las pginas Web (eventos en calendarios,
informacin de contacto personal, informacin sobre derechos de autor, etc.), a
travs de unas anotaciones semnticas incluidas en el cdigo e invisibles para el
usuario, lo que permitir a las aplicaciones interpretar esta informacin y utilizarla

75 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

de forma eficaz. Por ejemplo, una aplicacin de calendario podra importar


directamente los eventos que encuentra al navegar por cierta pgina Web, o se
podran especificar los datos del autor de cualquier foto publicada, as como la
licencia de cualquier documento que se encuentre. Para extraer el RDF se podra
utilizar GRDDL, una tcnica estndar para extraer la informacin expresada en
RDF desde documentos XML, y en particular, de las pginas XHTML.
Desde el 2004 existe un buscador temtico sobre web semntica, una iniciativa
que espera ordenar las ontologas web.

Figura 8.3: Buscador temtico sobre web semntica http://swoogle.umbc.edu/

76 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

RESUMEN

La unidad desarrollada describe los acontecimientos ms importantes del


nacimiento de la Web. Los inicios de la Web 1.0 y sus caractersticas ms
resaltantes. La evolucin de las aplicaciones tradicionales hacia aplicaciones web
enfocadas al usuario final mediante la Web 2.0 y de aquellas aplicaciones que
permitieron mejorar la administracin de la informacin, la comunicacin, los
contenidos y la enseanza, a travs de las redes sociales, los blogs, los sistemas
de gestin para los contenidos y el aprendizaje. As mismo, se sintetiza las
principales nociones de la futura tercera generacin de servicios basados en
Internet, la Web 3.0, describiendo las principales aplicaciones de desarrollo y
servicio.
Se aborda, adems, los Web Services cuyo diseo permite que los componentes
se comuniquen con otros, adems de ofrecer servicios de informacin y
operaciones transaccionales, como tambin caractersticas que los diferencia de
los Sistemas Distribuidos, tales como: interoperabilidad, acceso a la informacin,
uso de estndares, entre otros.
Finalmente, en esta unidad se abord el tema de la Web Semntica que permite
integrar, a la Web actual, la posibilidad de agregar varios datos relacionados entre
ellos, ya sea semnticamente o por atributos que los determinan.

77 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

LECTURA

Semntica, el Lenguaje Natural y las Mquinas Inteligentes

Autor: Eduardo Albal Ubiergo

La Web Semntica define a una Internet con la informacin mejor definida, que
permitira a cualquier usuario encontrar respuestas de forma ms rpida y
sencilla, gracias a que todos los contenidos tendran significado asociado.
La bsqueda en la Web actual est basada en el HTML (siglas de HyperText
Markup Language o Lenguaje de Marcado de Hipertexto). Este lenguaje permite
hacer descripciones textuales, as como incorporar imgenes y enlaces a otras
pginas, pero no permite definir atributos o caractersticas de un objeto.
Por ejemplo, podramos tener una pgina web (que llamaremos Pgina1) con el
texto: Tenemos ofertas de zapatos rojos de la talla 32 y con tacn pero tenemos
agotadas los botas negras
En esta Web actual, y siguiendo con el ejemplo, podemos introducir en Google la
bsqueda: ofertas de botas negras de la talla 32 y con tacn
En este caso, podramos llegar a la pgina web Pgina1 porque Google busca
palabra por palabra, no por el significado global. El resultado sera errneo.
En la Web semntica, un producto de un catlogo online podra tener asociado en
su definicin intrnseca elementos como talla, color, precio, etc., llevando a que
las bsquedas fueran por esos atributos y evitando as los errores de
interpretacin de los buscadores.
En los ltimos tiempos han aparecido muchos buscadores de imgenes, de ropa,
de restaurantes o de aplicaciones para dispositivos mviles (Apps) que no se
limitan a buscar en el texto sino que ya realizan bsquedas semnticas en base a
informacin que define a los objetos.
El Lenguaje Natural. En los ejemplos clsicos de la Web Semntica, al hablar de
la utilizacin de Lenguaje Natural, se supone que introduciendo en un buscador
Quiero ir esta noche al cine por la zona de Santa F pero que me d tiempo a
llegar a la cena que tengo a las 9:30, dicho buscador entendera correctamente la
peticin, dando una respuesta adecuada. Sin embargo, me surgen serias dudas
sobre que la tecnologa tenga que evolucionar necesariamente por ese camino. A
veces nos equivocamos en la evolucin de la tecnologa.
Todas las pelculas futuristas incluyen coches que vuelan, pero la verdad es que
no necesitamos un transporte tan caro, peligroso, antiecolgico y catico, sino
ms metros subterrneos, tranvas o metrobuses, coches elctricos, carriles para
bicicletas y zonas peatonales, esas son las verdaderas necesidades. Ha pasado
algo similar con la comunicacin a travs de la voz con dispositivos, casi nadie
utiliza la marcacin por voz de los telfonos mviles y todava no he visto a nadie
que le hable a su PC (aunque fue uno de los grandes avances con los que se
promocion el Windows Vista). De igual forma, el Lenguaje Natural que utilizamos
en la comunicacin entre personas, quiz no tenga que ser el mismo que

78 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

utilicemos con las mquinas. Nadie le dice a un ascensor a que piso ir, se lo
indica con el dedo.
Y es que precisamente (y esto es una opinin personal) creo que el Lenguaje
Natural para comunicarse con los dispositivos electrnicos no debe consistir en
escribir largas frases. Cualquier strapa sabe que es mucho ms sencillo
simplemente sealar con el dedo y que los sbditos, en funcin del contexto,
interpreten los deseos como rdenes. De hecho, mi hijo que tiene apenas tres
meses, ya empieza a sealar para indicar aquellas cosas que quiere, eso parece
lenguaje ms natural todava.
Parece que tanto las nuevas formas de bsqueda de informacin y navegacin,
como los dispositivos que las incorporan y hacen posible, van mucho ms hacia
esta tendencia de sealar informacin y no tanto escribir.
Un ejemplo de esta tendencia en bsquedas es Boutiques.com.
Este nuevo sitio de Google destinado a la moda tiene uno de sus principales
activos en las bsquedas visuales. Esto quiere decir que seleccionando unas
cuantos estilos que nos gustan, el sistema devuelve resultados de prendas,
diseadores y tiendas online, y todo sin escribir una sola palabra.
La ltima generacin se acostumbr a manejar los dedos con una extrema
velocidad para escribir mensajes de texto. La prxima generacin posiblemente
conserve esa habilidad pero incorporar nuevas para buscar la informacin y
disfrutar de su ocio de una forma que hasta ahora no habamos contemplado (sin
escribir).
Las Mquinas Inteligentes. Fenmeno que podra ser definido como la aparicin
de mquinas, dispositivos, aplicaciones e interfaces que permiten nuevos tipos de
comunicacin y que tambin se comunican entre ellos. No necesitamos sirvientes
tremendamente inteligentes, sino que hagan muy bien su tarea especfica. En
este sentido, hay una frase de moda que define bien la situacin las Apps son la
nueva Web".
Las Apps son aplicaciones para descargar principalmente en dispositivos mviles,
as como tambin se tratarn otras cuestiones asociadas a esta tendencia de las
mquinas inteligentes e interconectadas como el Cloud Computing, el M2M
(comunicacin mquina a mquina), la inteligencia colectiva, la inteligencia
artificial, o el Internet de las cosas.

Bienvenida. Web 3.0 Gua para sobrevivir en la Internet del 2011


Eduardo Albal Ubiergo
Editado por Grupo Barrabs
Pp. 8-12

79 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

AUTOEVALUACIN

1. No es considerado como caracterstica principal de la Web 1.0:


a. Las pginas web estaban escritas en cdigo HTML
b. El contenido y el diseo estaban separados del cdigo HTML
c. No se utilizaba acceso a una Base de Datos
d. Los usuarios tenan acceso solo lectura
e. Considerado de forma esttica

2. Corresponde a una aplicacin de la Web 2.0:


a. Evite
b. iTunes
c. Blogs
d. App Stores
e. Direcciones Web

3. No corresponde a una aplicacin de la Web 3.0:


a. Taxonoma
b. Inteligencia Colectiva
c. Geoposicionamiento
d. Bsquedas Visuales
e. Vinculacin de Redes

4. La siguiente definicin su finalidad ha sido la de crear un lugar de


encuentro para que miles de usuarios con inters comunes se
comuniquen corresponde a:
a. LMS
b. CMS
c. Weblogs
d. Redes Sociales
e. Podcasts

5. Son programas que permite crear una estructura de soporte para la


creacin y administracin de contenidos por parte de los participantes:
a. LMS
b. CMS
c. Weblogs
d. Wikis
e. RSS

6. Permite a las organizaciones unir los objetivos de negocio con la


infraestructura de TI integrando los datos y la lgica de negocio de sus
sistemas:
a. W3D
b. APPS
c. SOA
d. Habbo
e. Second Life

80 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

7. No corresponde a una caractersticas de los APPS:


a. Online/Offline
b. Geolocalizacin
c. Publicidad
d. Pantalla Tctil
e. Enfocadas en fines concretos

8. Corresponde a la definicin de los Web Services:


a. Se comunica por medio de mensajes, utilizando el protocolo HTTPP entre
diferentes computadoras a travs de una red.
b. Una evolucin de las Ciencias de la Computacin.
c. Uso de la red de internet como plataforma CMS.
d. Diseados para permitir que los componentes se comuniquen con otros
una vez conectados.
e. Son aplicaciones que utilizan diferentes estndares de internet.

9. No corresponde a un estndar de los Web Services:


a. WSLD.
b. HTTP
c. UDDI
d. SSH
e. XML

10. El funcionamiento de la Web semntica es considerado como:


a. Una Web Integrada.
b. Una Web basada en estndares.
c. Una Web desarrollada en XML.
d. Una Web centrado en el Usuario.
e. Una Web Extendida.

81 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

RESPUESTAS DE CONTROL

1. b 2. c 3. a 4. d 5. b 6. c 7. c 8. d 9. d 10. e

82 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

EJERCICIOS PROPUESTOS

1. Marcar la respuesta correcta


1.1. Considerado como un gran espacio de informacin universal y vitrina
con acceso a informacin pblica y privada
a. La Internet
b. Los Portales
c. La Intranet
d. La Web
e. Google

1.2. Flickr, sugarcrm, paypal, amazon y facebook son considerados


como:
a. Sistemas gratuitos
b. Aplicaciones Web
c. Extranet
d. Herramientas colaborativas
e. Plataformas

1.3. Protocolo que permite la transferencia de archivos desde el Servidor


hacia el Cliente o del Cliente hacia el Servidor:
a. http
b. www
c. smtp
d. ftp
e. ssh

1.4. La definicin: Posibilidad de conectar distintas aplicaciones entre


s, corresponde a:
a. Prosumidores
b. Usabilidad
c. Interoperabilidad
d. E-learning
e. Trackback

1.5. Permite trabajar con Roles para los usuarios (administrador, autor,
editor, lector):
a. Joomla
b. Moodle
c. Wordpress
d. Drupal
e. Slo a y d

83 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Desarrollar:
2. Defina 04 ventajas del uso de las Tecnologas Web.
3. Mencione y explique 04 caractersticas sobre las Aplicaciones Web.
4. Porqu en la Web 2.0 el usuario es considerado como el principal
protagonista.
5. Instalar la Plataforma Moodle y describa los pasos para su implementacin.
Descargar el paquete del siguiente enlace http://download.moodle.org.

84 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

EXPLORACIN ON LINE

URL: http://www.w3c.es/Presentaciones/2005/0314-estandares-JA/
Sitio oficial de la W3C donde explica y muestra los estndares de la web
URL: http://internality.com/web20/
Este sitio muestra un mapa visual de la web 2.0 adems agrupa los principales
conceptos de la Web 2.0, junto con una breve explicacin. Adems se han
seleccionado algunos ejemplos de servicios de la Internet hispana que suelen
enmarcarse en la Web 2.0.
URL: http://www.web2summit.com/web2011
En este sitio oficial del evento ms importante de la web 2.0, Summit Web 2.0,
donde se renen investigadores, desarrolladores, empresas que presentan
los ltimos avances de la web 2.0.
URL: http://web30websemantica.comuf.com/
Portal web sobre RECUPERACIN Y ACCESO A LA INFORMACIN, de la
Universidad Carlos III de Madrid. Donde explican sobre los avances de la Web
3.0, sus tecnologas y las diferencias con las web 2.0 y web 1.0
URL: http://support.chamilo.org/issues/3798
Sitio oficial de toda la documentacin en formato PDF sobre soporte,
instalacin, configuracin del LMS Chamilo
URL: http://www.joomlaspanish.org/
Sitio oficial en espaol del CMS Joomla, donde puede descarga la ltima
versin, encontrar manuales, preguntas y respuestas frecuentes y descargar
documentacin y foros sobre Joomla
URL: http://www.w3.org/2002/ws/
Sitio Web de la World Wide Web Consortium (W3C), el sitio oficial de los
estndares de Internet y de los Web Services
URL: http://www.w3c.es/divulgacion/guiasbreves/websemantica
Gua Breve de Web Semntica, aplicaciones XML, RDF, donde explica sobre
el futuro de la web.
URL: http://jax-ws.java.net/
Sitio web de del proyecto JAX-WS donde describe su implementacin y
documentacin. Tambin puede encontrar la ltima versin de esta solucin.

85 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

REFERENCIA BIBLIOGRFICA

Aguiar, M. (2003) Sociedad de la Informacin y


Cultura Meditica. La Corua:
NETBIBLIO, S.L.
Albal, E. (2011) Bienvenida Web 3.0: Gua para
sobrevivir en la Internet 2011.
Barza, C. y Capella, S. (2010) Ordenadores en las aulas.
Barcelona: Editorial GRAO
Bravo, C. y Redondo, M. A. (2005) Sistemas interactivos y
colaborativos en la web. Cuenca:
Ediciones de la Universidad de Castilla-La
Mancha
Cancelo, P. y Giraldez, J. A. (2007) La Tercera Revolucin. La Corua:
Editorial NetBiblio, S.L.
Castelo, A. (2010) Estrategias Empresariales en la
Web 2.0. Las redes sociales Online.
Alicante: Editorial Club Universitario.
Fernndez, B. (2010) Las Redes Sociales. Lo que hacen
sus hijos en Internet. Alicante: Editorial
Club Universitario.
Garca, F. (2007) tica e Internet: manzanas y
serpientes. Madrid: Ediciones RIAL, S.A.
Lujn, S. (2002), Programacin de aplicaciones
web: historia, principios bsicos y clientes
web. Alicante: Editorial Club Universitario.
Martinez, J.A. (2009) La web 2.0 Como Recurso Para la
Enseanza del Francs Como Lengua
Extranjera. Madrid: Ediciones Graficas
Arial
Miltiadis, D. Lytras, E. y Ordoez, P. (2009) Web 2.0: The Business Model.
Patras: Springer
Moliner, F.J. (2005) Informticos Generalitat
Valenciana Grupos A y B. Sevilla: Editorial
MAD. S.L.
Moro, M. y Torres, J. (2008) La adaptacin al espacio europeo
de educacin superior en la Facultad de
traduccin y documentacin. Salamanca:
Ediciones Universidad de Salamanca.
Munilla, E. y Garca, I. (2003) E-Bussiness Colaborativo. Madrid:
Editorial Confemetal

86 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

Ramos, A. (2011) Aplicaciones Web. Madrid:


Ediciones Paraninfo, SA
Rojas, O. I. (2006) Blogs: la conversacin en Internet
que est revolucionando medios,
empresas y a ciudadanos (Segunda
Edicin). Madrid: ESIC Editorial.
Varela, R.A. (2007) Una metodologa para el desarrollo
de cursos en lnea. Mxico, D.F.: D.R.
Universidad Nacional Autnoma de
Mxico

87 Sistema a Distancia
Tecnologas Web (E) - Unidad II Daniel Yucra S. / Santiago Gonzles S.

BIBLIOGRAFA COMENTADA

- Rojas, O. I. (2007) Web 2.0. Madrid: ESIC Editorial.


Revisar el Captulo I sobre las redes sociales y wikis, adems el captulo 2
Cmo crear y optimizar un blog?
- Castell, A. (2010) Estrategias empresariales en la Web 2.0. Las redes
sociales Online. Alicante: Editorial Club Universitario.
Revisar la unidad 6 las estrategias empresariales en redes sociales online y la
unidad 7 sobre los casos prcticos en la Web 2.0.
- Newcomer, E. (2002) Understanding Web Services: XML, WSDL, SOAP, and
UDDI. Addison-Wesley.
Revisar la Unidad 1, sobre los conceptos de los Web Services, Unidad 4 sobre
accesibilidad de los Web Services utilizando SOAP, adems de la Unidad 7
sobre las Arquitectura de los Web Services.
- Gurug, A. (2003) Web Services: Theory and Practice. British Library.
En este libro explica el desarrollo de Web Services, revisar la unidad 3 donde
muestra ejemplos y casos prcticos utilizando tecnologa .NET, adems
revisar la Unidad 6 sobre el desarrollo de Web Services utilizando Java.
- Mrquez, S. (2007) La Web Semntica. Madrid: Editorial Lul.
Revisar el captulo 2 sobre la web actual, captulo 3 sobre la web semntica,
ontologas y lenguajes para la descripcin de ontologas. Adems puede
revisar el captulo 8 sobre el Modelado de servicios web semnticos el futuro
de la Web.

88 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

TERCERA UNIDAD

Tecnologas para el desarrollo Web

Sumario

La siguiente unidad describe la arquitectura de la Web a travs de la presentacin


y aplicacin distribuida, y las aplicaciones web basado en el tipo de arquitectura
Cliente/Servidor.
Se sintetiza los tipos de lenguaje de programacin para el desarrollo de
Aplicaciones Web, as mismo, de los motores de bases de datos existentes para
la realizacin de almacenamiento de datos, transacciones, consultas, entre otros.
Al finalizar la unidad, conocer las nociones del Framework que son un conjunto
de bibliotecas orientadas a la reutilizacin de componentes de software para el
desarrollo de aplicaciones.

89 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Objetivos

Al finalizar esta unidad, el estudiante ser capaz de:

Conocer la arquitectura de la Web para el desarrollo de aplicaciones basado


en esta tecnologa.
Conceptualizar los lenguajes de programacin para el desarrollo de
aplicaciones web.
Reconocer los tipos de Bases de Datos para el almacenamiento y acceso de
informacin basada en aplicaciones web.
Conceptualizar un framework para el desarrollo de aplicaciones web.

90 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Leccin 9: Arquitectura Web

9.1 Presentacin Distribuida


En los apartados anteriores, se describi la arquitectura bsica de una aplicacin
web es el modelo cliente/servidor. A continuacin se describe la presentacin
distribuida de este modelo.
Para este caso el cliente slo mantiene la presentacin, el resto de la aplicacin
se ejecuta remotamente. La presentacin distribuida, en su forma ms simple, es
una interfaz grfica de usuario a la que se le pueden acoplar controles de
validacin de datos, para evitar la validacin de los mismos en el servidor.

Figura 9.1: Presentacin distribuida

9.2 Aplicacin Distribuida


Es el modelo que proporciona mxima flexibilidad, adems permite al servidor,
como al cliente, mantener la lgica realizando cada una de las funciones ms
apropiadas, tanto por organizacin o por mejorar el rendimiento del sistema.

Figura 9.2: Aplicacin distribuida

9.3 Arquitectura de las aplicaciones Web


Las aplicaciones web se basan en una arquitectura del tipo cliente/servidor. Por
un lado est el cliente (el navegador o visualizador) y por otro lado el servidor
web.
Existen diversas variantes de la arquitectura bsica, segn como se implementen
las diferentes funcionalidades de la parte del servidor.
Entre las arquitecturas comunes, mencionamos:

91 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

1. Todo en un Servidor: Un nico ordenar aloja el servidor HTTP, la lgica de


negocio y la lgica de datos; y los datos. El software que ofrece el servicio de
HTTP gestiona tambin la lgica de negocio. Las tecnologas que emplea esta
tecnologa generalmente son ASP y PHP.

Figura 9.3: Arquitectura de la aplicacin, todo en un solo servidor


Fuente: Lujn, S. (Programacin de aplicaciones web: historia, principios bsicos y
clientes web. p.56)

2. Servidor de datos separado: a partir de la arquitectura anterior, se separa la


lgica de datos; y los datos a un servidor de base de datos especfico. Las
tecnologas que emplean esta arquitectura generalmente son ASP y PHP.

Figura 9.4: Arquitectura de la aplicacin, todo en un solo servidor


Fuente: Lujn, S. (Programacin de aplicaciones web: historia, principios bsicos y
clientes web. p.56)

3. Todo en un servidor, con servicios de aplicaciones: en la primera arquitectura


se separa la lgica de negocio del servicio de HTTP y se incluye el servicio de
aplicaciones para gestionar los procesos que implementan la lgica de
negocio. La tecnologa que emplea esta arquitectura es JSP y Servlets.
Se le conoce como la arquitectura de 4 capas, donde destaca el servidor de
aplicaciones.

92 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Figura 9.5: Arquitectura de la aplicacin, todo en un solo servidor, con servicio de


aplicaciones
Fuente: Lujn, S. (Programacin de aplicaciones web: historia, principios bsicos y
clientes web. p.57)

4. Servidor de datos separado, con servicio de aplicaciones: a partir de la


arquitectura nmero 3, se separa la lgica de datos y los datos a un servidor
de base de datos especfica. La tecnologa que emplea es JSP y los servlets.

Figura 9.6: Arquitectura de las aplicaciones, con separacin del servidor de datos y con
servicio de aplicaciones
Fuente: Lujn, S. (Programacin de aplicaciones web: historia, principios bsicos y
clientes web. p.57)

5. Todo separado: las tres funcionalidades bsicas del servidor web se separan
en tres servidores especficos. La tecnologa que emplea esta arquitectura es
JSP.

93 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Figura 9.3: Arquitectura de las aplicaciones, con separacin del servidor de datos y
separado el servicio de aplicaciones
Fuente: Lujn, S. (Programacin de aplicaciones web: historia, principios bsicos y
clientes web. P.55

El objetivo de separar las distintas funcionalidades en distintos servidores es


aumentar la escalabilidad del sistema, con el propsito de obtener mayor
rendimiento. Al separar las funciones, cada uno de ellos permite configurar de
forma adecuada los requisitos que presentan.

94 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Leccin 10: Lenguajes de Programacin

10.1 Historia de las Aplicaciones Web


Inicialmente la Web consista en la coleccin de pginas estticas, documentos,
etc., que podan consultarse o descargarse.
El siguiente paso en su evolucin fue la inclusin de un mtodo para confeccionar
pginas dinmicas que permitiesen que lo mostrado fuese dinmico, generado a
partir de los datos de una peticin. Dicho mtodo fue conocido como CGI
(Common Gateway interface) y defina un mecanismo mediante el cual podamos
pasar informacin entre el servidor HTTP y programas externos. Los CGI siguen
siendo muy utilizados, puesto que la mayora de los servidores web los soportan
debido a su sencillez. Adems, nos proporcionan total libertad a la hora de
escoger el lenguaje de programacin para desarrollarlos.
CGI es el nombre de una aplicacin que recibe sus parmetros utilizando el
estndar Common Gateway Interface, de ah su nombre. El estndar establece
cmo han de comunicarse las aplicaciones con el Servidor Web. Por extensin,
se denomina CGI a un programa tradicional como C. En realidad, un CGI se
encarga nicamente de implementar la respuesta de la aplicacin web a un tipo
concreto de solicitud proveniente del cliente. Por tanto, una aplicacin web estar
conformada, por muchos CGIs diferentes. Cada uno de ellos sern responsable
de un contexto de interaccin de la aplicacin con el usuario (Berzal, Cubero y
Cortijo, 2009, p. 21).
El esquema de funcionamiento de los CGI tena un punto dbil: cada vez que
recibamos una peticin, el servidor web lanzaba un proceso que ejecutaba el
programa CGI. Como, por otro lado, la mayora de CGI estaban escritos en algn
lenguaje interpretado (Perl, Python, etc.) o en algn lenguaje que requera runtime
environment (VisualBasic, Java, etc.), esto implicaba una gran carga para la
mquina del servidor (Mateu, 2004, p. 13).
Adems, si la Web cuenta con varios accesos al CGI, esto supona problemas
graves. Por ello se empiezan a desarrollar alternativas a los CGI para solucionar
este grave problema de rendimiento. Las soluciones vienen principalmente por
dos vas. Por un lado se disean sistemas de ejecucin de mdulos ms
integrados con el servidor, que evitan que ste tenga que instanciar y ejecutar
multitud de programas. La otra va consiste en dotar al servidor de un intrprete
de algn lenguaje de programacin que nos permita incluir las pginas en el
cdigo de manera que el servidor sea quien lo ejecute, reduciendo as el tiempo
de respuesta.
A partir de este momento, se vive una explosin del nmero de arquitecturas y
lenguajes de programacin que nos han permitido el desarrollar de aplicaciones
web. Todas ellas siguen alguna de las dos vas ya mencionadas. De ellas, las
ms tiles y las que ms se utilizan son aquellas que permiten mezclar los dos
sistemas, es decir, un lenguaje de programacin integrado que permita al servidor
interpretar comandos que incrustemos en las pginas HTML y un sistema de
ejecucin de programas ms enlazado con el servidor que no presente los
problemas de rendimiento de los CGI.

95 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

10.2 CGI
Uno de los primeros mecanismos para generar contenido dinmico para la web es
el API llamado CGI (acrnimo de Common Gateway interface, interfaz de
pasarelas comn).
ste mecanismo simple permite que un Servidor Web ejecute un programa escrito
en cualquier lenguaje de programacin, que le pueda pasar unos parmetros que
hace posible que el resultado de la ejecucin de este programa sea enviado al
usuario como una pgina web o cualquier otro tipo de contenido.
Al contrario de lo que sucede con los Servlets de Java y otros lenguajes, no existe
ningn tipo de limitacin al lenguaje de programacin que podemos utilizar para
escribir un CGI. Podemos usar desde scripts escritos en el lenguaje de shell del
sistema operativo hasta programas escritos en ensamblador, pasando por todo el
abanico de lenguajes de programacin existentes: C, C++, Perl y Python. Hasta
ahora, el lenguaje ms popular para la escritura de CGI es Perl, ya que
proporciona utilidades al programador que simplifican la tarea de escribir
programas CGI.
Perl es un lenguaje de programacin basado de varios lenguajes como el
lenguaje C, del lenguaje interpretado bourne shell (sh), AWK, sed, Lisp y, en un
grado inferior, de muchos otros lenguajes de programacin. Este fue el lenguaje
que populariz los CGI, y se inici el desarrollo de las primeras Aplicaciones Web.
Los CGI deben responder a las peticiones construyendo ellos mismos parte de la
respuesta HTTP que recibir el cliente. Es decir, deben indicar, en primer lugar, el
tipo MIME del contenido que sirven. Pueden aadir posteriormente algunos
campos adicionales (los especificados en el estndar HTTP). Despus de una
lnea en blanco separadora, debe aparecer el contenido.
El CGI ms simple posible, en este caso escrito en shell script y que enumera las
variables de entorno comentadas anteriormente, son:

#!/bin/sh
echo Content-type: text/plain
echo
echo
echo SERVER_NAME=$SERVER_NAME
echo SERVER_PROTOCOL=$SERVER_PROTOCOL
echo REQUEST_METHOD=$REQUEST_METHOD
echo PATH_INFO=$PATH_INFO
echo PATH_TRANSLATED=$PATH_TRANSLATED
echo SCRIPT_NAME=$SCRIPT_NAME
echo REMOTE_ADDR=$REMOTE_ADDR
echo REMOTE_HOST=$REMOTE_HOST
echo REMOTE_USER=$REMOTE_USER
echo AUTH_TYPE=$AUTH_TYPE
echo CONTENT_TYPE=$CONTENT_TYPE
echo CONTENT_LENGTH=$CONTENT_LENGTH
echo QUERY_STRING=$QUERY_STRING

96 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Como podemos ver en este ejemplo (la sintaxis utilizada de Shell script es muy
simple), para listar las variables de entorno recibidas enviamos el tipo de
contenido, seguido de la lnea en blanco obligatoria de todas y cada una de las
variables de entorno mencionadas.
La ejecucin de este servidor, resulta:

Figura 10.1: Resultado de las variables de entorno del CGI

10.3 PHP
PHP, cuyas siglas representan a un acrnimo recursivo (PHP: hypertext
preprocessor), es un lenguaje sencillo, de sintaxis cmoda y similar a la de otros
lenguajes como Perl, C y C++.
Es un lenguaje rpido, interpretado, orientado a objetos y multiplataforma. Existe
prcticamente para todos los sistemas operativos, altamente portable.
PHP es un lenguaje ideal para el desarrollo de Aplicaciones Web, incluso para
desarrollar Aplicaciones Web Complejas. PHP contiene diversos mdulos y gran
cantidad de libreras desarrolladas disponibles en su cdigo fuente, con lo que el
programador de PHP dispone de abundantes referencias y mdulos para
desarrollar las aplicaciones.
PHP suele ser utilizado conjuntamente con Apache, MySQL o PostgreSQL en
sistemas operativos como GNU/Linux, formando una combinacin que se
denomina LAMP (Linux, Apache, MySQL y Php), que se hace potente y verstil
cuando se utilizan como uno solo.
El Servidor Web Apache, puede incorporar PHP como un mdulo propio del
servidor, lo que permite que las aplicaciones escritas en PHP resulten mucho ms
rpidas que las aplicaciones CGI habituales.

97 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Para usar PHP como lenguaje de desarrollo de Aplicaciones Web, la primera


necesidad que tenemos es saber cmo interactuar PHP con nuestro usuario
Web. Podemos dividir dicha interactuacin en dos partes, mostrando informacin
al usuario y recogiendo informacin de ste.
PHP es una alternativa a las tecnologas de Microsoft ASP, JSP, y dems
lenguajes de programacin para la Web.

10.4 Java Servlets


Los Servlets de Java son la propuesta de la tecnologa Java para el desarrollo de
Aplicaciones Web. Un Servlet es un programa que se ejecuta en un Servidor Web
generalmente en Apache Tomcat. Su uso se ha popularizado por generar pginas
web de forma dinmica a partir de los parmetros de la peticin que enve el
navegador web.
Los Servlets Java presentan una serie de ventajas sobre los CGI. stos son ms
portables, potentes, eficientes, fciles de usar, ms escalables y utilizan menos
recursos que un CGI.
El entorno donde se ejecutan, se arranca al iniciar el servidor, permaneciendo
durante toda la ejecucin del mismo. Para atender cada peticin no inicia un
nuevo proceso, sino un hilo, un proceso ligero de Java mucho ms rpido.
El siguiente ejemplo nos muestra la estructura bsica de un Servlet bsico que
maneja peticiones GET de HTTP (los Servlets tambin pueden manejar peticiones
POST).

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ServletBasico extends HttpServlet
{
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
// Disponemos del requerimiento para acceder a los datos de la
// peticin HTTP.
// Disponemos de la respuesta para modificar la respuesta HTTP
// que generar el Servlet.
PrintWriter out = response.getWriter();
// Podemos usar out para devolver datos al usuario
out.println(Hola Mundo Cruel!\n);
}
}

Para escribir un Servlet debemos escribir una clase de Java que extienda (por
herencia) la clase HttpServlet (o la clase ms genrica Servlet) y que sobrescriba
el mtodo service o alguno de los mtodos de peticin ms especficos (doGet,
doPost, etc.).

98 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

10.5 Java Server Pages (JSP)


Java Server Pages (JSP) es una tecnologa que permite mezclar HTML esttico
con HTML generado dinmicamente mediante cdigo Java embebido en las
pginas webs.
Cuando se programa Aplicaciones Web con CGI, gran parte de la pgina que
generan los CGI es esttica y no vara de ejecucin en ejecucin. Por su parte, la
parte variable de la pgina es realmente dinmica y muy pequea (Mateu, 2004,
p. 207).
Tanto los CGI como los Servlet nos obligan a generar la pgina por completo
desde nuestro cdigo de programa, dificultando as las tareas de mantenimiento,
diseo grfico, comprensin del cdigo, etc.
Los JSP, por otro lado, nos permiten crear las pginas fcilmente.

<!DOCTYPE HTML PUBLIC -//W3C//DTD HTML 4.0 Transitional//EN>


<HTML>
<HEAD>
<TITLE>Bienvenido UIGV.</TITLE>
</HEAD>
<BODY>
<H1>Bienvenido UIGV</H1>
<SMALL>Welcome,
< % out.println(Utiles.leerNombreDeCookie(request)); %>
</SMALL>
</BODY>
</HTML>

Como podemos ver en el ejemplo, una pgina JSP no es ms que una pgina
HTML donde, merced a unas marcas especiales < % y %>, podemos incluir
cdigo Java.
Esto presenta una serie de ventajas obvias: por un lado disponemos de
prcticamente las mismas ventajas que al usar Java Servlets; de hecho, los
servidores JSP traducen stos a Servlets antes de ejecutarlos.
Otro ejemplo simple de pgina JSP es la siguiente:

<HTML>
<BODY>
<H1>Bienvenido. Da: < %= fecha %> </H1>
<B>
<% if(nombre==null)
out.println(Nuevo Usuario);
else
out.println(Bienvenido de nuevo);
%>
</B>
</BODY>
</HTML>

99 Sistema a Distancia
Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Las pginas JSP normalmente tienen extensin .jsp y suelen colocarse en el


mismo directorio que los ficheros HTML. Como podemos ver, una pgina .jsp no
es ms que una pgina HTML en la que incrustamos trozos de cdigo Java,
delimitados por < % y %>. Las construcciones delimitadas por < % y %> pueden
ser de tres tipos:
- Elementos de script que nos permiten introducir un cdigo que formar parte
del Servlet que resulte de la traduccin de la pgina.
- Las directivas nos permiten indicar al contenedor de Servlets cmo queremos
que se genere el Servlet.
- Las acciones nos permiten especificar componentes que debern ser usados.
- Cuando el servidor/contenedor de Servlets procesa una pgina JSP, convierte
sta en un Servlet en el que todo el HTML que hemos introducido en la pgina
JSP es impreso en la salida, para a continuacin compilar este Servlet y
pasarle la peticin.

100 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Leccin 11: Acceso a Base de Datos

11.1 PostgreSQL
PostgreSQL es un sistema de gestin de bases de datos del tipo objeto-relacional
(ORDBMS) basado en el proyecto POSTGRES, de la universidad de Berkeley. El
actual director de este proyecto es el profesor Michael Stonebraker, y fue
patrocinado por DAROA (Defense Advanced Research Projects Agency, adems
Army Research Office (ARO) y la National Science Foundation (NSF).
PostgreSQL es una herramienta de software libre y utiliza el lenguaje
SQL92/SQL99, se trata de uno de los gestores de base de datos ms consistes,
estables y altamente escalables.
En 1996 se eligi un nuevo nombre que resistiera el paso de los aos y reflejara
la relacin del proyecto con el original Postgres (an disponible) y las nuevas
diferencias bsicamente, el uso de lenguaje SQL.
Las caractersticas ms destacadas de PostgreSQL que podemos citar son:
- Soporte para transacciones.
- Soporte para vistas
- Integridad referencial
- Herencia de tablas
- Tipos definidos por el usuario
- Soporte de objetos binarios grandes (mayores de 64 KB).
- Y muchas ms caractersticas tcnicas.
Fue el pionero en muchos de los conceptos existentes en el sistema objeto-
relacional incluido, ms tarde en otros sistemas de gestin comerciales.
PostgreSQL. A pesar de todo esto PostgreSQL no es un sistema de gestin de
bases de datos puramente orientado a objetos.
PostgreSQL compite con los gestores comerciales, haciendo de l una muy
buena alternativa, utiliza la licencia GPL y es comn ver a alguna aplicacin web
utilizando este gestor de base de datos.
Generalmente es muy usado combinando con los lenguajes de programacin
ejemplo C, C++, Java, Python, PHP, Java, JSP, etc.

11.2 MySQL
MySQL, al igual que PostgreSQL, son muy populares por los desarrolladores de
aplicaciones web. MySQL es un SGBD desarrollado por la empresa MySQL AB,
de origen sueco que lo desarroll bajo licencia de software libre, pero puede ser
adquirido con licencia comercial para ser incluido en proyectos no libres.
Actualmente pertenece a la empresa Oracle.
MySQL es un sistema gestor de base de datos extremadamente rpido. Aunque
no ofrece las mismas capacidades y funcionalidades que otras muchas bases de
datos, compensa esta pobreza de prestaciones con un rendimiento excelente que

101 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

hace de ella la base de datos de eleccin en aquellas situaciones en las que


necesitamos slo unas capacidades bsicas en una aplicacin.
Las funcionalidades ms destacadas de MySQL son:
- Soporte de transacciones.
- Soporte de replicacin.
- Librera para uso embebido.
- Bsqueda por texto.
- Proporciona sistemas de almacenamientos transaccionales y no
transaccionales.
- Las funciones SQL estn implementadas usando una librera altamente
optimizada y deben ser tan rpidas como sea posible. Normalmente no hay
reserva de memoria tras la inicializacin de consultas.
- El servidor est disponible como un programa separado para usar en un
entorno de red cliente/servidor. Disponible como biblioteca y puede ser
insertado o agregado en aplicaciones autnomas. Dichas aplicaciones pueden
usarse por s mismas o en entornos donde no hay red disponible.
MySQL se combina con muchos lenguajes de programacin como Java, Php;
python, ruby, Jsp, etc.

11.3 MariaDB
MariaDB es un gestor de base de datos derivado de MySQL con licencia GPL
versin 2. Su principal desarrollador es Michael Monty Widenius, quien
desarroll previamente MySQL.
MariaDB es totalmente compatible con MySQL y posee los mismos comandos,
interfaces, API y bibliotecas de MySQL. Adems tiene soporte NoSQL.
MariaDB tiene soporte y asistencia de la comunidad de Software Libre y est
abierto a los desarrolladores de software. Este gestor de base de datos incluye
motores de almacenamiento alternativo (Storage Engines), mejoras en las
optimizaciones del servidor y los nuevos parches de MySQL. Este gestor de base
de datos es una alternativa perfecta para MySQL

11.4 FirebirdSQL
FirebirdSQL es una base de datos de software libre surgida a partir de la versin
de cdigo libre de Interbase que la empresa Borland liber en el verano de 2000.
El primer objetivo que se marcaron los desarrolladores de FirebirdSQL fue
estabilizar el cdigo y eliminar multitud de bugs, as como aumentar el nmero de
plataformas en las que funcionaba la base de datos.
En la actualidad algunas de las funcionalidades ms destacadas son:
- Arquitectura de versiones que evita bloqueos entre lectores y escritores.
- Alerta de eventos para reaccionar a cambios en la base de datos.
- Tipos de datos muy ricos por ejemplo BLOBS.

102 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

- Procedimientos almacenados y triggers.


- Compatibilidad ANSI SQL-92.
- Integridad referencial.
- Transacciones.

103 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Leccin 12: Framework

Los framework constituyen un marco de trabajo que gua al programador en la


construccin de un programa. Es framework ofrece generalmente parte de una
biblioteca que hace las veces de nuevo zcalo para simplificar el acceso a las
funciones ms tiles. El framework impone una estructura a las aplicaciones, en
especial separando representacin de los datos, tratamientos y presentacin
[Gurin, 2005, p. 355].
El trmino framework se refiere a una estructura de software compuesta de
componentes personalizables e intercambiables para el desarrollo de una
aplicacin. As mismo, se puede considerar como una aplicacin genrica
incompleta y configurable a la que podemos aadirle los ltimos elementos para
construir una aplicacin concreta.
Un framework web podemos definirlo como un conjunto de componentes que
componen un diseo reutilizable que facilita y agiliza el desarrollo de Sistemas
Web.
Entre las caractersticas de un framework podemos mencionar:
Estar enfocado en un tema especfico y ser altamente reutilizable.
Incluye mltiples clases y componentes, cada una de las cuales provee una
abstraccin de un determinado concepto.
Describe cmo esas abstracciones trabajan en conjunto para resolver las
necesidades a las que da solucin.
Los componentes de un Framework son altamente reutilizable.

12.1 JSF
JSF es un framework para crear aplicaciones java basadas en el patrn MVC
(Modelo Vista Controlador). Forma parte del estndar J2EE, existen muchas
alternativas para crear la capa de presentacin y control de una aplicacin web
java, como el framework struts y Spring pero solo JSP forma parte del estndar.
Con JSF se puede construir interfaces de usuario en aplicaciones web, de esta
manera nos facilita el desarrollo de aplicaciones, separando las diferentes capas
de una arquitectura: presentacin, reglas de negocio y la base de datos.
JSF fue creado dentro del Java Community Process de SUN, en el que han
participado lderes de la industria como Oracle, BEA, IBM y muchas ms
empresas relacionadas a Java.
Tambin conocido por ser el framework oficial de SUN para el desarrollo de
aplicaciones web con 4 capas.
JSF ofrece un modelo de trabajo basado en componentes UI (user interface),
definidos por medio de etiquetas y XML, entre sus principales caractersticas
podemos citar:
a) Una arquitectura basada en el patrn MVC.

104 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

b) Asocia (de forma modular) cada componente grfico con los datos (beans
de respaldo).
c) Incluye la capa de control, definida de forma declarativa en archivos XML.
d) Validacin en cliente y en servidor.
e) Control de mensajes y roles.
Las principales implementaciones de JSF son: JSF Reference Implementation de
Sun Microsystems y MyFaces proyecto de Apache Software Foundation.

12.2 Ruby On Rails


Ruby on Rails o RoR es un framework de aplicaciones web basado en software
libre escrito en el lenguaje de programacin Ruby.
Con este framework se puede desarrollar aplicaciones web con base de datos de
acuerdo con el patrn de diseo arquitectnico MVC (Modelo Vista
Controlador).
Rails te da un entorno de desarrollo de Ruby. Para probarlo, solo se necesita de
una base de datos y un servidor web.
El framework se acopla perfectamente en cualquier tipo de aplicacin web,
adems trabaja con varios servidores web y bases de datos. Para el servidor web,
recomendamos Apache o lighttpd incluso suele venir con su propia
implementacin denominada WebRick. Para la base de datos, se puede usar
MySQL, PostgreSQL, SQLite, Oracle, SQL Server, DB2, o Firebird.
Es multiplataforma y funciona prcticamente en cualquier sistema operativo, pero
recomendamos alguno basado en Linux.
Ruby on Rails ha popularizado el uso de los framework por la simplicidad y poco
cdigo que utiliza al momento de realizar las aplicaciones con el framework.

12.3 Web2Py
Es un framework desarrollado en python basado software libre. Su principal
objetivo es dar soporte al desarrollo gil de aplicaciones web escalables, seguras
y portables enfocadas en bases de datos.
Web2py fue originalmente diseado como una herramienta de enseanza con
nfasis en la facilidad de uso y despliegue, no tiene ningn archivo de
configuracin a nivel de proyecto.
Es sencillo, de fcil uso y aprendizaje, como cualquier otro framework incluye el
patrn de diseo arquitectnico MVC, adems de plantillas, libreras en javascript,
ajax, hojas de estilo, etc. que lo convierten en una solucin completamente
funcional para crear aplicaciones Web 2.0 de manera totalmente interactiva
dividiendo el diseo y la programacin.
Web2py hace al desarrollo web rpido, fcil y ms eficiente, permite enfocarse en
la lgica del negocio y no en temas tcnicos triviales, adems se destacan estas
caractersticas:
- Instalacin muy simple, prcticamente sin configuracin.

105 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

- Intuitivo y con curva de aprendizaje muy baja.


- Ideal para ser enseado en el aula a nivel de principiantes.
- Su capa de abstraccin a la base de datos permite definir tablas sin necesidad
de clases complejas.
- Su lenguaje de consulta es muy cercano a SQL otorgando gran poder
declarativo y flexibilidad, en Python.
- Estructura slida todo incluido, incluyendo hasta ajax, mens, formularios,
caching, GAE, servicios web, etc.
- Diseo integrado, limpio y seguro.
Por las caractersticas de Python, web2py es menos verboso que los frameworks
desarrollados en Java, y su sintaxis tiende a ser ms limpia mucho ms que los
desarrollados en php.

12.4 Zend Framework


Zend es otro framework basado en software libre desarrollado ntegramente en
php, entre las principales caractersticas podemos citar:
- 100% orientado a objetos y sus componentes tienen un bajo acoplamiento por
lo que los puede ser utilizado de forma independiente.
- Cuenta con soporte para internalizacin y localizacin de aplicaciones.
- Cada componente est construido con una baja dependencia de otros
componentes, permitiendo a los desarrolladores utilizar los componentes por
separado.
El principal patrocinador del proyecto Zend Framework es Zend Technologies,
pero muchas empresas han contribuido con componentes o caractersticas
importantes para el framework.
Microsoft y Google se han asociado con Zend para proporcionar interfaces de
servicios web y otras tecnologas que desean poner a disposicin de los
desarrolladores de Zend Framework.
Existen muchos otros framework desarrollados en php, en este caso Zend
Framework est respaldado por la misma empresa que ha desarrollado el
lenguaje php.

106 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

RESUMEN

La unidad desarrollada describe la presentacin y aplicacin distribuida del


modelo de la arquitectura Web. Existiendo diversas variantes de la arquitectura de
las aplicaciones Web, de acuerdo como se implementen las diferentes
funcionalidades en la parte del servidor.
Se define los lenguajes de programacin, tales como: CGI, php, Java Servlets,
JSP como lenguajes para el desarrollo de aplicaciones Web.
As mismo, se describe los principales sistemas de gestin de Base de Datos,
tales como: PostgreSQL, MySQL, MariaDB y FirebirdSQL.
Al trmino de la unidad se explica de forma clara y sencilla en la definicin de un
framework para sistemas Web y de sus principales caractersticas.

107 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

LECTURA

XML: Transformando la Web en una Base de Datos

Autor: Marcelo Arenas

Una de las razones para la popularizacin de la Web ha sido el desarrollo de una


infinidad de pginas que entregan distintos servicios; buscadores como Yahoo y
Google, grandes repositorios de informacin como Wikipedia, tiendas electrnicas
como Amazon, diarios y revistas electrnicas, pgina personales, etc. Bajo este
desarrollo ha estado HTML, un lenguaje que permite estructurar tanto la
informacin como las posibilidades de navegacin en una pgina Web.
Durante los ltimos aos, la cantidad de informacin almacenada en la Web ha
ido creciendo de manera dramtica. Hoy ningn usuario tiene la capacidad de
recorrer la Web entera en busca de informacin, y es necesario utilizar
buscadores automticos como Yahoo! y Google para poder revisar una fraccin
significativa de esta red.
Nadie puede negar la importancia y utilidad que tienen los buscadores para
encontrar informacin en la Web. Sin embargo, muchos usuarios pueden de-cir
que su experiencia con ellos no ha sido completamente satisfactoria. A medida
que las consultas que se quiere realizar son ms complejas, la bsqueda de
informacin puede requerir de varios, o muchos, intentos en los cuales es
necesario jugar con distintos parmetros. Piense por ejemplo en la consulta d la
lista de libros de Ariel Rubinstein. Para realizar esta consulta basta con poner
Ariel Rubinstein en un buscador y usar los primeros elementos de la lista de
respuesta (probablemente el primero) para encontrar la pgina de este autor, y
ah la lista de sus libros. Pero ahora piense en la pregunta d la lista de libros de
Ariel Rubinstein y sus precios. Qu colocara en un buscador para encontrar la
respuesta? Peor an, piense en una pregunta como la siguiente d la lista de
libros de Ariel Rubinstein que han bajado de precio en los ltimos aos. Cmo
se puede buscar esta informacin usando Yahoo o Google?
Por qu los buscadores tienen dificultades en los ejemplos anteriores? Una de
las razones es el uso de HTML; este es un lenguaje que permite desplegar
informacin que es fcil de entender para los usuarios, pero que en general es
difcil de interpretar para los computadores. Estas dificultades ya pueden verse en
ejemplos tan sencillos como el siguiente:
<html>
<body bgcolor="#FFFFFF">
<center>
<h2> Todo Libros </h2>
</center>
<ul>
<li><b>Teor&iacute;a de Juegos.</b>
Martin Osborne y Ariel Rubinstein. Precio: 16000.</li>
</ul>
</body>
</html>

108 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

Este archivo es usado para mostrar la lista de libros vendidos por la librera Todo
Libros. Ntese que este archivo ha sido indentado (espaciado) de manera que
sea fcil visualizar la estructura jerrquica del documento. Por ejemplo, <li>
corresponde a un tem en la lista definida por <ul>. En un browser tal como
FireFox o Explorer, esta lista ser desplegada de la siguiente forma:

Todo Libros
Teora de Juegos. Martin Osborne y Ariel Rubinstein.
Precio: 16000.

Para un usuario la informacin en esta lista es fcil de entender; es claro que hay
una lista de libros, cada uno con sus autores y su precio. Sin embargo, para un
computador esta informacin no es tan clara. Una de las razones es que el
computador no tiene la informacin de contexto, o metainformacin, que tiene el
usuario. Cmo puede un computador deducir que est frente a una lista de
libros? Y aun si sabe esto, cmo puede extraer informacin desde el documento,
por ejemplo los precios de los libros? Es importante notar aqu que el documento
HTML no tiene ninguna indicacin sobre dnde buscar esta informacin,
simplemente dice cmo debe ser desplegada la lista de libros. As, el computador
debe tratar de interpretar el texto para poder extraer la lista de precios. Por
ejemplo, puede buscar la palabra Precio y el nmero que lo sigue (o antecede).
Aunque en este caso esto puede dar buenos resultados, la situacin puede
volverse ms complicada si la lista contiene varios precios para un mismo libro
(precio sin descuento, con descuento por compra electrnica, con descuento a
clientes frecuentes, etc.), o aun ms complicada si se requiere de hacer algunos
clculos para saber el precio final (precio despus del 15% de descuento por
compra electrnica).
La bsqueda de informacin en la Web puede mejorarse si los formatos usados
para almacenar informacin pueden ser fcilmente interpretados por los
computadores. Una propuesta para hacer esto es el uso de XML.

Cmo funciona la Web


Centro de Investigacin de la Web
Departamento de Ciencias de la Computacin
Universidad de Chile
Pp. 75-78

109 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

AUTOEVALUACIN

1. La aplicacin distribuida por el cliente, est conformado por:


a. Presentacin Lgica de Datos Gestin de Datos
b. Lgica de presentacin Lgica de Negocio Lgica de Datos
c. Lgica de presentacin Lgica de Negocio Gestin de Datos
d. Presentacin Lgica de presentacin Lgica de Negocio
e. Presentacin Lgica de Negocio Lgica de Datos

2. La arquitectura de la aplicacin todo en un solo servidor est


compuesto por una arquitectura de:
a. 02 capas
b. 03 capas
c. 04 capas
d. 05 capas
e. 06 capas

3. Es un lenguaje rpido, interpretado, orientado a objetos y


multiplataforma:
a. CGI
b. Html
c. Javascript
d. Php
e. XML

4. Es una herramienta de software libre y utiliza el lenguaje SQL92/SQL99:


a. SQL Server
b. MySQL
c. Oracle
d. PostgreSQL
e. MariaDB

5. De las siguientes definiciones de framework cul es la correcta?:


a. El trmino framework se refiere a varios componentes personalizables e
intercambiables para el desarrollo de un API.
b. El trmino framework se refiere a una estructura de elementos compuesto
de componentes intercambiables para el desarrollo de una pgina Web.
c. El trmino framework se refiere a una estructura de software compuesta de
componentes personalizables e intercambiables para el desarrollo de una
aplicacin.
d. El trmino framework se refiere a una aplicacin genrica completa y no
configurable a la que podemos aadirle los ltimos elementos para
construir una aplicacin.
e. El trmino framework se refiere a una estructura de aplicaciones donde se
juntan la representacin de los datos, tratamientos y presentacin.

110 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

6. Ofrece un modelo de trabajo basado en componentes UI:


a. XML
b. html
c. http
d. jsf
e. Servlet

7. Es un framework para crear aplicaciones java basadas en el patrn MVC:


a. Ruby on Rails
b. jsf
c. zend
d. Web2py
e. Ajax

8. Ruby on Rails es un framework escrito en el lenguaje de programacin:


a. php
b. asp
c. javascript
d. ruby
e. html

9. Web2Py es un framework escrito en el lenguaje de programacin:


a. jsp
b. python
c. C++
d. css
e. java

10. Zend es un framework escrito en el lenguaje de programacin:


a. php
b. asp
c. python
d. jsp
e. ruby

111 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

RESPUESTAS DE CONTROL

1. d 2. c 3. d 4. d 5. c 6. d 7. b 8. d 9. b 10. a

112 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

EJERCICIOS PROPUESTOS

1. Implementar un Servidor Web con soporte para JSP utilizando apache


Tomcat.
2. Realizar una aplicacin Web utilizando Base de Datos (MySQL, Postgresql o
MariaDB) permitiendo ingresar, modificar, consultar y eliminar datos.
3. Realizar una aplicacin Web utilizando un framework.

113 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

EXPLORACIN ON LINE

URL: http://php.net/manual/es/index.php
Manual oficial de desarrollo del lenguaje de programacin PHP
URL: http://www.oracle.com/technetwork/java/javaee/jsp/index.html
Sitio oficial de JSP, donde se publican las ltimas versiones del framework
adems pueden encontrar documentacin.
URL: http://www.postgresql.org.es/documentacion
En este sitio encontrar informacin official del gestor de base de datos
PostGreSQL en espaol, adems de libros, descargas y foros que discuten el
uso y desarrollo.
URL: http://php.net/manual/es/book.mysql.php
Documentacin oficial php con mysql sobre las funciones que se utilizan para
generar aplicaciones web con esta solucin
URL: http:/ downloads.mysql.com/docs/refman-5.0-es.a4.pdf
Manual oficial de Mysql para la versin 5.0 en espaol
URL: http://kb.askmonty.org/es/mariadb
Documentacin oficial del gestor de base de datos MariaDB en espaol
URL: http://www.firebird.com.mx/modules/mydownloads/
Documentacin en espaol sobre el gestor de base de datos firebird

114 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

REFERENCIA BIBLIOGRFICA

Berzal, F., Cubero, J.C. y Cortijo, F.J. (2009) Desarrollo Profesional de


Aplicaciones Web con ASP.NET. Madrid:
iKor Consulting
Cancelo, P. y Giraldez, J. A. (2007) La tercera Revolucin. La Corua:
Editorial NetBiblio, S.L.
Castelo, A. (2010) Estrategias Empresariales en la
Web 2.0. Las redes sociales Online.
Alicante: Editorial Club Universitario.
Guerin, Brice-Arnaud (2005) Lenguaje C++. Programacin Unix
& Windows Standard Template Library.
Ediciones ENI
Mateu, C. (2004) Desarrollo de Aplicaciones Web.
Barcelona: Eureca Media, SL

115 Sistema a Distancia


Tecnologas Web (E) - Unidad III Daniel Yucra S. / Santiago Gonzles S.

BIBLIOGRAFA COMENTADA

- Coulouris, G., Dollimore, J., & Kindberg, Tim (2007) Sistemas Distribuidos
Conceptos y Proyecto 4ta Edicin. Madrid: Addison Wesley.
Puede revisar la Unidad 1 y 2, sobre los modelos de arquitectura de los
sistemas distribuidos.
- Fernndez, D. (2004) Arquitectura web en aplicaciones Java/j2ee. Madrid:
IberLibro.
Revisar las unidades 1 y 2 sobre las arquitecturas de 4 capas en N niveles,
adems de la arquitectura de las aplicaciones JSP, Servlet y framework
basados en esta tecnologa.
- Barranco, J. (2001) Metodologa del anlisis estructurado de sistemas. Madrid:
Universidad Pontificia.
Revisar el captulo 9, sobre el estudio de una arquitectura de software adems
de las caractersticas de arquitectura de una aplicacin web en la pgina 284
- Mateu, C. (2004) Desarrollo de Aplicaciones Web. Barcelona: Eureca Media,
SL.
Revisar la unidad 5 sobre el desarrollo de Contenido dinmico con los CGI,
PHP y JSP. Adems de la unidad 6 sobre el acceso a base de datos utilizado
JDBC.

116 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

CUARTA UNIDAD

Fundamentos de Seguridad Web y Aplicaciones Empresariales

Sumario

La presente unidad describe las consideraciones elementales para la Seguridad


en la Web y los tipos de acceso utilizados.
Se define el uso del Protocolo de comunicacin cifrado, denominado https y
Protocolo de seguridad para la realizacin de transacciones seguras, como por
ejemplo el Comercio Electrnico.
Se muestra una lista de aplicaciones Web Empresariales desarrollado en
Software Libre, que se ofrecen como propuesta para los Sistemas de Gestin
Empresarial.
Finalmente se describe el caso del Sistema Operativo EyeOS, una aplicacin
desarrollada en entorno Web.

117 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

Objetivos

Al finalizar esta unidad, el estudiante ser capaz de:

Reconocer las principales medidas de seguridad para un Servidor Web.


Conceptualizar los protocolos de Seguridad en aplicaciones Web, como https y
set.
Identificar aplicaciones Web desarrolladas en Software Libre, como alternativa
a las soluciones desarrollados en Software Privativo.
Contar con las nociones del funcionamiento del Sistema Operativo Web
EyeOS.

118 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

Leccin 13: Seguridad en la Web

13.1 Consideraciones en la seguridad en la web


La World Wide Web trabaja en una arquitectura cliente/servidor que se ejecuta en
Internet, Intranet y Extranet, utilizando el protocolo TCP/IP. Como tal, las
herramientas de seguridad y los enfoques discutidos anteriormente en este
documento son importantes para la seguridad de la web. La web presenta nuevos
retos que generalmente no se aprecian en el contexto de la seguridad de los
ordenadores y la red:
- Internet en bidireccional. Al contrario que los entornos de publicacin
tradicionales, incluso los sistemas de publicacin electrnica que hacen uso
de teletexto, respuesta de voz o respuesta de fax, la web es vulnerable a los
ataques a los servidores web desde Internet.
- La Web se emplea cada vez ms para presentar informacin de empresas y
de productos y como plataforma para transacciones de negocios. Se puede
perjudicar la imagen y ocasionar prdidas econmicas si se manipulan de la
forma incorrecta los servidores web.
- Aunque los navegadores web son fciles de usar, los servidores relativamente
sencillos de configurar y gestionar y los contenidos web cada vez ms fciles
de desarrollar, el software subyacente es extraordinariamente complejo. ste
puede ocultar muchos posibles fallos de seguridad.
- La corta historia de la web est llena de ejemplos de sistemas nuevos y
actualizados constantemente, instalados de manera adecuada, que son
vulnerables a una serie de ataques a la seguridad.
- Un servidor web puede utilizarse como plataforma de acceso a todo el
complejo de ordenadores de una empresa. Una vez comprometida la
seguridad del servidor web, un atacante podra tener acceso a datos y
sistemas fuera del propio servidor pero que estn conectados a ste en el sitio
local.
Habitualmente, los clientes de servicios basados en la web son usuarios
ocasionales y poco preparados (en lo que a seguridad se refiere). Estos usuarios
no tienen por qu ser conscientes de los riesgos que existen y no tienen las
herramientas ni los conocimientos necesarios para tomar medidas efectivas.
A continuacin una lista de amenazas sus consecuencias y medidas que se
deben aplicar.
Amenazas Consecuencias Contramedidas
Integridad Modificacin de datos de Prdida de Suma de
usuarios informacin comprobacin
Navegador caballo de Mquina en (checksum)
Troya peligro criptogrfica
Modificacin de memoria. Vulnerabilidad al
Modificacin del trfico resto de
del mensaje en trnsito amenazas

119 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

Confidencialidad Escuchas ocultas en la Prdida de Cifrado, proxy


red informacin web
Robo de informacin del Prdida de
servidor privacidad
Robo de datos del cliente
Informacin sobre la
configuracin de la red
Informacin sobre que
cliente se comunica con
el servidor
Denegacin de Interrupcin de procesos Destructivo Difcil de
servicios del usuario Molesto prevenir
Inundar la mquina con Impide que los
amenazas fraudulentas usuarios finalicen
Llenar el espacio de su trabajo
disco o la memoria
Alistar la mquina
mediante ataques de
DNS
Autentificacin Suplantacin de usuarios Falsificacin de Tcnicas
legtimos usuario criptogrficas
Falsificacin de datos Creer que la
informacin falsa
es vlida

Tabla 4.1. Comparacin de amenaza en la web


Fuente: Stalling, W (2003) Fundamentos en Seguridad en Redes.

Una manera de clasificar las amenazas a la seguridad de la web es en funcin de


la ubicacin de las amenazas: servidor web, navegador web y trfico de red entre
navegador y servidor. Los aspectos referentes a la seguridad del servidor y del
navegador se enmarcan dentro de la categora de los sistemas de computadoras.
(Stallings, 2003, p. 226).
A continuacin los diferentes protocolos de internet y ubicacin de los protocolos
de seguridad para la World Wide Web:

Figura 13.1: Ubicacin relativa de las herramientas de seguridad en la pila de protocolos


TCP/IP
Fuente: Stallings, W. (2000) Fundamentos de seguridad en redes (Segunda Edicin). P.
226.

120 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

13.2 Control de Acceso al Servidor Web


La mayora de los servidores web modernos nos permiten controlar todo desde el
mismo servidor web los aspectos relacionados con la seguridad y la autenticacin
de los usuarios.
En este sentido el modo ms simple de control es el proporcionado por el uso de
ficheros .htaccess. ste es un sistema de seguridad que proviene de uno de los
primeros servidores web (del NCSA httpd), que consiste en poner un fichero de
nombre .htaccess en cualquier directorio del contenido web que se vaya a servir,
indicando en este fichero qu usuarios, mquinas, etc., tienen acceso a los
ficheros y subdirectorios del directorio donde est el fichero.
Como el servidor de NCSA fue el servidor ms usado durante mucho tiempo, la
mayora de servidores en la actualidad ha heredado este mecanismo y permiten
utilizar el fichero .htaccess respetando la sintaxis del servidor de NCSA.
En algunos casos los otros servidores permiten especificar reglas de servicio de
directorios y ficheros en la configuracin del servidor web, indicando all qu
usuarios, mquinas, puertos, etc., pueden acceder al recurso indicado.
Por lo que respecta a la autenticacin es decir validacin del nombre de usuario y
contrasea proporcionados por el cliente, las prestaciones ofrecidas por los
diversos servidores web son de lo ms variado y cada una posee mecanismos de
autentificacin en diferentes niveles e incluso a nivel de aplicacin.
Como mnimo, proporcionan al servidor web un fichero con nombres de usuario y
contraseas luego puede ser validad por el servidor. Por otro lado es frecuente
que los servidores proporcionen pasarelas que permitan delegar las tareas de
autenticacin y validacin a otro software. Por ejemplo sistemas Radius y Ldap. Si
usamos un sistema operativo como GNU/Linux, que dispone de una
infraestructura de autenticacin como PAM (pluggable authentication modules),
podemos usar esta funcionalidad como modo de autenticacin del servidor web,
permitindonos as usar los mltiples mtodos disponibles en PAM para
autenticar contra diversos sistemas de seguridad.
Un fichero .htaccess (hypertext access), tambin conocido como archivo de
configuracin distribuida permite definir diferentes directivas de configuracin para
cada directorio.
Para proceder a crear archivo .httaccess, se debe crear un fichero con el mismo
nombre en cada directorio cuyos ficheros requieran proteccin.
Por ejemplo:
AuthUserFile /home/juan/usuarios
AuthGroupFile /home/juan/grupos
AuthName ByPassword
AuthType Basic
<LIMIT GET POST>
requiere user juan
allow from .uigv.edu.pe
deny from .hackers.uigv.edu.pe
</LIMIT>

121 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

Como se puede ver, el control de acceso afecta a todos los ficheros del directorio
protegido. Se puede conceder o denegar el acceso en funcin de direcciones IP,
en cuyo caso se utilizara un fichero de control de acceso de la forma (all equivale
a cualquier peticin):

<Limit GET POST>


deny from all
allow from pc1.usuarios.uigv.edu.pe
</Limit>

Adems, NCSA soporta los sistemas de autentificacin bsico (en el que las
claves circulan de forma visible por la red) o MD5 (que aade una codificacin a
estas claves). Los ficheros de usuarios y claves se crean con la aplicacin
htpasswd, que permite editar un fichero de claves (similar al passwd de UNIX):

htpasswd c /users/luis/usuarios juan

Ahora se tecleara la clave de acceso para Juan, de esta manera queda restringir
el acceso a directorios, tambin puede restringir el acceso a IPs o ISPs incluso
puede crear URL amigables.

122 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

Leccin 14: Protocolos de Seguridad para la Web

14.1 Protocolo de comunicacin cifrado (HTTPS)


Para comunicarse con el servidor web que contiene informacin sensible es
recomendable usar protocolos que utilicen cifrado. El ms utilizado es el HTTPS
(HTTP seguro), que usa un cifrado en la comunicacin, a diferencia del protocolo
HTTP, en que la informacin circula visible, por lo cual con un detector o sniffer se
puede ver toda la sesin.
En aplicaciones como de correo electrnico va web, transacciones electrnicas,
informacin privada sensible en la web, es recomendable instalar el mdulo
HTTPS.
De acuerdo a Colobran, M. (2008): El HTTPS es una versin cifrada de HTTP,
implementada por medio de estndares como SSL/TLS. La conexin cifrada se
lleva a cabo simplemente con una conexin HTTP ordinaria por encima de una
conexin SSL cifrada. Por lo dems HTTPS y HTTP son iguales (p. 203)
El puerto estndar de conexin HTTPS es el 443.

Figura 14.1: Ubicacin del protocolo HTTPS

HTTPS utiliza el protocolo de seguridad SSL (secure socket layer) para cifrar y
autenticar el trfico entre cliente y servidor, siendo sta muy usada por los
servidores web de comercio electrnico, as como por aquellos que contienen
informacin personal o confidencial.

14.2 Protocolo de seguridad para transacciones seguras (SET)


SET (Secure Electronic Transaction; en espaol, Transaccin Electrnica Segura)
es un protocolo desarrollado por Visa y Mastercard y que utiliza el estndar SSL
(Secure Socket Layer).
El estndar SET (Secure Electronic Transaction) fue desarrollado en 1995 por
Visa y MasterCard, con la colaboracin de gigantes de la industria del software,
como Microsoft, IBM y Netscape. La gran ventaja de este protocolo es que ofrece
autenticacin de todas las partes implicadas (el cliente, el comerciante y los
bancos, emisor y adquiriente); confidencialidad e integridad, gracias a tcnicas
criptogrficas robustas, que impiden que el comerciante acceda a la informacin
de pago (eliminando as su potencial de fraude) y que el banco acceda a la
informacin de los pedidos (previniendo que confeccione perfiles de compra); y

123 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

sobre todo gestin del pago, ya que SET gestiona tareas asociadas a la actividad
comercial de gran importancia, como registro del titular y del comerciante,
autorizaciones y liquidaciones de pagos, anulaciones, etc. (Revista IDEA, 2000, p.
52)
SET se basa en el uso de una firma electrnica del comprador y una transaccin
que involucra, no slo al comprador y al vendedor, sino tambin a sus respectivos
bancos.
Segn Espaa (2003), "En un entorno interactivo se asume que exista un proceso
de iniciacin que activa el protocolo SET. Este proceso permite a las partes
comerciantes (comprador y comerciante) intercambiarse informacin requerida
para ejecutar correctamente el protocolo, como por ejemplo, las marcas de
tarjetas aceptadas, una descripcin del pedido, la suma a la que este asciende,
etc. En la especificacin del protocolo SET no se describe el proceso de
iniciacin; no obstante, se define unos mensajes de iniciacin susceptibles de
emplearse en dicho proceso. Estos mensajes son los siguientes: iniciacin de
registro, iniciacin de consulta de registro, iniciacin de pago y iniciacin de
consulta de pago" (p. 659).
Cuando se realiza una transaccin segura por medio de SET, los datos del cliente
son enviados al servidor del vendedor, pero dicho vendedor slo recibe la orden.
Los nmeros de la tarjeta del banco se envan directamente al banco del
vendedor, quien podr leer los detalles de la cuenta bancaria del comprador y
contactar con el banco para verificarlos en tiempo real.
El protocolo SSL (iWorld, nmero de julio/agosto 1999, Seguridad con SSL),
actualmente es el ms utilizado y ms extendido en Internet que SET, no fue
diseado para interacciones entre mltiples partes, como las transacciones
comerciales, que pueden llegar a involucrar hasta seis partes. SSL se limita a
cifrar el nmero de tarjeta de crdito cuando es transmitido desde el navegador
del cliente hasta el servidor del comerciante, resultando insuficiente para los
requisitos de seguridad de un comercio electrnico fiable.
Esta situacin no se poda mantener por ms tiempo, por lo que en 1995 Visa y
MasterCard, con la colaboracin de otras compaas lderes en el mercado de las
tecnologas de la informacin, como Microsoft, IBM, Netscape, RSA, o VeriSign,
unieron sus fuerzas para desarrollar Secure Electronic Transaction (SET), un
protocolo estandarizado y respaldado por la industria, diseado para salvaguardar
las compras pagadas con tarjeta a travs de redes abiertas, incluyendo Internet.
El protocolo SET ofrece una serie de servicios que convierten las transacciones a
travs de Internet en un proceso seguro y fiable para todas las partes implicadas:
Autenticacin: todas las partes involucradas en la transaccin econmica (el
cliente, el comerciante y los bancos, emisor y adquiriente) pueden verificar
mutuamente sus identidades mediante certificados digitales. De esta forma, el
comerciante puede asegurarse de la identidad del titular de la tarjeta y el
cliente, de la identidad del comerciante. Se evitan as fraudes debidos a usos
ilcitos de tarjetas y a falsificaciones de comercios en Internet (web spoofing),
que imitan grandes web comerciales. Por su parte, los bancos pueden
asimismo comprobar la identidad del titular y del comerciante.
Confidencialidad: la informacin de pago se cifra para que no pueda ser
espiada mientras viaja por las redes de comunicaciones. Solamente el nmero

124 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

de tarjeta de crdito es cifrado por SET, de manera que ni siquiera el


comerciante llegar a verlo, para prevenir fraudes. Si se quiere cifrar el resto
de datos de la compra, como por ejemplo qu artculos se han comprado o a
qu direccin deben enviarse, debe recurrirse a un protocolo de nivel inferior
como SSL.
Integridad: garantiza que la informacin intercambiada, como el nmero de
tarjeta, no podr ser alterada de manera accidental o maliciosa durante su
transporte a travs de redes telemticas. Para lograrlo se utilizan algoritmos
de firma digital, capaces de detectar el cambio de un solo bit.
Intimidad: el banco emisor de la tarjeta de crdito no puede acceder a
informacin sobre los pedidos del titular, por lo que queda incapacitado para
elaborar perfiles de hbitos de compra de sus clientes.
Verificacin inmediata: proporciona al comerciante una verificacin
inmediata, antes de completarse la compra, de la disponibilidad de crdito y de
la identidad del cliente. De esta forma, el comerciante puede cumplimentar los
pedidos sin riesgo de que posteriormente se invalide la transaccin.
No repudio para resolucin de disputas: la mayor ventaja de SET frente a
otros sistemas seguros es la adicin al estndar de certificados digitales
(X.509v3), que asocian la identidad del titular y del comerciante con entidades
financieras y los sistemas de pago de Visa, MasterCard, etc. Estos certificados
previenen fraudes para los que otros sistemas no ofrecen proteccin, como el
repudio de una transaccin (negar que uno realiz tal transaccin),
proporcionando a los compradores y vendedores la misma confianza que las
compras convencionales usando las actuales redes de autorizacin de
crditos de las compaas de tarjetas de pago.
El pago mediante tarjeta es un proceso complejo en el cual se ven implicadas
varias entidades:
El banco emisor: emite la tarjeta del cliente, extiende su crdito y es
responsable de la facturacin, recoleccin y servicio al consumidor. En el
artculo 46 de la Ley de Comercio Minorista se establece que cuando el
importe de una compra hubiese sido cargado utilizando el nmero de una
tarjeta de crdito, sin que sta hubiese sido presentada directamente o
identificada electrnicamente (por ejemplo por un hacker que rob el nmero
en Internet), su titular podr exigir la inmediata anulacin del cargo.
El banco adquiriente: forma relacin con el comerciante, procesando las
transacciones con tarjeta y las autorizaciones de pago.
El titular de la tarjeta: posee la tarjeta emitida por el banco emisor y realiza y
paga las compras.
El comerciante: vende productos, servicios o informacin y acepta la
transaccin.

14.3 Certificados Digitales


Conocido tambin como certificado de clave pblica o certificado de identidad, se
trata de un documento digital mediante el cual un tercero confiable (una autoridad
de certificacin) garantiza la vinculacin entre la identidad de un persona o

125 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

organizacin utilizando un nombre, direccin y otros aspectos de identificacin y


una clave pblica.
Los navegadores web saben que es seguro mediante certificados digitales. Hay
organismos como el CA (Autoridad Certificadora) que certifican a empresas o
personas y estos certificados se almacenan en nuestro navegador, de tal manera
que cuando entramos a una web, nuestro navegador se valida con el certificado
del servidor web y cifra la comunicacin.
Para que un certificado digital tenga validez legal, el prestador de Servicios de
Certificacin debe acreditarse en cada pas de acuerdo a la normativa que cada
se defina, en el caso peruano el responsable es el Instituto Nacional de Defensa
de la Competencia y de la Proteccin de la Propiedad Intelectual. Actualmente las
empresas usan prestigiosas empresas internacionales para que les provea los
certificados digitales.
Para entender mejor, ingresamos al sitio de pagos Paypal (URL:
http://www.paypal.com), en ese momento el certificado que hay en ese servidor
manda a nuestro navegador de manera transparente al usuario, como informacin
acerca de ese certificado y nuestro navegador lo valida. Entonces se establece
entre ellos una comunicacin segura y cifrada.
Si hacemos doble clic sobre el candado dorado del sitio web de paypal, podremos
ver la informacin del certificado:

Figura 14.2: Certificado Digital de paypal

Luego, si hacemos un clic informacin del certificado aparece la empresa que lo


emite y ms detalles del certificado:

126 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

Figura 14.3: Detalles del Certificado Digital

En ocasiones podemos navegar y ver que al acceder a un sitio web, nos pregunta
si queremos aceptar este certificado. Cuando un servidor web de una pgina hace
esto, quiere decir que no es un certificado legal emitido por una CA oficial, pero
esto no significa que no sirva para encriptar nuestras comunicaciones hacer
seguras. Cuando ocurre esto debemos tener claro cul es el origen del mismo, ya
que si no es de nuestra confianza no debemos decirle que si acepte, ya que
entonces nuestro navegador adquiere ese certificado y lo valida como bueno y
esto nos puede lleva a estafas.
Lo que ocurre es que solicitar un certificado digital no es gratuito y muchas
empresas se crean su propia CA para crear con ella sus propios certificados.
Estos se los dan a los usuarios para que los carguen en su navegador para que
de esta manera no nos diga que no es un certificado valido y registrado.

127 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

Leccin 15: Aplicaciones Web Empresariales

15.1 OpenBravo
Es un sistema de gestin empresarial integrado (ERP) que integra procesos de
negocio. Es una herramienta empresarial basada en software libre y trabaja en un
entorno web, que ofrece una propuesta de valor radicalmente distinta,
proporcionando por otros sistemas de gestin empresarial.
El sistema est orientado a pequeas y medianas empresas que buscan una
solucin integrada de gestin empresarial de su negocio, que les permita una
completa administracin de sus operaciones diarias, la optimizacin de los
procesos operativos, el aumento de la satisfaccin de sus clientes y, en definitiva,
un incremento de su rentabilidad.
Desarrollado bajo el modelo MVC (Modelo Vista Controlador), lo que facilita el
desacoplamiento de las reas de desarrollo, posee mdulos SCM, CRM, logstica,
ventas, gestin de servicios, proyectos, puntos de venta y mucho ms.
Openbravo ERP ha sido implantado con xito en compaas de distinto tamao, y
de sectores y actividades muy diversas. Todo ello ha sido posible gracias a la red
cualificada de Partners a los que Openbravo ofrece la oportunidad de desarrollar
un negocio realmente diferenciado.
El sitio oficial de OpenBravo es: http://www.openbravo.com

15.2 OpenERP
OpenERP es una potente herramienta para la planificacin y gestin de los
recursos empresariales, en entorno web. Desde el punto de vista tcnico y
funcional est preparada para trabajar en casi cualquier proceso de negocio, en
donde se precise dar respuesta a las reas: Gestin Logstica y de
aprovisionamientos, Gestin comercial y Marketing, Gestin de proyectos,
Gestin de la Produccin y Gestin Econmico-Financiera.
Todo ello en un entorno multi es decir, es multi-empresa, multi-idioma, multi-
plataforma,.
Bajo modelo de software libre, la adaptacin y personalizacin a las necesidades
de cada proceso de negocio est siempre garantizada, al tiempo que este modelo
de desarrollo colaborativo, ha propiciado su crecimiento a nivel mundial, y su
rapidsima integracin con distintas plataformas
El sitio oficial de Open ERP es: http://www.openerp.com/es

15.3 Intalio BPM


Intalio BPM (Business Process Manager) es un sistema de gestin y
automatizacin de procesos de negocio, basado en software libre y desarrollado
ntegramente en eclipse con el lenguaje de programacin Java. Est construido
en torno a las normas basadas en BPMN (Business Process Modeling Notation) y
BPEL (Business Process Execution Language). Proporciona todos los

128 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

componentes necesarios para el diseo, despliegue y gestin en cualquier


proceso de negocio.
Intalio permite modelar, disear, implementar, simular, ejecutar y mejorar
procesos de negocios en un entorno web basado en estndares como XML,
WSDL, SOAP, XPDL y BPEL. El proceso automatizado es una aplicacin web
donde interactan los usuarios.
El sitio oficial de Intalio es: http://www.intalio.com

15.4 Pentaho (Business Intelligence)


Pentaho es una herramienta de Business Intelligence desarrollada bajo la filosofa
del software libre para la gestin y toma de decisiones empresariales y trabaja en
entorno completamente web. Est compuesta de diferentes programas que
satisfacen los requisitos de la Inteligencia de Negocios. Entre los mdulos
podemos destacar la gestin y anlisis de la informacin, incluyendo el anlisis
multidimensional con OLAP, presentacin de informes, minera de datos y
creacin de cuadros de mando para el usuario.
La plataforma ha sido desarrollada bajo el lenguaje de programacin Java,
haciendo as que Pentaho sea una solucin muy flexible al cubrir una alta gama
de necesidades empresariales.
Los productos destacados ofertados en la Suite de Business Intelligence son los
siguientes: Pentaho Data Integration, pentaho Analisys Services, Pentaho
Reporting, Pentaho Data Mining y Pentaho DashBoard.
El sitio oficial de Pentaho http://www.pentaho.com/

15.5 OS-Commerce (Comercio Electrnico)


Se trata de una aplicacin web basada en software libre que te permite montar
una tienda virtual rpidamente y ofrecer productos para vender en Internet.
Desarrollado en php y mysql, ha tenido un gran xito sobre todo para las
empresas que inician en el mundo del comercio electrnico.
Consta de dos partes principalmente el front y el back-end, es decir, la parte que
vemos todo el mundo, la tienda virtual en s, y la parte de administracin, donde
podrs mantener su propia tienda virtual, actualizando productos, insertando
nuevas ofertas, categoras, idiomas, monedas, consultar los pedidos, los clientes
y sin coste ninguno por parte del vendedor y sin necesidad ninguna de saber
programacin.
Es uno de los sistemas que constantemente est siendo actualizada por su
comunidad, aadiendo contribuciones de todo tipo. Mdulos de pago, de envo,
contribuciones para el diseo, como templates, as como nuevas funcionalidades,
noticias, lector de rss y mucho ms.
En la actualidad las empresas de Hosting ofrecen una solucin con Os-Commerce
ya instalada, aunque es realmente fcil instalar.
El sitio oficial de de OS-Commerce es: http://www.oscommerce.com/

129 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

15.6 Liferay (Gestin de contenidos java)


Liferay es un portal de gestin de contenidos basada en la filosofa del software
libre escrito en Java. Se ejecuta en la mayora de los servidores de aplicaciones y
contenedores de servlets, base de datos y sistemas operativos, con ms de 700
combinaciones posibles. Construido dentro del Sistema de manejo de contenido
(CMS) y Suite Colaborativa y pginas personalizadas para todos los usuarios.
Liferay ha servido para crear entornos colaborativos on-line. Actualmente est
respaldado por una extensa red de servicios profesionales que ofrece desarrollos
a medida, soporte y capacitacin.
Liferay ofrece una arquitectura de temas o plantillas, que permite llevar a cabo
cambios en la apariencia del portal sin cambiar el cdigo fuente. Es posible
desplegar nuevos temas sin necesidad de tener que detener la ejecucin al portal.
El sitio oficial de Liferay es: http://www.liferay.com/es/

15.7 Alfresco (Sistema de gestin documental)


Sistema de gestin de contenido empresarial basado en software libre que incluye
la gestin de documentos, la gestin de contenidos empresarial. Alfresco
desarrolla, comercializa y pone a disposicin de los usuarios dos versiones, o
ediciones, del producto Alfresco ECM:
- Alfresco Community (edicin comunitaria de Alfresco): 100% cdigo abierto,
de descarga y uso gratuitos.
- Alfresco Enterprise (edicin empresarial de Alfresco): de cdigo abierto, con
asistencia comercial y ampliaciones empresariales.
Esta ntegramente desarrollado en Java y funciona en mltiples plataformas,
posee una licencia GPL versin 2.
El sitio oficial de Alfresco es: http://www.alfresco.com/

15.8 Drupal (Sistema de Administracin de Contenido)


Es un sistema de gestin de contenido modular multipropsito y muy configurable
que permite publicar artculos, imgenes, u otros archivos y servicios aadidos
como foros, encuestas, votaciones, blogs y administracin de usuarios y
permisos. Drupal es un sistema dinmico: en lugar de almacenar sus contenidos
en archivos estticos en el sistema de ficheros del servidor de forma fija, el
contenido textual de las pginas y otras configuraciones son almacenados en una
base de datos y se editan utilizando un entorno Web.
Es un programa libre, con licencia GNU/GPL, escrito en php, desarrollado y
mantenido por una activa comunidad de usuarios. Destaca por la calidad de su
cdigo y de las pginas generadas, el respeto de los estndares de la web, y un
nfasis especial en la usabilidad y consistencia de todo el sistema.
El sitio oficial de drupal es: http://drupal.org/

130 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

Leccin 16: Sistema Operativo Web

16.1 Qu es el sistema operativo web?


Web Operating System o WebOS es un proyecto de investigacin de computacin
que empez en la Universidad de California, (Berkeley) para desarrollar un
programa para aplicaciones abstractas usadas en Internet. Las abstracciones que
provee incluyen:
- Un sistema de archivos que identifica la informacin mediante localizadores
uniformes de recursos (URL).
- Un sistema de nombramiento de recursos independiente de la localizacin
- Ejecucin remota y segura de sus aplicaciones.
- Acceso seguro a la informacin en un modelo de computacin en la nube.
- Transacciones libres de error en el lado del cliente.
La Universidad de Duke, la Universidad de Texas (Austin) y la Universidad de
Washigton son las que han iniciado esta lnea de investigacin.
La caracterstica ms sobresaliente de este tipo de escritorio virtual en la web,
funcionando en un navegador web como software.
Generalmente, el trmino WebOS ha sido empleado para referirse a una
plataforma que interacta con el usuario a travs del navegador web y no
depende del sistema operativo. Tales predicciones datan desde mediados de los
90, cuando Marc Andreessen predijo que Microsoft Windows estaba destinado a
ser un "pobre conjunto de drivers ejecutndose en Netscape Navigator.".
Recientemente, esta tecnologa ha suscitado un importante inters gracias a que
Google est produciendo una nueva plataforma. (Revista: Qu pasa, 2006, p.
44).
Los sistemas operativos web generalmente tambin se los conoce como
escritorios Web:
"Un Escritorio Web o Webtop es un sistema de aplicacin de red para integrar
aplicaciones web en un espacio de trabajo basado en web. Es un escritorio virtual
en la web, corriendo en un navegador de web como software. Los escritorios web
a menudo estn caracterizados por un entorno similar al de Windows, Mac, o
Linux, pero ahora se considera que tiene mucha ms funcionalidad al depender
de la Internet. Los beneficios tpicos incluyen la habilidad de guardar trabajo y
configuraciones en la Internet en vez de hacerlo en un escritorio local."
Es importante resaltar que no tiene nada que ver este tema con HP WebOS que
es un sistema operativo para mviles.
Cuando omos hablar de Sistemas Operativos en Web, suele ser en futuro. Por
eso sorprende encontrar esta lista confeccionada por FranticIndustries
(http://franticindustries.com/blog/2006/12/21/big-webos-roundup-10-online-
operating-systems-reviewed/), en la que encontramos 10 de estos sistemas que
funcionan hoy:

131 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

1. Craythur. Completamente nuevo y en espaol. Tiene un cuidado especial en


el diseo de escritorios y ventanas. Sin embargo, las aplicaciones an estn
en sus inicios.
2. Desktoptwo. Basado en Flash, requiere registro para probarlo. Las
aplicaciones son lentas y falta usabilidad en algunas aplicaciones.
3. EyeOS. Puede descargar los archivos de este sistema operativo para
instalarlos en su servidor web y utilizarlos para mltiplos propsitos, los
usuarios pueden probar en lnea esta aplicacin. Es uno de los mejores
proyectos de sistema operativo web y ha tenido mucho impacto en la industria
tecnolgica pro sus avances.
4. Glide. Ofrece en versin gratis y de pago. Basado en Flash, permite subir o
almacenar hasta 1GB. Incluye las aplicaciones ms comunes, est bien
diseado. Muchas aplicaciones se abren en ventanas emergentes, otras no
estn bien terminadas en cuanto a los grficos su proceso de desarrollo va por
buen camino.
5. Goowy. Basado en Flash, con muchas aplicaciones construidas y con buena
usabilidad. Todo funciona en la misma ventana con una barra de
herramientas. Los autores de la seleccin lo consideran de lejos el mejor de la
lista por su funcionalidad, usabilidad y escasos fallos.
6. Orca. Orca est en proceso de desarrolla y no estaba compatible con mozilla
firefox e internet explorer en algunas versiones.
7. Purefect. Incluye aplicaciones que imitan el estilo de Windows. A pesar de sus
fallos.
8. SSOE. Parece un proyecto con vistas al futuro, el autor ha admitido que lleva
construido el 10% del sistema, y de momento ofrece una versin relativamente
estable y otra ms nueva pero menos estable.
9. XinDESK. An no hay disponible una demo o una versin Alpha. Pero segn
su desarrollador, intenta ser una plataforma abierta, accesible a todos, con
aplicaciones que puedan instalarse en cualquier versin de Windows.
10. YouOS. Se ve que hay trabajo serio invertido en este sistema, que cuenta con
una serie de aplicaciones tiles y funcionales como un buen cliente de chat,
buscador de archivos, lector RSS y otros. El fallo est en el diseo, que no es
lo que se dice bonito. La consultora FranticIndustries lo colocan en el segundo
puesto.

16.2 EyeOS
EyeOS es un escritorio virtual multiplataforma, libre y gratuito, basado sobre el
estilo del escritorio de un sistema operativo. El paquete bsico de aplicaciones
que vienen por defecto, incluye toda la estructura de un sistema operativo y
algunas aplicaciones de tipo suite ofimtica como un procesador de textos, un
calendario, un gestor de archivos, un chat, un navegador, una calculadora y ms.
El paquete ntegro est autorizado bajo la licencia libre AGPL. Existe un sitio
paralelo que proporciona aplicaciones externas para eyeOS, llamadas eyeApps.

132 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

Se trata de un nuevo concepto en almacenaje virtual, el cual se considera como


revolucionario al ser un servicio clave para el Web 2.0 ya que dentro de una web
que combina el poder del actual HTML, PHP, AJAX y JavaScript para crear un
entorno grfico de tipo escritorio.
La diferencia entre otros entornos escritorio al hacer posible iniciar el escritorio
eyeOS y todas sus aplicaciones desde un navegador web. No se requiere instalar
ningn software adicional, ya que solo se necesita un navegador que soporte
AJAX, Java y Adobe Flash (dependiendo de las aplicaciones que se deseen
ejecutar).
El escritorio en la nube de eyeOS presenta, organiza y gestiona los datos,
archivos y aplicaciones del usuario.
EyeOS Professional Edition es el camino ms rpido para virtualizar entorno de
trabajo del usuario en la empresa, a la vez que mantiene todos los datos bajo
control en la nube privada de eyeOS. La nueva edicin asegura una ms alta
satisfaccin de los usuarios ya que facilita el acceso a su espacio de trabajo
desde cualquier dispositivo, mientras que todos sus datos y los archivos se
sincronizan y las copias de seguridad se llevan a cabo en un solo lugar en la
empresa. Frente a una solucin de virtualizacin de escritorio tradicional,
implementando eyeOS Professional Edition la empresa ahorra considerablemente
en servidores y licencias de software.
El software, tanto en su versin Open Source como la Professional Edition, es un
software enterprise que se instala en los servidores del cliente para prestar
servicio a los empleados, colaboradores externos y/o clientes.
El software de eyeOS crea una nube privada, as los datos de los usuarios estn
en todo momento bajo el control del administrador del sistema. El propio
administrador decide cuanto espacio de storage quiere reservar a los usuarios, a
qu aplicaciones quiere que accedan, de qu privilegios gozan y de qu
funcionalidades pueden disfrutar.
El escritorio de eyeOS es totalmente personalizable, no slo en trminos de
aspecto visual sino en la estructura y contenidos de los mens, bien sea en la
barra de mens o en las acciones accesibles desde el botn derecho del ratn.
El software est programado en php, Javascript y Ajax. La versin Professional
Edition est compilada.
La arquitectura funcional de EyeOS es la que se muestra a continuacin:

133 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

Figura 14.4: Arquitectura funcional de EyeOS


Fuente: http://eyeos.org/es/que-es-eyeos/

134 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

RESUMEN

La unidad desarrollada describe los retos que generalmente no se aprecian en el


contexto de la seguridad de los ordenadores y la red, la descripcin de amenazas
que estamos expuestos y las medidas adoptar.
En la comunicacin con servidores web, que contiene informacin de suma
importancia, es recomendable usar protocolos que utilicen cifrado, como el https
que utiliza un cifrado en la comunicacin que lo diferencia del protocolo http y del
protocolo SET desarrollado por Visa y Mastercard para la realizacin de
transacciones seguras, as mismo de los Certificados Digitales utilizado para el
tratamiento de documentos en digital, garantizando la confidencialidad de la
informacin.
Se define un conjunto de aplicaciones Web Empresariales, que permitan
accesibilidad, multiplataforma, portable, colaborativas, entre otros; tales como:
OpenBravo, OpenERP, Intalio, Alfresco, Drupal, entre otros.
Al trmino de la unidad se conceptualiza el Sistema Operativo Web cuyo objetivo
es proveer una plataforma que permita a los usuarios acceder a los mismos
recursos y aplicaciones a travs de la nube (Cloud Computing), para ello se ha
tomado como ejemplo la plataforma EyeOS.

135 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

LECTURA

Internet de las cosas y M2M

Una de los conceptos ms citados a la hora de hablar del futuro de la Web es el


Internet de las cosas. Este concepto implica que los objetos reciban y emitan
informacin, formando as parte de la red. Dentro del Internet de las cosas es
necesario definir y distinguir varios conceptos: los objetos hipervinculados, los
objetos inteligentes y la comunicacin M2M (machine to machine o mquina a
mquina).
Al igual que un hipervnculo o link en un documento nos permite saltar hacia otra
web para obtener ms informacin, la idea de objetos hipervinculados se refiere a
la capacidad de las cosas de ofrecer informacin sobre s mismas a travs de
Internet. Para conseguir esta capacidad, es necesario etiquetar estos objetos de
alguna forma. Conforme la naturaleza de dichas etiquetas, podemos tener varios
tipos de objetos hipervinculados:
Etiquetas grficas. La etiqueta que permite la vinculacin a Internet est impresa
y es fsicamente visible en el objeto (o junto a l). El propio cdigo de barras
podra servir como etiqueta hiperviculadora. Por ejemplo, Barcode Scanner es
una App de Android (hay otras similares para otros sistemas operativos) que sirve
como lector de cdigos de barras. Para ello utiliza la cmara del telfono y el
programa muestra opciones para buscar el producto en Internet. Si, por poner un
ejemplo, el transformador del cargador de mi equipo porttil ya no funciona,
podra utilizar esta App para buscar un lugar donde vendan esa pieza.
Otra opcin de etiquetas grficas son los cdigos QR (del ingls Quick Response
o respuesta rpida). Estos cdigos son similares a los de barras pero cuentan con
dos dimensiones en lugar de una (cuadros en lugar de lneas) y por tanto, son
capaces de acumular ms informacin. Mientras que un cdigo de barras slo
puede proporcionar un nmero (el que suele estar escrito debajo del propio
cdigo), un cdigo QR puede tener la informacin suficiente para una URL (o
direccin de pgina web) y por lo tanto enlazarnos directamente con un
determinado sitio web, sin que se necesite para ello ningn otro servicio como
intermediario.
Hay muchos telfonos que incorporan ya de serie programas de lectura para
estos cdigos, que tambin pueden ser adquiridos en cualquier App Store de los
diferentes sistemas operativos. De igual forma, hay multitud de sitios web en los
que se puede generar uno de estos cdigos para una determinada URL (un
ejemplo es www.tgbe.ws). Barrabs, dentro del Plan Avanza del Ministerio de
Industria de Espaa, desarroll en el 2008 un programa, que incluye esta
tecnologa, para bodegas productoras y comercializadoras de vino, denominado
AvanzaVino. Las etiquetas de las botellas (o bien las cajas u otros elementos)
incorporan uno de estos cdigos que, consultados desde un Smartphone
conectado a Internet, ofrece una completa hoja de cata de dicho vino en
especfico.
Etiquetas transmisoras. La etiqueta que permite la vinculacin a Internet no
tiene porque ser fsicamente visible sino que utiliza transmisin por radio. En este

136 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

sentido, la tecnologa RFID (siglas de Radio Frequency IDentification, o


identificacin por radiofrecuencia) es un sistema de almacenamiento y consulta de
datos en remoto a travs de etiquetas. El propsito fundamental de la tecnologa
RFID es transmitir la identidad de un objeto mediante ondas de radio.
Se trata de pequeas etiquetas que se adhieren o incorporan a un producto (o
incluso a un animal o a una persona). Algunas cadenas de supermercados ya
estn realizando pruebas para sustituir los actuales lectores de cdigos de barras
por este sistema (lo que producira un paso por caja mucho ms rpido al no tener
que pasar los productos uno por uno). Adems podemos ver un par de
aplicaciones que pueden utilizarse ya en casa. Una de ellas es el dispositivo
conectado al ordenador, capaz de reconocer los objetos etiquetados que se
pongan sobre ella. Una vez identificados, se enva la informacin a la plataforma
online de Violet, y se desencadenan diferentes aplicaciones o acciones
(previamente configuradas). Por ejemplo, podemos hacer que cuando
acerquemos un determinado libro de cuentos, el sistema busque imgenes o
sonidos de ese cuento.
Otra iniciativa similar es Touchatag de Alcatel-Lucent (tambin francesa). El lector
y 10 etiquetas tiene un precio de 29,95 + impuestos, mientras que 25 etiquetas
tienen un precio de 19,95, y 500 cuestan 379 (por debajo de un euro la
etiqueta).
Una tecnologa que parte del RFID y que est teniendo gran desarrollo es el NFC
(Near Field Communication o comunicacin de campo cercano). Para simplificar,
podemos decir que es sistema de RFID que funciona cuando los objetos estn
muy cerca (menos de diez o veinte centmetros). Lo interesante es que ya hay
varios telfonos en el mercado (de Nokia, Samsung, LG o Motorola, entre otros)
capaces de leer estas etiquetas (como las mencionadas de Touchatag). En el
captulo dedicado a los nuevos medios de pago hablaremos un poco ms de esta
tecnologa.
Etiquetas geogrficas. En realidad no hay etiqueta como tal sino que se
referencia una ubicacin (para objetos inmviles como una estatua o un rbol por
ejemplo) y el sistema busca la informacin correspondiente a ese lugar.
Una vez explicados los objetos hipervinculados, pasamos a los objetos
inteligentes que son aquellos que pueden tanto transmitir informacin o estados
en lo que se encuentran (no slo su identidad), como recibir rdenes para ejecutar
acciones.
Es curioso ver cmo cierta evolucin de estos objetos inteligentes se ha dado a
travs de Twitter con iniciativas de lo ms variopinto. Algunas parecen buenas
ideas y otras simplemente bromas pero la verdad es que siempre hay algn nicho
de mercado con gente dispuesta a comprar las cosas ms inverosmiles. Ah van
unas cuantas de estas iniciativas:
KogiBBQ (http://kogibbq.com). A principios del 2009 se hizo bastante conocido
el caso de este negocio sobre ruedas que opera en Los ngeles. Se trata de
una camioneta que vende de forma ambulante tacos de comida coreana a la
barbacoa. Conforme se mueve va twitteando su posicin para atraer a los
clientes que estn cerca en ese momento. La cosa funciona, porque su cuenta
en Twitter (http://twitter.com/KOGIBBQ) ya cuentan con ms de 80.000
seguidores.

137 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

BakerTweet (www.bakertweet.com). A todos nos gusta llegar a la panadera


justo en el momento en el que nuestra pieza favorita sale caliente del horno.
Esa es la base de BakerTweet, el horno de que avisa por Twitter. El sistema se
maneja desde una pequea caja que se instala junto al horno.
Desde la web de bakertweet, se configuran los diferentes productos que pueden
salir del horno, junto con el mensaje asociado a cada uno de ellos. Con un simple
movimiento en la pequea rueda del dispositivo, se emite el tweet
correspondiente al producto que vaya a salir del horno en ese momento. El
establecimiento pionero en implantar este sistema a principios del 2009 fue el
Albion Caf de Londres (www.albioncaff.co.uk) a travs de
http://twitter.com/albionsoven.
Hasta ahora estamos viendo aplicaciones en las que las maquinas slo hablan
(no escuchan) pero no sera nada raro ver comunicacin a travs de mensajes de
Twitter en los que ordenramos una determinada accin, como regar la planta del
ejemplo anterior, o pedir a la casa que encienda la calefaccin.
Fuera de estas iniciativas de Twitter tambin podemos encontrar otros objetos
inteligentes, un buen ejemplo sera el sensor Nike+iPod
(www.apple.com/es/ipod/nike). Este sensor se coloca en un compartimento bajo la
plantilla de la zapatilla y se conecta con el iPod o el iPhone. El sensor hace un
seguimiento de la carrera y enva la informacin al iPod. Es posible elegir un
programa determinado con objetivos de tiempo, distancia o caloras, as como una
lista de canciones. Durante la carrera, el iPod va informando del tiempo, la
distancia, la velocidad y las caloras quemadas, ofreciendo tambin comentarios
tanto al alcanzar la mitad del entrenamiento, como en el tramo final.
Despus de la carrera, el iPod se sincroniza con nikeplus.com, lo que permite ver
todas las carreras, controlar los progresos, establecer objetivos, as como
compartir informacin con otros usuarios.
En otra novedosa iniciativa, Google tiene disponible en diferentes partes de
Estados Unidos, Alemania y Reino Unido, Google PowerMeter que, en alianza
con varias compaas elctricas, permite monitorear el consumo elctrico del
hogar desde cualquier parte, por medio de Internet.

Bienvenida. Web 3.0 Gua para sobrevivir en la Internet del 2011


Eduardo Albal Ubiergo
Editado por Grupo Barrabs
Pp. 118-129

138 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

AUTOEVALUACIN

1. Una contramedida para la confidencialidad de un sistema web es:


a. Cifrado, proxy web
b. No se puede prevenir
c. Encriptar la base de datos
d. Colocar un Firewall fsico
e. Utilizar alguna tcnica de criptografa

1. El protocolo Kerberos se encuentra ubicado en el nivel de:


a. Red
b. Fsico
c. Transporte
d. Aplicacin
e. Sesin

2. El protocolo SET acta solo en el nivel:


a. Transporte
b. Red
c. Transporte
d. Fsico
e. Aplicacin

4. El comando htpasswd nos permite:


a. crear usuarios web
b. Proteger el navegador web
c. crear un archivo de contraseas
d. Crear password para el sistema Linux
e. Crear usuarios para el protocolo HTTP

5. El puerto del protocolo HTTPS es:


a. 442
b. 443
c. 8080
d. 80
e. 43

139 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

6. El protocolo SET utiliza el estndar:


a. SSL
b. Kerberos
c. TSL
d. XML
e. Socket

7. OpenBravo es una aplicacin empresarial del tipo:


a. CMS
b. LMS
c. Gestin documental
d. ERP
e. BI

8. Intalio es una solucin del tipo:


a. ERP
b. SCM
c. ERP
d. BPM
e. BI

9. OS-Commerce ha sido desarrolla en el lenguaje:


a. Java
b. Php
c. Python
d. C#
e. ASP

10. EyeOS est desarrollado con las siguientes tecnologas:


a. HTML - PHP - AJAX
b. HTML - Java - AJAX
c. HTML - JSP - AJAX
d. Solo PHP
e. PHP - AJAX - XML

140 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

RESPUESTAS DE CONTROL

1. a 2. d 3. c 4. c 5. b 6. a 7. d 8. d 9. b 10. a

141 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

EJERCICIOS PROPUESTOS

1. Implementar un Servidor Web utilizando el protocolo HTTPS


2. Implementar el ERP Openbravo y describa los mdulos de SCM, CRM y
Ventas
3. Implementar una tienda virtual para productos deportivos, utilizando OS-
Commerce
4. Implementar el CMS Drupal y hacer una breve comparacin con el CMS
Joomla.
5. Implementar EyeOS, y mencionar sus ventajas como sistema operativo web

142 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

EXPLORACIN ON LINE

URL: http://httpd.apache.org/docs/2.2/howto/htaccess.html#how
Puede encontrar una gua oficial sobre el uso de htaccess para el servidor web
httpd 2.2
URL: http://www.arcert.gov.ar/webs/manual/manual_de_seguridad.pdf
Un manual sobre seguridad en redes
URL: http://www.iec.csic.es/criptonomicon/ssl.html
Sitio web del Departamento de Tratamiento de la Informacin y Codificacin
del Instituto de Fsica Aplicada del Consejo Superior de Investigaciones
Cientficas de Espaa, que explica de manera detalla el protocolo SSL
URL: http://www.cl.cam.ac.uk/~lp15/papers/Auth/SET-overview-2002.pdf
Paper original sobre el protocolo de Secure Electronic Transaction (SET),
planteado por Lawrence C. Paulson del Computer Laboratory, University of
Cambridge
URL: http://tools.ietf.org/html/rfc2818
Este documento describe cmo utilizar TLS para garantizar las conexiones
HTTP ms Internet. La prctica actual es la capa HTTP.

143 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

REFERENCIA BIBLIOGRFICA

Colobran, M. (2008) Administracin de sistemas operativos en


red. Barcelona: Editorial UOC.
Espaa, M.C. (2003) Servicios avanzados de
telecomunicaciones. Madrid: Ediciones Daz de
santos, S.A.
Revista IDEA (2000) Protocolos SET. Editorial IberLibro.
Revista: Qu pasa (2006) WebOS. Editorial IberLibro.
Stallings, W. (2003) Fundamentos de Seguridad en Redes
(Segunda Edicin). Madrid: Pearson Educacin,
S.A.

144 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

BIBLIOGRAFA COMENTADA

- Molcalvo, A. (2007) Administracin de Negocios Digitales. Editorial Libros en


red.
Revisar el captulo y sobre la diferencia de aplicaciones de e-commerce y e-
bussiness adems del captulo 8, sobre estrategias digitales
- Cabrera, M. A. (2010) Evolucin tecnolgica y cibermedios. Zamora: Ediciones
Comunicacin Social.
Revisar la unidad 5, sobre los efectos de la tecnologa sobre la participacin
de las audiencias.
- Bravo, C. y Redondo, M.A. (2005) Sistemas interactivos y colaborativos en la
web. Castilla de la Mancha: Ediciones de la Universidad Castilla de la Mancha.
Revisar el captulo 1, sobre el diseo y desarrollo de aplicaciones
colaborativas y la pgina 51, sobre herramientas y tcnicas para la
construccin de sistemas colaborativos.
- Stallings, W. (2003) Fundamentos de Seguridad en Redes (Segunda Edicin).
Madrid: Pearson Educacin, S.A.
Revisar el captulo 2, sobre criptografa de clave pblica y autentificacin de
mensajes. Adems revisar el captulo 4 sobre aplicaciones de autentificacin.
- Asensio, G. (2006) Seguridad en Internet: una gua prctica y eficaz para
proteger su PC con software gratuito. Madrid: Ediciones Nowtilus S.L.
Revisar la unidad 2, sobre seguridad informtica para todos, unidad 11 sobre
Amenazas en Internet.

145 Sistema a Distancia


Tecnologas Web (E) - Unidad IV Daniel Yucra S. / Santiago Gonzles S.

GLOSARIO

API Application Programming Interface


BPEL4WS Business Process Execution Language for Web
Services
GPL General Public License
HTML Hyper Text Markup Language
HTTP Hyper Text Transfer Protocol
JDBC Java Data Base Connectivity
JNDI Java Naming Directory Interface
LGPL Lesser General Public License
OWL Ontology Web Language
RMI Remote Method Invocation
RPC Remote Procedure Call
SAX Simple API for XML
SOAP Simple Object Access Protocol
UDDI Universal Description, Discovery and Integration
URL Uniform Resource Locator
WSP Web Services Proveedor
WSC Web Services Consumidor
WSDL Web Service Definition Language
WWW World Wide Web
XML Extensible Markup Language
XSD XML Schema Definition
XSL Extensible Stylesheet Language

146 Sistema a Distancia

You might also like