La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Desarrollo de Aplicaciones Web .NET

Presentaciones similares


Presentación del tema: "Desarrollo de Aplicaciones Web .NET"— Transcripción de la presentación:

1 Desarrollo de Aplicaciones Web .NET
Capitulo 4 Desarrollo de Aplicaciones Web .NET Miguel Ángel Niño Zambrano

2 Agenda Tipos de Aplicaciones. Arquitectura de Aplicaciones Web .NET.
Solución Basada en Servicios. Aplicaciones en Capas. Capa de Presentación Capa de Componentes Empresariales. Capa de Datos. Implementación.

3 Tipos de Aplicaciones Web
Aplicaciones Web: Proveen contenido desde un servidor a muchos clientes. Se visualiza a través de un navegador (ASP.NET Web forms) Servicios Web: Proveen “lógica de negocios” a otras aplicaciones de Internet (ASP.NET XML Web Services) Aplicaciones soportadas por Internet: Aplicaciones autónomas “stand-alone” que incorporan servicios de Internet. Por ejemplo: Ayudas, actualizaciones, etc. (Windows Forms, HTML Help, WebBrowser control) Aplicaciones P2P: Aplicaciones autónomas que usan Internet para conectarse con otros usuarios de la misma que corren sus propias instancias (System.Net)

4 Arquitectura de aplicaciones con .NET
Objetivos del Diseño de Aplicaciones Distribuidas: Solución al problema empresarial. Seguridad (Autenticación, comunicación segura). Alto rendimiento (Patrones de Implementación). Alto Rendimiento, Disponibilidad y Escalabilidad. Administrable y de fácil mantenimiento.

5 Solución Basada en servicios
Los servicios se diseñan generalmente para comunicarse entre sí con el mínimo grado de acoplamiento. Los servicios Web XML, permite la integración con las demás plataformas y tecnologías. Cada servicio está formado por una aplicación que dispone de sus propios orígenes de datos, lógica empresarial e interfaces de usuario. Un servicio puede presentar el mismo diseño interno que una aplicación tradicional de tres niveles, por ejemplo, los servicios (2) y (4) de la figura anterior. Puede generar y exponer un servicio que no disponga de una interfaz de usuario directamente asociada (un servicio diseñado para que lo invoquen otras aplicaciones a través de una interfaz de programación). Esto se muestra en el servicio (3). Cada servicio encapsula sus propios datos y administra las transacciones atómicas con sus propios orígenes de datos.

6 Aplicaciones en Capas Es importante tener en cuenta que las capas son simplemente agrupaciones lógicas de los componentes de software que conforman la aplicación o servicio. Ayudan a diferenciar entre los distintos tipos de tareas que realizan los componentes, facilitando el diseño de la reutilización en la solución

7 Aplicación de Ejemplo En este escenario, una empresa de venta al por menor ofrece a sus clientes la posibilidad de solicitar productos a través de un sitio Web de comercio electrónico o por teléfono. Los usuarios de Internet pueden visitar el sitio Web de la compañía y seleccionar productos de un catálogo en línea. De forma alternativa, los clientes pueden solicitar productos de una catálogo de pedidos por correo mediante una llamada por teléfono a un representante de ventas, que indica los detalles del pedido a través de una aplicación basada en Microsoft Windows. Una vez finalizado un pedido, los detalles de la tarjeta de crédito del cliente se autorizan mediante un servicio de tarjetas de crédito externo y la entrega se organiza a través de un servicio de correo externo.

8 Arquitectura de Solución del Ejemplo

9 Capa de Presentación Las capas de presentación más simples contienen componentes de interfaz, como formularios de Windows Forms o formularios Web de ASP.NET. Las interactuaciones más complejas conllevan el diseño de componentes de proceso de usuario que permiten organizar los elementos de la interfaz y controlar la interactuación con el usuario

10 Ejemplo: Capa de Presentación
En el caso de la aplicación comercial, son necesarias dos interfaces de usuario: Una para el sitio Web de comercio electrónico que utiliza el cliente. Otra para las aplicaciones basadas en formularios de Windows Forms utilizados por los representantes de ventas. Ambos tipos de usuario realizan tareas similares a través de estas interfaces. Por ejemplo, ambas interfaces deben permitir: Ver todos los productos disponibles. Agregar productos a una cesta de compra y especificar los detalles de pago como parte de un proceso de desprotección. Este proceso se puede realizar a parte en un componente de proceso de usuario independiente para facilitar el mantenimiento de la aplicación.

11 Características de las Interfaces de Usuario
Componentes: No inicializan, participan ni votan en transacciones. Presentan una referencia al componente de proceso de usuario actual si necesitan mostrar sus datos o actuar en su estado. Pueden encapsular tanto la funcionalidad de visualización como un controlador.

