Arquitectura de Software Componentes y Middleware [1] Componentes y Middleware. Sobre el informe



Documentos relacionados
Componentes y Middleware. Arquitectura de Software Componentes y Middleware [1] Stakeholders. Sobre el informe. Calidad según los stakeholders

Ingeniería de Software. Hernán Astudillo Departamento de Informática Universidad Técnica Federico Santa María <hernan at acm.org>

Arquitectura de Software V: Prácticas. Contenido del curso

JAVA EE 5. Arquitectura, conceptos y ejemplos.

JAVA ENTERPRISE EDITION (J2EE) ARQUITECTURA TECNOLOGÍAS (1/2) (L1)

5.1 Introducción a Servicios Web

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

JavaEE.

Arquitectura cliente/servidor

Modelos de los sistemas distribuidos. Jorge Iván Meza Martínez

SISTEMAS DISTRIBUIDOS DE REDES 3.- ESTANDAR CORBA Características

Tema 1. Introducción a Java EE

[CASI v.0109] Pág. 1

Introducción al Desarrollo de Aplicaciones Empresariales

Introducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com

Especificación de la secuencia de mensajes que se han de intercambiar. Especificación del formato de los datos en los mensajes.

Panorámica de la asignatura

Patrones de Alto nivel: Patrones de Arquitectura Patrones de nivel medio: Patrones de Diseño Patrones de bajo nivel: Idioms

WebServices bajo SOA. SOAagenda team Chile

Tema 6: Comparativa CORBA/Servicios Web

Tecnología de objetos distribuidos y arquitectura de componentes. Índice. Bibliografía. Introducción. Tema V

Sistemas Ubicuos 4. Descubrimiento de servicios

Arquitectura cliente/servidor

Service Oriented Architecture

Caso J2EE. Necesidades del negocio. Arquitectura Luther

TEMA 5. Otras arquitecturas distribuidas IV. Web Services

MARCANDO LA DIFERENCIA

Generador GeneXus JAVA

DATOS IDENTIFICATIVOS DEL MÓDULO FORMATIVO IMPLANTACIÓN DE APLICACIONES WEB EN ENTORNO INTERNET, INTRANET Y EXTRANET.

Qué son los Web Services?

Grado en Ingeniería del Software

Aplicaciones web construidas a base de componentes:

5. Modelos de Sistemas Distribuidos

Introducción a SOA (II) Huibert Aalbers Senior Certified Software IT Architect

PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto

Para el desarrollo de aplicaciones Web se han generado múltiples tecnologías entre ellas se encuentran:

Servicios Web. Capítulo 5: Introducción a los Servicios Web. Pedro Álvarez alvaper@unizar.es José Ángel Bañares banares@unizar.es

Glosario Plataforma de Interoperabilidad Libre Orientada a Servicios para el Estado Venezolano

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

Universidad Nacional Autónoma de México Dirección de Sistemas Dirección General de Personal

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

Tema 4: Diseño de flujos interaplicación

Desarrollo y servicios web

2524 Developing XML Web Services Using Microsoft ASP.NET

Capítulo 7: Introducción a la dinámica de servicios Web

El presente documento describe la importancia que está tomando el cómputo distribuido en

ARC 101 Architecture Overview Diagram

Service Oriented Architecture

TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB

Objetos Distribuidos - Componentes. Middleware

6.1 Introducción a los sistemas EAI

Capítulo 1. Componentes de CORBA.

Oracle Service Bus: Entorno de Desarrollo

4 ARQUITECTURA DE COMUNICACIONES

servicios. El API es definido al nivel de código fuente y proporciona el nivel de


Servicios Web: Orquestación y coreografías

INDICE. Reconocimientos Introducción Parte I Planeación de su cluster MSCS

1.264 Tema 16. Middleware heredado

Windows Server Windows Server 2003

Arquitecturas Distribuidas. Eduardo Ostertag Jenkins, Ph.D. OBCOM INGENIERIA S.A.

Servicios web. Jorge Iván Meza Martínez

Glosario Acoplamiento. API. Archivos de recursos. ASCII. Balanceo de carga. Bases de datos federadas. BBDD. Clientes. Constructores.

2.1 Compuertas para Bases de Datos

INTEROPERABILIDAD ENTRE LOS MARCOS DE GESTION SNMP Y CORBA (GATEWAY)

Curso de Java EE Todos los Derechos Reservados Global Mentoring 2012 Experiencia y Conocimiento para tu Vida 1

VISIÓN PRÁCTICA SOA PREPARATIC

ANEXO 1. ANEXO TÉCNICO

