Arquitectura SOA y herramientas .net Juan Pablo García Software Developer Manager Datco Chile [email_address]
Agenda Problemática SOA Uso de estándares Aspectos de seguridad Single Sing-On Herramientas .net
Problemática EAI Clientes Servicios Proveedores B2B
Problemática Los sistemas deben apoyar,  no inhibir , los procesos de negocios. Difícil  integrar sistemas  heterogéneos ,  aplicaciones heredadas, islas de datos. Calidad deficiente de los datos . Debe hacerse sobre la base del  conocimiento  existente del equipo de informática. La infraestructura de informática debe crecer, escalar e incorporar sistemas nuevos.
Problemática .NET Linux J2EE Unix OS/390 MQ DB2 Layer Técnico Hardware, Network Cómo conectar J2EE con .NET? Finance People Soft SAP Siebel Dir Outlook Layer de Sistemas Aplicaciones y componentes Cómo conectar SAP a Siebel? Layer Procesos Proceso multi sistema “END TO END” de ordenes de compra. Layer de Servicios Cómo conectar sistema de ventas al de clientes? Customer Employee Sales Product
SOA
SOA Service Oriented Architecture es Estilo de arquitectura Una colección de Servicios Una comunicación entre servicios Un intercambio de mensajes Una coordinación Un servicio es Una función que es Bien definida Auto-contenida Sin dependencias del contexto o estado de otro servicio
SOA 4 Principios para un Servicio SERVICE ORIENTATION Compatibilidad basada en las políticas Se comparten esquemas y contratos no clases Servicios  autónomos Fronteras explicitas
SOA – Requerimentos Seguridad Confiabilidad Transacciones Descubrimiento Gestión Independencia de Transporte Interoperabilidad Orquestación de Proceso
SOA - Beneficios Bajo acoplamiento Transparencia de Ubicación Re-uso de Código Roles de Desarrollo Enfocados Desarrollo en Paralelo Mayor “Testabilidad”  (Pruebas unitarias) Mejor Escalabilidad Mejora Disponibilidad
SOA - Beneficios
SOA – Que no es No es una revolución – mas bien evolución No es Web Services No es XML (ni Texto, ni algún estándar específico). La idea es usar los estándares actuales, que pueden variar No es programación “late-bound” (XmlDom para todo) – solo la especificación del mensaje, el contrato No es una especificación del estilo “arquitectura de capas”, sino que una forma de acoplamiento de modulos No es la utilización a la fuerza de Estándares de Aplicación, aunque son beneficiosos
SOA - Agnóstico APP Cliente Business Component Business Component Negocio, No tiene idea de servicios Servicios, No tienen idea del transporte Transporte, independiente  de quien lo llame. BPM
SOA - Desempeño Diseño de Interfaz Robusta. Use orientación a Mensajes no estilo RPC. Use parámetros de tipos “primitivos” Tipos fuertes: int, Double Tipos Libres: STRING Para métodos pesados, validar parámetros.
Uso de estándares Compatibility Extensibility Predictability Interoperability Leverage Existing Skills Rapid Development
Uso de estándares Industry standards  Banking SWIFT Securities DTC/SIRF Insurance ACORD Healthcare HL7 Manufacturing OAGIS Distribution UCC/EAN/VICS Retail NRF/ARTS End users developing new schemas P&G  Collaborative planning Merisel High-tech distribution (RosettaNet) FDC/Citigroup TransPoint internet billing
Uso de estándares Ejemplo: HL7 ¿Qué es? Es un Estándar para el Intercambio Electrónico de Datos entre Sistemas de Información de Salud. Permite que las Aplicaciones Clínicas se comuniquen entre sí. Independientemente de: Arquitectura de Datos Plataforma Tecnológica Lenguaje de Desarrollo
Aspectos de seguridad Identificación y Autentificación. Autorización: control de acceso. Comunicación segura: privacidad e integridad. No repudiación. Flujo de identidad
Aspectos de seguridad Identificación  ¿Quién es?  Operación que consiste en decirle al sistema quien es el usuario.  Ej:  login Autentificación. Operación que permite  asegurarse que el interlocutor es quien dice que es.  Ej: se compara la  pwd  recibida con la pwd del usuario que aparece en el archivo de passwords. Se establece así un camino confiable. Autorización.  Control de acceso. ¿Qué puede hacer el  usuario? ¿Cuáles son sus derechos?
Aspectos de seguridad Comunicación segura:  Privacidad. Sólo el destinatario puede leer el mensaje. integridad. El mensaje no ha sido alterado en el canal de comunicación. No repudiación. Repudiación = Interlocutor que envío el mensaje niega que haya enviado ese mensaje
Herramientas .NET UI Components UI Process Components Users Service Agents Data Access Components Data  Sources Services Agents Service Agents Operational   Management Security Communication Business Workflows Business Components Business Entities Service Interfaces Business Workflows Business Components Business Entities Service Interfaces
Herramientas .NET UI Components UI Process Components Users Agents Service Agents Operational   Management Security Communication Business Workflows Business Components Business Entities Service Interfaces Services
Herramientas .NET Plataforma Microsoft SOA Construcción de Servicios Integración y procesos de negocio Consumir Servicios Web Administración del ciclo de vida
Herramientas .NET Construcción de Servicios .NET Framework 3.0 Windows Communication Foundation (WCF) Windows Workflow Foundation (WF) Visual Studio
Herramientas .NET Integración y procesos de negocio BizTalk Server Microsoft Office SharePoint Server
Herramientas .NET Consuming Web Services Windows Vista? Office System 2007 Suite Office (Word, Excel, InfoPath, etc) Office Business Applications (OBAs)
Herramientas .NET Administración del ciclo de vida Dynamic Systems Initiative (DSI)  System Center System Center Operations Manager 2007  Microsoft's Operation Framework (MOF)
Referencias .Net Framework 3.0  http://www.netfx3.com/ Microsoft MSDN  http:// msdn2.microsoft.com/en-us/default.aspx Microsoft SOA http://www.microsoft.com/biztalk/solutions/soa/default.mspx Esta presentación http://liarjo.spaces.live.com/
¿Preguntas?