12 Características de las Interfaces de Usuario
Al aceptar las entradas de usuario: Adquieren los datos del usuario y atienden su entrada utilizando guías visuales (como informaciones sobre herramientas) y sistemas de validación, así como los controles necesarios para realizar la tarea en cuestión. Capturan los eventos del usuario y llaman a las funciones de control para indicar a los elementos de la interfaz de usuario que cambien el modo de visualización de los datos, bien inicializando una acción en el proceso de usuario actual, o bien, modificando los datos del mismo. Restringen los tipos de entrada del usuario. Por ejemplo, un campo Quantity puede limitar las entradas del usuario a valores numéricos.Realizan la validación de entrada de datos, por ejemplo, restringiendo el intervalo de valores que se pueden escribir en un campo determinado, o garantizando que se escriben los datos obligatorios.

13 Características de las Interfaces de Usuario
Al aceptar las entradas de usuario: Llevan a cabo la asignación y transformación simple de la información proporcionada por los controles del usuario en los valores necesarios para que los componentes subyacentes realicen su trabajo (por ejemplo, un componente de interfaz de usuario puede mostrar el nombre de un producto pero pasar el Id. del mismo a los componentes subyacentes). Interpretar las acciones del usuario (como las operaciones de arrastrar y colocar o los clics de botones) y llamar a una función de control. Pueden utilizar un componente de utilidad para el almacenamiento de datos en caché. Pueden utilizar un componente de utilidad para realizar la paginación.

14 Características de las Interfaces de Usuario
Al procesar los datos: Adquieren y procesan los datos de los componentes empresariales o de los componentes lógicos de acceso a datos de la aplicación. Realizan el formato de valores (como el formato adecuado de las fechas). Realizan las tareas de localización de los datos procesados (por ejemplo, utilizando cadenas de recursos para mostrar los encabezados de las columnas de una cuadrícula en el idioma correspondiente a la configuración regional del usuario). Normalmente, procesan los datos de una entidad empresarial. Estas entidades se suelen obtener del componente de proceso de usuario, aunque también se pueden obtener de los componentes de datos.

15 Características de las Interfaces de Usuario
Al procesar los datos: Proporcionan la información de estado al usuario, por ejemplo, indicando cuando una aplicación se encuentra en modo "desconectado" o "conectado". Pueden personalizar el aspecto de la aplicación en función de las preferencias del usuario o el tipo de dispositivo de cliente utilizado. Pueden utilizar un componente de utilidad para proporcionar funcionalidad de deshacer. Pueden utilizar un componente de utilidad para proporcionar funcionalidad de portapapeles. En gran parte de las aplicaciones basadas en Windows, resulta útil proporcionar capacidades de portapapeles no sólo para valores escalares; por ejemplo, tal vez desee permitir a los usuarios que copien y peguen un objeto completo de cliente. Esta funcionalidad se implementa normalmente colocando cadenas XML en el Portapapeles de Windows, o bien, disponiendo de un objeto global que mantiene los datos en memoria si el portapapeles es específico de la aplicación.

16 Capa de Componentes Empresariales
Son Llamados por: Interfaces de servicios Componentes de proceso de usuario Flujos de trabajo empresariales Otros componentes empresariales Patrones Aplicados: Canalización. Eventos. Diseño de una Interfaz de Servicios (Fachada).

17 Capa de datos Al trabajar con datos debe determinar :
El almacén de datos que utiliza. SGBDR, SA o Mensajería. El diseño de los componentes utilizados para obtener acceso al almacén de datos. (ADO.NET). Patron de diseño sin estado. El formato de los datos pasados entre componentes y el modelo de programación necesario para ello.

18 Diseño de la Directiva de Seguridad
Principios: Debe recurrir a sistemas de seguridad que se hayan comprobado y demostrado su eficacia. Deberá validar todos los datos que introduzcan los usuarios o envíen otros servicios. Considere por principio que los sistemas externos no son seguros. Aplique el principio del menor privilegio. Reduzca el área de superficie. Establezca como predeterminado un modo seguro. No confíe en la seguridad a través del ocultamiento. Siga los principios de STRIDE. (STRIDE responde a las siglas inglesas de Simulación, Alteración, Repudio, Revelación de información, Denegación de servicio y Elevación de privilegios).

19 Implementación Elementos físicos.
Equipo de trabajo y Gestión de la Configuración. Metodología de Desarrollo de software. Mejores prácticas.

20 Bibliografía Arquitectura de aplicaciones de .NET: Diseño de aplicaciones y servicios. Publicado: 26 de junio de 2006 Patterns & Practices Microsoft Corporation Diciembre de 2002.


Descargar ppt "Desarrollo de Aplicaciones Web .NET"

Presentaciones similares


Anuncios Google