Está en la página 1de 26

Programacin Web

Unidad 3. Desarrollo de aplicaciones Web


Nadyeli lizbeth rodriguez tolentino Felipe de jesus sanchez villanueva Cinthya castro Elia rocha Aaa e
irais

3.1 Arquitectura de las aplicaciones Web.


Arquitectura de dos niveles:
Es la ms simple, se tiene el nivel del Cliente y el nivel del Servidor.

Arquitectura Web de tres niveles:


El primer nivel consiste en la capa de presentacin que incluye no slo el navegador, sino tambin el servidor web que es el responsable de dar a los datos un formato adecuado. El segundo nivel est referido habitualmente a algn tipo de programa o script. Finalmente, el tercer nivel proporciona al segundo los datos necesarios para su ejecucin.

3.2 Lenguajes de programacin del lado del cliente.


Los programas del lado del cliente estn incluidos dentro de la pgina HTML, se descargan del servidor junto con este. Los programas se ejecutan dentro del mbito del browser.

Tecnologas y lenguajes del lado del cliente.


Navegadores para Web. HTML. Javascript y Vbscript. Applets en Java. Flash (lenguaje ActionScript). XML. PDF. AJAX, acrnimo de Asynchronous JavaScript And XML (JavaScript asncrono y XML).

Lenguajes del lado del cliente


Algunos navegadores Web.
Amaya Epiphany Galeon Internet Explorer Konqueror Lynx Mozilla suite navigator Mozilla Firefox Netscape Navigator Opera Safari Shiira Maik Navigator

Tecnologas y lenguajes del lado del cliente.


Algunos de estos lenguajes y tecnologas requieren de un programa especial (plugin) instalado en la computadora del usuario. Ejemplo: Adobe Flash Player.

Un complemento (o plug-in en ingls) es una aplicacin que se relaciona con otra para aportarle una funcin nueva y generalmente muy especifica. Esta aplicacin adicional es ejecutada por la aplicacin principal e interactan por medio de la API.

3.3 Lenguajes de programacin del lado del servidor.


Se ejecutan en el servidor de Web y son dependientes de la plataforma del servidor.

Se usan para acceder a recursos del servidor, como bases de datos y generacin de contenido dinmico para las pginas.

3.3 Lenguajes de programacin del lado del servidor.


Por ejemplo, el mbito de ejecucin de una pgina ASP.NET.

3.3 Lenguajes de programacin del lado del servidor.


Algunos ejemplos de lenguajes del lado del servidor: ASP, ASP.NET (son tecnologas, soportan diferentes lenguajes como VB, C#, C++, etc.). PHP. JSP. Perl. Ruby. Python. XML.

Servidor Web
Un servidor web es un programa que implementa el protocolo HTTP ). Este protocolo pertenece a la capa de aplicacin del modelo OSI y est diseado para transferir lo que se llama hipertextos, pginas web o pginas HTML: textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproductores de msica.

Servidor Web.
Algunos ejemplos: CERN httpd Apache (Libre, servidor ms usado del mundo, segn Wikipedia) IIS Resin Tomcat (Libre, del proyecto Jakarta de Apache) Geronimo (Libre, orientado a J2EE, del proyecto Jakarta de Apache, actualmente se encuentra en desarrollo) JBoss JOnAS Cherokee

3.4 Ambientes para el desarrollo de aplicaciones Web.


Los IDE (ambientes integrados de desarrollo) para aplicaciones Web son muy numerosos. Considerar los que permitan trabajar con los diferentes lenguajes para Web. Algunos son especficos para lenguajes del lado del servidor. Por ejemplo, Visual Studio solo soporta ASP.NET del lado del servidor. Existen IDEs de buena cantidad, libres y gratuitos de buena calidad.

3.4 Ambientes para el desarrollo de aplicaciones Web.


Algunos ejemplos de IDE para Web:
Microsoft Visual Studio. Microsoft Web Developer Express. Mono (para ASP.NET). NetBeans. Jbuilder. Eclipse.

3.5 Metodologas para el desarrollo de aplicaciones Web.


Ciclo de vida clsico. Pressman, adapta esta metodologa para el desarrollo de Web, en lo que el llama la Ingeniera Web:

Formulacin. Planificacin. Anlisis (contenido, interaccin, funcional, configuracin). Diseo (arquitectnico, navegacin, interfaz, de base de datos). Implementacin. Pruebas.

3.5 Metodologas para el desarrollo de aplicaciones Web.


UWE UML (UML-Based Web Engineering) es una metodologa de desarrollo de aplicaciones web, utilizada en la ingeniera web, prestando especial atencin en sistematizacin y personalizacin (sistemas adaptativos).

El mtodo UWE UML consta de seis modelos:


Modelo de casos de uso para capturar los requisitos del sistema. Modelo conceptual para el contenido (modelo del dominio). Modelo de usuario: modelo de navegacin que incluye modelos estticos y dinmicos. Modelo de estructura de presentacin, modelo de flujo de presentacin. Modelo abstracto de interfaz de usuario y modelo de ciclo de vida del objeto. Modelo de adaptacin.

UWE UML

3.6 Aspectos de seguridad.


Las aplicaciones Web estn ms expuestas a ataques. Se pueden tener ataques en tres niveles:
A la computadora del usuario. Al servidor. A la informacin en trnsito.

La seguridad en Web tiene 3 etapas primarias: Seguridad de la computadora del usuario. Seguridad del servidor Web y de los datos almacenados ah. Seguridad de la informacin que viaja entre el servidor Web y el usuario.

Seguridad de la computadora del usuario Los usuarios deben contar con navegadores y plataformas seguras, libres de virus y vulnerabilidades. Tambin debe garantizarse la privacidad de los datos del usuario.

Seguridad del servidor Web y de los datos almacenados ah Se debe garantizar la operacin continua del servidor, que los datos no sean modificados sin autorizacin (integridad) y que la informacin slo sea distribuida a las personas autorizadas (control de acceso).

Seguridad de la informacin que viaja entre el servidor Web y el usuario.


Garantizar que la informacin en trnsito no sea leda (confidencialidad), modificada o destruida por terceros. Tambin es importante asegurar que el enlace entre cliente y servidor no pueda interrumpirse fcilmente (disponibilidad).

Recomendaciones de seguridad.

Recomendaciones: Asegurar el servidor


Se deben considerar los siguientes puntos: Asegurar el servidor en una forma fundamental: el sistema operativo, ya sea por medio de actualizaciones (parches) y habilitando los mecanismos propios de la plataforma. Garantizar la seguridad del servidor Web propiamente (IIS, Apache, etc.) Auditar las aplicaciones que interactan en las dos capas anteriores (mdulos, bibliotecas).

Recomendaciones: Asegurar la informacin en trnsito


Esto se puede lograr por diversos medios: Asegurando la red fsicamente (switches en lugar de hubs). Esconder la informacin (esteganografa). Cifrar la informacin (criptografa) por medio de algoritmos diversos (SSL, VPNs).

Recomendaciones: Asegurar el equipo del usuario


Vulnerar el equipo del usuario quizs no tenga el impacto de vulnerar el servidor, sin embargo es un problema ms difcil de erradicar (1 servidor, 5000 clientes): Aplicar actualizaciones (parches) al sistema operativo. Uso de antivirus, firewalls personales. Educacin de los usuarios.

También podría gustarte