OMG - CORBA. Object Management Group. Common Object Request Broker (CORBA)

.NET y J2EE VALORACIÓN Y COMPARACIÓN DE LOS ELEMENTOS DE LAS DOS PLATAFORMAS. Definiciones...2 C# y Java...3 Similitudes...4 Ventajas...

Desarrollo y servicios web Sesión 18

Carrera: WRC

Servicios Web. Andrés Pastorini. TRIA Tecnólogo Informático

Proyecto BDP / PAD BASE DE DATOS DE PERSONAS PERSONALIDAD ADMINISTRATIVA DIGITAL

Curso Presentación. Conceptos y estándares de arquitecturas orientadas a servicios Web Curso 2006/2007

Desarrollo de Software con

Temario máster Java. Módulo 1 Fundamentals of the Java Programming Language. Duración: 40 horas

Bases de datos en entorno Internet

Permite compartir recursos en forma coordinada y controlada para resolver problemas en organizaciones multiinstitucionales

CentralTECH JAVA EE 7 Desarrollo

Sistemas de Información Introducción a los Sistemas de Información: El Modelo Cliente/Servidor

Servidores de aplicaciones

UNIVERSIDAD CENTROCCIDENTAL "LISANDRO ALVARADO" DECANATO DE CIENCIAS Y TECNOLOGIA MAESTRIA EN CIENCIAS DE LA COMPUTACION MENCION REDES DE COMPUTADORAS

TEMA 5. Otras arquitecturas distribuidas II. Objetos distribuidos y CORBA

Tema 5. Plataforma Java EE

Arquitectura de Software

Sistemas Operativos Distribuidos. Introducción a los Servicios Web (Web Services)

La aplicación práctica en el mundo empresarial de los estándares Web

SISTEMAS DE INFORMACIÓN III TEORÍA

Título: Optimización de Procesos de Negocio con SOA / BPM Nombre y Apellido: Mario Bolo bolo@ar.ibm.com Fecha: 15/08/2012

Gerencia de Procesos de Negocio (Business Process Management, BPM). Lic. Patricia Palacios Zuleta

Aplicaciones y Servicios Web (Web Services)

Arquitectura de Software III: Elaboración. Contenido del curso. III: Elaboración

BPM y BPEL como herramientas de administración de procesos de negocio

PROTOCOLOS DE APLICACIÓN PRÁCTICA EN INFOMED INTEROPERABILIDAD

Tema 5. Plataforma Java EE

MUNICIPALIDAD DISTRITAL DE MIRAFLORES

Una puerta abierta al futuro

ARQUITECTURAS CLIENTE/SERVIDOR

Interoperabilidad Cómputo Cliente/Servidor

Transcripción:

Arquitectura de Software Componentes y Middleware [1] Hernán Astudillo Departamento de Informática Universidad Técnica Federico Santa María <hernan at acm.org> Componentes y Middleware Componentes Middleware Políticas y mecanismos Ejemplo de notación ad-hoc 2 Sobre el informe 3 1

sistema Stakeholders analista specs sistema arquitetura arquitecto arquitetura arquitetura revisor jefe de projeto implantador QA admin 4 Calidad según los stakeholders La solución (computaciones) debe... Satisfacer los requisitos (según analistas) La solución (ejecutables) debe... Ser administrable (según administradores) La solución (software) debe Ser construible (según programadores & diseñadores) Ser testeable (según QA) La descripción de la solución debe... Ser evaluable (según otros arquitectos) El proceso de construcción debe... Ser manejable (según jefe de proyecto) 5 Componentes 2

Componentes Componente [Whitehead] Pieza separable (independiente del contexto) de software ejecutable...que tiene sentido como unidad...y puede interoperar con otros componentes...dentro de un ambiente de apoyo...y es accesablesólo vía sus interfaces...y está listo para usar (posiblemente requiriendo instalación y configuración) 7 Fuentes de componentes Dominio (entidades, propiedades...) Interfaces Capas de abstracción ( máquinas virtuales ) Instanciaciones de arquetipos Componentes 8 Interoperabilidad Problema: cooperación entre componentes Número exponencial de pares Se complica al introducir más de una tecnología Mecanismos estandarizados para describir interfaces CORBA IDL COM IDL Interoperabilidad entre tecnologías Modelos de componentes COM, CORBA, EJB Wrappers (envoltorios) Servicios Propiedades transaccionales Manejo de seguridad Monitoreamiento 9 3

