Ingeniería web vs ingeniería de software
INGENIERÍA DE SOFTWARE INGENIERÍA WEB
Suma total de programas de computadora,
procedimientos, reglas para dar enfoque al
mantenimiento y retiro del software.
Utilización de enfoque científicos de ingeniería y
gestión concentradas en el empleo y mantenimientos
de sistemas y aplicaciones basados en la web.
Existen diferentes metodologías para el desarrollo y
ejecución de la ingeniería de software.
Involucra metodologías de la ingeniería de software y
algunas adicionales.
Se crean sistemas que se alojan por completo en
estaciones de trabajo del usuario final.
Las aplicaciones se alojan en servidores y se ejecutan
allí mismo pero sus funciones son visibles al usuario
final.
Trabaja con procesos más dinámicos consecuencia del
campo en el que se está trabajando.
Se apoya en herramientas CASE para mayor
optimización
Utiliza herramientas CASE pero con funcionalidades
adicionales por el dinamismo de los procesos
Ingenieria de Software se define como “un conjunto de etapas
parcialmente ordenadas con la intención de lograr un objetivo, en
este caso, la obtención de un producto de software de
calidad” [Jacobson 1998].
Ingeniera Web es el proceso utilizado para crear, implantar y mantener
aplicaciones y sistemas Web de alta calidad
¿Qué es ingeniería de software?
• La ingeniería de software es una disciplina que estudia los procesos, métodos y
herramientas involucradas hacia un software de calidad.
• Este software de calidad tiene que cumplir las necesidades del usuario con el fin
que fue realizado, tiende hacer una herramienta confiable, esto quiere decir que
no debe de causar daños físicos y económicos a quien lo provee. [2]
• El contenido del software debe ser:
• Fácil de usar.
• Modificable.
• Transferible de un entorno a otro.
• Consistente y seguro.
• Hay que tomar en cuenta que la calidad del software es aquella que depende del
proceso con el cual fue realizado. [3]
Ingeniería web vs ingeniería de software
• La ingeniería web, a diferencia de la ingeniería de software cuenta con
determinadas características ya es multidisciplinar y posee contribuciones
de diferente arquitectura de la información, ingeniería de requisitos,
diseño de interfaces para los usuarios, usabilidad, diseño gráfico, diseño y
análisis de sistemas.
• La ingeniería web se fue desarrollando a una velocidad inexplicable con un
impacto para la sociedad aceptable y favorable, ya que el manejo que se le
da a la información en las diferentes áreas que se presentan ha tenido
como resultado que los humanos realicen sus actividades por medio de
Internet.
• La ingeniería Web contiene nuevos enfoques de disciplina, metodologías,
aplicación de herramientas, técnicas, guía y patrones que tienen como
aspectos científicos de este medio para cubrir las necesidades únicas de las
aplicaciones Web. [1]
¿QUÉ SON LOS SERVICIOS WEB?
A los servicios web se le entiende por un conjunto de aplicaciones o de
tecnologías incluyendo XML, SOAP, WSDL, UDDI con capacidad para
inter operar en la Web. Estas aplicaciones o tecnologías intercambian
datos entre sí con el objetivo de ofrecer unos servicios específicos.
Los proveedores del servicio son los que “exponen los servicios”
ofreciendo sus servicios como procedimientos remotos, mientras que
los usuarios “consumidores del servicio” solicitan un servicio llamando
a estos procedimientos a través de la Web.
Servicios web (web services) son un nuevo modelo de desarrollo de aplicaciones distribuidas
basadas en Internet
• Un servicio web es un componente al que se puede acceder mediante protocolos Web estándar:
– Los mensajes para invocar el servicio se codifican en XML
– Los mensajes se pueden transportar utilizando HTTP o cualquier otro protocolo
de transporte estándar
• Estándar de W3C
– XML
– SOAP
– WSDL
Algunas características:
• Permiten que las aplicaciones compartan información de forma
remota
• Permiten integrar sistemas heterogéneos de manera barata y fiable
• Son unidades de código discretas, cada una de las cuales se encarga
de un conjunto limitado de tareas
• Están basados en XML, el lenguaje estándar de intercambio de
información en Internet
• Pueden utilizarse en cualquier plataforma o sistema operativo,
independientemente del lenguaje de programación utilizado
• ¿Es algo totalmente nuevo?
• Tecnologías integración:
• RPC
• CORBA
• DCE
• RMI
• …
Posible ejemplo:
• Un servicio de reserva de paquetes de viaje
• Un servicio de agenda compartido
• Consulta de cotizaciones de bolsa, cambio de moneda, datos
meteorológicos, etc.
2. Arquitectura Orientada a Servicios
2.1. Definición y orígenes.
2.1. Definición y orígenes.
2.2.Punto de vista de negocio.
2.3.Punto de vista tecnológico
2.4.Administración de los procesos de negocio.
2.5.Bus de servicios empresariales.
2.6. Integración de aplicaciones.
2.7.Aplicaciones B2B (Business to Business)
2.8. Composición de servicios Web.
2.9.Estrategias de adopción de SOA
Existen varios métodos para la separación de la presentación y
la lógica de negocio.
Los mas importantes son:
• Cliente-servidor: el cliente interactúa con el usuario y el servidor procesa la
información. Es uno de los métodos mas antiguos, y que ha dado lugar a nuevas
arquitecturas.
• Arquitecturas multicapa: consiste en dividir la aplicación en varios niveles o capas
que realizan tareas concretas. La información fluye entre la
• Arquitectura Modelo – Vista – Controlador (MVC): consiste en separar la
aplicación en tres partes, el modelo (datos y reglas de negocio), la vista
(representación de los datos) y el controlador (proceso de los datos de entrada).
La diferencia fundamental con la arquitectura de tres capas reside en la forma en
que se comunican los tres elementos capas contiguas en una organización
vertical.
2.2.Punto de vista de negocio
Estándares usados en arquitecturas SOA
La arquitectura SOA se basa en estándares. Al ser una arquitectura distribuida y
heterogénea necesita estándares para la integración de todos sus componentes. A
continuación se describen los mas importantes.
HTML
• El lenguaje HTML ya se ha visto anteriormente. Es un lenguaje de marcas que usan los
clientes web para presentar la información.
XML
• XML es un lenguaje de marcas pensado fundamentalmente para el intercambio de
información.
SOA hace un uso intensivo de XML para describir los servicios y los contenedores de los
datos que usar y ofrece dicho servicio, así como en el paso de mensajes entre
componentes.
En Java existen varias API específicas para el procesado de XML. Una de las mas completas
u flexibles es JAXP. Permite elegir entre varios parsers y es modular y ampliable mediante
plugins.
Se puede elegir entre varias APIs: SAX, DOM y StAX entre otras.
JSON
Es un formato de texto ligero para el intercambio de datos basado en
un subconjunto del lenguaje JavaScript. Es entendible directamente por
humanos y fácilmente interpretable y generable por máquinas, lo cual
lo posiciona como un sustituto de XML en algunos casos. Su estructura
familiarizados con la sintaxis
lo hace especialmente fácil de interpretar para programadores
de C, que comparten muchos otro
programas como C++, Perl, Python o Java.
SOAP
SOAP (Simple Object Access Protocol) es un protocolo de intercambio
de información en XML en red que se usa principalmente en servicios
web usando HTTP como transporte.
Deriva del protocolo XML-RPC, y actualmente se encuentra auspiciado
por el W3C. La versión actual es la 1.2.
WSDL
WSDL (Web Services Description Language) es una información escrita
en XML que proporciona información acerca de un servicio web,
permitiendo conocer la interfaz pública del servicio web. La versión
actual es la 2.0.
REST
REST (REpresentational State Transfer) es un modelo arquitectura de
software distribuida que se aplica a servicios web y mas simple que
SOAP y WSDL. Es adecuado para escenarios básicos donde la
integración sea sencilla, en contraposición de los escenarios “grandes”.
A las implementaciones que siguen los principios de REST se las
denomina “RESTful”.
UDDI
UDDI (Universal Description, Discovery and Integration) es un servicio
de registro basado en XML que ayuda a la localización de servicios web.
El servicio recibe mensajes SOAP y devuelve información sobre el WSDL
del servicio.
En 2006 Microsoft, IBM y SAP dejaron de dar soporte al registro en
Internet, y actualmente se usa de forma residual dentro de algunas
empresas.
Una aplicación
Web es proporcionada por un servidor Web y utilizada por usuarios que se Conect
an desde cualquier punto vía clientes Web (browsers o navegadores). La arquitectura de
un Sitio Web tiene tres componentes principales:
1. Un servidor Web
2. Una conexión de red
3. Uno o más clientes
El servidor Web distribuye páginas de información formateada a los clientes que las
solicitan. Los requerimientos son hechos a través de una conexión de red, y para ello se
usa el protocolo HTTP. Una vez que se solicita esta petición mediante el protocolo HTTP
y la recibe el servidor Web, éste localiza la página Web en su sistema de archivos y la
envía de vuelta al navegador que la solicitó.
Arquitecturas para el desarrollo de los servicios Web
Las aplicaciones Web están basadas en el modelo Cliente/Servidor que
gestionan servidores web, y que utilizan como interfaz páginas web.
Las páginas Web son el componente principal de una aplicación o sitio Web.
Los browsers piden páginas (almacenadas o creadas dinámicamente)
con información a los servidores Web. En algunos ambientes de desarrollo
de aplicaciones Web, las páginas contienen código HTML y scripts
dinámicos, que son ejecutados por el servidor antes de entregar la página.
Una vez que se entrega una página, la conexión entre el browser y el servidor
Web se rompe, es decir que la lógica del negocio en el servidor solamente se
activa por la ejecución de los scripts de las páginas solicitadas por el browser
(en el servidor, no en el cliente). Cuando el browser ejecuta un script en el
cliente, éste no tiene acceso directo a los recursos del
servidor. Hay otros componentes que no son scripts, como los applets (una
aplicación especial que se ejecuta dentro de un navegador) o
los componentes ActiveX. Los scripts del cliente son por lo general código
JavaScript o VBSscript, mezclados con código HTML.
La colección de páginas son en una buena parte dinámicas (ASP, PHP, etc.), y están agrupadas lógicamente
para dar un servicio al usuario. El acceso a las páginas está agrupado también en el tiempo (sesión). Los
componentes de una aplicación Web son:
1. Lógica de negocio.
• Parte más importante de la aplicación.
• Define los procesos que involucran a la aplicación.
• Conjunto de operaciones requeridas para proveer el servicio.
2. Administración de los datos.
• Manipulación de BD y archivos.
3. Interfaz
• Los usuarios acceden a través de navegadores, móviles, PDAs, etc.
• Funcionalidad accesible a través del navegador.
• Limitada y dirigida por la aplicación.
Las aplicaciones web se modelan mediante lo que se conoce como modelo de capas, Una capa representa
un elemento que procesa o trata información. Los tipos son:
• Modelo de dos capas: La información atraviesa dos capas entre la
interfaz y la administración de los datos.
• Modelo de n-capas: La información atraviesa varias capas, el más habitual es el modelo de tres
capas.
Modelo de dos Capas.
Gran parte de la aplicación corre en el lado del cliente (fat client).
Las capas son:
• Cliente (fat client): La lógica de negocio está inmersa dentro de la aplicación que realiza
el interfaz de usuario, en el lado del cliente.
• Servidor: Administra los datos.
Las limitaciones de este modelo son.
• Es difícilmente escalable
• Número de conexiones reducida
• Alta carga de la red.
• La flexibilidad es restringida
• La funcionalidad es limitada.
Modelo de tres Capas.
Esta diseñada para superar las limitaciones de las arquitecturas ajustadas al modelo
de dos capas, introduce una capa intermedia (la capa de
proceso) Entre presentación y los datos, los procesos pueden ser manejados de
forma separada a la interfaz de usuari o y a los datos, esta capa intermedia
centraliza la lógica de negocio, haciendo la administración más sencil a,
los datos se pueden integrar de múltiples fuentes, las aplicaciones web actuales
se ajustan a este modelo.
Las capas de este modelo son:
1. Capa de presentación (parte en el cliente y parte en el servidor)
• Recoge la información del usuario y la envía al servidor (cliente)
• Manda información a la capa de proceso para su procesado
• Recibe los resultados de la capa de proceso
• Generan la presentación
• Visualizan la presentación al usuario (cliente)
2. Capa de proceso (servidor web)
• Recibe la entrada de datos de la capa de presentación
• Interactúa con la capa de datos para realizar operaciones
• Manda los resultados procesados a la capa de presentación
3. Capa de datos (servidor de datos)
• Almacena los datos
• Recupera datos
• Mantiene los datos
• segura la integridad de los datos
Arquitecturas para el desarrollo de los servicios Web
Las aplicaciones en tres niveles que
utilizan los XML Web Services son
adecuadas tanto para aplicaciones
aplicaciones simples.
arquitectura es útil cuando
necesita
aplicación
la capacidad de
de escritorio pero
basadas en Web como para
Esta
se
una
los
usuarios se conectan desde muchos
sitios distintos a través de una
interfaz http.
El SQL reside en el interior de los XML Web Services.
Los conjuntos de datos se generan en el servidor y se envían al
cliente como una secuencia XML, donde se pueden volver a convertir
en conjunto de datos.
 El conjunto de datos devueltos por el XML Web Services se puede
