SlideShare una empresa de Scribd logo
Programación Web Unidad 3. Desarrollo de aplicaciones Web
3.1 Arquitectura de las aplicaciones Web. Arquitectura de dos niveles: Es la más 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 presentación que incluye no sólo el navegador, sino también el servidor web que es el responsable de dar a los datos un formato adecuado. El segundo nivel está referido habitualmente a algún tipo de programa o  script . Finalmente, el tercer nivel proporciona al segundo los datos necesarios para su ejecución.
3.2 Lenguajes de programación del lado del cliente. Los programas del lado del cliente están incluidos dentro de la página HTML, se descargan del servidor junto con este.  Los programas se ejecutan dentro del ámbito del browser.
Tecnologías y lenguajes del lado del cliente. Navegadores para Web. HTML. Javascript y Vbscript. Applets en Java. Flash (lenguaje ActionScript). XML. PDF. AJAX, acrónimo de  A synchronous  J avaScript  A nd  X ML  ( JavaScript  asíncrono 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
Tecnologías y lenguajes del lado del cliente. Algunos de estos lenguajes y tecnologías requieren de un programa especial (plug-in) instalado en la computadora del usuario. Ejemplo: Adobe Flash Player. Un  complemento  (o  plug-in  en  inglés ) es una  aplicación  que se relaciona con otra para aportarle una función nueva y generalmente muy especifica. Esta aplicación adicional es ejecutada por la aplicación principal e interactúan por medio de la  API .
3.3 Lenguajes de programación 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 generación de contenido dinámico para las páginas.
3.3 Lenguajes de programación del lado del servidor. Por ejemplo, el ámbito de ejecución de una página ASP.NET.
3.3 Lenguajes de programación del lado del servidor. Algunos ejemplos de lenguajes del lado del servidor: ASP, ASP.NET  (son tecnologías, 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 aplicación del modelo OSI y está diseñado para transferir lo que se llama  hipertextos , páginas web o páginas  HTML : textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproductores de música.
Servidor Web. Algunos ejemplos: CERN  httpd   Apache  (Libre, servidor más usado del mundo, según 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 específicos para lenguajes del lado del servidor. Por ejemplo, Visual Studio solo soporta ASP.NET del lado del servidor. Existen IDE’s 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 Metodologías para el desarrollo de aplicaciones Web. Ciclo de vida clásico. Pressman, “adapta” esta metodología para el desarrollo de Web, en lo que el llama la “Ingeniería Web”: Formulación. Planificación. Análisis (contenido, interacción, funcional, configuración). Diseño (arquitectónico, navegación, interfaz, de base de datos). Implementación. Pruebas.
3.5 Metodologías para el desarrollo de aplicaciones Web. UWE UML  (UML-Based Web Engineering) es una  metodología  de desarrollo de  aplicaciones  web , utilizada en la  ingeniería  web , prestando especial atención en sistematización y personalización (sistemas adaptativos).
UWE UML El método 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 navegación que incluye modelos estáticos y dinámicos.  Modelo de estructura de presentación, modelo de flujo de presentación.  Modelo abstracto de  interfaz  de usuario y modelo de ciclo de vida del objeto.  Modelo de adaptación.
3.6 Aspectos de seguridad. Las aplicaciones Web están más expuestas a ataques. Se pueden tener ataques en tres niveles: A la computadora del usuario. Al servidor. A la información en tránsito.
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 información 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. También debe garantizarse la privacidad de los datos del usuario.
Seguridad del servidor Web y de los datos almacenados ahí Se debe garantizar la operación continua del servidor, que los datos no sean modificados sin autorización (integridad) y que la información sólo sea distribuida a las personas autorizadas  (control de acceso).
Seguridad de la información que viaja entre el servidor Web y el usuario. Garantizar que la información en tránsito no sea  leída (confidencialidad), modificada o destruida por terceros. También es importante asegurar que el enlace entre cliente y servidor no pueda interrumpirse fácilmente (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 interactúan en las  dos capas anteriores (módulos, bibliotecas).
Recomendaciones:  Asegurar la información en tránsito Esto se puede lograr por diversos medios: Asegurando la red físicamente (switches en lugar de hubs). Esconder la información (esteganografía). Cifrar la información (criptografía) por medio de algoritmos diversos (SSL, VPNs).
Recomendaciones:  Asegurar el equipo del usuario Vulnerar el equipo del usuario quizás no tenga el impacto de vulnerar el servidor, sin embargo es un problema más difícil de erradicar (1 servidor, 5000 clientes): Aplicar actualizaciones (parches) al sistema operativo. Uso de antivirus, firewalls personales. Educación de los usuarios.

Más contenido relacionado

PPT
Prog webuni3
PPT
Web2
PPT
Programación web
PPTX
Las apps
PPTX
Introduccion a la programacion web
PPTX
Programacion web
PDF
Análisis y planteamiento del problema
PPTX
Asp.net
Prog webuni3
Web2
Programación web
Las apps
Introduccion a la programacion web
Programacion web
Análisis y planteamiento del problema
Asp.net

La actualidad más candente (19)

PPT
Desarrollo web
PPTX
Asp
PPTX
Asp.net conceptos
PPTX
PPT
Asp .net
PPTX
Presentacion sobre asp
PPS
Desarrollo de aplicaciones empresariales con Java EE
PPTX
OLimpiada Joomla
PPT
1. Introduccion A La Plataforma Microsoft .Net
PPT
Clase flex
PPT
Presentación g.asistencias
DOC
Joomla
PPTX
Cliente web y servidor web
PPT
1. introduccion a la plataforma microsoft .net
PDF
Articulo diseño e implementacion de generador de protocolos
PDF
Sesion 01 - Introduccion a Net Framework
Desarrollo web
Asp
Asp.net conceptos
Asp .net
Presentacion sobre asp
Desarrollo de aplicaciones empresariales con Java EE
OLimpiada Joomla
1. Introduccion A La Plataforma Microsoft .Net
Clase flex
Presentación g.asistencias
Joomla
Cliente web y servidor web
1. introduccion a la plataforma microsoft .net
Articulo diseño e implementacion de generador de protocolos
Sesion 01 - Introduccion a Net Framework
Publicidad

Destacado (20)

PPT
lenguaje web
PPTX
HERRAMIENTAS WED 2.0
PPT
Uwe uml
PDF
Revista TicNews Enero 2015
PPTX
Metodología rmm resumido
PDF
Revista TicNews Julio 2015
PDF
Metología para la creación de sitios web
PPTX
Sistemas de informacion e internet
PPTX
Como los negocios usan los sistemas de informacion
PPTX
Metodologias web
PPTX
Metodologia WEB RNA
DOC
Metodologia oohdm
PPTX
Introduccion a Uml
PPTX
Metodología WEB UWE
PPT
Aplicando Uwe - Un ejemplo didactico
DOCX
Requerimientos, Ventajas y Desventajas de las aplicaciones web
PPT
Metodología para el Desarrollo de Sistemas de Información Web
PPTX
sistemas distribuidos
PPT
SISTEMAS DE INFORMACION y SU RELACION CON LOS PROCESOS DE NEGOCIOS
PPTX
Sistemas de información web
lenguaje web
HERRAMIENTAS WED 2.0
Uwe uml
Revista TicNews Enero 2015
Metodología rmm resumido
Revista TicNews Julio 2015
Metología para la creación de sitios web
Sistemas de informacion e internet
Como los negocios usan los sistemas de informacion
Metodologias web
Metodologia WEB RNA
Metodologia oohdm
Introduccion a Uml
Metodología WEB UWE
Aplicando Uwe - Un ejemplo didactico
Requerimientos, Ventajas y Desventajas de las aplicaciones web
Metodología para el Desarrollo de Sistemas de Información Web
sistemas distribuidos
SISTEMAS DE INFORMACION y SU RELACION CON LOS PROCESOS DE NEGOCIOS
Sistemas de información web
Publicidad

Similar a Prog webuni3 (20)

PPTX
Desarrollo de aplicaciones web
PPTX
Tecnologias de desarrollo web
DOCX
Act1 tecnologiaweb uni1
PDF
Clase 1 Introducción al Desarrollo Web
PPTX
Word wide web
PPT
Programacion web
DOCX
Herramientas de Programacion Cliente Servidor
DOC
2009_asp.net_capitulo_1
PPT
0. Antecedentes Asp
PPT
Uwe uml
PDF
Unidad 1
PPTX
Arquitectura web EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
PDF
Apli t1 ejr
DOCX
Capitulo 1 - Proyecto integrador 2015-2016
PPTX
WEB 2.0 Y RED SOCIAL
PPTX
LA WEB 2.0
PPTX
Arquitecturas web para estudiantess.pptx
Desarrollo de aplicaciones web
Tecnologias de desarrollo web
Act1 tecnologiaweb uni1
Clase 1 Introducción al Desarrollo Web
Word wide web
Programacion web
Herramientas de Programacion Cliente Servidor
2009_asp.net_capitulo_1
0. Antecedentes Asp
Uwe uml
Unidad 1
Arquitectura web EXPOSICION KAREN ANDRADE, EFRAIN SARANSIG
Apli t1 ejr
Capitulo 1 - Proyecto integrador 2015-2016
WEB 2.0 Y RED SOCIAL
LA WEB 2.0
Arquitecturas web para estudiantess.pptx

Prog webuni3

  • 1. Programación Web Unidad 3. Desarrollo de aplicaciones Web
  • 2. 3.1 Arquitectura de las aplicaciones Web. Arquitectura de dos niveles: Es la más simple, se tiene el nivel del “Cliente” y el nivel del “Servidor”.
  • 3. Arquitectura Web de tres niveles: El primer nivel consiste en la capa de presentación que incluye no sólo el navegador, sino también el servidor web que es el responsable de dar a los datos un formato adecuado. El segundo nivel está referido habitualmente a algún tipo de programa o script . Finalmente, el tercer nivel proporciona al segundo los datos necesarios para su ejecución.
  • 4. 3.2 Lenguajes de programación del lado del cliente. Los programas del lado del cliente están incluidos dentro de la página HTML, se descargan del servidor junto con este. Los programas se ejecutan dentro del ámbito del browser.
  • 5. Tecnologías y lenguajes del lado del cliente. Navegadores para Web. HTML. Javascript y Vbscript. Applets en Java. Flash (lenguaje ActionScript). XML. PDF. AJAX, acrónimo de A synchronous J avaScript A nd X ML ( JavaScript asíncrono y XML ).
  • 6. 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
  • 7. Tecnologías y lenguajes del lado del cliente. Algunos de estos lenguajes y tecnologías requieren de un programa especial (plug-in) instalado en la computadora del usuario. Ejemplo: Adobe Flash Player. Un complemento (o plug-in en inglés ) es una aplicación que se relaciona con otra para aportarle una función nueva y generalmente muy especifica. Esta aplicación adicional es ejecutada por la aplicación principal e interactúan por medio de la API .
  • 8. 3.3 Lenguajes de programación 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 generación de contenido dinámico para las páginas.
  • 9. 3.3 Lenguajes de programación del lado del servidor. Por ejemplo, el ámbito de ejecución de una página ASP.NET.
  • 10. 3.3 Lenguajes de programación del lado del servidor. Algunos ejemplos de lenguajes del lado del servidor: ASP, ASP.NET (son tecnologías, soportan diferentes lenguajes como VB, C#, C++, etc.). PHP. JSP. Perl. Ruby. Python. XML.
  • 11. Servidor Web Un servidor web es un programa que implementa el protocolo HTTP ). Este protocolo pertenece a la capa de aplicación del modelo OSI y está diseñado para transferir lo que se llama hipertextos , páginas web o páginas HTML : textos complejos con enlaces, figuras, formularios, botones y objetos incrustados como animaciones o reproductores de música.
  • 12. Servidor Web. Algunos ejemplos: CERN httpd Apache (Libre, servidor más usado del mundo, según 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
  • 13. 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 específicos para lenguajes del lado del servidor. Por ejemplo, Visual Studio solo soporta ASP.NET del lado del servidor. Existen IDE’s de buena cantidad, libres y gratuitos de buena calidad.
  • 14. 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.
  • 15. 3.5 Metodologías para el desarrollo de aplicaciones Web. Ciclo de vida clásico. Pressman, “adapta” esta metodología para el desarrollo de Web, en lo que el llama la “Ingeniería Web”: Formulación. Planificación. Análisis (contenido, interacción, funcional, configuración). Diseño (arquitectónico, navegación, interfaz, de base de datos). Implementación. Pruebas.
  • 16. 3.5 Metodologías para el desarrollo de aplicaciones Web. UWE UML (UML-Based Web Engineering) es una metodología de desarrollo de aplicaciones web , utilizada en la ingeniería web , prestando especial atención en sistematización y personalización (sistemas adaptativos).
  • 17. UWE UML El método 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 navegación que incluye modelos estáticos y dinámicos. Modelo de estructura de presentación, modelo de flujo de presentación. Modelo abstracto de interfaz de usuario y modelo de ciclo de vida del objeto. Modelo de adaptación.
  • 18. 3.6 Aspectos de seguridad. Las aplicaciones Web están más expuestas a ataques. Se pueden tener ataques en tres niveles: A la computadora del usuario. Al servidor. A la información en tránsito.
  • 19. 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 información que viaja entre el servidor Web y el usuario.
  • 20. Seguridad de la computadora del usuario Los usuarios deben contar con navegadores y plataformas seguras, libres de virus y vulnerabilidades. También debe garantizarse la privacidad de los datos del usuario.
  • 21. Seguridad del servidor Web y de los datos almacenados ahí Se debe garantizar la operación continua del servidor, que los datos no sean modificados sin autorización (integridad) y que la información sólo sea distribuida a las personas autorizadas (control de acceso).
  • 22. Seguridad de la información que viaja entre el servidor Web y el usuario. Garantizar que la información en tránsito no sea leída (confidencialidad), modificada o destruida por terceros. También es importante asegurar que el enlace entre cliente y servidor no pueda interrumpirse fácilmente (disponibilidad).
  • 24. 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 interactúan en las dos capas anteriores (módulos, bibliotecas).
  • 25. Recomendaciones: Asegurar la información en tránsito Esto se puede lograr por diversos medios: Asegurando la red físicamente (switches en lugar de hubs). Esconder la información (esteganografía). Cifrar la información (criptografía) por medio de algoritmos diversos (SSL, VPNs).
  • 26. Recomendaciones: Asegurar el equipo del usuario Vulnerar el equipo del usuario quizás no tenga el impacto de vulnerar el servidor, sin embargo es un problema más difícil de erradicar (1 servidor, 5000 clientes): Aplicar actualizaciones (parches) al sistema operativo. Uso de antivirus, firewalls personales. Educación de los usuarios.