Modelos de componentes [1/3] Modelos de componentes distribuidos (clientes y servidores) COM: Common Object Model (Microsoft; en.net) CORBA: Common ORB Architecture (OMG: Object Management Group) ORB: Object Request Broker Java (Sun, JCP) Modelos extendidos para mejor apoyar servidores MTS (Microsoft Transaction Service) CCM (CORBA Component Model) EJB (Enterprise Java Beans) J2EE (Java 2 Enterprise Edition) 10 Modelos de componentes [2/3] Modelos extendidos con soporte adicional Manejo transaccional Seguridad Persistencia Disponibilidad Clustering, balanceo de carga Ambiente de ejecución Ciclo de vida (instanciación, GC...) Threading Pooling de conexiones Manejo de estado Monitoreamientodinámico 11 Modelos de componentes [3/3] Servicios Location (ubicación) detección de componentes/servicios; análogo a guía telefónica JNDI (Java Naming & Directory Interface) CORBA Naming Service & Trading Service Manejo de transacciones autenticación, autorización, inviolabilidad, no-repudiación CORBA Security Service JAASL Java Authentication & Authorization Service Eventos, notificaciones & mensajería Mensajes asíncronos, point-to-point & publish-subscribe CORBA Notification (& Event) Services, Messaging Service JMS: Java Messaging Service 12 4

Terminologías de mercado 2 Capas 2 capas: cliente-servidor Razón: concentrar recursos escasos en servidores centralizados Redundancia mínima Rendimiento puede sufrir Autonomía mínima 14 3 capas 3 capas Razón: compartir datos, preservando integridad (ACID) Negocio : procesamiento propio del negocio 2 partes: objetos de negocio (entidades del dominio) y lógica de control (funciones) Presentación : interacción con usuarios (incl. informes) y otros sistemas Datos : manejo de datos persistentes (incl. integridad) 15 5

4 capas 16 4 capas (Cont.) Usuario : mecanismos de interacción con usuarios y otros sistemas Workspace : manejo de sesiones y transacciones Negocio (empresa): procesos y entidades del negocio Recursos : elementos únicos compartidos (BD, sistemas legado, servicios) 17 Productos Categorías de productos Empaquetados por tipo de problema y tipo de solución Tipos de solución: tecnologías Middleware MOM, BD, directory servers, TP Monitors, workflow... Tipos de problemas: servicios del negocio Paquetes ERP (Enterprise Resource Planning), CRM (Customer Relationship management) y variaciones, Knowledge Management... 18 6

Middleware Middleware : tecnologías para comunicar programas distribuidos Middleware Britton propone clasificar middleware usando 8 aspectos de la comunicación Transporte (enlace) (ej: TCP/IP) Protocolo (ej: HTTP) API (ej: ODBC) Formato (ej: ASCII) Control de recursos en el servidor (ej: MTS) Directorios/nombres (ej: DNS) Seguridad (ej: Kerberos) Administración 20 Dimensiones en Middleware (Cont.) Participantes en la comunicación programas/objetos cada vez más pequeños y numerosos IP (hardware), TCP (procesos), IIOP (objetos) Modo de comunicación sesiones: protocolos con o sin ellas TCP (IP con sesión), UDP (IP sin sesión) topología: 1:M, peer-to-peer, M:1 iniciador: push, pull integridad vs. puntualidad ( timeliness ) Interfaz con API: número fijo de entradas con IDL: mecanismo para definir API ad-hoc 21 7

Servicios Web Integración usando infraestructura Web/Internet Aspectos Transporte Formato Búsqueda Soluciones empaquetadas (aún en desarrollo) Web services SOAP (Simple Object Access Protocol): HTTP + XML WSDL (Web Service Description Language) UDDI (Universal Description, Discovery and Integration) REST: Representational State Transfer HTTP + URL + XML/HTML/GIF/MIME/etc. (sin directorios) CORBA: IIOP + marshalling + Directory/Trader Service 22 Praxis Catálogos de arquitectura Catálogos Ingenieros tienen catálogos de partes disponibles con especificaciones de contexto, parámetros... Necesarios para centralizar y difundir información Fundamento teórico propuesto Clasificar Middleware Análisis de dimensiones aún pendiente Políticas y mecanismos Enfoque análogo 24 8

Recursos y referencias Ivar Jacobson, Martin Griss, Patrik Jonsson Software Reuse: Architecture, Process and Organization for Business Success, Addison Wesley (1997) Chris Britton IT Architectures & Middleware: Strategies for Building Large, Integrated Systems, Addison Wesley (2000) Brett McLaughlin Building Java Enterprise Applications, Vol. 1: Architecture, O'Reilly (2002) Katharine Whitehead Component-Based Development : Principles and Planning for Business Systems, Addison-Wesley (2002) 25 9