Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porRico Bardales Modificado hace 10 años
1
“Un sistema complejo que funciona, casi siempre ha evolucionado a partir de un sistema simple que funciona. Un sistema complejo diseñado desde cero, casi nunca funciona y es imposible de arreglar. En esa situación, debe comenzarse de nuevo con un sistema simple que funciona” - John Gall en Systemantics: How Systems Really Work and How They Fail Patrones: Cuándo y Por qué utilizarlos en la implementación de arquitecturas corporativas Eugenio Pace - Product Manager patterns & practices
2
Agenda Qué es un patrón? Ejemplos Organizando patrones
Patrones para construir una aplicacion More detailed look into MVC Recursos disponibles
3
Construyendo una casa …….
Guías de diseño Planos Patrones Taxonomia Materiales Personas Proceso
4
Construyendo una casa …….
Guías de diseño Planos Taxonomy People Cimientos Techos Pisos Paredes Electricidad Canerias Calefaccion Estructura Cieloraso Zocalos Ceramicas Rebar Concrete Patrones Taxonomy Taxonomia Materiales Personas People Proceso
5
Construyendo una casa …….
Guías de diseño Planos Patrones Taxonomia Materiales Personas Proceso
6
Construyendo una casa …….
Guías de diseño Planos Patrones Taxonomia Materiales Personas Proceso
7
Construyendo una casa …….
Guías de diseño Planos Fir, #2 2”x4”x8’ boards 412 ASTM 4’x8’x ½” placas 120 20 psf load 48’ listones 24 NM 12-2 12” Cable 350’ DWV ½ “ cano cobre 200’ Spec Descripcion Cant Lista de Materiales Patrones Materiales Taxonomia Personas Proceso
8
Construyendo una casa …….
Country Tilt-up Departamentos PH Stick Frame Pre-hung doors Truss Frame Petit Hotel Post and Beam Pre-fab trusses Framing patterns Patrones de cableados Patrones Guías de diseño Planos Patrones Taxonomia Materiales Personas Proceso
9
Construyendo una aplicación …….
Guias de diseño Planos Patrones Taxonomia Elementos Personas Proceso
10
Construyendo una aplicación …….
Guias de diseño Planos Patrones Taxonomia Elementos Personas Proceso
11
Construyendo una aplicacion …….
Guias Guias de diseño Planos Local – dentro de la compañía Industria - principios Patrones Taxonomia Elementos Personas Proceso
12
Construyendo una aplicación …….
Guias de diseño Planos Patrones Taxonomia Elementos Personas Proceso
13
Construyendo una aplicación …….
Guias de diseño Planos Elementos Application Controller (Custom) 1 PAG Data Access Component Microsoft SQL Server Microsoft Windows Server 2003 3 Microsoft ASP.NET Descripción Cant. Patrones Taxonomia Elementos Personas Proceso
14
Construyendo una aplicación …….
Patrones Aplicación en capas Guias de diseño Planos Distribución de componentes Broker Model-View-Controller Patrones Observer Facade Gateway Taxonomia Elementos Implementando MVC con ASP.NET Personas Proceso Implementando Singleton con C#
15
Qué es un patrón? Es una solución A un problema recurrente
En un contexto dado Un patrón describe un problema frecuente que ocurre en un contexto determinado y propone una solución al mismo Es “incompleto” por naturaleza
16
Por qué son importantes?
No “reinventar la rueda” Mayor eficienca Reduccion de riesgos
17
Singleton Contexto: Problema:
Controlar el acceso a una clase controlando su instanciación Problema: Ciertos tipos de datos necesitan ser accedidos y mantenidos globalmente Esta información es única a lo largo de todo el sistema Ejemplo: un contador
18
Singleton Solución: public class Counter {
private static Counter _instance = null; private Counter() {} public static Counter getInstance() if (_instance==null) _instance = new Counter(); } return _instance; //... functions provided by Counter
19
Arquitectura en capas Contexto: Problema:
Diseño de una aplicación de negocios compleja, con multiples componentes y numerosos niveles de abstracción Problema: Como estructurar dicha solución para que cumpla con requerimientos de mantenibilidad, escalabilidad, seguridad y reusabilidad demandados?
20
Data Access Components
Arquitectura en capas Users Operational Management Security Communication UI Components UI Process Components Service Interfaces Business Workflows Business Components Business Entities Data Access Components Service Agents Data Sources Services
21
Solución de ingeniería
Patrones y soluciones Requirimientos Packaged Software Custom Software Hardware Patterns Solución de ingeniería Packaged Software Custom Software Hardware
22
Organizando el pensamiento
23
Organizando el pensamiento
24
Organizando el pensamiento
Arquitectura Diseño Implementación
25
Organizando el pensamiento
Datos Apl. Deploy Infraestructura Arquitectura Diseño Implementación
26
Patrones Datos Aplicación Deployment Infraestructura Arquitectura
Diseño Implementación
27
Patrones –Languaje de soluciones
Aplicación en capas Aplicación en 3 capas Aplicación con capas de servicio
28
Patrones –Languaje de soluciones
Datos Aplicación Deployment Infraestructura Aplicación en capas Arquitectura Diseño Implementación Aplicación en 3 capas Aplicación con capas de servicio
29
Patrones –Languaje de soluciones
Datos Aplicación Deployment Infraestructura Aplicacion en capas Distribución en n-nodos Arquitectura Diseño Implementación Aplicación en 3 capas Aplicación con capas de servicio 3-nodos 4-Tier
30
Patrones –Languaje de soluciones
Datos Aplicación Deployment Infraestructura Layered Application 4-Tier 3-Tier Tiered Distribution Arquitectura Diseño Implementación Three Layered Application Layered Services Application Simple Web Complex Web Rich Client Ext. Enterprise
31
Arquitectura Deployment Aplicación Infraestructura Complex Web App
Seguridad Reuso de componentes Administrabilidad Performance Discrete Logical Layers Data & Functional Analysis Flexibilidad Administrabilidad Bajo acoplamiento Tiered Distribution Escalabilidad Disponibilidad Performance Seguridad
32
Diseño Deployment Aplicación Infraestructura Diseño de clases:
Dependencias Mapeo de Procesos a Procesadores Diseño de clases: Seguridad Comunicaciones Acceso a datos Excepciones Logging Clusters Zonas Policies Protocolos Enlaces
33
Implementación Deployment Aplicación Infraestructura
Dependencias de configuración Distribución – Componentes, Maquinas, Files… Implementación de Clases & Mecanismos Product usage – eg: .NET Web Services Spec de Hardware y Configuración IP Addresses Ports Nombres de Servers & Files
34
Patrones - Clusters Datos Arquitectura Diseño Implementación
Aplicación Deployment Infraestructura Arquitectura Diseño Implementación
35
Patrones - Clusters Componentes Datos Arquitectura Diseno
Aplicacion Deployment Infraestructura Arquitectura Diseno Implementacion Componentes
36
Patrones - Clusters Componentes Framework de presentacion Datos
Aplicacion Deployment Infraestructura Arquitectura Diseno Implementacion Componentes Framework de presentacion
37
Patrones - Clusters Components Seguridad Presentation Framework Datos
Aplicación Deployment Infraestructura Arquitectura Diseño Implementación Components Seguridad Presentation Framework
39
Arquitectura de base
40
Implementación
41
Infraestructura
42
Patrones de Aplicacion
43
Patrones de Integración
44
Recursos adicionales Las guias de Patterns & practices, son la recomendacion de Microsoft a arqitectos, desarrolldores, y profesinales de IT responsables por la produccion y operacion de soluciones corporativas con tecnologia Microsoft Eugenio Pace
45
© 2004 Microsoft Corporation. All rights reserved
© 2004 Microsoft Corporation. All rights reserved. MICROSOFT CONFIDENTIAL. INTERNAL USE ONLY.
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.