Arquitectura SOA y herramientas .net

  • 1.
    Arquitectura SOA yherramientas .net Juan Pablo García Software Developer Manager Datco Chile [email_address]
  • 2.
    Agenda Problemática SOAUso de estándares Aspectos de seguridad Single Sing-On Herramientas .net
  • 3.
    Problemática EAI ClientesServicios Proveedores B2B
  • 4.
    Problemática Los sistemasdeben apoyar, no inhibir , los procesos de negocios. Difícil integrar sistemas heterogéneos , aplicaciones heredadas, islas de datos. Calidad deficiente de los datos . Debe hacerse sobre la base del conocimiento existente del equipo de informática. La infraestructura de informática debe crecer, escalar e incorporar sistemas nuevos.
  • 5.
    Problemática .NET LinuxJ2EE Unix OS/390 MQ DB2 Layer Técnico Hardware, Network Cómo conectar J2EE con .NET? Finance People Soft SAP Siebel Dir Outlook Layer de Sistemas Aplicaciones y componentes Cómo conectar SAP a Siebel? Layer Procesos Proceso multi sistema “END TO END” de ordenes de compra. Layer de Servicios Cómo conectar sistema de ventas al de clientes? Customer Employee Sales Product
  • 6.
  • 7.
    SOA Service OrientedArchitecture es Estilo de arquitectura Una colección de Servicios Una comunicación entre servicios Un intercambio de mensajes Una coordinación Un servicio es Una función que es Bien definida Auto-contenida Sin dependencias del contexto o estado de otro servicio
  • 8.
    SOA 4 Principiospara un Servicio SERVICE ORIENTATION Compatibilidad basada en las políticas Se comparten esquemas y contratos no clases Servicios autónomos Fronteras explicitas
  • 9.
    SOA – RequerimentosSeguridad Confiabilidad Transacciones Descubrimiento Gestión Independencia de Transporte Interoperabilidad Orquestación de Proceso
  • 10.
    SOA - BeneficiosBajo acoplamiento Transparencia de Ubicación Re-uso de Código Roles de Desarrollo Enfocados Desarrollo en Paralelo Mayor “Testabilidad” (Pruebas unitarias) Mejor Escalabilidad Mejora Disponibilidad
  • 11.
  • 12.
    SOA – Queno es No es una revolución – mas bien evolución No es Web Services No es XML (ni Texto, ni algún estándar específico). La idea es usar los estándares actuales, que pueden variar No es programación “late-bound” (XmlDom para todo) – solo la especificación del mensaje, el contrato No es una especificación del estilo “arquitectura de capas”, sino que una forma de acoplamiento de modulos No es la utilización a la fuerza de Estándares de Aplicación, aunque son beneficiosos
  • 13.
    SOA - AgnósticoAPP Cliente Business Component Business Component Negocio, No tiene idea de servicios Servicios, No tienen idea del transporte Transporte, independiente de quien lo llame. BPM
  • 14.
    SOA - DesempeñoDiseño de Interfaz Robusta. Use orientación a Mensajes no estilo RPC. Use parámetros de tipos “primitivos” Tipos fuertes: int, Double Tipos Libres: STRING Para métodos pesados, validar parámetros.
  • 15.
    Uso de estándaresCompatibility Extensibility Predictability Interoperability Leverage Existing Skills Rapid Development
  • 16.
    Uso de estándaresIndustry standards Banking SWIFT Securities DTC/SIRF Insurance ACORD Healthcare HL7 Manufacturing OAGIS Distribution UCC/EAN/VICS Retail NRF/ARTS End users developing new schemas P&G Collaborative planning Merisel High-tech distribution (RosettaNet) FDC/Citigroup TransPoint internet billing
  • 17.
    Uso de estándaresEjemplo: HL7 ¿Qué es? Es un Estándar para el Intercambio Electrónico de Datos entre Sistemas de Información de Salud. Permite que las Aplicaciones Clínicas se comuniquen entre sí. Independientemente de: Arquitectura de Datos Plataforma Tecnológica Lenguaje de Desarrollo
  • 18.
    Aspectos de seguridadIdentificación y Autentificación. Autorización: control de acceso. Comunicación segura: privacidad e integridad. No repudiación. Flujo de identidad
  • 19.
    Aspectos de seguridadIdentificación ¿Quién es? Operación que consiste en decirle al sistema quien es el usuario. Ej: login Autentificación. Operación que permite asegurarse que el interlocutor es quien dice que es. Ej: se compara la pwd recibida con la pwd del usuario que aparece en el archivo de passwords. Se establece así un camino confiable. Autorización. Control de acceso. ¿Qué puede hacer el usuario? ¿Cuáles son sus derechos?
  • 20.
    Aspectos de seguridadComunicación segura: Privacidad. Sólo el destinatario puede leer el mensaje. integridad. El mensaje no ha sido alterado en el canal de comunicación. No repudiación. Repudiación = Interlocutor que envío el mensaje niega que haya enviado ese mensaje
  • 21.
    Herramientas .NET UIComponents UI Process Components Users Service Agents Data Access Components Data Sources Services Agents Service Agents Operational Management Security Communication Business Workflows Business Components Business Entities Service Interfaces Business Workflows Business Components Business Entities Service Interfaces
  • 22.
    Herramientas .NET UIComponents UI Process Components Users Agents Service Agents Operational Management Security Communication Business Workflows Business Components Business Entities Service Interfaces Services
  • 23.
    Herramientas .NET PlataformaMicrosoft SOA Construcción de Servicios Integración y procesos de negocio Consumir Servicios Web Administración del ciclo de vida
  • 24.
    Herramientas .NET Construcciónde Servicios .NET Framework 3.0 Windows Communication Foundation (WCF) Windows Workflow Foundation (WF) Visual Studio
  • 25.
    Herramientas .NET Integracióny procesos de negocio BizTalk Server Microsoft Office SharePoint Server
  • 26.
    Herramientas .NET ConsumingWeb Services Windows Vista? Office System 2007 Suite Office (Word, Excel, InfoPath, etc) Office Business Applications (OBAs)
  • 27.
    Herramientas .NET Administracióndel ciclo de vida Dynamic Systems Initiative (DSI) System Center System Center Operations Manager 2007 Microsoft's Operation Framework (MOF)
  • 28.
    Referencias .Net Framework3.0 http://www.netfx3.com/ Microsoft MSDN http:// msdn2.microsoft.com/en-us/default.aspx Microsoft SOA http://www.microsoft.com/biztalk/solutions/soa/default.mspx Esta presentación http://liarjo.spaces.live.com/
  • 29.