enlazarse directamente a los controles de los formularios.
 Los conjuntos de datos devueltos por los XML Web Services se
pueden utilizar para cargar datos manualmente en los distintos
controles de los formularios.
 Todas las reglas de empresa están dentro del código de los
formularios.
Bibliografía
• http://cs.uns.edu.ar/~pmd/sosd/downloads/Slides/10-WebServices.pdf
• https://desarrolloeinnovacionwebpe.wordpress.com/2015/05/12/ingenieria-web-vs-ingenieria-
de-
software/#:~:text=La%20ingenier%C3%ADa%20web%2C%20a%20diferencia,dise%C3%B1o%20y%
20an%C3%A1lisis%20de%20sistemas.
• https://programacionwebisc.wordpress.com/2-1-arquitectura-de-las-aplicaciones-web/
• https://programacionwebisc.wordpress.com/
• https://www.fib.upc.edu/es/estudios/grados/grado-en-ingenieria-informatica/plan-de-
estudios/asignaturas/ASW

ingenieria web.pptx

  • 5.
    Ingeniería web vsingeniería de software INGENIERÍA DE SOFTWARE INGENIERÍA WEB Suma total de programas de computadora, procedimientos, reglas para dar enfoque al mantenimiento y retiro del software. Utilización de enfoque científicos de ingeniería y gestión concentradas en el empleo y mantenimientos de sistemas y aplicaciones basados en la web. Existen diferentes metodologías para el desarrollo y ejecución de la ingeniería de software. Involucra metodologías de la ingeniería de software y algunas adicionales. Se crean sistemas que se alojan por completo en estaciones de trabajo del usuario final. Las aplicaciones se alojan en servidores y se ejecutan allí mismo pero sus funciones son visibles al usuario final. Trabaja con procesos más dinámicos consecuencia del campo en el que se está trabajando. Se apoya en herramientas CASE para mayor optimización Utiliza herramientas CASE pero con funcionalidades adicionales por el dinamismo de los procesos
  • 6.
    Ingenieria de Softwarese define como “un conjunto de etapas parcialmente ordenadas con la intención de lograr un objetivo, en este caso, la obtención de un producto de software de calidad” [Jacobson 1998]. Ingeniera Web es el proceso utilizado para crear, implantar y mantener aplicaciones y sistemas Web de alta calidad
  • 7.
    ¿Qué es ingenieríade software? • La ingeniería de software es una disciplina que estudia los procesos, métodos y herramientas involucradas hacia un software de calidad. • Este software de calidad tiene que cumplir las necesidades del usuario con el fin que fue realizado, tiende hacer una herramienta confiable, esto quiere decir que no debe de causar daños físicos y económicos a quien lo provee. [2] • El contenido del software debe ser: • Fácil de usar. • Modificable. • Transferible de un entorno a otro. • Consistente y seguro. • Hay que tomar en cuenta que la calidad del software es aquella que depende del proceso con el cual fue realizado. [3]
  • 8.
    Ingeniería web vsingeniería de software • La ingeniería web, a diferencia de la ingeniería de software cuenta con determinadas características ya es multidisciplinar y posee contribuciones de diferente arquitectura de la información, ingeniería de requisitos, diseño de interfaces para los usuarios, usabilidad, diseño gráfico, diseño y análisis de sistemas. • La ingeniería web se fue desarrollando a una velocidad inexplicable con un impacto para la sociedad aceptable y favorable, ya que el manejo que se le da a la información en las diferentes áreas que se presentan ha tenido como resultado que los humanos realicen sus actividades por medio de Internet. • La ingeniería Web contiene nuevos enfoques de disciplina, metodologías, aplicación de herramientas, técnicas, guía y patrones que tienen como aspectos científicos de este medio para cubrir las necesidades únicas de las aplicaciones Web. [1]
  • 11.
    ¿QUÉ SON LOSSERVICIOS WEB? A los servicios web se le entiende por un conjunto de aplicaciones o de tecnologías incluyendo XML, SOAP, WSDL, UDDI con capacidad para inter operar en la Web. Estas aplicaciones o tecnologías intercambian datos entre sí con el objetivo de ofrecer unos servicios específicos. Los proveedores del servicio son los que “exponen los servicios” ofreciendo sus servicios como procedimientos remotos, mientras que los usuarios “consumidores del servicio” solicitan un servicio llamando a estos procedimientos a través de la Web.
  • 12.
    Servicios web (webservices) son un nuevo modelo de desarrollo de aplicaciones distribuidas basadas en Internet • Un servicio web es un componente al que se puede acceder mediante protocolos Web estándar: – Los mensajes para invocar el servicio se codifican en XML – Los mensajes se pueden transportar utilizando HTTP o cualquier otro protocolo de transporte estándar • Estándar de W3C – XML – SOAP – WSDL
  • 13.
    Algunas características: • Permitenque las aplicaciones compartan información de forma remota • Permiten integrar sistemas heterogéneos de manera barata y fiable • Son unidades de código discretas, cada una de las cuales se encarga de un conjunto limitado de tareas • Están basados en XML, el lenguaje estándar de intercambio de información en Internet • Pueden utilizarse en cualquier plataforma o sistema operativo, independientemente del lenguaje de programación utilizado
  • 14.
    • ¿Es algototalmente nuevo? • Tecnologías integración: • RPC • CORBA • DCE • RMI • …
  • 26.
    Posible ejemplo: • Unservicio de reserva de paquetes de viaje • Un servicio de agenda compartido • Consulta de cotizaciones de bolsa, cambio de moneda, datos meteorológicos, etc.
  • 29.
  • 30.
    2.1. Definición yorígenes. 2.1. Definición y orígenes. 2.2.Punto de vista de negocio. 2.3.Punto de vista tecnológico 2.4.Administración de los procesos de negocio. 2.5.Bus de servicios empresariales. 2.6. Integración de aplicaciones. 2.7.Aplicaciones B2B (Business to Business) 2.8. Composición de servicios Web. 2.9.Estrategias de adopción de SOA
  • 31.
    Existen varios métodospara la separación de la presentación y la lógica de negocio. Los mas importantes son: • Cliente-servidor: el cliente interactúa con el usuario y el servidor procesa la información. Es uno de los métodos mas antiguos, y que ha dado lugar a nuevas arquitecturas. • Arquitecturas multicapa: consiste en dividir la aplicación en varios niveles o capas que realizan tareas concretas. La información fluye entre la • Arquitectura Modelo – Vista – Controlador (MVC): consiste en separar la aplicación en tres partes, el modelo (datos y reglas de negocio), la vista (representación de los datos) y el controlador (proceso de los datos de entrada). La diferencia fundamental con la arquitectura de tres capas reside en la forma en que se comunican los tres elementos capas contiguas en una organización vertical. 2.2.Punto de vista de negocio
  • 32.
    Estándares usados enarquitecturas SOA La arquitectura SOA se basa en estándares. Al ser una arquitectura distribuida y heterogénea necesita estándares para la integración de todos sus componentes. A continuación se describen los mas importantes. HTML • El lenguaje HTML ya se ha visto anteriormente. Es un lenguaje de marcas que usan los clientes web para presentar la información. XML • XML es un lenguaje de marcas pensado fundamentalmente para el intercambio de información. SOA hace un uso intensivo de XML para describir los servicios y los contenedores de los datos que usar y ofrece dicho servicio, así como en el paso de mensajes entre componentes. En Java existen varias API específicas para el procesado de XML. Una de las mas completas u flexibles es JAXP. Permite elegir entre varios parsers y es modular y ampliable mediante plugins. Se puede elegir entre varias APIs: SAX, DOM y StAX entre otras.
  • 33.
    JSON Es un formatode texto ligero para el intercambio de datos basado en un subconjunto del lenguaje JavaScript. Es entendible directamente por humanos y fácilmente interpretable y generable por máquinas, lo cual lo posiciona como un sustituto de XML en algunos casos. Su estructura familiarizados con la sintaxis lo hace especialmente fácil de interpretar para programadores de C, que comparten muchos otro programas como C++, Perl, Python o Java. SOAP SOAP (Simple Object Access Protocol) es un protocolo de intercambio de información en XML en red que se usa principalmente en servicios web usando HTTP como transporte. Deriva del protocolo XML-RPC, y actualmente se encuentra auspiciado por el W3C. La versión actual es la 1.2.
  • 34.
    WSDL WSDL (Web ServicesDescription Language) es una información escrita en XML que proporciona información acerca de un servicio web, permitiendo conocer la interfaz pública del servicio web. La versión actual es la 2.0. REST REST (REpresentational State Transfer) es un modelo arquitectura de software distribuida que se aplica a servicios web y mas simple que SOAP y WSDL. Es adecuado para escenarios básicos donde la integración sea sencilla, en contraposición de los escenarios “grandes”. A las implementaciones que siguen los principios de REST se las denomina “RESTful”.
  • 35.
    UDDI UDDI (Universal Description,Discovery and Integration) es un servicio de registro basado en XML que ayuda a la localización de servicios web. El servicio recibe mensajes SOAP y devuelve información sobre el WSDL del servicio. En 2006 Microsoft, IBM y SAP dejaron de dar soporte al registro en Internet, y actualmente se usa de forma residual dentro de algunas empresas.
  • 36.
    Una aplicación Web esproporcionada por un servidor Web y utilizada por usuarios que se Conect an desde cualquier punto vía clientes Web (browsers o navegadores). La arquitectura de un Sitio Web tiene tres componentes principales: 1. Un servidor Web 2. Una conexión de red 3. Uno o más clientes El servidor Web distribuye páginas de información formateada a los clientes que las solicitan. Los requerimientos son hechos a través de una conexión de red, y para ello se usa el protocolo HTTP. Una vez que se solicita esta petición mediante el protocolo HTTP y la recibe el servidor Web, éste localiza la página Web en su sistema de archivos y la envía de vuelta al navegador que la solicitó. Arquitecturas para el desarrollo de los servicios Web
  • 38.
    Las aplicaciones Webestán basadas en el modelo Cliente/Servidor que gestionan servidores web, y que utilizan como interfaz páginas web. Las páginas Web son el componente principal de una aplicación o sitio Web. Los browsers piden páginas (almacenadas o creadas dinámicamente) con información a los servidores Web. En algunos ambientes de desarrollo de aplicaciones Web, las páginas contienen código HTML y scripts dinámicos, que son ejecutados por el servidor antes de entregar la página. Una vez que se entrega una página, la conexión entre el browser y el servidor Web se rompe, es decir que la lógica del negocio en el servidor solamente se activa por la ejecución de los scripts de las páginas solicitadas por el browser (en el servidor, no en el cliente). Cuando el browser ejecuta un script en el cliente, éste no tiene acceso directo a los recursos del servidor. Hay otros componentes que no son scripts, como los applets (una aplicación especial que se ejecuta dentro de un navegador) o los componentes ActiveX. Los scripts del cliente son por lo general código JavaScript o VBSscript, mezclados con código HTML.
  • 39.
    La colección depáginas son en una buena parte dinámicas (ASP, PHP, etc.), y están agrupadas lógicamente para dar un servicio al usuario. El acceso a las páginas está agrupado también en el tiempo (sesión). Los componentes de una aplicación Web son: 1. Lógica de negocio. • Parte más importante de la aplicación. • Define los procesos que involucran a la aplicación. • Conjunto de operaciones requeridas para proveer el servicio. 2. Administración de los datos. • Manipulación de BD y archivos. 3. Interfaz • Los usuarios acceden a través de navegadores, móviles, PDAs, etc. • Funcionalidad accesible a través del navegador. • Limitada y dirigida por la aplicación. Las aplicaciones web se modelan mediante lo que se conoce como modelo de capas, Una capa representa un elemento que procesa o trata información. Los tipos son: • Modelo de dos capas: La información atraviesa dos capas entre la interfaz y la administración de los datos. • Modelo de n-capas: La información atraviesa varias capas, el más habitual es el modelo de tres capas.
  • 40.
    Modelo de dosCapas. Gran parte de la aplicación corre en el lado del cliente (fat client). Las capas son: • Cliente (fat client): La lógica de negocio está inmersa dentro de la aplicación que realiza el interfaz de usuario, en el lado del cliente. • Servidor: Administra los datos. Las limitaciones de este modelo son. • Es difícilmente escalable • Número de conexiones reducida • Alta carga de la red. • La flexibilidad es restringida • La funcionalidad es limitada.
  • 42.
    Modelo de tresCapas. Esta diseñada para superar las limitaciones de las arquitecturas ajustadas al modelo de dos capas, introduce una capa intermedia (la capa de proceso) Entre presentación y los datos, los procesos pueden ser manejados de forma separada a la interfaz de usuari o y a los datos, esta capa intermedia centraliza la lógica de negocio, haciendo la administración más sencil a, los datos se pueden integrar de múltiples fuentes, las aplicaciones web actuales se ajustan a este modelo. Las capas de este modelo son: 1. Capa de presentación (parte en el cliente y parte en el servidor) • Recoge la información del usuario y la envía al servidor (cliente) • Manda información a la capa de proceso para su procesado • Recibe los resultados de la capa de proceso • Generan la presentación • Visualizan la presentación al usuario (cliente)
  • 43.
    2. Capa deproceso (servidor web) • Recibe la entrada de datos de la capa de presentación • Interactúa con la capa de datos para realizar operaciones • Manda los resultados procesados a la capa de presentación 3. Capa de datos (servidor de datos) • Almacena los datos • Recupera datos • Mantiene los datos • segura la integridad de los datos
  • 45.
    Arquitecturas para eldesarrollo de los servicios Web Las aplicaciones en tres niveles que utilizan los XML Web Services son adecuadas tanto para aplicaciones aplicaciones simples. arquitectura es útil cuando necesita aplicación la capacidad de de escritorio pero basadas en Web como para Esta se una los usuarios se conectan desde muchos sitios distintos a través de una interfaz http.
  • 46.
    El SQL resideen el interior de los XML Web Services. Los conjuntos de datos se generan en el servidor y se envían al cliente como una secuencia XML, donde se pueden volver a convertir en conjunto de datos.  El conjunto de datos devueltos por el XML Web Services se puede enlazarse directamente a los controles de los formularios.  Los conjuntos de datos devueltos por los XML Web Services se pueden utilizar para cargar datos manualmente en los distintos controles de los formularios.  Todas las reglas de empresa están dentro del código de los formularios.
  • 48.
    Bibliografía • http://cs.uns.edu.ar/~pmd/sosd/downloads/Slides/10-WebServices.pdf • https://desarrolloeinnovacionwebpe.wordpress.com/2015/05/12/ingenieria-web-vs-ingenieria- de- software/#:~:text=La%20ingenier%C3%ADa%20web%2C%20a%20diferencia,dise%C3%B1o%20y% 20an%C3%A1lisis%20de%20sistemas. •https://programacionwebisc.wordpress.com/2-1-arquitectura-de-las-aplicaciones-web/ • https://programacionwebisc.wordpress.com/ • https://www.fib.upc.edu/es/estudios/grados/grado-en-ingenieria-informatica/plan-de- estudios/asignaturas/ASW