Reduciendo el espacio entre Tecnología y Negocio: Arquitecturas de Referencia Carlos Oramas...
-
Upload
vito-julio -
Category
Documents
-
view
222 -
download
0
Transcript of Reduciendo el espacio entre Tecnología y Negocio: Arquitecturas de Referencia Carlos Oramas...
Reduciendo el espacio entre Reduciendo el espacio entre Tecnología y Negocio:Tecnología y Negocio:Arquitecturas de ReferenciaArquitecturas de Referencia
Carlos Oramas (Microsoft)Carlos Oramas (Microsoft)Alberto Ruiz (IECISA)Alberto Ruiz (IECISA)Julio Bravo (FCC)Julio Bravo (FCC)
¿Cuál es el problema?¿Cuál es el problema?
Microsoft. NET es de propósito general Microsoft. NET es de propósito general Permite una amplia variedad de tipos de Permite una amplia variedad de tipos de aplicaciones y arquitecturasaplicaciones y arquitecturasSin embargo, cada segmento de mercado Sin embargo, cada segmento de mercado tienen necesidades comunes. La plataforma tienen necesidades comunes. La plataforma no siempre soporta directamente estas no siempre soporta directamente estas necesidades sin un trabajo manualnecesidades sin un trabajo manual
¿Cuántas veces los desarrolladores ¿Cuántas veces los desarrolladores preguntan? preguntan?
La mayoría de nuestra aplicaciones necesitan La mayoría de nuestra aplicaciones necesitan algo como esto …algo como esto …No se sabe cuantas veces hemos codificado No se sabe cuantas veces hemos codificado cosas como estas …cosas como estas …Cómo me gustaría encontrar una solución que Cómo me gustaría encontrar una solución que pueda reutilizarpueda reutilizar
Características producto, Operaciones Características producto, Operaciones Soporte problemas, Doc. ReferenciaSoporte problemas, Doc. Referencia
Características producto, Operaciones Características producto, Operaciones Soporte problemas, Doc. ReferenciaSoporte problemas, Doc. Referencia
Necesidades DesarrolladoresNecesidades Desarrolladores
Experiencia Experiencia ““Proyectos complejos, despliegues problemáticos, Proyectos complejos, despliegues problemáticos, gestión costosa, problemas de seguridad.”gestión costosa, problemas de seguridad.”
Herramientas desarrollo y gestión Herramientas desarrollo y gestión Windows Server SystemWindows Server System
Herramientas desarrollo y gestión Herramientas desarrollo y gestión Windows Server SystemWindows Server System
SolucionesSolucionesSolucionesSoluciones
DocumentaciónDocumentaciónDocumentaciónDocumentación
Guías ArquitecturaGuías ArquitecturaGuías ArquitecturaGuías Arquitectura
Plataforma Plataforma TecnológicaTecnológicaPlataforma Plataforma TecnológicaTecnológica
Modelos Arquitectura & PatronesModelos Arquitectura & Patrones Arquitecturas Ref. & Bloques CódigoArquitecturas Ref. & Bloques Código
Modelos Arquitectura & PatronesModelos Arquitectura & Patrones Arquitecturas Ref. & Bloques CódigoArquitecturas Ref. & Bloques Código
Soluciones de Microsoft & PartnerSoluciones de Microsoft & Partner Soluciones y servicios a medida Soluciones y servicios a medida
Soluciones de Microsoft & PartnerSoluciones de Microsoft & Partner Soluciones y servicios a medida Soluciones y servicios a medida
patterns & practicespatterns & practicespatterns & practicespatterns & practices““Las empresas puedan desplegar Las empresas puedan desplegar aplicaciones .NET seguras y con aplicaciones .NET seguras y con arquitecturas adecuadas”arquitecturas adecuadas”
““Las empresas puedan desplegar Las empresas puedan desplegar aplicaciones .NET seguras y con aplicaciones .NET seguras y con arquitecturas adecuadas”arquitecturas adecuadas”
Resultado predecibles, costes Resultado predecibles, costes controlados, fácil aprendizaje, seguro controlados, fácil aprendizaje, seguro
Resultado predecibles, costes Resultado predecibles, costes controlados, fácil aprendizaje, seguro controlados, fácil aprendizaje, seguro
Guías de ArquitecturaGuías de ArquitecturaMicrosoft patterns & practices (PAG)Microsoft patterns & practices (PAG)
ProbadasProbadasBasadas en la experiencia propia y de clientesBasadas en la experiencia propia y de clientes
FiableFiableLos mejores consejos disponiblesLos mejores consejos disponibles
PrecisaPrecisaTécnicamente validada y probadaTécnicamente validada y probada
UtilizableUtilizableFácilmente incorporable y utilizableFácilmente incorporable y utilizable
PertinentePertinenteDirigida a escenarios del mundo realDirigida a escenarios del mundo real
Disponibles onlineDisponibles online http://www.microsoft.com/practiceshttp://www.microsoft.com/practices
Disponibles en forma de libroDisponibles en forma de librohttp://shop.microsoft.com/practiceshttp://shop.microsoft.com/practices
Guías de Arquitectura (PAG)Guías de Arquitectura (PAG)patterns & practices – soluciones reusablespatterns & practices – soluciones reusables
PatronesPatronesLos Patrones son una forma Los Patrones son una forma efectiva de transmitir efectiva de transmitir arquitecturas, diseños e arquitecturas, diseños e implementaciones. Estas implementaciones. Estas guías de patrones son guías de patrones son reutilizadas en los Bloques reutilizadas en los Bloques Preconstruidos y Preconstruidos y Arquitecturas de ReferenciaArquitecturas de Referencia
EjemplosEjemplos .Enterprise Solution Patterns .Enterprise Solution Patterns for .NETfor .NET Network Infrastructure PatternsNetwork Infrastructure Patterns
PatronesPatronesLos Patrones son una forma Los Patrones son una forma efectiva de transmitir efectiva de transmitir arquitecturas, diseños e arquitecturas, diseños e implementaciones. Estas implementaciones. Estas guías de patrones son guías de patrones son reutilizadas en los Bloques reutilizadas en los Bloques Preconstruidos y Preconstruidos y Arquitecturas de ReferenciaArquitecturas de Referencia
EjemplosEjemplos .Enterprise Solution Patterns .Enterprise Solution Patterns for .NETfor .NET Network Infrastructure PatternsNetwork Infrastructure Patterns
DD AA DD II
AA
DD
II
PatronesPatrones
Bloques PreconstruidosBloques PreconstruidosCódigo Reusable de Código Reusable de subsistemas que abordan subsistemas que abordan problemas técnicos problemas técnicos comunes a múltiples comunes a múltiples escenarios. escenarios.
EjemplosEjemplos Building Secure ASP.NETBuilding Secure ASP.NET ApplicationsApplications Data Access for .NETData Access for .NET Exception Management in .NETException Management in .NET
Bloques PreconstruidosBloques PreconstruidosCódigo Reusable de Código Reusable de subsistemas que abordan subsistemas que abordan problemas técnicos problemas técnicos comunes a múltiples comunes a múltiples escenarios. escenarios.
EjemplosEjemplos Building Secure ASP.NETBuilding Secure ASP.NET ApplicationsApplications Data Access for .NETData Access for .NET Exception Management in .NETException Management in .NET
DD AA DD II
AA
DD
II
Bloques PreconstruidosBloques Preconstruidos
Arquitecturas de Ref.Arquitecturas de Ref.Arquitecturas a nivel de Arquitecturas a nivel de Infraestructuras para Infraestructuras para escenarios comunes que escenarios comunes que abordan:abordan: requisitos de negociorequisitos de negocio requisitos operacionalesrequisitos operacionales restricciones técnicasrestricciones técnicas
EjemplosEjemplos Application Architecture Application Architecture for .NETfor .NET Microsoft Systems ArchitectureMicrosoft Systems Architecture
Arquitecturas de Ref.Arquitecturas de Ref.Arquitecturas a nivel de Arquitecturas a nivel de Infraestructuras para Infraestructuras para escenarios comunes que escenarios comunes que abordan:abordan: requisitos de negociorequisitos de negocio requisitos operacionalesrequisitos operacionales restricciones técnicasrestricciones técnicas
EjemplosEjemplos Application Architecture Application Architecture for .NETfor .NET Microsoft Systems ArchitectureMicrosoft Systems Architecture
DD AA DD II
AA
DD
II
Arqu. Ref. InfraestructuraArqu. Ref. Infraestructura
Futuro PAG: Enterprise LibraryFuturo PAG: Enterprise Library
Librería de software reusable para resolver Librería de software reusable para resolver problemas comunes en los desarrollos problemas comunes en los desarrollos empresarialesempresariales
Parte de Parte de patterns & practicespatterns & practices
Foco en:Foco en:consistenciaconsistencia
extensibilidadextensibilidad
facilidad de usofacilidad de uso
integraciónintegración
Orientación y guía, Orientación y guía, no un productono un producto
SoporteSoporteSuministrado ‘tal cual’. El Soporte de Suministrado ‘tal cual’. El Soporte de Productos de Microsoft lo tratará como código Productos de Microsoft lo tratará como código escrito por el usuarioescrito por el usuario
Funcionalidad & Modelo de usoFuncionalidad & Modelo de usoProporciona un punto de arranque para Proporciona un punto de arranque para realizar la arquitectura, diseñado para ser realizar la arquitectura, diseñado para ser personalizado y extendidopersonalizado y extendido
Versiones & CompatibilidadVersiones & CompatibilidadFrecuentes versiones, evolucionando para Frecuentes versiones, evolucionando para atender a las demandas de los clientes. La atender a las demandas de los clientes. La compatibilidad con versiones anteriores no compatibilidad con versiones anteriores no está garantizadaestá garantizada
Formato de publicaciónFormato de publicaciónPublicado con todo el código, test unitarios y Publicado con todo el código, test unitarios y documentación de diseñodocumentación de diseño
© 2004 Microsoft Corporation. All rights reserved.© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
Arquitecturas Empresariales FCC Framework .NET
Alberto Ruiz
Noviembre 2004
¿Qué es el Framework?
Herramienta que asiste al desarrollador en la creación de
nuevos proyectos en tecnología Microsoft .NET reutilizando
el conocimiento del negocio.
¿Qué elementos lo componen?
Herramientas de desarrollo•Plantillas (Templates)•Add-ins•Integración con IDE
Guias / Documentación• Guía de referencia• Manual de Programación• Manual de Operación
Servicios de Ejecución• Presentación• Negocio• Datos• Seguridad• Operación
Objetivos de diseño
Modularidad. Bajo acoplamiento, Alta cohesión.
Simplicidad. Aislamiento de algoritmos y estructuras complejas.
Extensibilidad. Ampliación de funcionalidad, sin alterar su estructura ó diseño.
Suficiencia. Cobertura de las funcionalidades requeridas.
Mantenibilidad. Diseño, implementación y documentación bajo un estándar.
Escalabilidad. Potencial crecimiento vertical y horizontal.
Referencias Microsoft Platform Architectural Guidance (PAG)
Microsoft Building Blocks
Contexto de ejecuciónFCC@net
Sistema Operativo
Framework Microsoft .NET
FCC@net
Proyectos .NET
Integración Microsoft VS 2003
Creación de proyectos basadas en FCC@net
Inserción guiada de elementos en proyectos.
Documentación de referencia on-line integrada.
Microsoft Management Console Administración basada en roles.
Windows Authorization Manager.
Custom Authorization Manager.
Administración de usuarios locales de aplicaciones basadas FCC@net.
Servicios
Modelo Vista Controlador (MVC).
Mantenimiento de datos. CRUD, Maestro-Detalle, filtros, etc.
Reutilización entorno Windows / Web.
Multi-idioma.
Acceso a Datos. Gestión de conexiones, transacciones,
independencia del motor de BB.DD.
Autenticación. Extensión de los métodos de personalizados.
Autorización. Basa en roles.
Monitorización.
Administración. Gestión centralizada de roles y aplicaciones.
Normalización de procedimientos.
Modelo Aplicación Empresarial
Componentes IU
Componentes de Proceso IU
Interfaz de Servicio
EntidadesFlujos Comp.
Componentes
Acceso a Datos
Agentes de
Servicio
Se
gurida
d
Ge
stión d
e O
pera
cione
s
Co
mu
nica
ción
FC
C.S
ecu
rity
FC
C.A
dm
inis
tration
FC
C.E
xce
ptio
n
FC
C.D
iag
no
stics
FCC.Interface
FCC.DataMaintenance
FCC.Globalization
FCC.Data
Inconvenientes del diseño tradicional
1. Interfases de acceso a datos no orientados a
negocio.
2. Implementación de sistemas transaccionales
comprometidos con la arquitectura de la aplicación.
3. Migración ó incorporación de otros orígenes de
datos costosos o incluso inviables.
4. Utilización directa de ADO.NET.
5. Implementaciones no homogéneas.
Servicio de Acceso a Datos
DataBroker
DbHelper
Gestor
Acceso
Datos
Config
(XML)
Comp.
Acceso
Datos
Comp.
Acceso
Datos
BB.DDBB.DD
Framework
Aplicación
1
2
3
4
5
6
7
Provider
Servicio de Acceso a Datos
DataConfigHandler
«usos»
«usos»«usos»
«usos» «usos»
«usos» «usos»
DataProviderManager
IConfigurationSectionHandlerDataBrokerBase
DataBrokerConfig
DataConfigCacheDataHelper
DataProviderConfigMiClaseAccesoDatos
XXXCommand
XXXConnection
XXXDataReader
XXXDataAdapter
IDbConnection
IDbCommand
IDbDataReader
IDbDataAdapter
«usos»
«usos»
«usos»
«usos»
Proveedor ADO.NET
Informática El Corte Inglés
¿Preguntas?¿Preguntas?
© 2004 Microsoft Corporation. All rights reserved.© 2004 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.